System information
  ;ADDRESS
 LSECT: ;LOAD THE NEXT SECTOR
 ; INSERT INLINE CODE AT THIS POINT TO
 ; READ ONE 128 BYTE SECTOR FROM THE
 ; TRACK GIVEN IN REGISTER B, SECTOR
 ; GIVEN IN REGISTER C,
 ; INTO THE ADDRESS GIVEN BY <HL>
 ;BRANCH TO LOCATION "COLD" IF A READ ERROR OCCURS
 ;
 ;
 ;
 ;
 ; USER SUPPLIED READ OPERATION GOES
 ; HERE...
 ;
 ;
 ;
 ;
 0008 C36B00  JMP PAST$PATCH ;REMOVE THIS
  ;WHEN PATCHED
 000B  DS 60H
 PAST$PATCH:
 ;GO TO NEXT SECTOR IF LOAD IS INCOMPLETE
 006B 15  DCR D ;SECTS=SECTS-1
 006C CA004A  JZ BOOT ;HEAD. FOR THE BIOS
 ; MORE SECTORS TO LOAD
 ;
 ;WE AREN'T USING A STACK, SO USE <SP> AS SCRATCH
 ;REGISTER
 ; TO HOLD THE LOAD ADDRESS INCREMENT
 006F 318000  LXI SP,128 ;128 BYTES PER
  ;SECTOR
 0072 39  DAD SP ;<HL> = <HL> + 128
 0073 0C  INR C ;SECTOR=SECTOR + 1
 0074 79  MOV A,C
 0075 FE1B  CPI 27 ;LAST SECTOR OF
  ;TRACK?
 0077 DA0800  JC LSECT ;NO, GO READ
  ;ANOTHER
 ;END OF TRACK, INCREMENT TO NEXT TRACK
Appendix E : A Skeletal Cold Start Loader CP/M Operating System Manual
E-2










