Estex-DSS/DSS/defines.inc
Anatoliy Belyanskiy e20a714f08 bugfixes
2024-06-15 04:49:18 +10:00

164 lines
4.8 KiB
PHP
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

;
DEFINE TEST_FEATURE 0
;
;
DEFINE MINIMUM_EXE_VERSION 1
;
;
DEFINE SHORT_RSTx10_TABLE 0 ; 㪮à®ç¥­­ ï â ¡«¨æ  ä㭪権 rst #10. 96 ä㭪権.
DEFINE COMPILE_UNUSED_CODE 0
;
; MOUSE
DEFINE MOUSE_COM_BAUD 0 ; 1 - 2485, 2 - 4807, else - 1215 (default)
DEFINE MOUSE_INT_ENABLED 0 ; INT from SIO ch. B
;DEFINE MOUSE_READ_PORT_TIMEOUT 3072 ; Š®áâë«ì­ë© â ©¬- ãâ ­  ®¦¨¤ ­¨¥ ¡ ©â  ®â ¬ë誨. <EFBFBD>à®áâ® ¥áâì ªà¨¢ë¥ ¯¥à¥å®¤­¨ª¨
; KEYBOARD
DEFINE KEYBOARD_INT_ENABLED 0 ; INT from SIO ch. A
DEFINE CHANGE_LANG_CTRL_SHIFT 1 ; [x] 0: Ctrl + Space, 1: Ctrl + Shift.
DEFINE BREAK_PROCESS_CODE #AC00 ; CTRL+C
DEFINE USE_E1_SCANCODE 0
DEFINE CLASSIC_CURSOR 0
;
;LD_DSK EQU 16 ; ¬ ªá¨¬ «ì­®¥ ª®«¨ç¥á⢮ «®£¨ç¥áª¨å HDD ¤¨áª®¢ ¢ á¨á⥬¥
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
DEFINE CHANGE_FREE_CLU_AFTER_DEL 1
DEFINE FAST_FAT_CASHE 1
SERVICE_SECTORS:
.FAT12 EQU #0FEF
.FAT16 EQU #FFEF
.FAT32.High EQU #0FFF
.FAT32.Low EQU #FFEF
FAT_TYPE:
.x32 EQU #32
.x16 EQU #16
.x12 EQU #12
; define _bit (1<?((FAT_CACHE.Sectors-1)
; define _shift _bit&1)) + _bit&2)) + _bit&4)) + _bit&8)) + _bit&16)) + _bit&32)) + _bit&64)) + _bit&128))
; ;
; FAT_CACHE:
; .Size EQU #2000
; .Sector_Size EQU #200
; .Sectors EQU .Size / .Sector_Size
; ; for FAT16
; .bytes_record_16 EQU 2
; .Degree_16 EQU _shift
; .Size_Mask_16 EQU high (.Size/.bytes_record_16 - 1)
; .Part_Mask_16 EQU ((1<<(.bytes_record_16*8)) / (.Size/2))-1
; ; for FAT12 ;!TODO
; .bytes_record_12 EQU 2
; .Degree_12 EQU _shift
; .Size_Mask_12 EQU high (.Size/.bytes_record_12 - 1)
; .Part_Mask_12 EQU ((1<<(.bytes_record_12*8)) / (.Size/2))-1
; DISPLAY "bytes_record_16 = ",/H,.bytes_record_16
; DISPLAY "Degree_16 = ",/H,.Degree_16
; DISPLAY "Size_Mask_16 = ",/H,.Size_Mask_16
; DISPLAY "Part_Mask_16 = ",/H,.Part_Mask_16
; DISPLAY "bytes_record_12 = ",/H,.bytes_record_12
; DISPLAY "Degree_12 = ",/H,.Degree_12
; DISPLAY "Size_Mask_12 = ",/H,.Size_Mask_12
; DISPLAY "Part_Mask_12 = ",/H,.Part_Mask_12
; undefine _bit
; undefine _shift
FAT_CACHE:
.Sector_Size EQU #200
.Degree EQU 4
; for FAT32
.Size_32 EQU #4000
.Sectors_32 EQU .Size_32 / .Sector_Size ; #20
.Degree_32 EQU 5
.Size_Mask_32 EQU #0F
.Part_Mask_32 EQU #0F
.bytes_record_32 EQU 2
; for FAT16
.Size_16 EQU #2000
.Sectors_16 EQU .Size_16 / .Sector_Size ; #10
.Degree_16 EQU .Degree
.Size_Mask_16 EQU #0F
.Part_Mask_16 EQU #0F
.bytes_record_16 EQU 2
; for FAT12 ;!TODO
.Size_12 EQU #2000
;.bytes_record_12 EQU 2
;.Degree_12 EQU _shift
;.Size_Mask_12 EQU high (.Size/.bytes_record_12 - 1)
;.Part_Mask_12 EQU ((1<<(.bytes_record_12*8)) / (.Size/2))-1
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
;
DSS_MAX_DRIVES_AMOUNT EQU 26
DEFINE MAX_RAMDRIVES 16
DEFINE NeedSafePort_Y 1
DEFINE TABisSPACES 0
DEFINE EnoughtOnly_LF 0
DEFINE MINIMUM_BIOS_VERSION 2*256 + 55 ; version 2.55
DEFINE CHECK_DRIVE_CHANGE 1 ; 1 - â®à¬®§­¥¥, ­® ¡¥§®¯ á­¥¥
DEFINE NON_REMOVABLE_FDD 0
;
DEFINE OLD_DSS_FOR_OLD_EXE 0 ; !TODO
;
;-------------------[MEMORY]-------------------------;
DEFINE PORTAL.RSTx18_SWITCH_ADDRESS #82
; DEFINE OLD_SET_BANK 0
;---------------------[ «®£.­®¬¥à  áâà ­¨æ ¯ ¬ï⨠]---------------------
DEFINE USING_MEMPAGES 4 ; à §¬¥à ¡«®ª  ¤®¯®«­¨â¥«ì­ëå áâà ­¨æ
; ªíè ᯨ᪠ ª â «®£ 
DIRPAGE EQU 0
.buffer EQU #C000
FATPAGE EQU 1
.cache EQU #C000
TXTPAGE EQU 2
ENVPAGE EQU TXTPAGE
.PATH_PNT_ARRAY EQU #FC80
.ENVTEMP EQU #FE00
DRVPAGE EQU 3
;
COREPAGE EQU 4 ; ®­  ®â¤¥«ì­® ¨ ­¥ á ¡«®ª®¬ ¢ëè¥.
;-----------------------------------------------------------------------
DIRECTORY_PATH_LENGTH EQU 256 ; '\' + 255, 0
ENVIRONMENT_STRING_LENGTH EQU 255
TXTADDR EQU #C000
ENVADDR EQU #E400
;DIR EQU #C000
;FAT_CACHE EQU #C000
FMCOUNT EQU 10 ; Š®«¨ç¥á⢮ ä ©«®¢ëå ¬ ­¨¯ã«ïâ®à®¢
HANDBUF.SIZE EQU FAT_DIRECTORY_RECORD
;----------------------------------------------------;
;
;
;----------------------------------------------------;
IF MOUSE_COM_BAUD = 1
MOUSE_BAUD:
.multiplier_1 EQU %0100'0000 ; ¯¥à¢ë© ¬­®¦¨â¥«ì = 16.
.multiplier_2 EQU 22 ; ¢â®à®© ¬­®¦¨â¥«ì = 22. 875000/Œ­1*Œ­2=2485
ELSEIF MOUSE_COM_BAUD = 2
MOUSE_BAUD:
.multiplier_1 EQU %0000'0000 ; ¯¥à¢ë© ¬­®¦¨â¥«ì = 1.
.multiplier_2 EQU 182 ; ¢â®à®© ¬­®¦¨â¥«ì = 182. 875000/Œ­1*Œ­2=4807
ELSE
MOUSE_BAUD:
.multiplier_1 EQU %0100'0000 ; ¯¥à¢ë© ¬­®¦¨â¥«ì = 16.
.multiplier_2 EQU 45 ; ¢â®à®© ¬­®¦¨â¥«ì = 45. 875000/Œ­1*Œ­2=1215
ENDIF
;----------------------------------------------------;
;
;
;----------------------------------------------------;
; ‚­¨¬ ­¨¥, á⥪ åà ­¨âáï ¢ ⮩ ¦¥ áâà ­¨æ¥!
SUBLOAD_SIZE EQU 2 ; ª®«-¢® ᥪâ®à®¢ ª®â®à®¥ ­ ¤® ¯®¤£à㧨âì ¯®á«¥ § £à㧪¨ system.dos ¢ áâà ­¨æã
;----------------------------------------------------;