мелочи

This commit is contained in:
Tolik Trek 2026-08-17 08:00:50 +10:00
parent 03cfe1eda4
commit 5c7b414fda
3 changed files with 83 additions and 167 deletions

View File

@ -9,7 +9,7 @@ Help_Msg: DB 13,10
DB 'x - ­¥ ¯à®¢¥àïâì ä ©« ª®­äë ­  ¢ «¨¤­®áâì § £®«®¢ª  ¨ à §¬¥à',13,10 DB 'x - ­¥ ¯à®¢¥àïâì ä ©« ª®­äë ­  ¢ «¨¤­®áâì § £®«®¢ª  ¨ à §¬¥à',13,10
;DB 'l - áâà è­ë© ª«îç, § «¨â ï ª®­ä  ®áâ ­¥âáï ¤® ¯¥à¥§ «¨¢ª¨ ¨«¨ ¢ëª«î祭¨ï <20>Š',13,10 ;DB 'l - áâà è­ë© ª«îç, § «¨â ï ª®­ä  ®áâ ­¥âáï ¤® ¯¥à¥§ «¨¢ª¨ ¨«¨ ¢ëª«î祭¨ï <20>Š',13,10
DB 13,10 DB 13,10
DB '…б«Ё гЄ § ­® в®«мЄ® Ё¬п Є®­дл, в®: § Јаг§Є  Є®­дл -> аҐбҐв ->',13,10 DB '…б«Ё гЄ § ­® в®«мЄ® Ё¬п Є®­дл (б Є«о箬 "c"), в®: § Јаг§Є  Є®­дл -> аҐбҐв ->',13,10
DB '¢®ááâ ­®¢«¥­¨¥ ¤¥ä®«â­®© ª®­äë -> à¥á¥â -> ¢ë室. <20>®ª  â ª.',13,10,13,10 DB '¢®ááâ ­®¢«¥­¨¥ ¤¥ä®«â­®© ª®­äë -> à¥á¥â -> ¢ë室. <20>®ª  â ª.',13,10,13,10
DB '<27>ணࠬ¬  ¡ë«  § ç¥¬-â® ­ ¯¨á ­  €­ â®«¨¥¬ <20>¥«ï­áª¨¬. ',13,10 DB '<27>ணࠬ¬  ¡ë«  § ç¥¬-â® ­ ¯¨á ­  €­ â®«¨¥¬ <20>¥«ï­áª¨¬. ',13,10
DB '<27>¥ ¯¨è¨â¥ ¬­¥ á: ',e_mail,' ))))',13,10,13,10 DB '<27>¥ ¯¨è¨â¥ ¬­¥ á: ',e_mail,' ))))',13,10,13,10

View File

