     $CC1B/52251:   Perform [B] - Block/Buffer command

    CC1B: A0 00     LDY #$00
    CC1D: A2 00     LDX #$00
    CC1F: A9 2D     LDA #$2D        ; '-'
    CC21: 20 68 C2  JSR $C268       ; search for minus sign
    CC24: D0 0A     BNE $CC30       ; found?

    Jump from $CC40:

    CC26: A9 31     LDA #$31
    CC28: 4C C8 C1  JMP $C1C8       ; 31, 'syntax error'

    Jump from $CC31, $CC9F:

    CC2B: A9 30     LDA #$30
    CC2D: 4C C8 C1  JMP $C1C8       ; 30, 'syntax error'

    Jump from $CC24:

    CC30: 8A        TXA
    CC31: D0 F8     BNE $CC2B       ; comma, then error
    CC33: A2 05     LDX #$05
    CC35: B9 00 02  LDA $0200,Y     ; char from buffer

    Jump from $CC3E:

    CC38: DD 5D CC  CMP $CC5D,X     ; compare with 'AFRWEP'
    CC3B: F0 05     BEQ $CC42       ; found?
    CC3D: CA        DEX
    CC3E: 10 F8     BPL $CC38       ; compare with all characters
    CC40: 30 E4     BMI $CC26       ; not found, error

    Jump from $CC3B:

    CC42: 8A        TXA
    CC43: 09 80     ORA #$80        ; command number, set bit 7
    CC45: 8D 2A 02  STA $022A
    CC48: 20 6F CC  JSR $CC6F       ; get parameters
    CC4B: AD 2A 02  LDA $022A
    CC4E: 0A        ASL             ; number times 2
    CC4F: AA        TAX             ; as index
    CC50: BD 64 CC  LDA $CC64,X     ; address of command hi
    CC53: 85 70     STA $70
    CC55: BD 63 CC  LDA $CC63,X     ; address lo
    CC58: 85 6F     STA $6F
    CC5A: 6C 6F 00  JMP ($006F)     ; jump to command

        Previous Page / Next Page