Programming Model

From Spartan Blue CPU

Jump to: navigation, search

Blue is very simple. Everything is 16 bit, except memory addresses which are 12 bit. Memory is addressed by word not byte.

  • Acc - Accumulator
  • IX - Index register
  • Flags - Flag register
0=overflow
1=zero
2=carry (set on add and shift)
  • SP - Stack pointer

Memory runs from 0-FFF with a small chunk reserved for I/O. Program execution starts at 000.

FF0 - Switch register (read/write)
FF1 - Actual switches (low 8 bit) + enter key (top bit) (read only)
FFE - UART Status (xmit buf empty, xmit shift empty, frame err, overflow, available, + 11 0 bits)
FFF - Uart character (read/write) on receive, bit 15 is character available flag

The UART is hardwired for 57600 baud, 8, 1, none.

Personal tools