Where is the Lilith code?

17 views
Skip to first unread message

john o goyo

unread,
Feb 15, 2008, 12:30:31 PM2/15/08
to
As I was browsing the archives at ETH
(ftp.inf.ethz.ch/pub/publications/tech-reports/1xx/), I wondered
whatever happened to the source code that composed the Lilith system. Is
it available anywhere? It would be interesting to see it.

john

Chris Burrows

unread,
Feb 15, 2008, 11:28:44 PM2/15/08
to
"john o goyo" <j.o....@adogmail.com> wrote in message
news:13rbj2p...@corp.supernews.com...

The source code of the Lilith Modula-2 compiler (slightly modified to run
under an M-Code interpreter on the PC) is on my website:

http://www.cfbsoftware.com/modula2/

I'd also be interested in seeing the source code of Medos, the linker /
loader etc.

Just a week ago I tripped over some additional Lilith hardware-related
specs. Included amongst these is a Lilith Microcode Assembler listing of the
M-Code Interpreter, Bootstrap / Dump, Display Handling Procedures and Real
Operations. You can download the PDF copies of these from the BitSavers PDF
Archive:

http://www.bitsavers.org/pdf/eth/lilith/

That all should keep you busy for a while ...

Chris Burrows
CFB Software
http://www.cfbsoftware.com/modula2

Andreas F. Borchert

unread,
Feb 16, 2008, 8:40:50 AM2/16/08
to

If interested, I can provide on request by email under the terms of the
ETHZ license (code developed at ETHZ) and GPL (my temporary stuff)
- the sources of the Modula-2 compiler for the Lilith architecture,
- its Lilith binaries,
- a Lilith-code interpreter in C which is capable of running the
Modula-2 compiler, and
- some additional tools (likewise in C).
I used them to cross-develop a Modula-2 compiler for another platform.

But beware this stuff is from 1983, i.e. it uses C code from dark
old times, and it was used just temporarily until the new compiler was
able to compile itself on the new platform.

Unfortunately, I have no sources of the Medos operating system or its
tools. I replaced the implementations of low-level modules by traps into
the interpreter which emulated all those interfaces of Medos that
were required to run the compiler. Some Medos libraries like FileSystem,
FileNames, FilePool, and NewStreams are supported in this way.

Andreas.

Jos Dreesen

unread,
Apr 17, 2008, 1:13:39 PM4/17/08
to
john o goyo wrote:
> As I was browsing the archives at ETH
> (ftp.inf.ethz.ch/pub/publications/tech-reports/1xx/), I wondered
> whatever happened to the source code that composed the Lilith system.

Last weekend I was able to retrieve the complete sourcecode for Medos, the Lilith operating system. Alas not the latest version ( would be 5.2 ) but the somewhat earlier version 4.2.

All this was found on a disk I loaned from a museum in Berne. It seems to be the standard disk that was delivered with the Lilith systems.
File transfer was done by kermit ( at 9600 bd...) between my Lilith and a laptop running Linux.

Also sourcecode for the Modula compiler itself and for a great number of standard Lilith applications has been saved.

I will do some cleaning up and make i.e. ( the Medos part ) available.

Jos Dreesen

Chris Burrows

unread,
Apr 17, 2008, 10:02:45 PM4/17/08
to
"Jos Dreesen" <jos...@bluewin.ch> wrote in message
news:48078552$1...@news.bluewin.ch...

>
> Last weekend I was able to retrieve the complete sourcecode for Medos, the
> Lilith operating system. Alas not the latest version ( would be 5.2 ) but
> the somewhat earlier version 4.2.
>

Well done! I would be interested to know once you make it available.

--

john o goyo

unread,
Apr 18, 2008, 1:52:54 PM4/18/08
to
Jos Dreesen wrote:
[...]

> Also sourcecode for the Modula compiler itself and for a great number of
> standard Lilith applications has been saved.
>
> I will do some cleaning up and make i.e. ( the Medos part ) available.
>
> Jos Dreesen

Thank you! Is there a chance of making the others available in the future?

john

Jos Dreesen

unread,
Apr 20, 2008, 3:55:45 PM4/20/08
to

> Last weekend I was able to retrieve the complete sourcecode for Medos,
> the Lilith operating system. Alas not the latest version ( would be 5.2
> ) but the somewhat earlier version 4.2.
>
> I will do some cleaning up and make i.e. ( the Medos part ) available.

The recovered Medos sources are available on

ftp://jdreesen.dyndns.org/ftp/Medos_4


Jos Dreesen

john o goyo

unread,
Apr 22, 2008, 12:19:52 PM4/22/08
to
Jos Dreesen wrote:

>> I will do some cleaning up and make i.e. ( the Medos part ) available.
>
> The recovered Medos sources are available on
> ftp://jdreesen.dyndns.org/ftp/Medos_4
>
> Jos Dreesen

Wonderful -- thank you very much.

I am curious, what cleaning up was needed?

