mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 09:21:47 +03:00
81 lines
3.2 KiB
PHP
81 lines
3.2 KiB
PHP
;
|
|
STRUCT _sStack ; 256 bytes
|
|
.buffer BLOCK 256,0
|
|
.SPoint BYTE 0
|
|
ENDS
|
|
;
|
|
|
|
;
|
|
STRUCT _sEXE_HEADER ; 512 bytes
|
|
.EXE_EXT TEXT 3,{"EX","E"}
|
|
.VERSION BYTE 0
|
|
.OFFCOD1 WORD 0
|
|
.OFFCOD2 WORD 0
|
|
.LOADER WORD 0
|
|
.RESERVED BLOCK 6,0
|
|
.LD_ADDR WORD 0
|
|
.PC_REG WORD 0
|
|
.SP_REG WORD 0
|
|
.RESERVED2 BLOCK 490,0
|
|
ENDS
|
|
;
|
|
|
|
;File Manipulator (FM)
|
|
;[ ] fat32
|
|
STRUCT _sFM ; 51 bytes
|
|
; from FAT
|
|
; .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
|
|
.FS_REC: _sFAT_DIRECTORY_RECORD
|
|
; from Core
|
|
.F_POSITION: DWORD #00000000 ;+ #20 +32 FILE POSITION (FP)
|
|
.DIR_CLUSTER: WORD #0000 ;+ #24 +36 DIRECTORY CLUSTER
|
|
.HANDLE: WORD #0000 ;+ #26 +38 HANDLE NUMBER
|
|
.DRIVE: BYTE #00 ;+ #28 +40 DRIVE OR CURRENT
|
|
.ACCESS_MODE: BYTE #00 ;+ #29 +41 ACCESS MODE ¯à¨§ ª ¨§¬¥¥¨ï ä ©«
|
|
.TASK_NUM: BYTE #00 ;+ #2A +42 TASK
|
|
;.EMPTY: BYTE #00 ;+ #2B +43 EMPTY
|
|
.KnownCluster_L: WORD #0000 ;+ #2B +43 Œ« ¤è¥¥ á«®¢® ®¬¥à ª« áâ¥à ¤«ï ª®â®à®£® ¨§¢¥áâ® ®â®á¨â¥«ì®¥ ᬥ饨¥ ¢ãâà¨ ä ©«
|
|
.KnownCluster_H: WORD #0000 ;+ #2C +44 ‘â à襥 á«®¢® ®¬¥à ª« áâ¥à ¤«ï ª®â®à®£® ¨§¢¥áâ® ®â®á¨â¥«ì®¥ ᬥ饨¥ ¢ãâà¨ ä ©«
|
|
.KnownOffset_L: WORD #0000 ;+ #2D +45 Œ« ¤è¥¥ á«®¢® ᬥ饨ï (¢ ª« áâ¥à å) ®â®á¨â¥«ì® ç « ä ©« ¤«ï á®åà ¥®£® ®¬¥à ª« áâ¥à .
|
|
.KnownOffset_H: WORD #0000 ;+ #2E +46 ‘â à襥 á«®¢® ᬥ饨ï (¢ ª« áâ¥à å) ®â®á¨â¥«ì® ç « ä ©« ¤«ï á®åà ¥®£® ®¬¥à ª« áâ¥à .
|
|
ENDS
|
|
;
|
|
|
|
;
|
|
; NAM EQU 0 ; LEN4 EQU 31
|
|
; EXT EQU 8 ; POS1 EQU 32
|
|
; ATR EQU 11 ; POS2 EQU 33
|
|
; TIM1 EQU 22 ; POS3 EQU 34
|
|
; TIM2 EQU 23 ; POS4 EQU 35
|
|
; DAT1 EQU 24 ; DIRCLU1 EQU 36
|
|
; DAT2 EQU 25 ; DIRCLU2 EQU 37
|
|
; CLU1 EQU 26 ; HND1 EQU 38
|
|
; CLU2 EQU 27 ; HND2 EQU 39
|
|
; LEN1 EQU 28 ; FDRV EQU 40
|
|
; LEN2 EQU 29 ; AMODE EQU 41
|
|
; LEN3 EQU 30 ; FTASK EQU 42
|
|
|
|
;
|
|
STRUCT _sBuffers
|
|
.FileManipulator _sFM ; 44 bytes + 44 bytes * (FMCOUNT-1)
|
|
.FM_RESERVE BLOCK _sFM * (FMCOUNT-1),0 ;
|
|
.BootSector _sBOOT_SECTOR_PARAMS ; 62 bytes ;!TODO ¯¥à¥¥á⨠¢ ®¡« áâì ¡ãä¥à®¢
|
|
.EXE_Header _sEXE_HEADER ; 512 bytes
|
|
.Stack _sStack ; 256 bytes
|
|
.Buffer BLOCK 512,0 ; FOR BUFFER & SECBUF
|
|
.MemoryTable BLOCK 256,0 ; 256 bytes
|
|
ENDS
|
|
;
|