Talk:ELF operating system
Code found
I found ELF source files and maybe some binaries in the Saildart archive. I'm trying to contact several of the developers: Retz, Casner, Raveling. The consensus seems to be it's ARPA-funded public domain work. Larsbrinkhoff (talk) 08:07, 28 October 2021 (CEST)
- I have heard back from Casner, Raveling, and Miller who all support putting ELF on GitHub. Miller told me Retz is no longer with us. :-( Larsbrinkhoff (talk) 08:09, 12 November 2021 (CET)
- There seems to be a lot of stuff still missing from the Github; I was looking for the ANTS/ISI device driver (to do an article on it), but couldn't find it, although I looked at most of the .M11 files (I did find part of the VDH code - I don't think the underlying sync interface code is in what I glanced at). And there are a bunch of ELFxxx.O11 files (which are, I assume, binary; for the OS modules) - but where are the matching M11 files? (We could disassemble them, but we'd be missing the comments - so crucial for assembler code). Jnc (talk) 09:02, 12 November 2021 (CET)
- The .O11 files are also source code. ELFNIO.O11 is the ISI/ANTS IMP driver code: "This module is configured at assembly time for use with either a standard ANTS interface or for USC-ISI's modified version of it." Larsbrinkhoff (talk) 12:31, 12 November 2021 (CET)
- Ah, thanks; I had tried to download ucbioc.o11, and my browser would only say "8.41 KB - Download - View raw", so I assumed that with a filename like that, it must be object code (binary). I wonder what the etymology of ".o11" is, and why they aren't ".m11"?
- I see the file has a lot of ASCII NULs in it. Those confuse my editor (Epsilon, an EMACS clone) somewhat: they display OK, and I can manually delete them, but an attempt to give a NUL to any 'string replace' command (to get rid of the whole lot in one operation) confuses it - probably because Epsilon's written in C, and the NUL is being mistakenly interpreted as an 'end of input string' marker! If I really wanted to work with one, I'll probably have to write a short program to strip them out. Jnc (talk) 15:34, 12 November 2021 (CET)
VDH interface
Huh; the base address given for the VDH interface ("VDHSI = 167600") is that which some DEC sources claim to be that of the DR11-C; but the register layout doesn't look anything like a DR11-C. (Nor a DR11-B either.) I'm a bit surprised it's not a stock DEC synchronous serial line interface, but this looks like a DMA interface ("M.A.R. IN" = 'memory address register in'; "W.C. IN" = 'word count in'), which makes sense, because even a VDH was a pretty fast interface (I think they could be 56K, although IIRC some were 9600); and the first DEC DMA synchronous serial line interface was the DQ11. Jnc (talk) 10:52, 12 November 2021 (CET)
Ah, I was confused a bit; KDVDH.M11 does appear to be the actual device driver for the VDH synchronous serial line interface. So there must be some more code elsewhere (as yet unfound) for the VDH protocol (at least, if my understanding of how the VDH interface worked is correct; I never used one). I wonder what the etymology of "KDVDH" is; what is the 'KD' for? Other ELF device drivers seem to use 'ELFxxx' - e.g. the ANTS/ISI LH/DH 1822 interface is "elfnio". Jnc (talk) 15:49, 12 November 2021 (CET)
The ANTS paper mentions a VDH interface that was used; it was done at UC Santa Barbara. I wonder if this is the same one? Probably. Jnc (talk) 17:50, 12 November 2021 (CET)