I’m still interested in an EMAS emulation, but there’s still no ICL 2980 emulator, at least some 1900 emulators, and the MOUSES emulator for Interdata (SIMH). Although Interdata and ICL have different hardware it’s interesting for comparison.
The Interdata 70 user’s manual has many details. Very interesting are the loader descriptions (chapter 7.9)
There are 6 different binary object paper tape formats (some more for other than paper tape)
M08 Relocatable zoned loader format
M09 absolute zoned loader
M10 Bootstrap (self-loading)
M14 Eight-bit core image
M16 Relocatable non-zoned loader
M17 absolute non-zoned loader
Interesting is the 50 Sequence Bootrap loader, starting at X’50’ also having a device definition table. The booting is as follows (3 segments on the same paper tape)
- The eight-bit Loader at 50 reads another loader into 80 to XC and transfers to 80
- The program at 80 reads … which includes a Fast Format Loader
- (checksum test)
- The Fast format Loader loads a special REL Boot Loader …
- … REL Loader placed 400 from memory top, General Loader 600 from top
- The REL Boot Loader reads the Loader program, … relocation
- finished reading
It’s splitted, memory locations 80-2AA and DF0-FF6 are used.
Later, depending on the OS, there are some more loaders, including an OS Library Loader, Stand-Alone Loaders and BOSS resident Loader.
OMG why so many loaders? And why starting the booting at 50?
Some memory contents below 50 (Dedicated low core) are mentioned (pointers and PSW) but only starting at 22. I haven’t found what is stored below.
The Model 74 had an automatic loader.
Another bitsavers document has a commented bootstrap loader (29-376 32bitLoader).
The MOUSES and EMAS sources have some binaries within the IMP files like the GPC microprogram in gdc03s.imp (chopsupe).
Some have different versions running at different memory locations. So without detailed hardware knowledge (and programming skills) and enough time to read all sources it’s very hard to impossible to write an emulator. The sources are still interesting.