$D39B/54171: Get byte for output Jump from $CA39: D39B: 20 EB D0 JSR $D0EB ; open channel for reading D39E: 20 00 C1 JSR $C100 ; turn LED on D3A1: 20 AA D3 JSR $D3AA ; get byte in output register D3A4: A6 82 LDX $82 ; channel number D3A6: BD 3E 02 LDA $023E,X ; get byte D3A9: 60 RTS Jump from $D3A1, $E992: D3AA: A6 82 LDX $82 ; channel number D3AC: 20 25 D1 JSR $D125 ; check file type D3AF: D0 03 BNE $D3B4 ; no rel-file? D3B1: 4C 20 E1 JMP $E120 ; get byte from rel-file Jump from $D3AF: D3B4: A5 83 LDA $83 ; secondary address D3B6: C9 0F CMP #$0F ; 15 D3B8: F0 5A BEQ $D414 ; yes, read error channel D3BA: B5 F2 LDA $F2,X D3BC: 29 08 AND #$08 ; end flag set? D3BE: D0 13 BNE $D3D3 ; no D3C0: 20 25 D1 JSR $D125 ; check file type D3C3: C9 07 CMP #$07 ; direct access file? D3C5: D0 07 BNE $D3CE ; no D3C7: A9 89 LDA #$89 ; set READ and WRITE flag D3C9: 95 F2 STA $F2,X D3CB: 4C DE D3 JMP $D3DE Jump from $D3C5: D3CE: A9 00 LDA #$00 D3D0: 95 F2 STA $F2,X ; erase READ and WRITE flag D3D2: 60 RTS Jump from $D3BE: D3D3: A5 83 LDA $83 ; secondary address D3D5: F0 32 BEQ $D409 ; zero, LOAD? D3D7: 20 25 D1 JSR $D125 ; check file type D3DA: C9 04 CMP #$04 ; rel-file or direct access? D3DC: 90 22 BCC $D400 ; no Jump from $D3CB: D3DE: 20 2F D1 JSR $D12F ; get buffer and channel number D3E1: B5 99 LDA $99,X ; buffer pointer D3E3: D9 44 02 CMP $0244,Y ; equal end pointer? D3E6: D0 04 BNE $D3EC ; no D3E8: A9 00 LDA #$00 D3EA: 95 99 STA $99,X ; buffer pointer to zero Jump from $D3E6, $CD59: D3EC: F6 99 INC $99,X ; increment buffer pointer Jump from $CD91, $CDCC, $CFD5: D3EE: A1 99 LDA ($99,X) ; get byte from buffer D3F0: 99 3E 02 STA $023E,Y ; into output register D3F3: B5 99 LDA $99,X ; buffer pointer D3F5: D9 44 02 CMP $0244,Y ; equal end pointer? D3F8: D0 05 BNE $D3FF ; no D3FA: A9 81 LDA #$81 D3FC: 99 F2 00 STA $F2,Y ; set flags Jump from $D3F8: D3FF: 60 RTS Jump from $D3DC, $D40C: D400: 20 56 D1 JSR $D156 ; get byte from buffer Jump from $D411: D403: A6 82 LDX $82 ; channel number D405: 9D 3E 02 STA $023E,X ; byte in output register D408: 60 RTS Jump from $D3D5: D409: AD 54 02 LDA $0254 ; flag for directory? D40C: F0 F2 BEQ $D400 ; no D40E: 20 67 ED JSR $ED67 ; create directory line D411: 4C 03 D4 JMP $D403 Jump from $D3B8: D414: 20 E8 D4 JSR $D4E8 ; set buffer pointer D417: C9 D4 CMP #$D4 D419: D0 18 BNE $D433 D41B: A5 95 LDA $95 D41D: C9 02 CMP #$02 D41F: D0 12 BNE $D433 D421: A9 0D LDA #$0D ; CR D423: 85 85 STA $85 ; in output register D425: 20 23 C1 JSR $C123 ; erase error flags D428: A9 00 LDA #$00 D42A: 20 C1 E6 JSR $E6C1 ; create 'ok' message D42D: C6 A5 DEC $A5 ; set buffer pointer back D42F: A9 80 LDA #$80 ; set READ flag D431: D0 12 BNE $D445 Jump from $D419, $D41F: D433: 20 37 D1 JSR $D137 ; get byte from buffer D436: 85 85 STA $85 ; into output register D438: D0 09 BNE $D443 Jump from $CB48: D43A: A9 D4 LDA #$D4 D43C: 20 C8 D4 JSR $D4C8 ; set buffer pointer in front of error pointer D43F: A9 02 LDA #$02 D441: 95 9A STA $9A,X ; hi-address Jump from $D438, $CB42: D443: A9 88 LDA #$88 ; set READ flag Jump from $D431: D445: 85 F7 STA $F7 D447: A5 85 LDA $85 ; data byte D449: 8D 43 02 STA $0243 ; into output register D44C: 60 RTS Previous Page / Next Page |