5 ms·
The original Macintosh was developed in 1983 and was released in 1984 with 128KB of RAM and 64 KB of ROM. In that, they packed a full windowing interface (menu
by rmah 6y ago
The original Macintosh was developed in 1983 and was released in 1984 with 128KB of RAM and 64 KB of ROM. In that, they packed a full windowing interface (menus, overlapping windows, multiple fonts, text edit fields, buttons, radio & check boxes, etc). Also a 2D graphics engine (including bitblit with modes), a file manager, a resource manager, a printer drivers, network support, etc, etc. All for the price of a higher end PC of the day. Most of what we consider a "real GUI" was included in the Mac's OS if a bit rudimentary.
To give you an idea how tight that is, 64KB (code in ROM) is just 12 paper pages (60 lines of 80 columns) of text. Yes, some of the code had to be stored on a boot floppy disk, but still. To say it was an amazing piece of software engineering is, IMO, an understatement.
When I saw my first Mac at the university store it was like seeing the future. That so many of my peers denigrated it as a "toy" left me mystified. Instead of buying a car with the money I saved up, I bought myself a Mac.
- jacquesm 6y agoThe mac did that with a 68000 CPU and a fairly large amount of ROM, there were 8 bitters that got to roughly the same level of functionality on half that much ram & rom, with 640x256.
- DrJokepu 6y agoAnd the original MacPaint also had two full off-screen buffers, for things like undo/redo! That left 64kb for the application and the system.
- mason55 6y agoGave me a flashback to when Photoshop added the ability to undo more than just the last operation, up to as many undos as your RAM could support. That was life changing.
- dehrmann 6y agoMaybe it was both a toy and the future.
- dreamcompiler 6y ago> Instead of buying a car with the money I saved up, I bought myself a Mac. Same here. I bought a Lisa too because you had to have a Lisa to write code for the Mac back then. My Lisa had a 5 MB hard drive (no I didn't omit any zeros).
- randoramax 6y agoThe first Amiga was released only a year after, in 1985. The Mac was a toy in comparison.
- beagle3 6y agoIn fact, there was a Mac emulator for that Amiga that, using the same CPU and hardware accelerated graphics, ran Mac software much faster than the Mac did.
- alpaca128 6y ago> 64KB (code in ROM) is just 12 paper pages (60 lines of 80 columns) of text Wow. I knew they did a lot of optimisation, but this seems to reach the compressed levels of that <500B chess engine (BootChess).
- wpearse 6y ago...and the later Mac Classic had a copy of the OS burnt into ROM. You can boot that OS copy by holding cmd-opt-x-o after switching the machine on. Not only ballsy (unable to fix any bugs) but also a reinforcement as to how impressively compact the OS was.
- rvense 6y ago> To give you an idea how tight that is, 64KB (code in ROM) is just 12 paper pages (60 lines of 80 columns) of text To be fair, this is machine code, so it's what, 4-10 bytes for an instruction and two or three of these per line of high level code? So it's probably comparable to a few thousand "pages" of C code. But it's still pretty amazing.
- witherk 6y agoThank you for contextualizing this I was really trying to think about fitting an operating system into 12 pages...
- labawi 6y agoI think it more like 2-4 bytes per instruction[1]. Information density of machine code can be surprisingly high. Of course, density can also be abysmal with current toolchains and practices. [1] https://en.wikipedia.org/wiki/Motorola_68000#Example_code https://en.wikipedia.org/wiki/Motorola_68000#Example_code