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 |