$EF06/61190:   Send New RS232 Byte

Jump from $EEBD, $F044:

EF06: AD 94 02  LDA $0294     ; RS232 Pseudo 6551 command Register Image
EF09: 4A        LSR
EF0A: 90 07     BCC $EF13
EF0C: 2C 01 DD  BIT $DD01     ; CIA2: Data Port B (User Port, RS232)
EF0F: 10 1D     BPL $EF2E     ; 'No DSR' / 'No CTS' Error
EF11: 50 1E     BVC $EF31     ; 'No DSR' / 'No CTS' Error

Jump from $EF0A:

EF13: A9 00     LDA #$00
EF15: 85 BD     STA $BD       ; RS232 Output Parity/Tape Byte temporary
EF17: 85 B5     STA $B5       ; RS232 Next Bit to send/Tape Read - End of Tape
EF19: AE 98 02  LDX $0298     ; RS232 Number of Bits left to send
EF1C: 86 B4     STX $B4       ; RS232 Write bit count/Tape Read timing Flag
EF1E: AC 9D 02  LDY $029D     ; RS232 Pointer: High Byte of Output Buffer
EF21: CC 9E 02  CPY $029E     ; RS232 Index to End of Output Buffer
EF24: F0 13     BEQ $EF39     ; Disable Timer
EF26: B1 F9     LDA ($F9),Y   ; RS232 Output Buffer Pointer
EF28: 85 B6     STA $B6       ; RS232 Output Byte Buffer/Tape Read Error Flag
EF2A: EE 9D 02  INC $029D     ; RS232 Pointer: High Byte of Output Buffer
EF2D: 60        RTS

    Previous Page / Next Page