Estex-DSS/DSS/Structures.inc
2023-07-03 23:04:36 +10:00

68 lines
2.7 KiB
PHP

;
STRUCT _sStack ; 256 bytes
buffer BLOCK 255,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)
STRUCT _sFM ; 44 bytes
.NAME: TEXT 8,{". "," "} ;+00 NAME
.EXT: TEXT 3,{" "," "} ;+08 EXT
.ATTRIBUT: BYTE #10 ;+11 ATTRIBUT
.RESERVED_L: BYTE 0 ;+12 RESERVED; !TODO á«¥¤ãî騩 ª« áâ¥à ¤«ï ç⥭¨ï
.RESERVED_H: BYTE 0 ;+13 RESERVED; !TODO á«¥¤ãî騩 ª« áâ¥à ¤«ï § ¯¨á¨
.RESERVED_X: BLOCK 8,0 ;+14 RESERVED
.TIME: WORD #0000 ;+22 TIME
.DATE: WORD #0000 ;+24 DATE
.ST_CLUSTER: WORD #0000 ;+26 START CLUSTER
.F_SIZE: DWORD #0000 ;+28 SIZE FILE
.F_POSITION: DWORD #0000 ;+32 FILE POSITION (FP)
.DIR_CLUSTER: WORD #0000 ;+36 DIRECTORY CLUSTER
.HANDLE: WORD #0000 ;+38 HANDLE NUMBER
.DRIVE: BYTE #00 ;+40 DRIVE OR CURRENT
.ACCESS_MODE: BYTE #00 ;+41 ACCESS MODE
.TASK_NUM: BYTE #00 ;+42 TASK
.EMPTY: BYTE #00 ;+43 EMPTY
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 * FMCOUNT
FM_RESERVE BLOCK _sFM * (FMCOUNT-1),0
BootSector _sBOOT_SEC ; 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
;