gesuchten Record zur Ausgabe bereitstellen ($e275)
Einsprung von $A1FD, $A42B:
A20D: 20 35 A2 JSR $A235 ggf. richtige Datenbloecke lesen
A210: A5 6B LDA $6B Pufferzeiger auf gewuenschte Startposition
A212: 20 22 94 JSR $9422 setzen
A215: A6 50 LDX $50
A217: BD 5E 02 LDA $025E,X Recordlaenge
A21A: 38 SEC -
A21B: E5 68 SBC $68 Position im Record
A21D: B0 03 BCS $A222 >= 0 ? ja, ==>
nein: Zeiger steht hinter dem Recordende
A21F: 4C 9C A1 JMP $A19C 67, Illegal Track or Sector
Zeiger auf naechsten Record berechnen
Einsprung von $A21D:
A222: 18 CLC a = Anzahl Zeichen bis Recordende
A223: 65 6B ADC $6B + Startposition im Datenblock
A225: 90 03 BCC $A22A geht Record ueber Blockgrenze ? nein, ==>
A227: 69 01 ADC #$01 +2 (SEC) (Blockverkettung ueberspringen)
A229: 38 SEC Flag fuer Blockwechsel
Einsprung von $A225:
A22A: 20 8A 9F JSR $9F8A 'Zeiger auf naechsten Record' setzen
und auf Dateiende pruefen
A22D: 4C C6 A0 JMP $A0C6 Byte fuer Ausgabe bereitstellen
A230: A9 51 LDA #$51 51, Overflow in record
A232: 20 7C 80 JSR $807C
Previous Page / Next Page