     $C3CA/50122:   Verify drive number

    Jump from $C44F, $C829, $D84F, $DA9E:

    C3CA: A9 00     LDA #$00
    C3CC: 85 6F     STA $6F
    C3CE: 8D 8D 02  STA $028D
    C3D1: 48        PHA
    C3D2: AE 78 02  LDX $0278       ; number of drive numbers

    Jump from $C3E9, $C3ED:

    C3D5: 68        PLA
    C3D6: 05 6F     ORA $6F
    C3D8: 48        PHA
    C3D9: A9 01     LDA #$01
    C3DB: 85 6F     STA $6F
    C3DD: CA        DEX
    C3DE: 30 0F     BMI $C3EF
    C3E0: B5 E2     LDA $E2,X
    C3E2: 10 04     BPL $C3E8
    C3E4: 06 6F     ASL $6F
    C3E6: 06 6F     ASL $6F

    Jump from $C3E2:

    C3E8: 4A        LSR
    C3E9: 90 EA     BCC $C3D5
    C3EB: 06 6F     ASL $6F
    C3ED: D0 E6     BNE $C3D5

    Jump from $C3DE:

    C3EF: 68        PLA
    C3F0: AA        TAX
    C3F1: BD 3F C4  LDA $C43F,X     ; get syntax flag
    C3F4: 48        PHA
    C3F5: 29 03     AND #$03
    C3F7: 8D 8C 02  STA $028C
    C3FA: 68        PLA
    C3FB: 0A        ASL
    C3FC: 10 3E     BPL $C43C
    C3FE: A5 E2     LDA $E2

    Jump from $C43D:

    C400: 29 01     AND #$01        ; isolate drive number
    C402: 85 7F     STA $7F
    C404: AD 8C 02  LDA $028C
    C407: F0 2B     BEQ $C434
    C409: 20 3D C6  JSR $C63D       ; initialize drive
    C40C: F0 12     BEQ $C420       ; error?
    C40E: 20 8F C3  JSR $C38F       ; switch to other drive
    C411: A9 00     LDA #$00
    C413: 8D 8C 02  STA $028C
    C416: 20 3D C6  JSR $C63D       ; initialize drive
    C419: F0 1E     BEQ $C439       ; no error?

    Jump from $C437:

    C41B: A9 74     LDA #$74
    C41D: 20 C8 C1  JSR $C1C8       ; 74, 'drive not ready'

    Jump from $C40C:

    C420: 20 8F C3  JSR $C38F
    C423: 20 3D C6  JSR $C63D       ; initialize drive
    C426: 08        PHP
    C427: 20 8F C3  JSR $C38F       ; switch to other drive
    C42A: 28        PLP
    C42B: F0 0C     BEQ $C439       ; no error?
    C42D: A9 00     LDA #$00
    C42F: 8D 8C 02  STA $028C       ; number of drives
    C432: F0 05     BEQ $C439

    Jump from $C407:

    C434: 20 3D C6  JSR $C63D       ; initialize drive
    C437: D0 E2     BNE $C41B       ; error?

    Jump from $C419, $C42B, $C432:

    C439: 4C 00 C1  JMP $C100       ; turn LED on

    Jump from $C3FC:

    C43C: 2A        ROL             ; drive number from carry after bit 0
    C43D: 4C 00 C4  JMP $C400

        Previous Page / Next Page