@ -5243,6 +5243,8 @@ SYS_GETDIOFN:
; E: SLICE, ignored if media is not a hard disk
; RETURNS:
; A: STATUS, -6 (parameter out of range) - if Slice is invalid
Other errors Include ERR_NOUNIT , ERR_NOMEDIA ,
If any error is raised the other return values are undefined
; B: DEVICE ATTRIBUTES, as reported by DIODEVICE
; C: MEDIAID, including MID_HDNEW if hd1k partition is found
; DEHL: LBAOFFSET, of Slice if valid, 0 otherwise.
@ -5250,11 +5252,11 @@ SYS_GETDIOFN:
DIOMED_SLICE .DB 0 ; SLICE ARGUMENT (E)
DIOMED_UNIT .DB 0 ; UNIT ARGUMENT (D)
DIOMED_DEVATT .DB 0 ; DEVICE ATTRIBUTES
DIOMED_MID .DB 0 ; DISCOVERED MEDIAID
;
DIOMED_WRKSTA .EQU $
DIOMED_LBAOFF .FILL 4 , 0 ; START OF PARTITION / SLICE (SECTORS)
DIOMED_LBASIZ .FILL 4 , 0 ; SIZE OF MEDIA / PARTITION (SECTORS)
DIOMED_MID .DB 0 ; DISCOVERED MEDIAID
DIOMED_SPS .DW 0 ; DISCOVERED SECTORS PER SLICE (16BIT)
DIOMED_FND .DB 0 ; DID WE FIND A NON CPM PARTITION
DIOMED_WRKSIZ .EQU $ - DI OMED_WRKSTA ; SIZE OF WORKING DATA
@ -5297,9 +5299,6 @@ SYS_GETDIOMED:
;
SYS_GETDIOMED1A:
; RETURN MEDIA ID (NOT HD) WITH SUCCESS
LD A ,( DI OMED_DEVATT ) ; GET DEVICE ATTRIBUTES
LD B , A ; ... AND RETURN IN B
LD C , E ; RETURN MEDIA ID IN C
LD DE , 0 ; LBA VALUE WILL BE ZERO
LD HL , 0
JP SYS_GETDIOMED6A ; RETURN SUCCESS
@ -5405,8 +5404,6 @@ SYS_GETDIOMED3B:
;
SYS_GETDIOMED3C:
; NO PARTITION TABLE FOUND / NO CPM PARTITION FOUND -> HD512
LD A , MID_HD ; HD512 MEDIA
LD ( DI OMED_MID ), A ; STORE IT
LD BC , SP S_HD512 ; WITH HD512 SECTORS PER SLICE
LD ( DI OMED_SPS ), BC ; STORE IT