|
|
|
@ -5061,7 +5061,12 @@ EXT_SLICE3B: |
|
|
|
JR EXT_SLICE4A ; CONTINUE AND COMPUTE THE SLICE |
|
|
|
; |
|
|
|
EXT_SLICE3C: |
|
|
|
; NO PARTITION TABLE FOUND / NO CPM PARTITION FOUND -> HD512 |
|
|
|
; NO PARTITION TABLE FOUND / NO CPM PARTITION |
|
|
|
LD A,(SLICE_SLICE) ; IF SLICE = 0, WE BOOT THE DISK ITSELF. IGNORE SLICE(S) |
|
|
|
OR A ; SET FLAGS FOR SLICE ARGUMENT, IF SLICE==0 |
|
|
|
JR Z,EXT_SLICE5Z ; BYPASS ALL CALCS / CHECKS - JUST BOOT THE DISK |
|
|
|
|
|
|
|
; BOOT SLICE WITH LEGACY SPS |
|
|
|
LD BC,SPS_HD512 ; WITH HD512 SECTORS PER SLICE |
|
|
|
LD (SLICE_SPS),BC ; STORE IT |
|
|
|
|
|
|
|
@ -5089,8 +5094,7 @@ EXT_SLICE4A: |
|
|
|
LD BC,(SLICE_SPS) |
|
|
|
LD A,(SLICE_SLICE) |
|
|
|
OR A ; SLICE NUMBER - SET FLAGS TO CHECK LOOP CTR |
|
|
|
;JR Z,EXT_SLICE5A ; NOTHING TO COUNT |
|
|
|
JR Z,EXT_SLICE6 ; BYPASS CAPACITY CHECK IF SLICE == 0 |
|
|
|
JR Z,EXT_SLICE5A ; NOTHING TO COUNT |
|
|
|
EXT_SLICE4B: |
|
|
|
ADD HL,BC ; ADD ONE SLICE (SPS) TO LOW WORD |
|
|
|
JR NC,EXT_SLICE4C ; CHECK FOR CARRY |
|
|
|
@ -5141,6 +5145,10 @@ EXT_SLICE5C: |
|
|
|
OR A |
|
|
|
RET |
|
|
|
; |
|
|
|
EXT_SLICE5Z: |
|
|
|
LD HL,0 ; BOOT THE DISK TO LBA = 0 |
|
|
|
LD DE,0 ; |
|
|
|
; |
|
|
|
EXT_SLICE6: |
|
|
|
; FINAL CALC AND RETURN SUCCESS |
|
|
|
; ADD PARTITION OFFSET (START) TO DEHL TO GET ABSOLUTE SLICE OFFSET |
|
|
|
|