The COM register
The $B0Â register is detailed first because it controls various diverse aspects of BLINK operations:
Bit        Name       Function
7Â Â Â Â Â Â Â Â Â Â SRUNÂ Â Â Â Â Â Â Speaker source (0=SBIT, 1=TxD or 3200 Hz)
6Â Â Â Â Â Â Â Â Â Â SBITÂ Â Â Â Â Â Â SRUN=0: 0=low, 1=high; SRUN=1: 0=3200 Hz, 1=TxD
5Â Â Â Â Â Â Â Â Â Â OVERPÂ Â Â Â Â Â Set to overprogram EPROMs
4Â Â Â Â Â Â Â Â Â Â RESTIMÂ Â Â Â Â Set to reset the RTC, clear to continue
3Â Â Â Â Â Â Â Â Â Â PROGRAMÂ Â Â Â Set to enable EPROM programming
2Â Â Â Â Â Â Â Â Â Â RAMSÂ Â Â Â Â Â Â Binding of lower 8K of segment 0: 0=bank 0, 1=bank 20
1Â Â Â Â Â Â Â Â Â Â VPPONÂ Â Â Â Â Â Set to turn programming voltage ON
0Â Â Â Â Â Â Â Â Â Â LCDONÂ Â Â Â Â Â Set to turn LCD ON, clear to turn LCD OFF
The two speaker control bits operate in the following fashion:
SRUNÂ Â Â Â Â Â Â SBITÂ Â Â Â Â Â Â Effect
0Â Â Â Â Â Â Â Â Â Â 0Â Â Â Â Â Â Â Â Â Â Speaker line low
0Â Â Â Â Â Â Â Â Â Â 1Â Â Â Â Â Â Â Â Â Â Speaker line high
1Â Â Â Â Â Â Â Â Â Â 0Â Â Â Â Â Â Â Â Â Â Speaker line oscillates at 3200 Hz
1Â Â Â Â Â Â Â Â Â Â 1Â Â Â Â Â Â Â Â Â Â Speaker line attached to Tx data (Tx data still output
                       to comms. port)
RAMS is cleared on reset thus paging in ROM at logical addresses $0000 to $1FFF. This is necessary since the Z80 program counter is loaded with zero on reset. In normal operation RAMS is set and the lower 8K is the system RAM, which is also used for application static workspace and stack.