[Coco] OS-9 is not for me

L. Curtis Boyle curtisboyle at sasktel.net
Fri Nov 7 11:35:04 EST 2014


Both Bill (and others), and Nick made good points. OS9/NitrOS9 is full blown operating system; it is meant to abstract the hardware from the software you write, using the driver/descriptor model (so a programmer only has to do generic “Open a file, read data”, etc. type calls, and not care one iota whether that’s a floppy disk, RAM drive, Flash card, hard drive, etc. So, it makes writing software for such things much easier then one would be able to do with RSDOS, where one would have to hook their own drivers for anything besides the floppy drive. Also, Nick - writing quick hack utilities for editors, etc. would be a great usage case for BASIC09, which is both faster and much more powerful then Microsoft BASIC. It also allows you to call all the API’s (“system calls” in OS9 parlance) in OS9 itself. To be honest, I wrote most of my “quick and dirty” utilities, etc. in BASIC09, rather than assembly, unless I _really_ needed the speed (or was writing the OS itself, of course).

On the other hand, this also means that things are slowed down (having to send data through drivers/file managers, plus the real time clock IRQ system, interrupting things every 1/60th of a second) much more then one could do with “pure” assembly in RSDOS. In Nick’s case, where he is trying to squeeze every last CPU cycle he can, this adds a ton of overhead that doesn’t get made up for by the types of programs he writes (hi speed graphical games). Bill and I had added some SetStat calls in NitrOS-9 at one time that allowed you to “officially” get MMU block lists for all windows/screens, so that one could then map them in “legally”, and directly manipulate them to get some of that speed back (and VDGINT based hi-res games also used this technique (like Koronis Rift, etc…. but VDGINT only supported setting the screens and palettes up - it had no graphics primitives, no built in fonts for these screens, no overlay or device window support, etc. - so you would still need to code all of that stuff manually). Our goal was to allow game programmers to manipulate the screens directly, but still be able to use all of the built in stuff as well (fonts, overlay windows, etc.), to allow programmers to spend more time on the hardcore game code then mapping out fonts, drawing the initial sprites, putting popup windows up, etc.

I don’t know if these calls survived into the current version of NitrOS9; I think Alan Dekok actually took a few things out at one point (I know he removed things like “color transparency” from the hardware text modes, although I never did understand why)… someone more in the know as to the current state of NitrOS9 could tell you that.

L. Curtis Boyle
curtisboyle at sasktel.net



> On Nov 6, 2014, at 4:31 PM, Bill Pierce via Coco <coco at maltedmedia.com> wrote:
> 
> 
> Nick, I hate to see you give up, but I will admit that OS9 is not for everyone. The thing that gets me the most is that you, being a software developer, cannot grasp OS9's system concepts. To add to Bob's analogy.. How many hours did you spend figuring out the "side scrolling" modes of the GIME for "Pop Star Pilot"? How many documents did you examine to learn the modes?
> Every book ever published on OS9 and it's use is available in the archives and between them, covering "almost" every aspect of OS9.
> Just for kicks, here's a simple list of advantages of hardware/software support in OS9 vs RSDOS....
> Disk Access:
> RSDOS - Basic only, the user must either interface with basic or write their own when using Asm (same for all below)
> OS9 - Basic09, Asm, & C all have easily accessed system calls for disk access
> Screen Control:
> RSDOS - Basic only
> OS9 - BASIC09, Asm, C
> Graphics Control
> RSDOS - Basic only
> OS9 - Basic09, Asm C
> Mouse/Joystick Control:
> RSDOS - Basic only
> OS9 - Basic09, Asm, C
> Built In Menuing:
> RSDOS - None
> OS9 - Basic09, Asm, C
> Telecommunications:
> RSDOS - None
> OS9 -  Basic09, Asm C
> Midi:
> RSDOS - None
> OS9 - Basic09 Asm C
> Expandable for new hardware by adding new drivers"
> RSDOS - NO
> OS9 - YES
> 
> And there's much more if I really wanted to get into it. It's all in the "installable" drivers... You cannot "easily" add anything to RSDOS without "internal" knowledge of hacking the system.OS9 allows easy expansion to the system just by installing a well-written driver. If it can be hooked up to the Coco, OS9 most likely has a driver for it. If not? It's not hard to write one and someone probably will.
> Don't get me wrong... I understand your frustration. I struggled with OS9 Level 1 for about 2 years and "just didn't get it". I couldn't get much past booting the system disk. I gave up and went back to RSDOS and Asm. Then along came the Coco 3 and Level 2. All it took for me to see the power was running "King's Quest III" one time. After see the speed, graphics and power used in that software, I was determined I would learn it. I never actually "bought" a copy of OS9 L2, as I built my own OS9 L2 boot from L2 games disks and modules downloaded from Delphi and CIS. I learned the OS the hard way as I had no manuals, though I did borrow a friends OS9 L2 manual for about 3 months once. I "hand copied" a lot of info on making boots, graphics and system calls into a notebook, and that was my manual. I still have that notebook today (plus many more). In less than a year I was helping people in my local Coco User's Group to get started in OS9 and making their boot disks. In two years I was d
> isassembling programs and writing my own. I NEVER looked back at RSDOS Basic again except to run a few games and run Lyra... until I bought Ultimuse3 for OS9 that is...  :-)
> I am not some Computer Engineer or professional programmer. I have absolutely NO training in computers, or any college training. In fact, I am a blue-collar 10th grade dropout hippy musician who was a flooring installer by trade. I was actually a route delivery Milkman when I bought my first computer which was a 16k Coco 2 with only Color Basic and an Orch90 pak. I took the money for the Coco and Orch90 pak from my "cask intake" that day (which I had to put back when I got paid).
> If I can learn OS9.... anybody can.
> 
> 
> Bill Pierce
> "Today is a good day... I woke up" - Ritchie Havens
> 
> 
> My Music from the Tandy/Radio Shack Color Computer 2 & 3
> https://sites.google.com/site/dabarnstudio/
> Co-Webmaster of The TRS-80 Color Computer Archive
> http://www.colorcomputerarchive.com/
> Co-Contributor, Co-Editor for CocoPedia
> http://www.cocopedia.com/wiki/index.php/Main_Page
> E-Mail: ooogalapasooo at aol.com
> 



More information about the Coco mailing list