Post by wolfgang kern30 years programming,
I've been programming on MVS for the same length
of time.
Post by wolfgang kernbut still no clue about hardware
And I can tell you that mainframers were very frustrated
that I had no interest in mainframe hardware too.
I invented S/380 *before* I knew how S/370 and
S/390 worked.
Someone asked me "what about the DAT?" when they
heard my proposal, and my answer was "what's a DAT?".
Long after S/380, I decided to write PDOS/380,
and that is when I started learning about the
S/3X0 hardware, but that was only temporary
knowledge in my brain, permanent knowledge
in public domain code.
Post by wolfgang kernnor about M$- and BIOS- standards, you never read RBIL ?
I only started learning MSDOS interrupts when I went
to write PDPCLIB, and just what I needed to support
C90, no extensions.
I then wrote Pos* so that I was not dependent on knowing
what the interrupt numbers were and could have an
alternate implementation if/when required.
Incidentally, I still don't have the equivalent of Pos* on
MVS. For some reason I haven't got further than C90.
I may lack some abstraction layer. Or maybe MVS does.
The MVS interface is given in terms of assembler macros,
not interrupts, and perhaps that changes the equation.
I'm not sure. It's a gap in my understanding.
I used a physical book on MSDOS to write Pos* to start
with, but used RBIL years later as a reference. But only
to look up specific things, never to understand how a
lightweight dipshit like Gates implemented an
operating system. I didn't want to be clouded by his
thinking.
It is only recently I found out what the "huge" memory
model was, and that the "huge" keyword and farmalloc()
existed already. But I have no intention of using either.
I instead intend to provide farmalloc() at the OS level,
and "huge" pointers as a new memory model of Watcom.
All this (and more) is what happens when you don't blindly
follow Microsoft and IBM and Unix, but instead derive things
from first principles.
BFN. Paul.