More details will be forthcoming about this computer as they arrive. However, I have, for the sake of explaining the concept to others, used an Atari 800 emulator to construct a mock-up of the Kestrel 1r1's boot-screen when you turn it on.
Least cost demands minimal chip count. To this end, I use address line A23 to determine if I'm accessing RAM (A15 determines which 32KiB RAM chip to access) or I/O space, while ignoring address lines A22-A16. The I/O address decoder consists of a single 74AC138 chip, decoding address lines A15-A13. It is enabled only when A23 is high.
| From | Description | To |
|---|---|---|
| $000000 | RAM | $00FFFF |
| $010000 | RAM mirrors | $7FFFFF |
| $800000 | I/O mirrors | $FEFFFF |
| $FF0000 | VIA #1: User Ports | $FF000F |
| $FF2000 | VIA #2: Audio/Video Access | $FF200F |
| $FF4000 | unmapped | $FF5FFF |
| $FF6000 | unmapped | $FF7FFF |
| $FF8000 | unmapped | $FF9FFF |
| $FFA000 | unmapped | $FFBFFF |
| $FFC000 | unmapped | $FFDFFF |
| $FFE000 | unmapped | $FFFFFF |
The color palette consists of 256 colors. The color value consists of three fields -- there are 3 bits for red, 3 bits for green, and 2 bits for blue. This distribution was chosen because the human eye is most sensitive to green, then to red, then finally to blue.
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|
| R2 | R1 | M | G2 | G1 | G0 | B2 | B1 |
The M bit is so labeled because it is shared between the red and the blue guns, serving both as R0 and as B0 -- hence the magenta bit. This provides a mechanism by which adequate color fidelity can be expressed in 8 bits, while still giving the perception of 8 shades of blue when used in isolation.