4 ms·
One of the simplest tasks for example is decoding addresses to route data to and from specific chips. Say 0xFF00 goes to the sound chip, 0xE045 goes to the seri
by himinlomax 6y ago
One of the simplest tasks for example is decoding addresses to route data to and from specific chips. Say 0xFF00 goes to the sound chip, 0xE045 goes to the serial port or whatever, others go to RAM or ROM.
On the ZX Spectrum iirc it implemented the entire display.
- beagle3 6y agoThe Spectrum had a different design; there was main memory, and the ULA chip (Uncomitted Logic Array) Would read it or it’s own time and generate the display (it had priority over the CPU as was usual those days of single port memory if you didnt want static like noise). The sound, and just about everything else, was not mapped to memory but through an I/O address space which the Z80 and 8080 (and 80x86 and even AMD64 still have. This address space, pins, chip select, etc were all distinct from main memory - unlike the C64 where everything was memory mapped.
- himinlomax 6y agoYes iirc the Z80 had io-specific instruction which allowed accessing (some) peripherals without memory mapping. But the ULA still had to decode addresses to target RAM vs ROM.