Fixed interrupt behavior (docs around the IE flag at init are vague -- looks like IE controls interrupts only
during the initialization; afterwards interrupts are always enabled regardless.)
V8 Research Unix now boots (tested on VAX-11/750).
- Removed delay in mscp server polling loop, which as I suspected was papering over an issue.
We now pull all messages from the command ring at once and save them locally. When processing
completes, the polling loop goes back to sleep. This jibes with host code expectations of the
port. No more delay necessary to avoid race conditions.
- Cleaned up RCT/RBN information so that this can be dynamically configured in the future, should
the need arise
General code cleanup/refactoring. Added header comments.
Added "use image size" parameter for MSCP disks -- block count derived from image file size rather than DEC drive geometry; allows for arbitrarily large disks (up to 2TB, theoretically.)
without help from the device code (just call request_DMA and when it returns the DMA transfer is complete.) Fixed
request_DMA to chunk DMA transfers larger than 1024 bytes to avoid overrunning the mailbox's shared memory. Fixed
concurrency issues with DMA requests -- a race condition could cause DMA request data to get clobbered.
RT-11 now boots, MSCP behavior is now very reliable.