$E120/57632:   Get byte from REL file

Jump from $D3B1:

E120: A9 80     LDA #$80
E122: 20 A6 DD  JSR $DDA6       ; test bit 7
E125: D0 37     BNE $E15E       ; set?
E127: 20 2F D1  JSR $D12F       ; get byte from buffer
E12A: B5 99     LDA $99,X       ; buffer pointer
E12C: D9 44 02  CMP $0244,Y     ; compare to end pointer
E12F: F0 22     BEQ $E153       ; equal?
E131: F6 99     INC $99,X       ; increment buffer pointer
E133: D0 06     BNE $E13B       ; not zero?
E135: 20 3C E0  JSR $E03C       ; write block, read next one

Jump from $E294:

E138: 20 2F D1  JSR $D12F       ; get byte from buffer

Jump from $E133:

E13B: A1 99     LDA ($99,X)

Jump from $E15B:

E13D: 99 3E 02  STA $023E,Y     ; in output register
E140: A9 89     LDA #$89
E142: 99 F2 00  STA $F2,Y       ; set READ and WRITE flag
E145: B5 99     LDA $99,X       ; buffer pointer
E147: D9 44 02  CMP $0244,Y     ; compare to end pointer
E14A: F0 01     BEQ $E14D       ; same?
E14C: 60        RTS

Jump from $E14A:

E14D: A9 81     LDA #$81
E14F: 99 F2 00  STA $F2,Y       ; set flag for end
E152: 60        RTS

Jump from $E12F, $DCA3, $E0CB:

E153: 20 D0 DF  JSR $DFD0       ; find next record
E156: 20 2F D1  JSR $D12F       ; get buffer and channel number
E159: A5 85     LDA $85         ; data byte
E15B: 4C 3D E1  JMP $E13D       ; into output register

Jump from $E125, $E262, $E26F:

E15E: A6 82     LDX $82         ; channel number
E160: A9 0D     LDA #$0D        ; CR
E162: 9D 3E 02  STA $023E,X     ; into output register
E165: A9 81     LDA #$81
E167: 95 F2     STA $F2,X       ; set flag for end
E169: A9 50     LDA #$50
E16B: 20 C8 C1  JSR $C1C8       ; 50, 'record not present'

Jump from $E039:

E16E: A6 82     LDX $82         ; channel number
E170: B5 C1     LDA $C1,X       ; write pointer
E172: 85 87     STA $87         ; save
E174: C6 87     DEC $87
E176: C9 02     CMP #$02        ; equal 2?
E178: D0 04     BNE $E17E       ; no
E17A: A9 FF     LDA #$FF
E17C: 85 87     STA $87

Jump from $E178:

E17E: B5 C7     LDA $C7,X       ; record length
E180: 85 88     STA $88
E182: 20 E8 D4  JSR $D4E8       ; set buffer pointer
E185: A6 82     LDX $82         ; channel number
E187: C5 87     CMP $87         ; buffer pointer > write pointer?
E189: 90 19     BCC $E1A4
E18B: F0 17     BEQ $E1A4       ; no
E18D: 20 1E CF  JSR $CF1E       ; change buffer
E190: 20 B2 E1  JSR $E1B2
E193: 90 08     BCC $E19D
E195: A6 82     LDX $82         ; channel number
E197: 9D 44 02  STA $0244,X
E19A: 4C 1E CF  JMP $CF1E       ; change buffer

Jump from $E193:

E19D: 20 1E CF  JSR $CF1E       ; change buffer
E1A0: A9 FF     LDA #$FF
E1A2: 85 87     STA $87

Jump from $E189, $E18B:

E1A4: 20 B2 E1  JSR $E1B2
E1A7: B0 03     BCS $E1AC
E1A9: 20 E8 D4  JSR $D4E8       ; set buffer pointer

Jump from $E1A7:

E1AC: A6 82     LDX $82         ; channel number
E1AE: 9D 44 02  STA $0244,X     ; end pointer
E1B1: 60        RTS

Jump from $E190, $E1A4:

E1B2: 20 2B DE  JSR $DE2B       ; buffer pointer to zero
E1B5: A4 87     LDY $87

Jump from $E1C2:

E1B7: B1 94     LDA ($94),Y     ; byte from buffer
E1B9: D0 0D     BNE $E1C8       ; not zero?
E1BB: 88        DEY
E1BC: C0 02     CPY #$02
E1BE: 90 04     BCC $E1C4
E1C0: C6 88     DEC $88
E1C2: D0 F3     BNE $E1B7

Jump from $E1BE:

E1C4: C6 88     DEC $88
E1C6: 18        CLC
E1C7: 60        RTS

Jump from $E1B9:

E1C8: 98        TYA
E1C9: 38        SEC
E1CA: 60        RTS

    Previous Page / Next Page