$F409/62473: Open RS232
Jump from $F388:
F409: 20 83 F4 JSR $F483
F40C: 8C 97 02 STY $0297 ; RS232 Pseudo 6551 Status Register Image
Jump from $F41B:
F40F: C4 B7 CPY $B7 ; Number of Characters in Filename
F411: F0 0A BEQ $F41D
F413: B1 BB LDA ($BB),Y ; Pointer: Current File name Address
F415: 99 93 02 STA $0293,Y ; RS232 Pseudo 6551 control Register Image
F418: C8 INY
F419: C0 04 CPY #$04
F41B: D0 F2 BNE $F40F
Jump from $F411:
F41D: 20 4A EF JSR $EF4A ; Compute Bit Count
F420: 8E 98 02 STX $0298 ; RS232 Number of Bits left to send
F423: AD 93 02 LDA $0293 ; RS232 Pseudo 6551 control Register Image
F426: 29 0F AND #$0F
F428: F0 1C BEQ $F446
F42A: 0A ASL
F42B: AA TAX
F42C: AD A6 02 LDA $02A6 ; Flag: TV Standard
F42F: D0 09 BNE $F43A
F431: BC C1 FE LDY $FEC1,X ; Exit Interrupt
F434: BD C0 FE LDA $FEC0,X ; Exit Interrupt
F437: 4C 40 F4 JMP $F440
Jump from $F42F:
F43A: BC EB E4 LDY $E4EB,X ; Pause After Finding Tape File
F43D: BD EA E4 LDA $E4EA,X ; Pause After Finding Tape File
Jump from $F437:
F440: 8C 96 02 STY $0296 ; RS232 Non-standard Bits/Second
F443: 8D 95 02 STA $0295 ; RS232 Non-standard Bits/Second
Jump from $F428:
F446: AD 95 02 LDA $0295 ; RS232 Non-standard Bits/Second
F449: 0A ASL
F44A: 20 2E FF JSR $FF2E ; NMI RS232 Out
F44D: AD 94 02 LDA $0294 ; RS232 Pseudo 6551 command Register Image
F450: 4A LSR
F451: 90 09 BCC $F45C
F453: AD 01 DD LDA $DD01 ; CIA2: Data Port B (User Port, RS232)
F456: 0A ASL
F457: B0 03 BCS $F45C
F459: 20 0D F0 JSR $F00D ; No DSR (Data Set Ready) Error
Jump from $F451, $F457:
F45C: AD 9B 02 LDA $029B ; RS232 Index to End of Input Buffer
F45F: 8D 9C 02 STA $029C ; RS232 Pointer: High Byte of Input Buffer
F462: AD 9E 02 LDA $029E ; RS232 Index to End of Output Buffer
F465: 8D 9D 02 STA $029D ; RS232 Pointer: High Byte of Output Buffer
F468: 20 27 FE JSR $FE27 ; Read / Set Top of Memory
F46B: A5 F8 LDA $F8 ; RS232 Input Buffer Pointer
F46D: D0 05 BNE $F474
F46F: 88 DEY
F470: 84 F8 STY $F8 ; RS232 Input Buffer Pointer
F472: 86 F7 STX $F7 ; RS232 Input Buffer Pointer
Jump from $F46D:
F474: A5 FA LDA $FA ; RS232 Output Buffer Pointer
F476: D0 05 BNE $F47D
F478: 88 DEY
F479: 84 FA STY $FA ; RS232 Output Buffer Pointer
F47B: 86 F9 STX $F9 ; RS232 Output Buffer Pointer
Jump from $F476, $F2C5:
F47D: 38 SEC
F47E: A9 F0 LDA #$F0
F480: 4C 2D FE JMP $FE2D ; Read / Set Top of Memory
Jump from $F409, $F2AF:
F483: A9 7F LDA #$7F
F485: 8D 0D DD STA $DD0D ; CIA2: Interrupt (NMI) Control Register
F488: A9 06 LDA #$06
F48A: 8D 03 DD STA $DD03 ; CIA2: Data Direction Register B
F48D: 8D 01 DD STA $DD01 ; CIA2: Data Port B (User Port, RS232)
F490: A9 04 LDA #$04
F492: 0D 00 DD ORA $DD00 ; CIA2: Data Port A (Serial Bus, RS232, VIC Base Mem.)
F495: 8D 00 DD STA $DD00 ; CIA2: Data Port A (Serial Bus, RS232, VIC Base Mem.)
F498: A0 00 LDY #$00
F49A: 8C A1 02 STY $02A1 ; RS232 Enables
F49D: 60 RTS
Previous Page / Next Page