@ -76,7 +76,7 @@ START:
LD C,Dss.GetVMod LD C,Dss.GetVMod
RST ToDSS RST ToDSS
POP IX POP IX
JP NC,1f JR NC,1f
LD HL,error_Vmode LD HL,error_Vmode
JP BadExit JP BadExit
1: 1:
@ -104,7 +104,7 @@ START:
LD (dss_line),IX ; ‘®å࠭塞 㪠§ â¥«ì ­  áâப㠧 ¯ã᪠. LD (dss_line),IX ; ‘®å࠭塞 㪠§ â¥«ì ­  áâப㠧 ¯ã᪠.
LD A,(IX) ; âãâ DSS ª« ¤ñâ ¤«¨­ã ¯ à ¬¥â஢ ª®¬.áâப¨ LD A,(IX) ; âãâ DSS ª« ¤ñâ ¤«¨­ã ¯ à ¬¥â஢ ª®¬.áâப¨
AND A ; ¯à®¢¥à塞 ­  ®âáãâá⢨¥ ¯ à ¬¥â஢ AND A ; ¯à®¢¥à塞 ­  ®âáãâá⢨¥ ¯ à ¬¥â஢
JP NZ,1F ; § ¯ã᪠ ¢ ª®¬.áâப¥. …᫨ ¨å ­¥â, JR NZ,1F ; § ¯ã᪠ ¢ ª®¬.áâப¥. …᫨ ¨å ­¥â,
LD HL,Help_Msg ; â® ¯¥ç â ¥¬ ¨­áâàãªæ¨î ¨ ¢ë室¨¬ LD HL,Help_Msg ; â® ¯¥ç â ¥¬ ¨­áâàãªæ¨î ¨ ¢ë室¨¬
_PrintStr ; ¨§ ¯à®£à ¬¬ë á ­®à¬ «ì­ë¬ ª®¤®¬ _PrintStr ; ¨§ ¯à®£à ¬¬ë á ­®à¬ «ì­ë¬ ª®¤®¬
LD B,0 ; § ¢¥à襭¨ï. LD B,0 ; § ¢¥à襭¨ï.
@ -151,31 +151,12 @@ START:
;-----------------; ¥á«¨ ­®à¬. § ¢¥à襭¨¥ Load_conf ;-----------------; ¥á«¨ ­®à¬. § ¢¥à襭¨¥ Load_conf
1: 1:
LD A,(ram_blk_id) LD A,(ram_blk_id)
LD B,A LD B,A ; RAM Block ID á ¡¨âáâਬ®¬ ¤«ï § £à㧪¨
LD A,#FE LD A,ACEX.Config_PG.Sp2000_AcexSetUpNow ; ¯¥à¥§ «¨¢ª  ª®­äë á ¢®§¢à â®¬
LD C,BIOS.RST_CONF.CUSTOM LD C,BIOS.RST_CONF.CUSTOM
RST ToBIOS RST ToBIOS
JP ReloadRET ;JR ReloadRET
;-----------------; ;-----------------;
;-----------------; 7 ¡¥¤ - 1 à¥á¥â
; RESET: DI
; LD A,DCP_PAGE
; OUT (SLOT1),A ; set DCP page
; LD A,ACEX.RESET
; LD (#4400),A ; open for WR
; LD (#4600),A ; open for RD
; ;
; .LOOP: LD BC,#100
; OUT (C),C
; LD B,0
; OUT (C),C
; JR .LOOP ; ¯®«­®áâìî § æ¨ª«¨âì!
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
; ;
; ____ _ _ ____ _____ _____ ; ____ _ _ ____ _____ _____
; | _ \ ___| | ___ __ _ __| | | _ \| ____|_ _| ; | _ \ ___| | ___ __ _ __| | | _ \| ____|_ _|
@ -199,9 +180,9 @@ ReloadRET: DI
;-----------------; <20> ¡®â  ¯à®£à ¬¬ë á ­®¢®© ¯à®è¨¢ª®© ;-----------------; <20> ¡®â  ¯à®£à ¬¬ë á ­®¢®© ¯à®è¨¢ª®©
LD A,(e_key) LD A,(e_key)
AND A AND A
JP Z,1F JR Z,1F
LD HL,EXEfileBuff ; ‡ ¯ã᪠EXE LD HL,EXEfileBuff ; ‡ ¯ã᪠EXE
LD BC,0040h LD BC,Dss.Exec
RST ToDSS RST ToDSS
;-----------------; ;-----------------;
@ -210,13 +191,13 @@ ReloadRET: DI
LD A,(a_key) ; ‚ë室 ¡¥§ ¢®ááâ ­®¢«¥­¨ï ¤¥ä®«â­®© ª®­äë? LD A,(a_key) ; ‚ë室 ¡¥§ ¢®ááâ ­®¢«¥­¨ï ¤¥ä®«â­®© ª®­äë?
AND A AND A
JR NZ,NextReloadRET
JP NZ,NextReloadRET ;
LD B,0 LD B,0 ; § £à㧪  ¡¨âáâਬ  ¨§ ROM
LD A,#FE LD A,ACEX.Config_PG.Sp2000_AcexSetUpNow ; ¯¥à¥§ «¨¢ª  ª®­äë á ¢®§¢à â®¬
LD C,BIOS.RST_CONF.CUSTOM LD C,BIOS.RST_CONF.CUSTOM
RST ToBIOS RST ToBIOS
JP NextReloadRET ;JP NextReloadRET
;******************************************************* ;*******************************************************
; _ _ _ ; _ _ _
@ -232,66 +213,14 @@ ReloadRET: DI
; <09>®¤£®â®¢ª  ª § ¢¥à襭¨î ¯®á«¥ à¥á¥â  ¨ ; <09>®¤£®â®¢ª  ª § ¢¥à襭¨î ¯®á«¥ à¥á¥â  ¨
; ¢®§¢à â  த­®© ¯à®è¨¢ª¨ ; ¢®§¢à â  த­®© ¯à®è¨¢ª¨
;-----------------; ;-----------------;
NextReloadRET: NextReloadRET: DI
DI
;
;-----------------; ‡ â¨à ¥¬ á«¥¤ë ­¥á⮪®¢®© ª®­äë
; LD A,Spec_Page
; OUT (SLOT3),A ; ®âªàëâì ᯥæ-áâà ­¨æã
; LD H,#FF
; LD L,H
; LD SP,HL
; PUSH HL
; PUSH HL
; PUSH HL
; PUSH HL
; PUSH HL
; PUSH HL
; PUSH HL
; PUSH HL
; LD (0FFF3h),A ; á®å࠭塞 áâà ­¨æë
; ld A,(page0_save)
; LD (0FFF0h),A ; DOS-PAGE
; ld A,(page1_save)
; LD (0FFF1h),A
; ld A,(page2_save)
; XOR A ; ¢ëáâ ¢«ï¥¬ áâà ­¨æë, ª®â®àë¥ áâ ¢ïâáï ¯à¨ à¥á¥â¥
; LD (0FFF0h),A ; page 0
; LD A,5
; LD (0FFF1h),A ; page 1
; LD A,2
; LD (0FFF2h),A ; page 2
; LD A,40h
; LD (0FFF3h),A ; page 3
; XOR A
; LD D,A
; LD E,A
; LD (#FFF4),DE ;  ¤à¥á ¯à®£à ¬¬ë ¯¥à¥§ ¯ã᪠
; LD (#FFFE),DE ; ä« £ ¯¥à¥§ ¯ã᪠
; LD A,'Z'
; LD (#FFFE),A
; LD A,'X'
; LD (#FFFF),A ; ä« £ ¯¥à¥§ ¯ã᪠
;-----------------;
;
;LD SP,(SP_Save)
LD A,CNF_PORT.CNF_0 ; ª®­ä¨£ãà æ¨ï ¨ ®âª«î祭¨¥ <20>‡“ LD A,CNF_PORT.CNF_0 ; ª®­ä¨£ãà æ¨ï ¨ ®âª«î祭¨¥ <20>‡“
OUT (SYS_PORT.OFF),A OUT (SYS_PORT.OFF),A
;LD A,(page0_save) ; SET PAGE DOS
;OUT (SLOT0),A
LD A,(page1_save) LD A,(page1_save)
OUT (SLOT1),A OUT (SLOT1),A
; ƒ«ï­ãâì, ¬®¦¥â ­¥ ­ ¤® ¢®§¢à é âì ®¤­ã ¨§ áâà ­¨æ??? ; ƒ«ï­ãâì, ¬®¦¥â ­¥ ­ ¤® ¢®§¢à é âì ®¤­ã ¨§ áâà ­¨æ???
LD A,(page3_save) LD A,(page3_save)
OUT (SLOT3),A OUT (SLOT3),A
;JP NormExit ;JP NormExit
;******************************************************* ;*******************************************************
@ -302,8 +231,7 @@ NextReloadRET:
; |_____/_/\_\_|\__| |_| |_| \___/ \___| |___/ ; |_____/_/\_\_|\__| |_| |_| \___/ \___| |___/
;-----------------; ;-----------------;
NormExit: NormExit: LD HL,WellDone
LD HL,WellDone
_PrintStr _PrintStr
LD B,0 LD B,0
JR Exit JR Exit
@ -318,10 +246,9 @@ BadExit: _PrintStr
;-----------------; ;-----------------;
Exit: PUSH BC Exit: PUSH BC
LD HL,FirstHandler LD HL,FirstHandler
LD C,12h LD C,Dss.Close
LD B,(LastHandler-FirstHandler) LD B,(LastHandler-FirstHandler)
.loop: ; ‡ ªà뢠¥¬ ¢á¥ ®âªàëâë¥ ä ©«ë, .loop: LD A,(HL) ; ‡ ªà뢠¥¬ ¢á¥ ®âªàëâë¥ ä ©«ë, ¥á«¨ ¥áâì.
LD A,(HL) ; ¥á«¨ ¥áâì. 横«¥.
AND A AND A
JR Z,1F JR Z,1F
PUSH HL PUSH HL
@ -335,35 +262,34 @@ Exit: PUSH BC
;-----------------; ®á¢®¡®¦¤ ¥¬ ¯ ¬ïâì, ¥á«¨ ª«ï­ç¨«¨ ;-----------------; ®á¢®¡®¦¤ ¥¬ ¯ ¬ïâì, ¥á«¨ ª«ï­ç¨«¨
LD A,(ram_blk_id) LD A,(ram_blk_id)
CP 0 AND A
JR Z,1F JR Z,1F
LD C,#C3 ;
LD C,BIOS.FreeMem
RST ToBIOS RST ToBIOS
;-----------------; ;-----------------;
;-----------------; ¢®ááâ ­ ¢«¨¢ ¥¬ íªà ­ ;-----------------; ¢®ááâ ­ ¢«¨¢ ¥¬ íªà ­
LD C,53h LD C,Dss.Cursor
RST ToDSS RST ToDSS
PUSH DE PUSH DE
LD A,(VModPage) LD A,(VModPage)
LD B,A LD B,A
LD A,(VMod) LD A,(VMod)
LD C,50h LD C,Dss.SetVMod
RST ToDSS RST ToDSS
LD C,52h LD C,Dss.Locate
POP DE POP DE
RST ToDSS RST ToDSS
;-----------------; ;-----------------;
;-----------------; ‚ë室 ¢ DOS ;-----------------; ‚ë室 ¢ DOS
1: 1: POP BC
POP BC .loop_exit: LD C,Dss.Exit
LD C,41h
RST ToDSS RST ToDSS
DI JR .loop_exit
HALT
;-----------------; ;-----------------;
;******************************************************* ;*******************************************************
@ -381,14 +307,15 @@ Set_keys:
LD HL,(dss_line) LD HL,(dss_line)
INC HL INC HL
LD (NextParameter),HL LD (NextParameter),HL
.CheckChar: .CheckChar: CALL .GetParam
CALL .GetParam JR NC,1F
JP NC,1F ;
CCF ; …᫨ ¯®á«¥¤­¨© ¯ à ¬¥âà ¢ áâப¥ = 0 CCF ; …᫨ ¯®á«¥¤­¨© ¯ à ¬¥âà ¢ áâப¥ = 0
RET ; â® ¢ë室¨¬. <20> §¡®à ®ª®­ç¥­ RET ; â® ¢ë室¨¬. <20> §¡®à ®ª®­ç¥­
;
1: LD A,(Buffer+1) ; ®á­®¢­®¬ 横«¥ CheckChar ¬ë 1: LD A,(Buffer+1) ; ®á­®¢­®¬ 横«¥ CheckChar ¬ë
AND A ; ¦¤ñ¬ ⮫쪮 ®¤¨­ ᨬ¢®« ¢ AND A ; ¦¤ñ¬ ⮫쪮 ®¤¨­ ᨬ¢®« ¢
JP Z,1F ; ª«îç¥. <20>®í⮬㠥᫨ ¨å ¡®«ìè¥, JR Z,1F ; ª«îç¥. <20>®í⮬㠥᫨ ¨å ¡®«ìè¥,
SCF ; â® ¢ë室¨¬ á ®è¨¡ª®©. SCF ; â® ¢ë室¨¬ á ®è¨¡ª®©.
RET ; ‚ë室 á ®è¨¡ª®©. RET ; ‚ë室 á ®è¨¡ª®©.
1: ; <20>஢¥àª /ãáâ ­®¢ª  ª«îç  1: ; <20>஢¥àª /ãáâ ­®¢ª  ª«îç 
@ -411,16 +338,11 @@ Set_keys:
;-----------------; ;-----------------;
;-----------------; ;-----------------;
.set_keys_l: .set_keys_l: INC C
INC C .set_keys_a: INC C
.set_keys_a: .set_keys_x: INC C
INC C .set_keys_e: INC C
.set_keys_x: .set_keys_c: ; EX DE,HL ; <20><E28099>Ÿœ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20><EFBFBD>€Œ…<E280A6>!
INC C
.set_keys_e:
INC C
.set_keys_c:
; EX DE,HL ; <20><E28099>Ÿœ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20><EFBFBD>€Œ…<E280A6>!
LD HL,key_buff ; ‚ëç¨á«ï¥¬ ï祩ªã åà ­¥­¨ï ª«îç  LD HL,key_buff ; ‚ëç¨á«ï¥¬ ï祩ªã åà ­¥­¨ï ª«îç 
ADD HL,BC ADD HL,BC
LD A,(HL) ; ¨ ¯à®¢¥à塞 ­¥â «¨ â ¬ 㦥 ª«îç . LD A,(HL) ; ¨ ¯à®¢¥à塞 ­¥â «¨ â ¬ 㦥 ª«îç .
@ -437,7 +359,7 @@ Set_keys:
SUB C ; ’ãâ Ž†ˆ„€…’‘Ÿ, çâ® €=1. …᫨ >1, â® íâ® ª«îç ¡¥§ ¯ à ¬¥â஢ SUB C ; ’ãâ Ž†ˆ„€…’‘Ÿ, çâ® €=1. …᫨ >1, â® íâ® ª«îç ¡¥§ ¯ à ¬¥â஢
; JR Z,.CheckChar ; ¥á«¨ ª«îç "X" â® á«¥¤ãî騩 ªà㣠横«  ; JR Z,.CheckChar ; ¥á«¨ ª«îç "X" â® á«¥¤ãî騩 ªà㣠横« 
JR C,.CheckChar ; ¥á«¨ ª«îç ¡®«ìè¥ ª«îç  'e', â® á«¥¤ãî騩 ªà㣠横«  JR C,.CheckChar ; ¥á«¨ ª«îç ¡®«ìè¥ ª«îç  'e', â® á«¥¤ãî騩 ªà㣠横« 
;
PUSH BC PUSH BC
CALL .GetParam ; ¯®«ãç ¥¬ á«¥¤ãî騩 ¯ à ¬¥âà áâப¨ DOS ª ­ ©¤¥­®¬ã ª«îçã CALL .GetParam ; ¯®«ãç ¥¬ á«¥¤ãî騩 ¯ à ¬¥âà áâப¨ DOS ª ­ ©¤¥­®¬ã ª«îçã
POP BC POP BC
@ -451,8 +373,8 @@ Set_keys:
; PUSH HL ; <20><E28099>Ÿœ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20><EFBFBD>€Œ…<E280A6>! ; PUSH HL ; <20><E28099>Ÿœ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20><EFBFBD>€Œ…<E280A6>!
CALL .OpenFile ; Žâªàë⨥ ä ©«  (¨«¨ ¯à®¢¥àª  ­ «¨ç¨ï) ¯® ¨¬¥­¨ ¨§ ¡ãä¥à  CALL .OpenFile ; Žâªàë⨥ ä ©«  (¨«¨ ¯à®¢¥àª  ­ «¨ç¨ï) ¯® ¨¬¥­¨ ¨§ ¡ãä¥à 
; POP HL ; <20><E28099>Ÿœ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20><EFBFBD>€Œ…<E280A6>! ; POP HL ; <20><E28099>Ÿœ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20><EFBFBD>€Œ…<E280A6>!
RET C ; ¢ë室, ¥á«¨ ®è¨¡ª  JR NC,.CheckChar ; ¯®£­ «¨ ­  á«¥¤ãî騩 ¢¨â®ª à §¡®à  ª«î祩
JP .CheckChar ; ¯®£­ «¨ ­  á«¥¤ãî騩 ¢¨â®ª à §¡®à  ª«î祩 RET ; ¢ë室, ¥á«¨ ®è¨¡ª 
;-----------------; ;-----------------;
;-----------------; ;-----------------;
@ -462,7 +384,7 @@ Set_keys:
LD DE,Buffer ; ¡ãä¥à ¤«ï ®¯¥à æ¨© á® áâப ¬¨ LD DE,Buffer ; ¡ãä¥à ¤«ï ®¯¥à æ¨© á® áâப ¬¨
RST #10 ; ¯®«ãç ¥¬ ¢ ¡ãä¥à¥ á«¥¤ãî騩 ¯ à ¬¥âà RST #10 ; ¯®«ãç ¥¬ ¢ ¡ãä¥à¥ á«¥¤ãî騩 ¯ à ¬¥âà
LD (NextParameter),HL LD (NextParameter),HL
CCF ;CCF
LD A,(Buffer) LD A,(Buffer)
AND A AND A
RET NZ ; <20>®à¬ «ì­ë© ¢®§¢à â C = 0 RET NZ ; <20>®à¬ «ì­ë© ¢®§¢à â C = 0
@ -474,7 +396,7 @@ Set_keys:
.OpenFile: .OpenFile:
LD HL,key_save ; ¯à®¯¨á뢠¥¬ ª«îç ¢ ª®¤ ¤«ï ¯à®¢¥àª¨ ­  EXE LD HL,key_save ; ¯à®¯¨á뢠¥¬ ª«îç ¢ ª®¤ ¤«ï ¯à®¢¥àª¨ ­  EXE
LD (HL),C ; ¢â몠¥¬ §­ ç¥­¨¥ ª«îç  ¢ ª®¤ LD (HL),C ; ¢â몠¥¬ §­ ç¥­¨¥ ª«îç  ¢ ª®¤
LD BC,#0045 ; ¯à®¢¥à塞 ¡ãä¥à ­  ª®à४⭮áâì ¨¬¥­¨ ä ©«  LD BC,Dss.EX_Path.GET_ALL ; ¯à®¢¥à塞 ¡ãä¥à ­  ª®à४⭮áâì ¨¬¥­¨ ä ©« 
LD HL,Buffer ; ????? ᤥ« âì ¯à®¢¥àªã ­  ª®à४⭮áâì ¢á¥£® ¯ãâ¨????? LD HL,Buffer ; ????? ᤥ« âì ¯à®¢¥àªã ­  ª®à४⭮áâì ¢á¥£® ¯ãâ¨?????
RST ToDSS RST ToDSS
RET C ; ®è¨¡ª  ¢ áâப¥ RET C ; ®è¨¡ª  ¢ áâப¥
@ -483,24 +405,22 @@ Set_keys:
SCF SCF
RET NZ ; ®è¨¡ª  ä ©«  - ¢ë室 RET NZ ; ®è¨¡ª  ä ©«  - ¢ë室
LD A,0 LD A,Dss.Open.R
LD C,11h LD C,Dss.Open
LD HL,Buffer LD HL,Buffer
RST ToDSS ; ®âªàë⨥ ä ©«  RST ToDSS ; ®âªàë⨥ ä ©« 
RET C ; ®è¨¡ª  ä ©«  - ¢ë室 RET C ; ®è¨¡ª  ä ©«  - ¢ë室
LD (.fileHandler),A ; á®å࠭塞 奭¤«¥à .fileHandler+1: LD (.fileHandler),A ; á®å࠭塞 奭¤«¥à
.fileHandler EQU $-2
;-----------------; ;-----------------;
;-----------------; <20>஢¥à塞 ®¡à ¡ â뢠¥¬ë© ª«îç ;-----------------; <20>஢¥à塞 ®¡à ¡ â뢠¥¬ë© ª«îç
key_save EQU $+1 key_save+1: LD A,#FF ; á ¢®âª­ñâáï §­ ç¥­¨¥ ¨§ ॣ¨áâà  C
LD A,#FF ; á ¢®âª­ñâáï §­ ç¥­¨¥ ¨§ ॣ¨áâà  C
XOR 1 ; ¥á«¨ 1, â® íâ® ª«îç "E" XOR 1 ; ¥á«¨ 1, â® íâ® ª«îç "E"
RET NZ ; ¥á«¨ ­¥â, â® ¢ë室 ¨§ ¯à®æ¥¤ãàë. RET NZ ; ¥á«¨ ­¥â, â® ¢ë室 ¨§ ¯à®æ¥¤ãàë.
;-----------------; ;-----------------;
;-----------------; <20>஢¥àª  à áè¨à¥­¨ï ä ©«  ;-----------------; <20>஢¥àª  à áè¨à¥­¨ï ä ©« 
LD BC,#0445 ; ª«î箬 "E" ¯à®¢¥à塞 ä ©« LD BC,Dss.EX_Path.GET_TYPE ; ª«î箬 "E" ¯à®¢¥à塞 ä ©«
LD HL,Buffer ; ­  à áè¨à¥­¨¥ "EXE" ¢ë¤¥«¨¢ LD HL,Buffer ; ­  à áè¨à¥­¨¥ "EXE" ¢ë¤¥«¨¢
LD DE,BufferEXE ; ¨§ áâப¨ ¨¬¥­¨ à áè¨à¥­¨¥ LD DE,BufferEXE ; ¨§ áâப¨ ¨¬¥­¨ à áè¨à¥­¨¥
RST ToDSS ; ä ©«  ¢ ®â¤¥«ì­ë© ¡ãä¥à ­  4 ¡ ©â  RST ToDSS ; ä ©«  ¢ ®â¤¥«ì­ë© ¡ãä¥à ­  4 ¡ ©â 
@ -511,13 +431,15 @@ key_save EQU $+1
LD HL,BufferEXE LD HL,BufferEXE
LD BC,IsEXElength-IsEXE LD BC,IsEXElength-IsEXE
2: LD A,(DE) 2: LD A,(DE)
RES 5,(HL) ; ¤¥« ¥¬ ¬ «¥­ìª¨© ᨬ¢®« ¡®«ì訬))) RES 5,(HL) ; ¤¥« ¥¬ ¬ «¥­ìª¨© ᨬ¢®« ¡®«ì訬
CPI CPI
INC DE INC DE
JP PO,3F ; ¥á«¨ ¯®á«¥¤­¨© ᨬ¢®« ¯à®¢¥à¥­, â® JP ­  ¯à®¢¥àªã JP PO,3F ; ¥á«¨ ¯®á«¥¤­¨© ᨬ¢®« ¯à®¢¥à¥­, â® JP ­  ¯à®¢¥àªã
JP Z,2B ; ¥á«¨ ᨬ¢®« ᮢ¯ ¤ ¥â, â® ¯®¢â®à JR Z,2B ; ¥á«¨ ᨬ¢®« ᮢ¯ ¤ ¥â, â® ¯®¢â®à
;
3: SCF ; á ¯®¯ ¤ñ¬ ª®£¤  BC=0 ¨«¨ ᨬ¢®« ­¥ ᮢ¯ « 3: SCF ; á ¯®¯ ¤ñ¬ ª®£¤  BC=0 ¨«¨ ᨬ¢®« ­¥ ᮢ¯ «
RET NZ ; ¥á«¨ ¢ë諨 ¨§ 横«  ¨ ᨬ¢®« ­¥ ᮢ¯ « - ®è¨¡ª , RET NZ ; ¥á«¨ ¢ë諨 ¨§ 横«  ¨ ᨬ¢®« ­¥ ᮢ¯ « - ®è¨¡ª ,
;
XOR A ; ¥á«¨ ¢áñ ­¨èâïª (???- § ªà뢠¥¬ ®âªàëâë© EXE ¨???) ¢ë室¨¬ XOR A ; ¥á«¨ ¢áñ ­¨èâïª (???- § ªà뢠¥¬ ®âªàëâë© EXE ¨???) ¢ë室¨¬
EX AF,AF' EX AF,AF'
LD HL,Buffer LD HL,Buffer
@ -527,17 +449,16 @@ key_save EQU $+1
EX AF,AF' EX AF,AF'
CP (HL) CP (HL)
JR Z,1F JR Z,1F
;
EX AF,AF' EX AF,AF'
JP PE,1B JP PE,1B
1: ;
1: XOR A
LD A,0
LD (DE),A LD (DE),A
LD A,(ExeHandler) LD A,(ExeHandler)
LD C,12h LD C,Dss.Close
RST ToDSS JP ToDSS
;RET
RET
;******************************************************* ;*******************************************************
; _____ _ ____ __ ; _____ _ ____ __
@ -549,33 +470,31 @@ key_save EQU $+1
; (???¤®¡ ¢¨âì ª«îç ¤«ï ®â¬¥­ë???) ; (???¤®¡ ¢¨âì ª«îç ¤«ï ®â¬¥­ë???)
;-----------------; ;-----------------;
TestConf: TestConf: LD A,(ConfHandler)
LD A,(ConfHandler)
AND A ; ¯à®¢¥àª  ­  ®âáãâá⢨¥ 奭¤«¥à  AND A ; ¯à®¢¥àª  ­  ®âáãâá⢨¥ 奭¤«¥à 
SCF SCF
RET Z ; ¢ë室 á ®è¨¡ª®© ¥á«¨ ä ©« ­¥ ®âªàëâ RET Z ; ¢ë室 á ®è¨¡ª®© ¥á«¨ ä ©« ­¥ ®âªàëâ
;
EX AF,AF' ; á®å࠭塞 奭¤«¥à, íª®­®¬¨¬ â ªâë))) EX AF,AF' ; á®å࠭塞 奭¤«¥à, íª®­®¬¨¬ â ªâë)))
LD A,(x_key) ; ¥á«¨ ¯à®¢¥àª  (ª«îç X) ­  奤¥à ¨ à §¬¥à LD A,(x_key) ; ¥á«¨ ¯à®¢¥àª  (ª«îç X) ­  奤¥à ¨ à §¬¥à
AND A ; ä ©«  ®âª«î祭 , â® ¯à®¯ã᪠¥¬ .TestConfHeader AND A ; ä ©«  ®âª«î祭 , â® ¯à®¯ã᪠¥¬ .TestConfHeader
JR NZ,1F JR NZ,1F
;
EX AF,AF' ; ¢®ááâ ­®¢¨«¨ 奭¤«¥à, áíª®­®¬¨«¨ â ªâë))) EX AF,AF' ; ¢®ááâ ­®¢¨«¨ 奭¤«¥à, áíª®­®¬¨«¨ â ªâë)))
CALL .TestConfHeader CALL .TestConfHeader
RET C RET C
1: ;
CALL .TestConfSize 1: CALL .TestConfSize
RET RET
;-----------------; ;-----------------;
.TestConfHeader: .TestConfHeader:
LD HL,Buffer LD HL,Buffer
LD DE,8 LD DE,8
LD C,13h ; ç¨â ¥¬ ¢ ¡ãä¥à ¯¥à¢ë¥ 8 ¡ ©â LD C,Dss.Read ; ç¨â ¥¬ ¢ ¡ãä¥à ¯¥à¢ë¥ 8 ¡ ©â
RST ToDSS ; ¤«ï áà ¢­¥­¨ï á è ¡«®­®¬ RST ToDSS ; ¤«ï áà ¢­¥­¨ï á è ¡«®­®¬
RET C RET C
; ; ª®¢ëà塞 ¡ãä¥à ¯®á¨¬¢®«ì­®
; ; ª®¢ëà塞 ¡ãä¥à ¯®á¨¬¢®«ì­®
LD DE,IsNormConf ; è ¡«®­ ¤«ï áà ¢­¥­¨ï LD DE,IsNormConf ; è ¡«®­ ¤«ï áà ¢­¥­¨ï
LD HL,Buffer LD HL,Buffer
LD BC,IsNormConfLen-IsNormConf LD BC,IsNormConfLen-IsNormConf
@ -583,9 +502,9 @@ TestConf:
CPI CPI
INC DE INC DE
JP PO,3F ; ¥á«¨ ¯®á«¥¤­¨© ᨬ¢®« ¯à®¢¥à¥­, â® JP ­  ¯à®¢¥àªã JP PO,3F ; ¥á«¨ ¯®á«¥¤­¨© ᨬ¢®« ¯à®¢¥à¥­, â® JP ­  ¯à®¢¥àªã
JP Z,2B ; ¥á«¨ ᨬ¢®« ᮢ¯ ¤ ¥â, â® ¯®¢â®à JR Z,2B ; ¥á«¨ ᨬ¢®« ᮢ¯ ¤ ¥â, â® ¯®¢â®à
3: ; á ¯®¯ ¤ñ¬ ª®£¤  BC=0 ¨«¨ ᨬ¢®« ­¥ ᮢ¯ «. ; ; á ¯®¯ ¤ñ¬ ª®£¤  BC=0 ¨«¨ ᨬ¢®« ­¥ ᮢ¯ «. ;
RET Z ; ¥á«¨ BC=0 ¨ ¯®á«¥¤­¨© ᨬ¢®« ᮢ¯ « (Z=1) 3: RET Z ; ¥á«¨ BC=0 ¨ ¯®á«¥¤­¨© ᨬ¢®« ᮢ¯ « (Z=1)
SCF ; ¥á«¨ BC=0 ¨ ᨬ¢®« ­¥ ᮢ¯ « - ®è¨¡ª  SCF ; ¥á«¨ BC=0 ¨ ᨬ¢®« ­¥ ᮢ¯ « - ®è¨¡ª 
RET RET
@ -599,21 +518,21 @@ TestConf:
OR L ; 61152 ¡ ©â , ¯®í⮬㠯஢¥à塞, çâ® ¢ HL ­®«ì. OR L ; 61152 ¡ ©â , ¯®í⮬㠯஢¥à塞, çâ® ¢ HL ­®«ì.
SCF SCF
RET NZ RET NZ
;
LD A,(x_key) ; ‘à ¢­¨¢ ¥¬ à §¬¥à ä ©«  á íâ ««®­ë¬ ¤«ï 1K30 (59215 ¨«¨ #E74F) LD A,(x_key) ; ‘à ¢­¨¢ ¥¬ à §¬¥à ä ©«  á íâ ««®­ë¬ ¤«ï 1K30 (59215 ¨«¨ #E74F)
AND A ; «¨¡® (¯à¨ ãáâ ­®¢«¥­­®¬ ª«îç¥ X) á ¬ ªá¨¬ «ì­® ¢®§¬®¦­ë¬ AND A ; «¨¡® (¯à¨ ãáâ ­®¢«¥­­®¬ ª«îç¥ X) á ¬ ªá¨¬ «ì­® ¢®§¬®¦­ë¬
JR NZ,2F ; ¤«ï ⥪ã饣® § £àã§ç¨ª  ¢ BIOS (61152 ¨«¨ #EEE0) JR NZ,2F ; ¤«ï ⥪ã饣® § £àã§ç¨ª  ¢ BIOS (61152 ¨«¨ #EEE0)
; ; ’ã⠯஢¥àª  ­  â®ç­®¥ ᮮ⢥âá⢨¥ ¤«ï 1K30
; ’ã⠯஢¥àª  ­  â®ç­®¥ ᮮ⢥âá⢨¥ ¤«ï 1K30
LD HL,(ConfSize) LD HL,(ConfSize)
LD A,H LD A,H
SUB XH SUB XH
JR NZ,1F JR NZ,1F
;
LD A,L LD A,L
SUB XL SUB XL
JR Z,3F
1: SCF 1: SCF
RET NZ RET
JP 3F
; ;
; ’ã⠯஢¥àª  ­  ­¥¯à¨¢ë襭¨¥ 61152 ¡ ©â  ; ’ã⠯஢¥àª  ­  ­¥¯à¨¢ë襭¨¥ 61152 ¡ ©â 
2: 2:
@ -622,18 +541,16 @@ TestConf:
POP BC POP BC
SBC HL,BC SBC HL,BC
RET C RET C
;
3: 3: LD B,0 ; ‚®§¢à é ¥¬ 㪠§ â¥«ì
LD B,0 ; ‚®§¢à é ¥¬ 㪠§ â¥«ì ;CALL .set_fp ; ¢ ä ©«¥ ­  ¥£® ­ ç «®
CALL .set_fp ; ¢ ä ©«¥ ­  ¥£® ­ ç «® ;RET
RET
;-----------------; ;-----------------;
; ‚室­®¥ §­ ç¥­¨¥ ¢ ॣ¨áâॠB
.set_fp: ; ‚室­®¥ §­ ç¥­¨¥ ¢ ॣ¨áâॠB .set_fp: LD A,(ConfHandler) ; •í­¤«¥à ä ©«  á ª®â®àë¬ á¥©ç á à ¡®â ¥¬
LD A,(ConfHandler) ; •í­¤«¥à ä ©«  á ª®â®àë¬ á¥©ç á à ¡®â ¥¬
LD HL,0 LD HL,0
LD IX,0 LD IX,0
LD C,15h LD C,Dss.Move_FP
RST ToDSS ; ãáâ ­®¢ª  㪠§ â¥«ï ¢ ä ©«¥ RST ToDSS ; ãáâ ­®¢ª  㪠§ â¥«ï ¢ ä ©«¥
RET RET
;******************************************************* ;*******************************************************
@ -646,12 +563,11 @@ TestConf:
; ‚뤥«ï¥¬ ¯ ¬ïâì ¯®¤ § £à㧪㠯à®è¨¢ª¨ - 64 ª¡ ; ‚뤥«ï¥¬ ¯ ¬ïâì ¯®¤ § £à㧪㠯à®è¨¢ª¨ - 64 ª¡
;-----------------; ;-----------------;
TakeMem: TakeMem: LD BC,#04*256 + BIOS.GetMem ; ‡ ¯à®á ­  ¢ë¤¥«¥­¨¥ 64 Š¡ ¯ ¬ï⨠¯®¤ ª®­äã
LD BC,#04C2 ; ‡ ¯à®á ­  ¢ë¤¥«¥­¨¥ 64 Š¡ ¯ ¬ï⨠¯®¤ ª®­äã
RST ToBIOS RST ToBIOS
RET C ; § ¢¥à襭¨¥ - ­¥å¢ âª  ¯ ¬ï⨠RET C ; § ¢¥à襭¨¥ - ­¥å¢ âª  ¯ ¬ïâ¨
LD (ram_blk_id),A LD (ram_blk_id),A
LD C,#C5 ; § ¯à®á ­®¬¥à®¢ ¢ë¤¥«¥­­ëå áâà ­¨æ LD C,BIOS.GetMemBlkPages ; § ¯à®á ­®¬¥à®¢ ¢ë¤¥«¥­­ëå áâà ­¨æ
LD HL,ram_pages ; ¡ãä¥à ¤«ï ¯¥à¥ç¨á«¥­¨ï áâà ­¨æ LD HL,ram_pages ; ¡ãä¥à ¤«ï ¯¥à¥ç¨á«¥­¨ï áâà ­¨æ
RST ToBIOS RST ToBIOS
RET C ; § ¢¥à襭¨¥ - ®è¨¡ª  ¢ ID ¡«®ª  RET C ; § ¢¥à襭¨¥ - ®è¨¡ª  ¢ ID ¡«®ª 
@ -682,8 +598,8 @@ Load_conf: LD HL,ram_pages
; CALL .loopRead ; CALL .loopRead
; ; <20> à ¬¥âàë: DE - ᪮«ìª® áç¨â âì ¢ áâà ­¨æã ; ; <20> à ¬¥âàë: DE - ᪮«ìª® áç¨â âì ¢ áâà ­¨æã
LD A,(ConfHandler) ;   ªã¤  £à㧨âì - à ááç¨â뢠¥âáï (#0000 - DE) LD A,(ConfHandler) ;   ªã¤  £à㧨âì - à ááç¨â뢠¥âáï (#0000 - DE)
LD HL,#C000 LD HL,SLOT3.MEM_ADDR
LD DE,#4000 LD DE,SLOT1.MEM_ADDR
LD C,Dss.Read LD C,Dss.Read
RST ToDSS RST ToDSS

@ -1 +1 @@
Subproject commit d2ba40c4620459681fdc5eb8d4cadcb50eb79aa8 Subproject commit 57f4969f09a1bfc005af0b60316f03f30ee815ba