Main Index Routine Index Memory Index
Previous Page Next Page


Routine $0698:   Wait for Sync mark, CF=0 if Sync found, Y:=0 (~set [$15]).

This routine checks if the drive reads a sync signal within a special time period (~Y*256 countdown). The carry flag is set if no sync occurred. Finally Y:=0 and return. If a $75 sector header was found in the calling routine $0678, the default offset to start of file data in [$0400] buffer is set to [$15]:=$75+$12+1=$88 (needed for $0625 file transfer).

JSR from $067F, Jump from $068C: 0698: 69 12 ADC #$12 ; A=$75 if data sector header was found 069A: 85 15 STA $15 ; set default offset to start of file data in [$0400] buffer: $75+$12+1=$88 JSR from $0736: 069C: A0 35 LDY #$35 Jump from $06A5, $06A8: 069E: AD 00 1C LDA $1C00 ; bit 7 of [$1C00] tells if SYNC is found 06A1: 10 07 BPL $06AA ; branch if SYNC found (bit 7 = 0) 06A3: E6 10 INC $10 06A5: D0 F7 BNE $069E 06A7: 88 DEY 06A8: D0 F4 BNE $069E Jump from $06A1: 06AA: 2C 01 1C BIT $1C01 ; set MNV-flags 06AD: B8 CLV 06AE: 2A ROL A ; move bit 7 (SYNC found / not found) into Carry Flag (CF) 06AF: A0 00 LDY #$00 06B1: 60 RTS Previous Page / Next Page