mirror of
https://github.com/Tolik-Trek/Shared_Includes.git
synced 2026-06-15 09:01:33 +03:00
...
This commit is contained in:
parent
8f27f59053
commit
7464507d7f
@ -1,29 +1,29 @@
|
|||||||
;
|
;
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
STRUCT _sBOOT_SECTOR_PARAMS ; 62 bytes
|
STRUCT _sBOOT_SECTOR_PARAMS ; 62 bytes
|
||||||
.JMP BLOCK 3,0 ; +#00 "JMP"
|
.JMP: BLOCK 3,0 ; +#00 "JMP"
|
||||||
.ID_NAME TEXT 8, {"DSS_1.7","0"} ; +#03 DOS NAME - DB "DSS_1.70"
|
.ID_NAME: TEXT 8, {"DSS_1.7","0"} ; +#03 DOS NAME - DB "DSS_1.70"
|
||||||
; Block Parameters BIOS
|
; Block Parameters BIOS
|
||||||
.B_P_S WORD #200 ; +#0B BYTE PER SECTOR
|
.B_P_S: WORD #200 ; +#0B BYTE PER SECTOR
|
||||||
.S_P_C BYTE 2 ; +#0D SECTORS PER CLUSTER
|
.S_P_C: BYTE 2 ; +#0D SECTORS PER CLUSTER
|
||||||
.RESERVED_SECTORS WORD 1 ; +#0E <20> §¬¥à á¨á⥬®© ®¡« á⨠(¢ª«îç ï íâ®â ᥪâ®à) RESERVE SECTORS
|
.RESERVED_SECTORS: WORD 1 ; +#0E <20> §¬¥à á¨á⥬®© ®¡« á⨠(¢ª«îç ï íâ®â ᥪâ®à) RESERVE SECTORS
|
||||||
.FAT_NUM BYTE 2 ; +#10 AMOUNT FATS
|
.FAT_NUM: BYTE 2 ; +#10 AMOUNT FATS
|
||||||
.F_P_DIR WORD 112 ; +#11 —¨á«® ®¯¨á ⥫¥© ä ©«®¢ ¢ ª®à¥¢®¬ ª â «®£¥ (¢ FAT32 - 0)
|
.F_P_DIR: WORD 112 ; +#11 —¨á«® ®¯¨á ⥫¥© ä ©«®¢ ¢ ª®à¥¢®¬ ª â «®£¥ (¢ FAT32 - 0)
|
||||||
.S_P_D WORD 1440 ; +#13 ޡ饥 ç¨á«® ᥪâ®à®¢ ¤¨áª¥ (¥á«¨ 0, â® à §¬¥à - ¢ .BPB_BIG_TOTAL_SECTORS)
|
.S_P_D: WORD 1440 ; +#13 ޡ饥 ç¨á«® ᥪâ®à®¢ ¤¨áª¥ (¥á«¨ 0, â® à §¬¥à - ¢ .BPB_BIG_TOTAL_SECTORS)
|
||||||
.DRIVE_TYPE BYTE #F0 ; +#15 ’¨¯ ãáâனáâ¢
|
.DRIVE_TYPE: BYTE #F0 ; +#15 ’¨¯ ãáâனáâ¢
|
||||||
.S_P_F WORD 2 ; +#16 SIZE FAT IN SECTORS (0 ¢ FAT32)
|
.S_P_F: WORD 2 ; +#16 SIZE FAT IN SECTORS (0 ¢ FAT32)
|
||||||
.S_P_T WORD 9 ; +#18 SECTOR PER TRACK
|
.S_P_T: WORD 9 ; +#18 SECTOR PER TRACK
|
||||||
.HEADS WORD 2 ; +#1A AMOUNT SIDES
|
.HEADS: WORD 2 ; +#1A AMOUNT SIDES
|
||||||
.HIDDEN DWORD 0 ; +#1C HIDDEN SECTORS
|
.HIDDEN: DWORD 0 ; +#1C HIDDEN SECTORS
|
||||||
.BPB_BIG_TOTAL_SECTORS_L WORD 0 ; +#20 BIG TOTAL SECTOR Low word
|
.BPB_BIG_TOTAL_SECTORS_L: WORD 0 ; +#20 BIG TOTAL SECTOR Low word
|
||||||
.BPB_BIG_TOTAL_SECTORS_H WORD 0 ; +#22 BIG TOTAL SECTOR High word
|
.BPB_BIG_TOTAL_SECTORS_H: WORD 0 ; +#22 BIG TOTAL SECTOR High word
|
||||||
; FAT 12-16
|
; FAT 12-16
|
||||||
.BPB_PHISICAL_DRIVE_NUMBER BYTE #80 ; +#24 PHISICAL DRIVE NUMBER
|
.BPB_PHISICAL_DRIVE_NUMBER: BYTE #80 ; +#24 PHISICAL DRIVE NUMBER
|
||||||
.reserved BYTE 0 ; +#25 ‡ १¥à¢¨à®¢ ®
|
.reserved: BYTE 0 ; +#25 ‡ १¥à¢¨à®¢ ®
|
||||||
.BPB_EXT_BOOT_RECORD_SIGNATURE BYTE #29 ; +#26 EXTENDED BOOT RECORD SIGNATURE
|
.BPB_EXT_BOOT_RECORD_SIGNATURE: BYTE #29 ; +#26 EXTENDED BOOT RECORD SIGNATURE
|
||||||
.BPB_SERIAL_NUMBER DWORD 0 ; +#27 VOLUME SERIAL NUMBER
|
.BPB_SERIAL_NUMBER: DWORD 0 ; +#27 VOLUME SERIAL NUMBER
|
||||||
.BPB_LABEL TEXT 11, {"NO NAME"," "} ; +#2B DISK LABEL
|
.BPB_LABEL: TEXT 11, {"NO NAME"," "} ; +#2B DISK LABEL
|
||||||
.ID_FAT TEXT 8, {"FAT16"," "} ; +#36 FILE SYSTEM ID (BPB_FS_ID) ;!TODO detect fat type by clusters!
|
.ID_FAT: TEXT 8, {"FAT16"," "} ; +#36 FILE SYSTEM ID (BPB_FS_ID) ;!TODO detect fat type by clusters!
|
||||||
;.BOOT_CODE BLOCK 448,0 ; +#3E boot loader's code
|
;.BOOT_CODE BLOCK 448,0 ; +#3E boot loader's code
|
||||||
;.MBR_PARTITION_TABLE BLOCK 4*16 ; +#1BE table = 4x16 bytes
|
;.MBR_PARTITION_TABLE BLOCK 4*16 ; +#1BE table = 4x16 bytes
|
||||||
;.MBR_SIGNATURE WORD #AA55 ; +#1FE Signature
|
;.MBR_SIGNATURE WORD #AA55 ; +#1FE Signature
|
||||||
@ -32,53 +32,69 @@
|
|||||||
|
|
||||||
;
|
;
|
||||||
STRUCT _sMBR_PARTITION_RECORD
|
STRUCT _sMBR_PARTITION_RECORD
|
||||||
.isActive BYTE 0 ; +#00
|
.isActive: BYTE 0 ; +#00
|
||||||
.Start_head BYTE 0 ; +#01
|
.Start_head: BYTE 0 ; +#01
|
||||||
.Start_sector BYTE 0 ; +#02
|
.Start_sector: BYTE 0 ; +#02
|
||||||
.Start_cylinder BYTE 0 ; +#03
|
.Start_cylinder: BYTE 0 ; +#03
|
||||||
.FS_ID BYTE 0 ; +#04
|
.FS_ID: BYTE 0 ; +#04
|
||||||
.End_head BYTE 0 ; +#05
|
.End_head: BYTE 0 ; +#05
|
||||||
.End_sector BYTE 0 ; +#06
|
.End_sector: BYTE 0 ; +#06
|
||||||
.End_cylinder BYTE 0 ; +#07
|
.End_cylinder: BYTE 0 ; +#07
|
||||||
.Start_LBA DWORD 0 ; +#08
|
.Start_LBA: DWORD 0 ; +#08
|
||||||
.Size_LBA DWORD 0 ; +#0C
|
.Size_LBA: DWORD 0 ; +#0C
|
||||||
ENDS
|
ENDS
|
||||||
;
|
;
|
||||||
|
|
||||||
;
|
;
|
||||||
STRUCT _sMBR_PARTITION_TABLE ;, #01BE ; MBR: Offset of partition table in the MBR
|
STRUCT _sMBR_PARTITION_TABLE ;, #01BE ; MBR: Offset of partition table in the MBR
|
||||||
.Record_1 _sMBR_PARTITION_RECORD ; +#01BE
|
.Record_1: _sMBR_PARTITION_RECORD ; +#01BE
|
||||||
.Record_2 _sMBR_PARTITION_RECORD ; +#01CE
|
.Record_2: _sMBR_PARTITION_RECORD ; +#01CE
|
||||||
.Record_3 _sMBR_PARTITION_RECORD ; +#01DE
|
.Record_3: _sMBR_PARTITION_RECORD ; +#01DE
|
||||||
.Record_4 _sMBR_PARTITION_RECORD ; +#01EE
|
.Record_4: _sMBR_PARTITION_RECORD ; +#01EE
|
||||||
ENDS
|
ENDS
|
||||||
;
|
;
|
||||||
|
|
||||||
;
|
;
|
||||||
STRUCT _sBOOT_SECTOR
|
STRUCT _sBOOT_SECTOR
|
||||||
.PARAMS _sBOOT_SECTOR_PARAMS
|
.PARAMS: _sBOOT_SECTOR_PARAMS
|
||||||
.BOOT_CODE BLOCK 384,0 ; +#3E boot loader's code
|
.BOOT_CODE: BLOCK 384,0 ; +#3E boot loader's code
|
||||||
.PARTITION_TABLE _sMBR_PARTITION_TABLE
|
.PARTITION_TABLE: _sMBR_PARTITION_TABLE
|
||||||
.MBR_SIGNATURE WORD #AA55 ; +#01FE
|
.MBR_SIGNATURE: WORD #AA55 ; +#01FE
|
||||||
ENDS
|
ENDS
|
||||||
|
|
||||||
|
STRUCT _sFAT_DIRECTORY_RECORD
|
||||||
|
.NAME: TEXT 8,{". "," "} ;+ #00 +00 NAME
|
||||||
|
.EXT: TEXT 3,{" "," "} ;+ #08 +08 EXT
|
||||||
|
.ATTRIBUT: BYTE #10 ;+ #0B +11 ATTRIBUT
|
||||||
|
.RESERVED_NT: BYTE #00 ;+ #0C +12 RESERVED
|
||||||
|
.RESERVED_FAT32: BYTE #00 ;+ #0D +13 RESERVED
|
||||||
|
.CREATE_TIME_FAT32: WORD #0000 ;+ #0E +14 RESERVED
|
||||||
|
.CREATE_DATE_FAT32: WORD #0000 ;+ #10 +16 RESERVED
|
||||||
|
.RESERVED_FAT32_1: WORD #0000 ;+ #12 +18 RESERVED
|
||||||
|
.FIRST_CLUSTER_H: WORD #0000 ;+ #14 +20 RESERVED
|
||||||
|
.TIME: WORD #0000 ;+ #16 +22 TIME
|
||||||
|
.DATE: WORD #0000 ;+ #18 +24 DATE
|
||||||
|
.FIRST_CLUSTER_L: WORD #0000 ;+ #1A +26 START CLUSTER ;!TODO fat32
|
||||||
|
.F_SIZE: DWORD #00000000 ;+ #1C +28 SIZE FILE
|
||||||
|
ENDS
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
;
|
;
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
PartitionSysTypes:
|
PartitionSysTypes:
|
||||||
.Empty EQU #00
|
.Empty: EQU #00
|
||||||
.FAT12 EQU #01
|
.FAT12: EQU #01
|
||||||
.FAT16_32Mb EQU #04
|
.FAT16_32Mb: EQU #04
|
||||||
.Extended EQU #05
|
.Extended: EQU #05
|
||||||
.FAT16 EQU #06
|
.FAT16: EQU #06
|
||||||
.HPFS_NTFS EQU #07
|
.HPFS_NTFS: EQU #07
|
||||||
.FAT32 EQU #0B
|
.FAT32: EQU #0B
|
||||||
.FAT32_LBA EQU #0C
|
.FAT32_LBA: EQU #0C
|
||||||
.FAT16_LBA EQU #0E
|
.FAT16_LBA: EQU #0E
|
||||||
.Win_Ext_LBA EQU #0F
|
.Win_Ext_LBA: EQU #0F
|
||||||
.Linux_swap EQU #82
|
.Linux_swap: EQU #82
|
||||||
.Linux EQU #83
|
.Linux: EQU #83
|
||||||
.Linux_extended EQU #85
|
.Linux_extended: EQU #85
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user