We finally have an update on Idris, though not on the PD68 so far.
Skip Tavakkolian was involved in porting Idris to the Atari ST in the 1980s (see the Usenet posting linked below). I knew Skip already from his work on Plan 9 and he confirmed that he still had working disk images and documentation for the Atari port. The related disk images and scanned manuals are now available on github.
However, actually running Idris turned out to be more difficult. Idris worked nicely in the Hatari ST emulator when running from the boot floppy, but complained about an "interrupt scanner timeout" when trying to access the ACSI hard disk. Hampa Hug's ST emulation in PCE worked significantly better, but also show the timeout message once in a while.
A thread on the hatari-dev mailing list confirmed our suspicion that the interrupt problems resulted from a shortcut in the emulator which delivered data requested via DMA/ACSI immediately, something which takes significant time on a real spinning hard disk. Compared to most Atari hard disk drivers, which poll for the completion of a DMA transfer, Idris waits for an interrupt signaled by the MFP (M68901). In addition, the driver seems to clear the interrupt condition
after sending out a subsequent request for data. Since the interrupt arrived immediately, this results in the interrupt for the data just requested to be deleted, which results in the timeout message.
Christian Zeitz diagnosed the problem in details and provided a patch for Hatari which enables installing Idris to an emulated ACSI hard disk image. This also allows us to compile the kernel and run the X10 (not a typo!) window system that was available for the Atari ST Idris port (see the attached screenshot). So this enables us to run a complete 68k-based Idris in emulation now! This should be binary compatible with the PD68 version.
Running on a real ST is still problematic if you don't have a working magnetic disk. I tried to use the ACSI2STM SD card-based hard disk emulator and couldn't get this to work. I assume that there also might be timing issues involved here, but will have to confirm this.
While investigating the Idris port and history, I developed a number of rudimentary tools for Idris user space and full system emulation (of the PD68, but a lot of support is still missing such as an emulation of a SCSI/SASI hard disk connected to the 68230 PIA chip of the PD68) as well as a tool to extract symbols from Idris a.out-style binaries. I still have to clean up the code and fix some things and will publish the tools then.
There's an older 2.x version of Idris disk images available on bitsavers, which use a significantly smaller kernel than the 3.x versions for the ST and PD68 here. I confirmed that it's also possible to build a 2.x Idris kernel from the partial sources and object files on the 2.x version, which results in a much smaller kernel image (around 50kB instead of 100kB for 3.x).
This might also allow some interesting new ports of Idris, e.g. to 68328/Dragonball-based Palm Pilots or the TI92 calculator series...
Some links:
