Kommandozeilenende feststellen (CR (/LF) entfernen) ($c2b3)
(bei u0 Zeilenende nicht veraendern)
Kommandozeilen-Parameter loeschen

Einsprung von $8018, $967C, $A1A1:

8165: A4 CD     LDY $CD          Laenge der Kommandozeile
8167: F0 36     BEQ $819F        = 0 ?  ==>
8169: 88        DEY
816A: F0 32     BEQ $819E        = 1 ?  ==> (kann kein u0 sein)
816C: AD 00 02  LDA $0200        (etwas umstaendliche) Ueberpruefung auf 'u0'
816F: C9 55     CMP #$55
8171: D0 07     BNE $817A        (u0)
8173: AD 01 02  LDA $0201
8176: C9 30     CMP #$30
8178: F0 04     BEQ $817E        = u0 ? ==>

Einsprung von $8171:

817A: B9 00 02  LDA $0200,Y      Zeilenende mit CR vergleichen
817D: 2C         B $2C         (u0)

Einsprung von $8178:

817E: A9 00     LDA #$00         u0: CR nicht beachten
8180: C9 0D     CMP #$0D
8182: F0 1B     BEQ $819F
8184: 88        DEY
8185: AD 00 02  LDA $0200        (u0 Abfrage) (wozu ?)
8188: C9 55     CMP #$55
818A: D0 07     BNE $8193
818C: AD 01 02  LDA $0201
818F: C9 30     CMP #$30
8191: F0 04     BEQ $8197        = u0 ? ==>

Einsprung von $818A:

8193: B9 00 02  LDA $0200,Y      vorletztes Zeichen mit CR vergleichen
8196: 2C         B $2C

Einsprung von $8191:

8197: A9 00     LDA #$00         u0: CR nicht beachten
8199: C9 0D     CMP #$0D
819B: F0 02     BEQ $819F
819D: C8        INY              <= kein CR vorhanden bzw. u0

Einsprung von $816A:

819E: C8        INY              <= CR vorhanden / Laenge=1

Einsprung von $8167, $8182, $819B:

819F: 84 29     STY $29          <= CL,LF vorhanden / Laenge=0
81A1: C0 2A     CPY #$2A         Zeile zu lang ?
81A3: A0 FF     LDY #$FF
81A5: 90 08     BCC $81AF        nein, ==>
81A7: 8C 2A 02  STY $022A
81AA: A9 32     LDA #$32         32, SYNTAX ERROR
81AC: 4C 7C 80  JMP $807C

Kommandozeilenparameter initialisieren ($c2dc)

Einsprung von $81A5, $992C:

81AF: A0 00     LDY #$00
81B1: 98        TYA
81B2: 85 CD     STA $CD          Zeiger auf INPUT-Puffer Lo = 0
81B4: 8D 6F 02  STA $026F        Aktuelle Recordlaenge = 0
81B7: 8D 2D 02  STA $022D        Aktueller Dateityp = DEL
81BA: 8D 33 02  STA $0233        Dateityp fuer Dateisuche loeschen
81BD: 85 67     STA $67          Zaehler (z.B. fuer Block-Befehle) loeschen
81BF: 8D 30 02  STA $0230        Anzahl Parameter vor '=' bzw. Anzahl der
                                Dateinamen
81C2: 8D 2E 02  STA $022E        Parameterzaehler (vor '=') loeschen
81C5: 8D 2F 02  STA $022F        Anzahl Parameter in Kommandozeile loeschen
81C8: 8D A1 02  STA $02A1        Jokerflag loeschen
81CB: 8D AB 02  STA $02AB        Fehlerflag loeschen
81CE: A2 05     LDX #$05

Einsprung von $81E2:

81D0: 9D 90 02  STA $0290,X      Positionen der Parameter
81D3: 95 E4     STA $E4,X        Dir-Block mit dem Dateieintrag
81D5: 95 E9     STA $E9,X        Zeiger auf den Eintrag
81D7: 95 EE     STA $EE,X        Drivenummern
81D9: 95 F3     STA $F3,X        Jokerflags loeschen
81DB: 9D 96 02  STA $0296,X      T&S der Dateien = 0 bzw.
81DE: 9D 9B 02  STA $029B,X      Parameter der Block-Befehle = 0
81E1: CA        DEX
81E2: D0 EC     BNE $81D0
81E4: 60        RTS

    Previous Page / Next Page