john

Christoph Schlegel

unread,
Apr 22, 2008, 2:51:22 PM4/22/08
to
john o goyo schrieb:

And again: Thank you very much. What license applies to these files?

Christoph

Jos Dreesen

unread,
Apr 22, 2008, 1:38:31 PM4/22/08
to
john o goyo wrote:
> Jos Dreesen wrote:
>
>>> I will do some cleaning up and make i.e. ( the Medos part ) available.
>>
>
> Wonderful -- thank you very much.
>
> I am curious, what cleaning up was needed?

Replacing EOL characters (0x30) with 0x13, to make them readable in UNIX systems.
And removing those files for which I do not yet have permission to distribute !
( M2 compiler, microcode assembler, Lilith tools & software )

Jos Dreesen

Chris Burrows

unread,
Apr 22, 2008, 7:49:39 PM4/22/08
to
"Jos Dreesen" <jos...@bluewin.ch> wrote in message
news:480b9fc1$1...@news.bluewin.ch...

>
> The recovered Medos sources are available on
> ftp://jdreesen.dyndns.org/ftp/Medos_4

Fantastic! Thank you very much for all your efforts. I really needed these
25 years ago when I was porting the M2MPC compiler but better late than
never ;-) It has been a surprise to me that some of code is much less
complex than I had imagined it to be at the time -something like the feeling
you get when a magician explains his tricks.

Jos Dreesen

unread,
Apr 23, 2008, 12:37:59 AM4/23/08
to

> never ;-) It has been a surprise to me that some of code is much less
> complex than I had imagined it to be at the time -something like the feeling
> you get when a magician explains his tricks.
>
Which is , of course, the earmark of goof software design !

BTW thanks to Svend Knudsen for letting me share his code.

Jos

Jos Dreesen

unread,
Apr 23, 2008, 12:44:35 AM4/23/08
to
>> never ;-) It has been a surprise to me that some of code is much less
>> complex than I had imagined it to be at the time -something like the
>> feeling you get when a magician explains his tricks.
>>
> Which is , of course, the earmark of goof software design !

Make that "good" software design....

Jim Granville

unread,
May 3, 2008, 5:51:37 AM5/3/08
to
Chris Burrows wrote:

> "Jos Dreesen" <jos...@bluewin.ch> wrote in message
> news:480b9fc1$1...@news.bluewin.ch...
>
>>The recovered Medos sources are available on
>>ftp://jdreesen.dyndns.org/ftp/Medos_4
>
>
> Fantastic! Thank you very much for all your efforts. I really needed these
> 25 years ago when I was porting the M2MPC compiler but better late than
> never ;-) It has been a surprise to me that some of code is much less
> complex than I had imagined it to be at the time -something like the feeling
> you get when a magician explains his tricks.

I recall many years ago, downloading the source to one of
Wirth experimental languages, that targeted PLD and Hardware design,
and being rather amazed at the simplicity of the code.

I have just looked for it, but cannot find the exact branch.

It must have been later than PL/0 (1975?), and earlier than Lola
(1995?), probably it led to Lola.

-jg

Chris Burrows

unread,
May 3, 2008, 9:15:53 PM5/3/08
to

"Jim Granville" <no....@designtools.maps.co.nz> wrote in message
news:481c35ee$1...@clear.net.nz...

>
> I recall many years ago, downloading the source to one of
> Wirth experimental languages, that targeted PLD and Hardware design,
> and being rather amazed at the simplicity of the code.
>
> I have just looked for it, but cannot find the exact branch.
>
> It must have been later than PL/0 (1975?), and earlier than Lola
> (1995?), probably it led to Lola.
>

Maybe it is Debora that you are thinking of? This was used in the design of
one of Lilith's descendants, the Ceres-3 computer. A specification of
Ceres-3 in Debora is included in the ETH Technical Report 168 - 'Hardware
Description of the Workstation Ceres-3' by B. Heeb and I Noack. You can
download a copy from the ETH Technical Reports site:

http://www.inf.ethz.ch/research/disstechreps/techreports/index?range=100

Jim Granville

unread,
May 4, 2008, 3:48:11 PM5/4/08
to

Thanks for that link, another one I have not seen before.

Debora looks like a superset, of the one I recal, as I see '=', ".=",
and ":=" assignment options, and have not seen ".=" used before ?.

I have seen '=' for combinatorial and ":=" for 'at the clock' used
before (Abel IIRC).
Others (eg CUPL) use Reg.D =, Reg.T = to infer the clocked transfer.

A separate symbol could make a simulator easier to write, and revise.


The syntax also uses psuedo record constructs, something
that seems to have got lost in modern HDLs.

I think

Register.clk .= ClockNet;
Regoster.D .= Register.Q;

is (to me) quite clear, and reminds the designer they are dealing with
hardware.

Modern HDLs will include this format in their report files, but
do not allow users to write that way ?

-jg


Reply all
Reply to author
Forward
0 new messages