From 171e4791a80462627c5876e095a042dc3e3b9eac Mon Sep 17 00:00:00 2001 From: Tolik <85737314+Tolik-Trek@users.noreply.github.com> Date: Thu, 23 Jan 2025 21:14:27 +1000 Subject: [PATCH] ... --- constants/SP2000.inc | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/constants/SP2000.inc b/constants/SP2000.inc index 21a7efc..f9db583 100644 --- a/constants/SP2000.inc +++ b/constants/SP2000.inc @@ -1714,28 +1714,31 @@ Config_PG: ; 8 - размер сектора ;10 - Removable Media Parameters STRUCT HDD_INIT_TABLE -.DRV_Flags BYTE ; 0 DRVHD_H -.SectorsPerTrack BYTE ; 1 SC_PT_H -.HeadsNumber BYTE ; 2 HEADS_H -.CylinderNumberLow BYTE ; 3 CYL_L_H -.CylinderNumberHigh BYTE ; 4 CYL_H_H -.SectorsPerCylinderLow BYTE ; 5 SPCLL_H -.SectorsPerCylinderHigh BYTE ; 6 SPCLH_H -.DriveType BYTE ; 7 DTYPE_H -.SectorSize WORD ; 8 -.RemovableMedia BYTE ; 10 ; bit0=1 removable, bit1=1 drive changed, bit7..2 reserved -.RESERVED_1 BYTE ; 11 -.RESERVED_2 BYTE ; 12 -.RESERVED_3 BYTE ; 13 -.RESERVED_4 BYTE ; 14 -.RESERVED_5 BYTE ; 15 +.DRV_Flags BYTE ; 0 DRVHD_H +.SectorsPerTrack BYTE ; 1 SC_PT_H +.HeadsNumber BYTE ; 2 HEADS_H +.CylinderNumberLow BYTE ; 3 CYL_L_H ; for ATAPI MediaSizeLow (word) +.CylinderNumberHigh BYTE ; 4 CYL_H_H +.SectorsPerCylinderLow BYTE ; 5 SPCLL_H ; for ATAPI MediaSizeHigh (word) +.SectorsPerCylinderHigh BYTE ; 6 SPCLH_H +.DriveType BYTE ; 7 DTYPE_H +.SectorSize WORD ; 8 +.RemovableMedia BYTE ; 10 ; bit0=1 removable, bit1=1 drive changed, bit7..2 reserved +.RESERVED_1 BYTE ; 11 +.RESERVED_2 BYTE ; 12 +.RESERVED_3 BYTE ; 13 +.RESERVED_4 BYTE ; 14 +.RESERVED_5 BYTE ; 15 ENDS +HDD_INIT_TABLE.MediaSizeLow EQU HDD_INIT_TABLE.CylinderNumberLow ; For ATAPI +HDD_INIT_TABLE.MediaSizeHigh EQU HDD_INIT_TABLE.SectorsPerCylinderLow; For ATAPI ; -INIT_TBL_IDE0 HDD_INIT_TABLE = SYS_PAGE.IDE_0 ; !HARDCODE table in SYS_PAGE -INIT_TBL_IDE1 HDD_INIT_TABLE = SYS_PAGE.IDE_1 ; !HARDCODE table in SYS_PAGE -INIT_TBL_IDE2 HDD_INIT_TABLE = SYS_PAGE.IDE_2 ; !HARDCODE table in SYS_PAGE -INIT_TBL_IDE3 HDD_INIT_TABLE = SYS_PAGE.IDE_3 ; !HARDCODE table in SYS_PAGE +INIT_TBL_IDE0 HDD_INIT_TABLE = SYS_PAGE.IDE_0 ; !HARDCODE table in SYS_PAGE +INIT_TBL_IDE1 HDD_INIT_TABLE = SYS_PAGE.IDE_1 ; !HARDCODE table in SYS_PAGE +INIT_TBL_IDE2 HDD_INIT_TABLE = SYS_PAGE.IDE_2 ; !HARDCODE table in SYS_PAGE +INIT_TBL_IDE3 HDD_INIT_TABLE = SYS_PAGE.IDE_3 ; !HARDCODE table in SYS_PAGE +; ; Регистр адреса накопителя (#3F7 чтение) содержит номер головки и HDD, выбранные в предыдущей операции. ; Биты 0, 1 - /DSO, /DS1 - биты выбора соответствующего накопителя 0 или 1.