On 2019-Aug-08 07:33:47 +1000, Dave Horsfall wrote: >I've always thought that Xenix was insane to start with... Then again, my >first experience with it was on a 286... Now, when porting Unify, should >I use large memory model here or small memory model? Crazy. Ah, yes. I remember it well. The large, small and various mixed modes were a consequence of the braindeadedness of the 286 - reloading segment registers (pretty much every memory reference in large mode) was abysmally slow. I recall hacking mg (a cut-down emacs clone) so that buffers were in "far" memory and everything else was "near". Some of the Xenix features I recall were: * occasionally fork() would return -1 in both the parent and child (or something like that - it would both succeed and report failure) * The contents of comments would affect the Pascal compiler's ability to compile the program (this was "using uninitialised variables" behaviour, rather than magic lint-style comments). It made software development "interesting" because checking a program into SCCS might stop it compiling. * fork()ing a large process could panic the system. * The C compiler barfed on parts of starchart (from comp.sources.???) -- Peter Jeremy