$CE2C/52780:   ?

Jump from $CE0E:

CE2C: 20 D9 CE  JSR $CED9       ; erase work storage
CE2F: 85 92     STA $92
CE31: A6 82     LDX $82         ; channel number
CE33: B5 B5     LDA $B5,X       ; record number lo
CE35: 85 90     STA $90
CE37: B5 BB     LDA $BB,X       ; record number hi
CE39: 85 91     STA $91
CE3B: D0 04     BNE $CE41
CE3D: A5 90     LDA $90
CE3F: F0 0B     BEQ $CE4C       ; record number not zero?

Jump from $CE3B:

CE41: A5 90     LDA $90
CE43: 38        SEC
CE44: E9 01     SBC #$01        ; then subtract one
CE46: 85 90     STA $90
CE48: B0 02     BCS $CE4C
CE4A: C6 91     DEC $91

Jump from $CE3F, $CE48:

CE4C: B5 C7     LDA $C7,X       ; record length
CE4E: 85 6F     STA $6F

Jump from $CE5C:

CE50: 46 6F     LSR $6F
CE52: 90 03     BCC $CE57
CE54: 20 ED CE  JSR $CEED       ; record number * record length

Jump from $CE52:

CE57: 20 E5 CE  JSR $CEE5       ; shift register left
CE5A: A5 6F     LDA $6F
CE5C: D0 F2     BNE $CE50
CE5E: A5 D4     LDA $D4
CE60: 18        CLC
CE61: 65 8B     ADC $8B
CE63: 85 8B     STA $8B
CE65: 90 06     BCC $CE6D       ; result in $8B/$8C/$8D
CE67: E6 8C     INC $8C
CE69: D0 02     BNE $CE6D
CE6B: E6 8D     INC $8D

Jump from $CE65, $CE69:

CE6D: 60        RTS

    Previous Page / Next Page