[Oberon] [Off topic] MPW-Pascal

Hans Klaver hklaver at dds.nl
Tue Sep 29 06:59:27 CEST 2020

Hi Thomas,

You wrote:

> Just discovered classic old Macintosh platform can be emulated.
> (BasiliskII, mini vMac).

Also Saanlima's Pepino (FPGA for PO) can emulate a Macintosh Plus; works nicely!

> Installed MPW and MPW-Pascal. There are some common ideas with Oberon
> systems, perhaps worth mentioning here.
> MPW Apple's development environment, supporting flavour of languages,
> Pascal, C, C++, Fortran, .., there is also Oberon variant for it.
> Perhaps worth exploring further.

A great Oberon-2 ('Component Pascal') framework to develop for both classic Mac OS, Windows and Linux platforms with the same toolset is Oberon/F (a.k.a. BlackBox Component Framework). Unfortunately it does not work with macOS X, but now *can* produce native apps for Linux:

Your can find several Oberon implementations for classic Mac OS, including an early version of Oberon/F, here: 
https://macgui.com/downloads/?file_id=17689 <https://macgui.com/downloads/?file_id=17689>

The latest version for classic Mac OS of BBCF/Component Pascal is 1.31. Presently I cannot locate it on the internet. But I could send it to you.

> SET type can be defined on integer range 0..2039 [max], e.g.
> VAR bits: SET OF 0..1024
> In Oberon notation that would be {0..1024}!
> Wow, that seems a lot.
> My explanation is the `QuickDraw', which is underlying graphics
> manager, with rich functionality, can handle not only monocolour, but
> also 256,1024,1024*1024 colours. Such big sets are perhaps well
> justified for screen bits manipulation.
> Must really be complex, part of each Mac ROM, typically 1MB in size, all
> written Pascal some portions in assembly. Cannot tell how big QuickDraw
> really is.

QuickDraw, by Bill Atkinson, was written entirely in Motorola 68000 assembly language. He also wrote MacPaint, in Apple Pascal and 68000 assembly. The source code for both can be found here:

> Out of curiosity, reading some old docs, and programmes.
> Pascal still reads better to C, not only in tutorial texts, in my
> opinion.
> Interesting is also Mac runtime memory design. Applications are
> segmented in code and resources. Loaded / unloded on demand.
> There is no module concept analogy, closest idea is that resources and
> code can be shared.

Classic Mac OS was wonderful, imho. And also very well and beautifully documented through books in the "Apple Technical Library".

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.inf.ethz.ch/pipermail/oberon/attachments/20200929/ef94fb7d/attachment.html>

More information about the Oberon mailing list