     $F393/62355:   Initialise pointer in buffer

    Jump from $F301, $F43A, $F48F:

    F393: A4 3F     LDY $3F         ; buffer number

    Jump from $F30C:

    F395: B9 00 00  LDA $00,Y       ; command code
    F398: 48        PHA             ; save
    F399: 10 10     BPL $F3AB
    F39B: 29 78     AND #$78        ; erase bits 0,1,2, and 7
    F39D: 85 45     STA $45
    F39F: 98        TYA             ; buffer number
    F3A0: 0A        ASL             ; times two
    F3A1: 69 06     ADC #$06        ; plus 6
    F3A3: 85 32     STA $32         ; equals pointer to actual buffer
    F3A5: 98        TYA             ; buffer number
    F3A6: 18        CLC
    F3A7: 69 03     ADC #$03        ; plus 3
    F3A9: 85 31     STA $31         ; equals buffer address hi

    Jump from $F399:

    F3AB: A0 00     LDY #$00
    F3AD: 84 30     STY $30         ; buffer address lo
    F3AF: 68        PLA             ; get command code back
    F3B0: 60        RTS

        Previous Page / Next Page