This commit is contained in:
Tolik 2025-08-12 21:02:05 +10:00
parent bdef22154b
commit ea4cacb667
6 changed files with 37 additions and 40 deletions

View File

@ -340,7 +340,7 @@ _TST_PROC: CALL GETMEM
SUB B SUB B
LD (CORE_BUFFERS.BUFFER_CLP),A LD (CORE_BUFFERS.BUFFER_CLP),A
; ;
LD SP,CORE_BUFFERS.EXEBUFF + _sEXE_HEADER ;R02 LD SP,CORE_BUFFERS.EXEBUFF + _sEXE_HEADER ;R02
; ! „ «¥¥ á⥪ ¢ ­ã«¥¢®© áâà ­¨æ¥! BIOS ¨ ­¥ DSS-MAIN ­¥ ¢ë§ë¢ âì ; ! „ «¥¥ á⥪ ¢ ­ã«¥¢®© áâà ­¨æ¥! BIOS ¨ ­¥ DSS-MAIN ­¥ ¢ë§ë¢ âì
LD A,SHARED_PAGE LD A,SHARED_PAGE
OUT (SLOT1),A OUT (SLOT1),A
@ -371,21 +371,16 @@ FRC000: LD A,(DE)
LD A,(EXE_FM) LD A,(EXE_FM)
CALL MOVE_FP CALL MOVE_FP
; ;
;LD SP,#403F ;R02 ;!HARDCODE STACK before start EXE. “áâ ­ ¢«¨¢ ¥âáï ª®£¤  ¢®âª­ãâë SHARED_PAGE
;LD A,R
;DI
LD SP,#4100 ;R02 ;!HARDCODE STACK before start EXE. “áâ ­ ¢«¨¢ ¥âáï ª®£¤  ¢®âª­ãâë SHARED_PAGE LD SP,#4100 ;R02 ;!HARDCODE STACK before start EXE. “áâ ­ ¢«¨¢ ¥âáï ª®£¤  ¢®âª­ãâë SHARED_PAGE
;PUSH AF
_ret+1: JP 0 ;EXEC02.RET_1 ¨«¨ _RET_2 _ret+1: JP 0 ;EXEC02.RET_1 ¨«¨ _RET_2
; ;
; á ¢®§¢à â ¨§ EXEC02.RET_1 ¨«¨ _RET_2 ; á ¢®§¢à â ¨§ EXEC02.RET_1 ¨«¨ _RET_2
_TST_PROC_2: _TST_PROC_2:
; ! „ «¥¥ á⥪ ¢ ­ã«¥¢®© áâà ­¨æ¥! BIOS ¨ ­¥ DSS-MAIN ­¥ ¢ë§ë¢ âì ; ! „ «¥¥ á⥪ ¢ ­ã«¥¢®© áâà ­¨æ¥! BIOS ¨ ­¥ DSS-MAIN ­¥ ¢ë§ë¢ âì
;
LD SP,CORE_BUFFERS.EXEBUFF + _sEXE_HEADER LD SP,CORE_BUFFERS.EXEBUFF + _sEXE_HEADER
CALL M_PSP CALL M_PSP
LD SP,(CORE_BUFFERS.EXEBUFF.SP_REG)
; ;
LD SP,(CORE_BUFFERS.EXEBUFF.SP_REG)
LD HL,(CORE_BUFFERS.EXEBUFF.LD_ADDR) LD HL,(CORE_BUFFERS.EXEBUFF.LD_ADDR)
LD DE,#0080 ;!HARDCODE CLP_Buffer LD DE,#0080 ;!HARDCODE CLP_Buffer
XOR A XOR A
@ -410,7 +405,6 @@ _TST_PROC_2:
POP IX POP IX
; ;
EI EI
;RET
LD HL,(CORE_BUFFERS.EXEBUFF.PC_REG) LD HL,(CORE_BUFFERS.EXEBUFF.PC_REG)
JP (HL) JP (HL)
;----------------------------------------------------------------------- ;-----------------------------------------------------------------------

View File

