← Back to context

Comment by kurlberg

11 hours ago

I don't think this is entirely due to Wozniak. Early "home" computer systems were based on connecting cards to a bus (eg the S-100 bus), eg. with one card supporting the CPU, another RAM, a third for disk drive, video card etc, etc. The cards where then memory mapped, presumably you controlled the memory mapping by setting jumpers. (I guess you're saying that Apple II managed this automatically?) Of course the full story might be a bit more complicated: 6502 and 6800 used memory mapped I/O, whereas 8080 (and Z80?) had certain I/O pins coming out of the CPU.

Memory mapping happened automatically. Each card was mapped based on the slot it was in. $C000 - $C700 I believe with each slot assigned 256 bytes.

  • You're correct; slot 6 for instance is $C600. If you crashed to the system monitor you could boot a disk by entering C600G (with the 'G' standing for 'go to').

    IIRC the disk controller had firmware that loaded the first 256 byte sector from disk into memory.