     $D6A6/54950:   Attempt command execution multiple times

    Jump from $D5D9, $D616, $D655, $D666:

    D6A6: A5 6A     LDA $6A         ; maximum number of repetitions
    D6A8: 29 3F     AND #$3F
    D6AA: A8        TAY

    Jump from $D6C2:

    D6AB: AD 6D 02  LDA $026D       ; bit for LED
    D6AE: 4D 00 1C  EOR $1C00
    D6B1: 8D 00 1C  STA $1C00
    D6B4: BD 5B 02  LDA $025B,X     ; command
    D6B7: 95 00     STA $00,X       ; transmit to disk controller

    Jump from $D6BB:

    D6B9: B5 00     LDA $00,X       ; and return message
    D6BB: 30 FC     BMI $D6B9       ; wait
    D6BD: C9 02     CMP #$02        ; ok?
    D6BF: 90 03     BCC $D6C4       ; yes
    D6C1: 88        DEY             ; decrement counter
    D6C2: D0 E7     BNE $D6AB       ; attempt again

    Jump from $D6BF:

    D6C4: 48        PHA
    D6C5: AD 6D 02  LDA $026D
    D6C8: 0D 00 1C  ORA $1C00       ; LED off
    D6CB: 8D 00 1C  STA $1C00
    D6CE: 68        PLA
    D6CF: 60        RTS

        Previous Page / Next Page