[Coco] NitrOS-9 Level3 problems

L. Curtis Boyle curtisboyle at sasktel.net
Mon May 7 10:37:35 EDT 2018


> On May 7, 2018, at 8:20 AM, Gene Heskett <gheskett at shentel.net> wrote:

> I came to play with it several years ago now, as the premise of putting 
> the heart of nitros9 in one memory block, all the scf stuff in another, 
> and all the rbf stuff in a third sounded like a heck of a good idea. But 
> the map switching in the boot loader was broken in that it switched to 
> the second map, but had no provision to switch back, or to switch to a 
> third map. And there are some parts of drivewire that refuse to be so 
> cataloged, so some of drivewire would need to be split out into two 
> pieces so as to enable the individual modules to be cataloged as rbf 
> only or scf only. Ideally, the os9boot file should be processed on a 
> module by module basis as opposed to sorting the os9boot file into 3 
> such sections.
> 
We ran it briefly too; it did slow multi-tasking down, and since we were running 8 terminals and 3 printers simultaneously, we went back to level 2 (we also only used GrfInt, and no VDGInt, so had a lot more system RAM free in the first place). It had a special “start block” module, and the _end module to mark the beginning and end of both the SCF blocks (SCF, it’s drivers & descriptors), and the the RBF block (RBF, it’s drivers and descriptors). It didn’t give full 64K memory maps; it basically did a standard 64K system map, with a 16K chunk of that reserved for RBF or SCF; it would swap that 16K chunk between the two every I/O call as needed.

> There is only one map change trigger in the current lashup, and nothing 
> to effect the reversion to default, and nothing to trigger the switch to 
> the third map. I came to the conclusion that the original author did not 
> give us the whole kit, and despite a couple months I spent trying to get 
> into his head and fix it according to what was written was beyond me. 
> And most assuredly is since the pulmonary embolism that almost put the 
> ~30~ on my story 3 years ago.
> 
> Alan Dekok claims he had it working on 10+ machines for a year, but so 
> much has been cut up into smaller modules and submodules, all with 
> different names, so doing it to todays code base is likely going to need 
> a better understanding of the code than I currently have.
The splitting of modules is causing some problems

> 
> See nitros9/level3/Level3.doc, then make it work as described. I get the 
> impression that the _end module is supposed to do more than it currently 
> is doing.
From what I remember, it was a special “end of dedicated block manager/driver/descriptor marker”, so that the system knew what to move to each 16K sub-map.
> 
> Also, the ReadMe.l3 is confusing, as it ends indicating a floppy cannot 
> be formatted.
> 
> " I've just discovered that CC3Disk11 will crash on trying to format a 
> floppy disk under Level III.  It's probably the memory extensions I made 
> to CC3Disk, and I'm checking it out."
> -EOF-
This is the same problem that large boot files have with formatting a floppy; since the write track system call needs the entire track buffered, and in system memory (as it currently stands), INCLUDING all the pad bytes, track/sector headers, CRC checks, etc. it takes like 5K+ by itself. Combined with your normal OS9Boot, and forcing a full 16K of system RAM reserved for the RBF manager/driver/descriptor block, probably didn’t leave enough room for it to run. (I think someone should rewrite the write track call to use external-to-the-system-map memory, especially for regular halting controllers; since you are going to lock the system up anyways, shut off FIRQ/IRQ, map in a special “track buffer” MMU block overtop some other code you don’t need at the time, and then write the track from there)

> But whatintuncket is CC3Disk11? It is nowhere in the level3 subdir here, 
> despite what is being built by my attempts indicating that the module 
> splitting done to level1\2 has been carried over, and CC3Disk is now 
> rb1773 etc etc.
CC3Disk11 is just the normal CC3Disk floppy controller driver, but edition #11 (which let one access 512 byte sector disks, and non-os9 format disks). This was put out publicly on Compuserve, Delphi, etc., and may have been part of the Version 3/Kevin Darling driven upgrade, that they let trickle out over a few years after Tandy cancelled the project.
> 
> I'd run my script to pull and build the latest, but it requires I destroy 
> the sandboxes I have setup to protect it. And with taking care of the 
> missus thrown in, I would rather setup a build tree here in my home dir, 
> and then move it to the /opt dir where apache2 can find it and serve it 
> back out to you. But thats not going to happen today. It really needs a 
> younger mind anyway.
> 



More information about the Coco mailing list