4 ms·
Makes you wonder why it doesn't have an emulator built-in. Hardware on a spectrum is very simple, one Z80 at 4Mhz, and a single asic doing video output. Sound
by midnightclubbed 12y ago
Makes you wonder why it doesn't have an emulator built-in.
Hardware on a spectrum is very simple, one Z80 at 4Mhz, and a single asic doing video output. Sound is one bit, either on or off (cpu has to generate the waveforms). Super simple to emulate.
Screen layout was crazy though... 6kb monochrome framebuffer, split into 256x256 pixel 3rds (top, middle, bottom - 2kb each). Each horizontal line is 32 bytes one bit per pixel, first line is top of screen, second line in memory is line 8 on the screen, next is line 16, once you get to line 256 you are back up to row 1 on the screen...) Colour was an additional 768 byte block of memory, one byte per 8x8 screen pixels. One nibble for the foreground colour, one for background.
Makes me cry thinking about the time I wasted trying to write sprite functions in assembly.
Anyways once you have power, bluetooth, modest arm processor and a keyboard all you needs is your hdmi output hardware (and your emulator/loader software).
- silvestrov 12y ago> One nibble for the foreground colour, one for background. No, 3 bits for foreground, 3 bits for background, 1 bit for extra brightness and 1 bit for blink (swaps bg/fg every second).
- midnightclubbed 12y agoOops sorry, I remembered the brightness bit but forgot it was for both colors at the same time. Ahhh yes and the flash bit :) thanks. The final piece of the video output was the border color (on one of the out ports of the z80). By syncing with the vertical retrace you could 'draw' into the border (most tape loading routines changed the border color as bits were read from the tape to give the familiar border stripes when games loaded from tape).