Hmmm, whole article about people reverse engineering apple dos, and no mention of "Beneath Apple Dos"? That ended up being one of my apple ][ books that nearly fell apart.
My Apple ][ shipped with "Beneath Apple DOS", the Apple ][ programmer's guide, and the Apple ][ Reference Manual which included a full fold-out schematic!
The original Apple ][ was more than a computer, it was like a degree in computer science if you actually studied what shipped with it.
Don Worth and Pieter Lechner were idols of mine at the time. I would never have been able to crack a single floppy back then without this wonderful book.
Another interesting side effect of Apple DOS is the extraordinary fertile ground it created for software companies to copy-protect their applications.
Piracy was already a big deal back then and pretty much every single software publisher on the Apple ][ had developed their own copy protection mechanism by simply hijacking the low-level vectors of Apple DOS.
Some of these copy protections were quite frankly amazing in ingenuity.
well I guess I will admit to the hours friends and I spent hacking out Wizardry and other games. Wizardry was a pain because it was in effect booting its own runtime, a pascal based one at that. (think it was wizardry that did this). Between the days of NDD on PCs and messing with code on Apple ][ I never realized how much my love for programming was being developed
He wrote a cool book about sailing, also. I read it in q3 last year, then quit my job and did an atlantic crossing in november. I am now cottage programming.
Operating systems today are still marvelous feats of engineering despite their quirks (such as legacy "features" like ANSI and UCS-2 "Unicode" in Windows), the fact that in the past we could fit an entire operating system AND running applications in one megabyte of RAM is remarkable!
Like my sibling poster said, a full megabyte would have been the sheerest luxury. After the ROM was mapped into memory on startup, my C64 had 38 kB available for programs. It is flat-out amazing what people did with that memory, including office software, networking and of course games.
Keep in mind that the Apple II originally shipped with 4 kB.
Everything (including graphics and music) fits in 200kb (177kb exactly)
While it was made almost 10 years ago it is still very impressive.
[1] If you can't or are afraid to run executable (antivirus programs might complain due to compression program they used), here's video of it: https://www.youtube.com/watch?v=KMfyrnu3n_c
As I think back on the hardware, I am amazed that my old C=64 could not only run a word processor, but it could spell check. The machine only had 64 kb of RAM and the disks were so glacial that you couldn't touch them much at all and maintain anything like a usable speed.
The Sinclair Cambridge ZX-80 (sold here as the Timex computer or somesuch) shipped with 1kB of RAM. That said, it wasn't really usable for much beyond programmable calculator kinds of stuff. With a 16kB expansion it was pretty awesome.
My first computer! I was programming in Z-80 assembler, typing in listings from magazines, with no way to save the code. So once the machine was switched off, the program was wiped and it had to be entered again. It's one way to learn the importance of accuracy - after hours of typing hex digits, to have one type cause the program to blow up, and have to start all over.
Code on consoles of that era is typically executed directly from ROM, so you'd have to first copy it to RAM, which was rather limited (only 2 KB I believe on the NES).
Wow! I remember reading 3D0G in one of the many apple manuals that came with my Apple ][+ I filed it away in my memory and used it every time I accidentally ended up with a * prompt. It feels good to know others have fond memories of those days too.
The earlier Apple ]['s would dump you into the monitor instead of Applesoft when you hit the RESET key, after resetting the CIN and COUT vectors which disable DOS, so you had to type 3D0G to warm start DOS, hook them back up and re-enter BASIC.
The RESET key was so unfortunately placed, and earlier models had very soft springs, which Apple eventually stiffened in later models, so there was a whole industry of after market RESET key protectors [1] (like a square plastic tube that slides over the key so you have to stick your finger down into it to RESET), to prevent you from having to type 3D0G so often.
I think the ][+ was the first one with the stiffer reset spring.
The other thing that tripped up newbies was the power light on the keyboard that wasn't a switch (you had to reach around the back left of the unit and fumble for it).
I run Debian unstable, wryly observing that I get nervous if any package on my machines is more than 6 months old.
While I appreciate that some of this code could possibly be re-purposed for embedded systems or micro-controllers with similar memory constraints, it seems these problems have been well solved several times over in the past 38 years. Yes, there's a surprising amount of 65xx development still going on, but again, is this going to fill any gaps that free software doesn't already cover? Note, I'm not saying this isn't interesting - it very much is.
But, at the risk of sounding churlish, is this hubris, or is there some justification for the constraint:
> ... we are pleased to make available the 1978 source
> code of Apple II DOS for non-commercial use.
Emulation and production of expansions & 3rd party replacement parts of older home computers often are in a legal grey area regarding permission to use, distribute, or modify the original IP.
Permission like this is very clarifying and welcome, and has nothing to do with what you run on your Debian box.
Thanks for the reply (I note lots of non-explained downvotes, which are always frustrating in response to an earnest question).
Debian reference was perhaps not useful -- more a comparison for vintage of code in use.
I appreciate that it's a grey area, and I grew up coding 6502 & 6510 assembly on C64, hence the interest in reading through the pdf's provided.
It's more the 'non-commercial usage is okay' caveat for the release. I genuinely don't know if there's a possibility of commercial use, or, beyond that question, why the restriction would be placed (it seems extremely unlikely it's for financial reasons).