@ -6,7 +6,7 @@
;--------------------------------------------------------------- ;---------------------------------------------------------------
;R00 2003-03-19 DNS Initial version ;R00 2003-03-19 DNS Initial version
;--------------------------------------------------------------- ;---------------------------------------------------------------
DRV_MODULE_START EQU $
; ORG #0000 ; ORG #0000
;PAGEDRV EQU 0 ;PAGEDRV EQU 0
@ -343,9 +343,9 @@ RAMDTBL EQU LOGDRV + LOGDRV.Size
; EDUP ; EDUP
; .Size EQU $-RAMDTBL ; .Size EQU $-RAMDTBL
;----------------------------------------------------------------------; ;----------------------------------------------------------------------;
;
ENDMODULE ENDMODULE
////////////////////////////////////////////////////////////////////////; ////////////////////////////////////////////////////////////////////////;
;DISPLAY "DEVICE start: ", /H, DEVICE ;DISPLAY "DEVICE start: ", /H, DEVICE
;DISPLAY "Old DEVICE start: ", /H, OLD_TABLES.DEVICE ;DISPLAY "Old DEVICE start: ", /H, OLD_TABLES.DEVICE
;DISPLAY "LOGDRV start: ", /H, LOGDRV ;DISPLAY "LOGDRV start: ", /H, LOGDRV
@ -355,10 +355,12 @@ RAMDTBL EQU LOGDRV + LOGDRV.Size
; ;
;DRV_TEMP_BUFFER: ;DRV_TEMP_BUFFER:
DRV_MODULE_START.Size EQU (OLD_TABLES.RAMDTBL + OLD_TABLES.RAMDTBL.Size) - DRV_MODULE_START
DISPLAY "DRV MODULE SIZE: ",/A,DRV_MODULE_START.Size
;!TODO
;---------[256 bytes stack for return pages of RST #18 callers]--------; ;---------[256 bytes stack for return pages of RST #18 callers]--------;
; #3F00 - #3FFF ; #3F00 - #4000
DRV_PAGE.RSTx18_RET_PAGES EQU #3FFF DRV_PAGE.RSTx18_RET_PAGES EQU #4000
;----------------------------------------------------------------------; ;----------------------------------------------------------------------;
; ASSERT ((#4000-DRV_TEMP_BUFFER-256) > (DEVICE.Size + LOGDRV.Size + RAMDTBL.Size)), "No space for DRV_TEMP_BUFFER in DRV-MAIN page" ; ASSERT ((#4000-DRV_TEMP_BUFFER-256) > (DEVICE.Size + LOGDRV.Size + RAMDTBL.Size)), "No space for DRV_TEMP_BUFFER in DRV-MAIN page"
; ENDMODULE ; ENDMODULE

View File

@ -347,13 +347,10 @@ DSS_API_TABLE:
/* /*
;!FIXIT ª ¡ãä¥à ¬
; Œ áᨢ «®£. ­®¬¥à®¢ ¡ ­®ª à áè¨à¥­¨ï DSS ; Œ áᨢ «®£. ­®¬¥à®¢ ¡ ­®ª à áè¨à¥­¨ï DSS
BANKTBL: BLOCK USING_MEMPAGES+1,#FF ; +1 ¤«ï COREPAGE BANKTBL: BLOCK USING_MEMPAGES+1,#FF ; +1 ¤«ï COREPAGE
HANDBUF: BLOCK HANDBUF.SIZE,0 HANDBUF: BLOCK HANDBUF.SIZE,0
; ;
;!FIXIT ª ¡ãä¥à ¬
MASKARE: BLOCK 8,0 ; ¨¬ï ä ©«  MASKARE: BLOCK 8,0 ; ¨¬ï ä ©« 
BLOCK 3,0 ; à áè. BLOCK 3,0 ; à áè.
BLOCK 21,0 ; 11+21=32 BLOCK 21,0 ; 11+21=32
@ -376,6 +373,7 @@ TMPNAME EQU BUFFERSplace.TMPNAME
HANDBUF EQU BUFFERSplace.HANDBUF HANDBUF EQU BUFFERSplace.HANDBUF
.SIZE EQU FAT_DIRECTORY_RECORD .SIZE EQU FAT_DIRECTORY_RECORD
MASKARE _sMASKARE = BUFFERSplace.MASKARE MASKARE _sMASKARE = BUFFERSplace.MASKARE
.Size EQU _sMASKARE
FM_BUF _sFM = BUFFERSplace.FileManipulator FM_BUF _sFM = BUFFERSplace.FileManipulator
.Size EQU _sFM .Size EQU _sFM
.FullSize EQU FMCOUNT*FM_BUF.Size .FullSize EQU FMCOUNT*FM_BUF.Size
@ -399,38 +397,41 @@ CLEAR_ZONE.size EQU _sBuffers
; ’ãâ ­¥ ¢áñ DISPLAY "--- --- --- --- --- --- --- --- --- --- --- --- ---"
DISPLAY "--- --- --- --- --- --- --- ---" DISPLAY " BANKTBL ", /H, BANKTBL," Size ", /H, BANKTBL.Size
DISPLAY "CLEAR_ZONE.start ", /H, CLEAR_ZONE.start DISPLAY "--- --- --- --- --- --- --- --- --- --- --- --- ---"
DISPLAY "CLEAR_ZONE.Size ", /H, CLEAR_ZONE.size DISPLAY "CLEAR_ZONE.start ", /H, CLEAR_ZONE.start," Size ", /H, CLEAR_ZONE.size
DISPLAY "--- --- --- --- --- --- --- ---" DISPLAY "--- --- --- --- --- --- --- --- --- --- --- --- ---"
DISPLAY "Consist: " DISPLAY "Consist: "
DISPLAY " FM_BUF ", /H, CORE_BUFFERS.FM_BUF DISPLAY " TMPNAME ", /H, CORE_BUFFERS.TMPNAME," Size ", /H, CORE_BUFFERS.TMPNAME.Size
DISPLAY " FM_BUF.Size: ", /H, CORE_BUFFERS.FM_BUF.Size DISPLAY " HANDBUF ", /H, CORE_BUFFERS.HANDBUF," Size ", /H, CORE_BUFFERS.HANDBUF.SIZE
DISPLAY " FM_BUF.FullSize ", /H, CORE_BUFFERS.FM_BUF.FullSize DISPLAY " MASKARE ", /H, CORE_BUFFERS.MASKARE," Size ", /H, _sMASKARE
DISPLAY " FS_Buffer ", /H, CORE_BUFFERS.FS_Buffer DISPLAY " FM_BUF ", /H, CORE_BUFFERS.FM_BUF," Size ", /H, CORE_BUFFERS.FM_BUF.Size
DISPLAY " FS_Buffer.Size ", /H, CORE_BUFFERS.EXEBUFF - CORE_BUFFERS.FS_Buffer DISPLAY " Full Size ", /H, CORE_BUFFERS.FM_BUF.FullSize
DISPLAY " EXEBUFF ", /H, CORE_BUFFERS.EXEBUFF DISPLAY " FS_Buffer ", /H, CORE_BUFFERS.FS_Buffer," Size ", /H, CORE_BUFFERS.EXEBUFF - CORE_BUFFERS.FS_Buffer
DISPLAY " Size ", /H, CORE_BUFFERS.XSTACK - CORE_BUFFERS.EXEBUFF DISPLAY " EXEBUFF ", /H, CORE_BUFFERS.EXEBUFF," Size ", /H, CORE_BUFFERS.XSTACK - CORE_BUFFERS.EXEBUFF
DISPLAY " XSTACK ", /H, CORE_BUFFERS.XSTACK DISPLAY " XSTACK ", /H, CORE_BUFFERS.XSTACK," Size ", /H, CORE_BUFFERS.BUFFER - CORE_BUFFERS.XSTACK
DISPLAY " Size ", /H, CORE_BUFFERS.BUFFER - CORE_BUFFERS.XSTACK DISPLAY " BUFFER ", /H, CORE_BUFFERS.BUFFER," Size ", /H, CORE_BUFFERS.MemoryTable - CORE_BUFFERS.BUFFER
DISPLAY " BUFFER ", /H, CORE_BUFFERS.BUFFER DISPLAY " MemoryTable ", /H, CORE_BUFFERS.MemoryTable," Size ", /H, _sBuffers - (CORE_BUFFERS.MemoryTable - CORE_BUFFERS.BUFFERSplace)
DISPLAY " Size ", /H, CORE_BUFFERS.MemoryTable - CORE_BUFFERS.BUFFER DISPLAY " CurrentPath ", /H, CORE_BUFFERS.CurrentPath," Size ", /H, CORE_BUFFERS.CurrentDirectory - CORE_BUFFERS.CurrentPath
DISPLAY " MemoryTable ", /H, CORE_BUFFERS.MemoryTable DISPLAY " CurrentDirectory ", /H, CORE_BUFFERS.CurrentDirectory," Size ", /H, DIRECTORY_PATH_LENGTH
DISPLAY " Size ", /H, _sBuffers - (CORE_BUFFERS.MemoryTable - CORE_BUFFERS.BUFFERSplace) DISPLAY " WorkDirectory ", /H, CORE_BUFFERS.WorkDirectory," Size ", /H, DIRECTORY_PATH_LENGTH
DISPLAY "--- --- --- --- --- --- --- ---" DISPLAY " BUFFER_CLP ", /H, CORE_BUFFERS.BUFFER_CLP," Size ", /H, #4000 - CORE_BUFFERS.BUFFER_CLP
DISPLAY "--- --- --- --- --- --- --- --- --- --- --- --- ---"
DISPLAY "CLEAR_ZONE.End ", /H, CLEAR_ZONE.start + CLEAR_ZONE.size DISPLAY "CLEAR_ZONE.End ", /H, CLEAR_ZONE.start + CLEAR_ZONE.size
DISPLAY "--- --- --- --- --- --- --- ---" DISPLAY "--- --- --- --- --- --- --- --- --- --- --- --- ---"
EXPORT BANKTBL EXPORT BANKTBL
EXPORT CLEAR_ZONE.start EXPORT CLEAR_ZONE.start
EXPORT CLEAR_ZONE.size EXPORT CLEAR_ZONE.size
EXPORT CORE_BUFFERS.BUFFERSplace EXPORT CORE_BUFFERS.BUFFERSplace
EXPORT CORE_BUFFERS.TMPNAME
EXPORT CORE_BUFFERS.TMPNAME.Size
EXPORT CORE_BUFFERS.HANDBUF EXPORT CORE_BUFFERS.HANDBUF
EXPORT CORE_BUFFERS.HANDBUF.SIZE EXPORT CORE_BUFFERS.HANDBUF.SIZE
EXPORT CORE_BUFFERS.MASKARE EXPORT CORE_BUFFERS.MASKARE
EXPORT CORE_BUFFERS.TMPNAME EXPORT CORE_BUFFERS.MASKARE.Size
EXPORT CORE_BUFFERS.FM_BUF EXPORT CORE_BUFFERS.FM_BUF
EXPORT CORE_BUFFERS.FM_BUF.Size EXPORT CORE_BUFFERS.FM_BUF.Size
EXPORT CORE_BUFFERS.FM_BUF.FullSize EXPORT CORE_BUFFERS.FM_BUF.FullSize
@ -462,7 +463,7 @@ CLEAR_ZONE.size EQU _sBuffers
ASSERT "Warning! ENVVALUE != BUFFER" ASSERT "Warning! ENVVALUE != BUFFER"
ENDIF ENDIF
DISPLAY "MODULE SIZE: ",/A,MODULE_SIZE DISPLAY "FAT MODULE SIZE: ",/A,MODULE_SIZE
DISPLAY "DEPLOY end address: ",/H,$ DISPLAY "DEPLOY end address: ",/H,$
DISPLAY "Space for DRV-MAIN: ",/A,#4000-$," bytes." DISPLAY "Space for DRV-MAIN: ",/A,#4000-$," bytes."

View File

@ -150,7 +150,7 @@ SEARCH:
; LD DE,0 ; LD DE,0
; EXX ; EXX
; ;
.loop: LD A,(IX+FAT_DIRECTORY_RECORD.NAME) .loop: LD A,(IX + FAT_DIRECTORY_RECORD.NAME)
OR A OR A
JR Z,.error_file_not_found JR Z,.error_file_not_found
CP #E5 ;!HARDCODE #E5 - § ¯¨áì ¢ ¤¨à¥ªâ®à¨¨ ᢮¡®¤­ , â ª ª ª ä ©«/¤¨à¥ªâ®à¨ï ¡ë«¨ 㤠«¥­ë CP #E5 ;!HARDCODE #E5 - § ¯¨áì ¢ ¤¨à¥ªâ®à¨¨ ᢮¡®¤­ , â ª ª ª ä ©«/¤¨à¥ªâ®à¨ï ¡ë«¨ 㤠«¥­ë

View File

@ -14,7 +14,7 @@ cmd_help: LD HL,.help_txt
; JP ToBIOS ; JP ToBIOS
;JP ECHO_MESSAGE ;JP ECHO_MESSAGE
; 1 2\ 3 4 5 6 7 8 ; 1 2 3 4 5 6 7 8
; 01234567890123456789012345678901234567890123456789012345678901234567890123456789; ; 01234567890123456789012345678901234567890123456789012345678901234567890123456789;
.help_txt: DB "COMMANDS:\r\n" .help_txt: DB "COMMANDS:\r\n"
DB "SET INFO REN = RENAME PATH CLS [ink]\r\n" DB "SET INFO REN = RENAME PATH CLS [ink]\r\n"