Prev: EEB3 Up: Map Next: EED7
EEBB: RS232 Tx NMI routine
Used by the routine at FE72.
EEBB A5 B4 LDA $B4 get RS232 bit count
EEBD F0 47 BEQ $EF06 if zero go setup next RS232 Tx byte and return
EEBF 30 3F BMI $EF00 if -ve go do stop bit(s)
else bit count is non zero and +ve
EEC1 46 B6 LSR $B6 shift RS232 output byte buffer
EEC3 A2 00 LDX #$00 set $00 for bit = 0
EEC5 90 01 BCC $EEC8 branch if bit was 0
EEC7 CA DEX set $FF for bit = 1
EEC8 8A TXA copy bit to A
EEC9 45 BD EOR $BD EOR with RS232 parity byte
EECB 85 BD STA $BD save RS232 parity byte
EECD C6 B4 DEC $B4 decrement RS232 bit count
EECF F0 06 BEQ $EED7 if RS232 bit count now zero go do parity bit
This entry point is used by the routine at EED7.
save bit and exit
EED1 8A TXA copy bit to A
EED2 29 04 AND #%00000100 mask 0000 0x00, RS232 Tx DATA bit
EED4 85 B5 STA $B5 save the next RS232 data bit to send
EED6 60 RTS
Prev: EEB3 Up: Map Next: EED7