mirror of
https://github.com/Tolik-Trek/LDConf.git
synced 2026-06-15 09:21:36 +03:00
start refactoring
This commit is contained in:
parent
17d1d63e79
commit
0e4179f5ba
133
Consts.inc
133
Consts.inc
@ -1,93 +1,78 @@
|
||||
;==================================================================================================================
|
||||
;
|
||||
IFDEF debug : if debug
|
||||
trace_msg1: db 'Set_keys OK',13,10,0
|
||||
trace_msg2: db 'TestConf OK',13,10,0
|
||||
trace_msg3: db 'take_mem OK',13,10,0
|
||||
trace_msg4: db 'read_conf OK',13,10,0
|
||||
trace_msg5: db 'Set_Ret OK',13,10,0
|
||||
trace_msg6: db 'Set_Acex_Data OK',13,10,0 ; —㤮 - 㢨¤¥âì íâ® á®®¡é¥¨¥ ¦¥«¥§¥
|
||||
endif : ENDIF
|
||||
;
|
||||
;
|
||||
;
|
||||
; ; ’ãâ ᨤïâ ¯¥à¥¬¥ë¥, ª®áâ âë ¨ ¡ãä¥àë
|
||||
;
|
||||
Spec_Page equ 41h
|
||||
;
|
||||
Help_Msg:
|
||||
DB 13,10
|
||||
DB 'LDConf ver. ',Ver_ID,' ',__DATE__,13,10
|
||||
DB '<27>à®£à ¬¬ ¤«ï § £à㧪¨ ¨ â¥áâ¨à®¢ ¨ï ª®ä¨£ãà æ¨© Sprinter 2000',13,10,13,10
|
||||
DB '<27> à ¬¥âàë ç¥à¥§ ¯à®¡¥«:',13,10
|
||||
DB 'a - ®áâ ¢¨âì § £à㦠¥¬ãî ª®äã ¯®á«¥ ¢ë室 ',13,10
|
||||
DB 'c - ¯®á«¥ í⮣® ª«îç ¤®«¦¥ ¨¤â¨ ä ©« ª®äë',13,10
|
||||
DB 'e - EXE ä ©« ¤«ï § ¯ã᪠¯®á«¥ à¥á¥â ¢ ª®äã',13,10
|
||||
DB 'x - ¥ ¯à®¢¥àïâì ä ©« ª®äë ¢ «¨¤®áâì § £®«®¢ª ¨ à §¬¥à',13,10
|
||||
DB 'l - áâà èë© ª«îç, § «¨â ï ª®ä ®áâ ¥âáï ¤® ¯¥à¥§ «¨¢ª¨ ¨«¨ ¢ëª«î票ï <20>Š',13,10,13,10
|
||||
DB '…᫨ 㪠§ ® ⮫쪮 ¨¬ï ª®äë, â®: § £à㧪 ª®äë -> à¥á¥â ->',13,10
|
||||
DB '¢®ááâ ®¢«¥¨¥ ¤¥ä®«â®© ª®äë -> à¥á¥â -> ¢ë室. <20>®ª â ª.',13,10,13,10
|
||||
DB '<27>à®£à ¬¬ ¡ë« § 祬-â® ¯¨á € ⮫¨¥¬ <20>¥«ï᪨¬. ',13,10
|
||||
DB '<27>¥ ¯¨è¨â¥ ¬¥ áî¤ : ',e_mail,' ))))',13,10,13,10
|
||||
DB 0
|
||||
; ’ãâ ᨤïâ ¯¥à¥¬¥ë¥, ª®áâ âë ¨ ¡ãä¥àë
|
||||
Help_Msg: DB 13,10
|
||||
DB 'LDConf ver. ',Ver_ID,' ',__DATE__,13,10
|
||||
DB '<27>à®£à ¬¬ ¤«ï § £à㧪¨ ¨ â¥áâ¨à®¢ ¨ï ª®ä¨£ãà æ¨© Sprinter 2000',13,10,13,10
|
||||
DB '<27> à ¬¥âàë ç¥à¥§ ¯à®¡¥«:',13,10
|
||||
DB 'a - ®áâ ¢¨âì § £à㦠¥¬ãî ª®äã ¯®á«¥ ¢ë室 ',13,10
|
||||
DB 'c - ¯®á«¥ í⮣® ª«îç ¤®«¦¥ ¨¤â¨ ä ©« ª®äë',13,10
|
||||
DB 'e - EXE ä ©« ¤«ï § ¯ã᪠¯®á«¥ à¥á¥â ¢ ª®äã',13,10
|
||||
DB 'x - ¥ ¯à®¢¥àïâì ä ©« ª®äë ¢ «¨¤®áâì § £®«®¢ª ¨ à §¬¥à',13,10
|
||||
DB 'l - áâà èë© ª«îç, § «¨â ï ª®ä ®áâ ¥âáï ¤® ¯¥à¥§ «¨¢ª¨ ¨«¨ ¢ëª«î票ï <20>Š',13,10,13,10
|
||||
DB '…᫨ 㪠§ ® ⮫쪮 ¨¬ï ª®äë, â®: § £à㧪 ª®äë -> à¥á¥â ->',13,10
|
||||
DB '¢®ááâ ®¢«¥¨¥ ¤¥ä®«â®© ª®äë -> à¥á¥â -> ¢ë室. <20>®ª â ª.',13,10,13,10
|
||||
DB '<27>à®£à ¬¬ ¡ë« § 祬-â® ¯¨á € ⮫¨¥¬ <20>¥«ï᪨¬. ',13,10
|
||||
DB '<27>¥ ¯¨è¨â¥ ¬¥ áî¤ : ',e_mail,' ))))',13,10,13,10
|
||||
DB 0
|
||||
; ; ‘®®¡é¥¨ï ®¡ ®è¨¡ª å
|
||||
error_Vmode: DB 'Žè¨¡ª ®¯à¥¤¥«¥¨ï ०¨¬ íªà !',13,10,0
|
||||
error_ComStr: DB 'Žè¨¡ª ¢ ¯ à ¬¥âà å ª®¬¬ ¤®© áâப¨!',13,10,0
|
||||
error_confFile: DB 'Žè¨¡ª ä ©« ¯à®è¨¢ª¨!',13,10,0
|
||||
error_freeMem: DB 'Žè¨¡ª ¢ë¤¥«¥¨ï ¯ ¬ïâ¨!',13,10,0
|
||||
error_readConf: DB 'Žè¨¡ª ç⥨ï ä ©« ¯à®è¨¢ª¨!',13,10,0
|
||||
WellDone: DB 'Well done!)))',13,10,0
|
||||
WellDone: DB 'Well done!)))',13,10,0
|
||||
;
|
||||
|
||||
;-----------------; <EFBFBD>⨠㪠§ ⥫¨ ¤®«¦ë ¨¤â¨ ¤à㣠§ ¤à㣮¬
|
||||
ConfSize: DB #4F,#E7 ; #E74F - ¯à ¢¨«ìë© à §¬¥à ¯à®è¨¢ª¨ 59215 (®¡à âë© ¯®à冷ª!) 12288+16384+16384+14159
|
||||
MaxConfSize: DB #E0,#EE ; #EEE0 - ¬ ªá¨¬ «ìë© à §¬¥à ¯à®è¨¢ª¨ 61152 (®¡à âë© ¯®à冷ª!) ¤«ï § £àã§ç¨ª ª®äë ¢ ¡¨®á.
|
||||
ConfSize: DB #4F,#E7 ; #E74F - ¯à ¢¨«ìë© à §¬¥à ¯à®è¨¢ª¨ 59215 (®¡à âë© ¯®à冷ª!) 12288+16384+16384+14159
|
||||
MaxConfSize: DB #E0,#EE ; #EEE0 - ¬ ªá¨¬ «ìë© à §¬¥à ¯à®è¨¢ª¨ 61152 (®¡à âë© ¯®à冷ª!) ¤«ï § £àã§ç¨ª ª®äë ¢ ¡¨®á.
|
||||
|
||||
IsEXE: DB 'EXE',0 ; <EFBFBD> áè¨à¥¨¥ § ¯ã᪠¥¬®£® ä ©« ¯® ª«îçã 'E'
|
||||
IsEXElength EQU $
|
||||
IsEXE: DB 'EXE',0 ; <EFBFBD> áè¨à¥¨¥ § ¯ã᪠¥¬®£® ä ©« ¯® ª«îçã 'E'
|
||||
IsEXElength EQU $
|
||||
|
||||
IsNormConf: DB #FF,#FF,#62,#7B,#39,#00,#FF,#FF ; 8 ¡ ©â § £®«®¢ª ª®äë
|
||||
IsNormConf: DB #FF,#FF,#62,#7B,#39,#00,#FF,#FF ; 8 ¡ ©â § £®«®¢ª ª®äë
|
||||
IsNormConfLen EQU $
|
||||
|
||||
; ; ’ãâ ª«îç¨ § ¯ãáª
|
||||
key_buff EQU $
|
||||
c_key: DB 0 ; ConfHandler1
|
||||
e_key: DB 0 ; ExeHandler
|
||||
x_key: DB 0 ; ª«îç ®â¬¥ë â¥áâ § £®«®¢ª ¯à®è¨¢ª¨ ¨ ¯à¨¢ï§ª¨ ª à §¬¥àã 1K30
|
||||
a_key: DB 0 ; ª«îç ®â¬¥ë § £à㧪¨ ¤¥ä®«â®© ª®äë ¯®á«¥ ¢ë室
|
||||
l_key: db 0 ; ª«îç ¤«ï à §ëå â¥á⮢
|
||||
|
||||
; ’ãâ ª«îç¨ § ¯ãáª
|
||||
key_buff EQU $
|
||||
c_key: DB 0 ; ConfHandler1
|
||||
e_key: DB 0 ; ExeHandler
|
||||
x_key: DB 0 ; ª«îç ®â¬¥ë â¥áâ § £®«®¢ª ¯à®è¨¢ª¨ ¨ ¯à¨¢ï§ª¨ ª à §¬¥àã 1K30
|
||||
a_key: DB 0 ; ª«îç ®â¬¥ë § £à㧪¨ ¤¥ä®«â®© ª®äë ¯®á«¥ ¢ë室
|
||||
l_key: db 0 ; ª«îç ¤«ï à §ëå â¥á⮢
|
||||
key_buff_end EQU $-1
|
||||
|
||||
; ; âãâ 奤«¥àë ®âªàëâëå ä ©«®¢
|
||||
FirstHandler EQU $ ; ??? ã¡à âì «¨è¥¥ ???
|
||||
ConfHandler: DB 0 ; â¥áâ¨à㥬 ï ª®ä (c_key)
|
||||
ExeHandler: DB 0 ; § ¯ã᪠¥¬ë© EXE (e_key)
|
||||
LastHandler EQU $ ; ??? ã¡à âì «¨è¥¥ ???
|
||||
;NowHandler: DB 0 ; 奤«¥à ⥪ã饣® ä ©«
|
||||
ConfMultKeys: DB #FF,#FF,'I','M' ; …᫨ ¢®âªãâì áî¤ áâபã 'IM', â® çâ®-â® ¡ã¤¥â
|
||||
|
||||
; âãâ 奤«¥àë ®âªàëâëå ä ©«®¢
|
||||
FirstHandler EQU $ ; ??? ã¡à âì «¨è¥¥ ???
|
||||
ConfHandler: DB 0 ; â¥áâ¨à㥬 ï ª®ä (c_key)
|
||||
ExeHandler: DB 0 ; § ¯ã᪠¥¬ë© EXE (e_key)
|
||||
LastHandler EQU $ ; ??? ã¡à âì «¨è¥¥ ???
|
||||
;NowHandler: DB 0 ; 奤«¥à ⥪ã饣® ä ©«
|
||||
ConfMultKeys: DB #FF,#FF,'I','M' ; …᫨ ¢®âªãâì áî¤ áâபã 'IM', â® çâ®-â® ¡ã¤¥â
|
||||
;-----------------;
|
||||
|
||||
Reload_String: DB 'ACEX_30K_LOADING' ; ä« £ § «¨¢ª¨ ª®äë ¨§ ª¥è
|
||||
VMod: db 0 ; <EFBFBD>¥¦¨¬ íªà
|
||||
VModPage: db 0 ; ‘âà ¨æ íªà
|
||||
ram_blk_id: DB 0 ; ˆ¤¥â¨ä¨ª â®à ¡«®ª ¯ ¬ïâ¨
|
||||
SP_Save: DB 0,0 ; ’ãâ åà ¨¬ á⥪ ¤«ï ¯¥à¥§ £à㧪¨
|
||||
dss_line: DB 0,0 ; 㪠§ ⥫ì DOS áâப㠧 ¯ã᪠LDConf
|
||||
NextParameter: dw 0000 ; ‘«¥¤ãî騩 ¯ à ¬¥âà ¤«ï .GetParam
|
||||
;
|
||||
;
|
||||
; ; <EFBFBD> §ë¥ ¡ãää¥à (.)(.)
|
||||
BufferEXE: DB 0,0,0,0
|
||||
ram_pages: DB 0,0,0,0,0 ; ‚뤥«¥ë¥ BIOS'®¬ ¡«®ª¨ ¯ ¬ï⨠(¯®á«¥¤¨© #FF)
|
||||
page0_save: DB 0 ; ’ãâ åà ¨¬ ⥪ãéãî áâà ¨æã PAGE0 (¤®«¦ ¨¤â¨ ¯®á«¥ ram_pages)
|
||||
page1_save: DB 0 ; ’ãâ åà ¨¬ ⥪ãéãî áâà ¨æã PAGE1
|
||||
page2_save: DB 0 ; ’ãâ åà ¨¬ ⥪ãéãî áâà ¨æã PAGE2 (¤®«¦ ¨¤â¨ ¯®á«¥ ram_pages)
|
||||
page3_save: DB 0 ; ’ãâ åà ¨¬ ⥪ãéãî áâà ¨æã PAGE3
|
||||
port_1ffd_save: DB 0 ; ‘®áâ®ï¨¥ ¯®àâ 1FFD ¤® ¢áïª¨å ¬ ¨¯ã«ï権
|
||||
page0_def db 0
|
||||
page1_def db 0
|
||||
page2_def db 0
|
||||
page3_def db 0
|
||||
EXEfileBuff equ $ ; ’ãâ åà ¨¬ ¯ãâì ¤® § ¯ã᪠¥¬®£® ¯®á«¥ à¥á¥â EXE
|
||||
Buffer EQU EXEfileBuff+256 ; BLOCK 255,0
|
||||
Reload_String: DB 'ACEX_30K_LOADING' ; ä« £ § «¨¢ª¨ ª®äë ¨§ ª¥è
|
||||
VMod: db 0 ; <EFBFBD>¥¦¨¬ íªà
|
||||
VModPage: db 0 ; ‘âà ¨æ íªà
|
||||
ram_blk_id: DB 0 ; ˆ¤¥â¨ä¨ª â®à ¡«®ª ¯ ¬ïâ¨
|
||||
SP_Save: DB 0,0 ; ’ãâ åà ¨¬ á⥪ ¤«ï ¯¥à¥§ £à㧪¨
|
||||
dss_line: DB 0,0 ; 㪠§ ⥫ì DOS áâப㠧 ¯ã᪠LDConf
|
||||
NextParameter: dw 0000 ; ‘«¥¤ãî騩 ¯ à ¬¥âà ¤«ï .GetParam
|
||||
;
|
||||
|
||||
; <EFBFBD> §ë¥ ¡ãää¥à (.)(.)
|
||||
BufferEXE: DB 0,0,0,0
|
||||
ram_pages: DB 0,0,0,0,0 ; ‚뤥«¥ë¥ BIOS'®¬ ¡«®ª¨ ¯ ¬ï⨠(¯®á«¥¤¨© #FF)
|
||||
page0_save: DB 0 ; ’ãâ åà ¨¬ ⥪ãéãî áâà ¨æã PAGE0 (¤®«¦ ¨¤â¨ ¯®á«¥ ram_pages)
|
||||
page1_save: DB 0 ; ’ãâ åà ¨¬ ⥪ãéãî áâà ¨æã PAGE1
|
||||
page2_save: DB 0 ; ’ãâ åà ¨¬ ⥪ãéãî áâà ¨æã PAGE2 (¤®«¦ ¨¤â¨ ¯®á«¥ ram_pages)
|
||||
page3_save: DB 0 ; ’ãâ åà ¨¬ ⥪ãéãî áâà ¨æã PAGE3
|
||||
page0_def db 0
|
||||
page1_def db 0
|
||||
page2_def db 0
|
||||
page3_def db 0
|
||||
EXEfileBuff equ $ ; ’ãâ åà ¨¬ ¯ãâì ¤® § ¯ã᪠¥¬®£® ¯®á«¥ à¥á¥â EXE
|
||||
Buffer EQU EXEfileBuff+256 ; BLOCK 255,0
|
||||
;
|
||||
@ -1,11 +0,0 @@
|
||||
MACRO Stack_Error true
|
||||
ENCODING "WIN"
|
||||
ASSERT true, "Êîä çàëåç íà îáëàñòü ñòåêà!!!"
|
||||
ENCODING "DOS"
|
||||
ENDM
|
||||
|
||||
MACRO Handler_Error true
|
||||
ENCODING "WIN"
|
||||
ASSERT true, "Êîñÿê â áëîêå õðàíåíèÿ õåíäëåðîâ!!!"
|
||||
ENCODING "DOS"
|
||||
ENDM
|
||||
1207
LDCONF.ASM
1207
LDCONF.ASM
File diff suppressed because it is too large
Load Diff
856
LDCONF50.ASM
856
LDCONF50.ASM
@ -1,856 +0,0 @@
|
||||
; _ ____ ____ __
|
||||
; | | | _ \ / ___|___ _ __ / _|
|
||||
; | | | | | | | / _ \| '_ \| |_
|
||||
; | |___| |_| | |__| (_) | | | | _|
|
||||
; |_____|____/ \____\___/|_| |_|_|
|
||||
|
||||
; _____ ____ _ _ ____ _
|
||||
; | ___|__ _ __ / ___| _ __ _ __(_)_ __ | |_ ___ _ __ / ___|___ _ __ ___ _ __ _ _| |_ ___ _ __
|
||||
; | |_ / _ \| '__| \___ \| '_ \| '__| | '_ \| __/ _ \ '__| | | / _ \| '_ ` _ \| '_ \| | | | __/ _ \ '__|
|
||||
; | _| (_) | | ___) | |_) | | | | | | | || __/ | | |__| (_) | | | | | | |_) | |_| | || __/ |
|
||||
; |_| \___/|_| |____/| .__/|_| |_|_| |_|\__\___|_| \____\___/|_| |_| |_| .__/ \__,_|\__\___|_|
|
||||
; |_| |_|
|
||||
;*******************************************************
|
||||
; ’¥á⮢ ï ᡮઠ¨«¨ ¥â?
|
||||
define debug 0
|
||||
define sprinter 1
|
||||
;
|
||||
; Œ ªà®áë
|
||||
MACRO TraceMSG tr_mess
|
||||
LD HL,tr_mess
|
||||
CALL PrintStr
|
||||
ENDM
|
||||
|
||||
MACRO iDontKnow
|
||||
;-----------------; ’ ©ë¥ ¬ ¨¯ã«ï樨
|
||||
DI
|
||||
LD A,CNF_3
|
||||
OUT (SYS_PORT_OFF),A
|
||||
LD A,3 ; ãáâ ®¢ª ¢ãâà.¯®à⮢ Z84C15 ¤«ï ¯¥à¥§ £à㧪¨
|
||||
OUT (#EE),A
|
||||
OUT (#EF),A ; CASH & ROM
|
||||
;-----------------;
|
||||
ENDM
|
||||
|
||||
|
||||
;
|
||||
; ‚¥àá¨ï ¯à®£¨ ¨ ¨ä® ¤«ï ¯®â®¢:
|
||||
DEFINE Ver_ID "0.1 alpha"
|
||||
DEFINE e_mail "Tolik.Trek@gmail.com"
|
||||
; <20>®¤£à㧪 ä ©« á ª®áâ â ¬¨ BIOS ¨ DSS:
|
||||
INCLUDE "EQU/SP2000.ASM"
|
||||
; <20>®¤£à㧪 ä ©« á ®è¨¡ª ¬¨)))
|
||||
INCLUDE "EQU/Errors_MSG.a80"
|
||||
;
|
||||
ST_Point EQU #BFFE ; ¤à¥á á⥪
|
||||
SP_Win EQU 64 ; ¬¨¬ë© ª®âà®«ì ¯¥à¥á¥ç¥¨ï á⥪ á ª®¤®¬
|
||||
ORG_Addr EQU #8100 ; ¤à¥á ª®¬¯¨«ï樨. DSS ¢áâ ¢«ï¥â áâபã
|
||||
; á ¯ à ¬¥âà ¬¨ § ¯ã饮£® EXE ¯¥à¥¤
|
||||
; ¤à¥á®¬ § £à㧪¨ START, ¯®í⮬ã
|
||||
; £à㧨¬áï ¥ á ç « áâà ¨æë.
|
||||
|
||||
; _______ _______ ____ __ _
|
||||
; | ____\ \/ / ____| | _ \ _ __ ___ / _(_)_ __
|
||||
; | _| \ /| _| | |_) | '__/ _ \ |_| \ \/ /
|
||||
; | |___ / \| |___ | __/| | | __/ _| |> <
|
||||
; |_____/_/\_\_____| |_| |_| \___|_| |_/_/\_\
|
||||
|
||||
;-----------------;
|
||||
ORG ORG_Addr-#200
|
||||
; ‘ ç « ¢ EXE ä ©«¥ ¨¤ñâ § £®«®¢®ª
|
||||
; ¤«¨®© ¢ 1 ᥪâ®à (512 ¡ ©â)
|
||||
;-----------------;
|
||||
DB 'EX' ; EXE ‘¨£ âãà
|
||||
DB 'E' ; Reserved (EXE type)
|
||||
DB 0 ; Version of EXE file
|
||||
DW #0200 ; ‘ ª ª®£® á¬¥é¥¨ï ¢ ä ©«¥ ¡ã¤¥â £à㧨âìáï ª®¤ ¢
|
||||
DW #0000 ; ¯ ¬ïâì ¯® ¤à¥áã (START) Low - 0200h, High - 0000.
|
||||
DW #0000 ; <20> §¬¥à ¯¥à¢¨ç®£® § £àã§ç¨ª ¨«¨ 0
|
||||
DW #0000 ; Reserved
|
||||
DW #0000 ; Reserved
|
||||
DW #0000 ; Reserved
|
||||
DW START ; €¤à¥á à ᯮ«®¦¥¨ï ª®¤ ¢ ¯ ¬ïâ¨
|
||||
DW START ; €¤à¥á ¢ ¯ ¬ïâ¨ á ª®â®à®£® § ¯ãáâ¨âáï ª®¤ (Reg. PC)
|
||||
DW ST_Point ; €¤à¥á á⥪ (Reg. SP)
|
||||
BLOCK 490 ; Reserved. „®¡¨¢ª ¤® ª®æ ᥪâ®à (512 ¡ ©â). Œ®¦¥â ¨á¯®«ì§®¢ âìáï ¢ ®¢ëå ¢¥àá¨ïå DSS
|
||||
;*******************************************************
|
||||
|
||||
; __ __ _
|
||||
; | \/ | __ _(_)_ __
|
||||
; | |\/| |/ _` | | '_ \
|
||||
; | | | | (_| | | | | |
|
||||
; |_| |_|\__,_|_|_| |_|
|
||||
|
||||
START:
|
||||
;
|
||||
|
||||
;
|
||||
;-----------------; —¨á⨬ ¡ãä¥à ªá¥«¥¬
|
||||
DI
|
||||
LD HL,Buffer
|
||||
LD D,D ; “áâ ®¢¨âì à §¬¥à ¡«®ª
|
||||
LD A,255 ; <20> §¬¥à ¡«®ª
|
||||
LD C,C ;
|
||||
LD A,0 ;
|
||||
LD (HL),A
|
||||
LD B,B ; ‚몫îç ¥¬ ªá¥«ì
|
||||
; EI
|
||||
;-----------------; ‘®åà 塞 ⥪ã騥 áâà ¨æë
|
||||
IN A,(PAGE0)
|
||||
LD (page0_save),A
|
||||
IN A,(PAGE1)
|
||||
LD (page1_save),A
|
||||
IN A,(PAGE2)
|
||||
LD (page2_save),A
|
||||
IN A,(PAGE3)
|
||||
LD (page3_save),A
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ‘®åà 塞 áâனª¨ íªà
|
||||
ld c,51h
|
||||
rst 10h
|
||||
jp nc,1f
|
||||
LD HL,error_Vmode
|
||||
JP BadExit
|
||||
1:
|
||||
ld (VMod),a
|
||||
ld a,b
|
||||
ld (VModPage),a
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
LD (dss_line),IX ; ‘®åà 塞 㪠§ ⥫ì áâப㠧 ¯ã᪠. ????? <20>㦠«¨ ® ¢ ¤ «ì¥©è¥¬ ?????
|
||||
LD A,(IX) ; âãâ DSS ª« ¤ñâ ¤«¨ã ¯ à ¬¥â஢ ª®¬.áâப¨
|
||||
AND A ; ¯à®¢¥à塞 ®âáãâá⢨¥ ¯ à ¬¥â஢
|
||||
JP NZ,1F ; § ¯ã᪠¢ ª®¬.áâப¥. …᫨ ¨å ¥â,
|
||||
LD HL,Help_Msg ; â® ¯¥ç â ¥¬ ¨áâàãªæ¨î ¨ ¢ë室¨¬
|
||||
CALL PrintStr ; ¨§ ¯à®£à ¬¬ë á ®à¬ «ìë¬ ª®¤®¬
|
||||
LD B,0 ; § ¢¥à襨ï.
|
||||
JP Exit ;
|
||||
;-----------------;
|
||||
|
||||
;-----------------; <20> §¡¨à ¥¬ ¨ ªâ¨¢¨à㥬 ª«îç¨
|
||||
1:
|
||||
CALL Set_keys ; ¢ë室¥ CF=0 - ¥â ®è¨¡ª¨
|
||||
JR NC,1F ; ‘F=1 - ¥áâì ®è¨¡ª
|
||||
LD HL,error_ComStr ; …᫨ à §®¡à «¨ á ®è¨¡ª ¬¨
|
||||
JP BadExit ; â® ¢ë室 á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¥á«¨ ®à¬. § ¢¥à襨¥ set_keys
|
||||
1:
|
||||
if debug : TraceMSG trace_msg1 : endif
|
||||
;
|
||||
ld a,(x_key)
|
||||
and A ; ¥á«¨ ª«îç X ãáâ ®¢«¥, â® ¯à®¢¥àªã ¯à®¯ã᪠¥¬
|
||||
jp nz,1F
|
||||
CALL TestConf ; ¯à®¢¥àª ª®äë. ¢ë室¥ CF=0 - ¥â ®è¨¡ª
|
||||
JR NC,1F ; ‘F=1 - ¥áâì ®è¨¡ª
|
||||
LD HL,error_confFile ; …᫨ ª®áïª á ä ©«®¬ ¯à®è¨¢ª¨
|
||||
JP BadExit ; â® ¢ë室 á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¥á«¨ ®à¬. § ¢¥à襨¥ TestConf
|
||||
1:
|
||||
if debug : TraceMSG trace_msg2 : endif
|
||||
;
|
||||
CALL TakeMem ; ‚뤥«¥¨¥ ¯ ¬ï⨠¤«ï ª®äë 65536 ¡ ©â
|
||||
JR NC,1F
|
||||
LD HL,error_freeMem ; …᫨ ¥¤®áâ â®ç® ¯ ¬ïâ¨
|
||||
JP BadExit ; â® ¢ë室 á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¥á«¨ ®à¬. § ¢¥à襨¥ TakeMem
|
||||
1:
|
||||
if debug : TraceMSG trace_msg3 : endif
|
||||
;
|
||||
; LD A,(ConfHandler) ; ‚ëáâ ¢«ï¥¬ 奤«¥à ¯à®è¨¢ª¨
|
||||
; LD (NowHandler),A ; á ª®â®à®© ¡ã¤¥¬ à ¡®â âì
|
||||
;
|
||||
;
|
||||
CALL Load_conf ; —¨â ¥¬ ¯à®è¨¢ªã ¨§ ä ©« (¬¥ï¥â PAGE3)
|
||||
LD A,(page3_save) ; ¢®ááâ ¢«¨¢ ¥¬ áâà ¨æã
|
||||
OUT (PAGE3),A ; ¯ ¬ï⨠¯®á«¥ ᬥë
|
||||
JR NC,1F
|
||||
LD HL,error_readConf ; …᫨ ®è¨¡ª ¯à¨ ç⥨¨ ¯à®è¨¢ª¨ ¨§ ä ©«
|
||||
JP BadExit ; â® ¢ë室 á 祬? <20>à ¢¨«ì®, á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¥á«¨ ®à¬. § ¢¥à襨¥ Load_conf
|
||||
1:
|
||||
if debug : TraceMSG trace_msg4 : endif
|
||||
;
|
||||
if sprinter : iDontKnow : endif
|
||||
;
|
||||
LD DE,ReloadRET ; €¤à¥á ‚އ‚<E280A1>€’€ ¯®á«¥ ¯¥à¥§ £à㧪¨
|
||||
LD (SP_Save),SP ; á®åà 塞 á⥪
|
||||
CALL Set_Ret ; ãáâ ®¢ª ¤ ëå ¤«ï ¢®§¢à â
|
||||
;
|
||||
if debug : TraceMSG trace_msg5 : endif
|
||||
;
|
||||
CALL Set_Acex_Data ; ¯¥à¥£à㧪 ¤ ëå ACEX ¢ FAST-RAM
|
||||
; <20>®á«¥ í⮩ ¯à®æ¥¤ãàë å¨âன ^^^^^^ ç¨ îâáï £«îª¨
|
||||
; á ¢ë§®¢®¬ ¯à®æ¥¤ãà DSS. —ñâ ® â ¬ ¬ã¤à¨â á ¯®àâ ¬¨
|
||||
; ¨«¨ á ¯ ¬ïâìî, ¥ à §®¡à «áï. <20>®í⮬㠯®á«¥ ¥ñ «ãçè¥
|
||||
; áà §ã ¢ à¥á¥â á £®«®¢®© ¨ ¥ ¯ à¨âìáï...
|
||||
;-----------------;
|
||||
|
||||
;-----------------; 7 ¡¥¤ - 1 à¥á¥â
|
||||
RESET:
|
||||
|
||||
DI
|
||||
|
||||
IN A,(PAGE1) ; ®âªàë⨥ ¯®àâ á¡à®á
|
||||
PUSH AF
|
||||
LD A,40h
|
||||
OUT (PAGE1),A ; set DCP page
|
||||
LD A,2Eh
|
||||
LD (04400h),A ; open for WR
|
||||
LD (04600h),A ; open for RD
|
||||
POP AF
|
||||
OUT (PAGE1),A ; Close PAGE1 ???????
|
||||
|
||||
RESET_LOOP: ; 横« á¡à®á
|
||||
LD BC,100h
|
||||
OUT (C),C
|
||||
LD BC,000h
|
||||
OUT (C),C
|
||||
JR RESET_LOOP ; ¯®«®áâìî § 横«¨âì!
|
||||
|
||||
HALT ; ¯ë«¥ã«®¢¨â¥«ì
|
||||
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||||
|
||||
; ____ _ _ ____ _
|
||||
; | _ \ _ __(_)_ __ | |_ / ___|| |_ _ __
|
||||
; | |_) | '__| | '_ \| __| \___ \| __| '__|
|
||||
; | __/| | | | | | | |_ ___) | |_| |
|
||||
; |_| |_| |_|_| |_|\__| |____/ \__|_|
|
||||
; <09>¥ç âì áâப¨. €¤à¥á áâப¨ ¢ HL
|
||||
|
||||
;-----------------;
|
||||
PrintStr:
|
||||
LD C,5Ch
|
||||
RST 10h
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; ____ _ _ ____ _____ _____
|
||||
; | _ \ ___| | ___ __ _ __| | | _ \| ____|_ _|
|
||||
; | |_) / _ \ |/ _ \ / _` |/ _` | | |_) | _| | |
|
||||
; | _ < __/ | (_) | (_| | (_| | | _ <| |___ | |
|
||||
; |_| \_\___|_|\___/ \__,_|\__,_| |_| \_\_____| |_|
|
||||
; Œ¥áâ®, ªã¤ ¡ã¤¥â ¢®§¢à â ¯®á«¥
|
||||
; ¯¥à¥§ £à㧪¨ ®¢®© ¯à®è¨¢ª¨
|
||||
|
||||
;-----------------;
|
||||
ReloadRET:
|
||||
DI
|
||||
LD SP,(SP_Save)
|
||||
LD A,CNF_0 ; ª®ä¨£ãà æ¨ï ¨ ®âª«î票¥ <20>‡“
|
||||
OUT (SYS_PORT_OFF),A
|
||||
LD A,(page0_save) ; SET PAGE DOS
|
||||
OUT (PAGE0),A
|
||||
LD A,(page3_save) ; ¢®§¢à â áâ ன áâà ¨æë PAGE3
|
||||
OUT (PAGE3),A
|
||||
;-----------------;
|
||||
|
||||
;-----------------; <20> ¡®â ¯à®£à ¬¬ë á ®¢®© ¯à®è¨¢ª®©
|
||||
ld a,(e_key)
|
||||
and a
|
||||
jp z,1F
|
||||
ld hl,EXEfileBuff ; ‡ ¯ã᪠EXE
|
||||
ld bc,0040h
|
||||
rst 10h
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
1:
|
||||
ld a,(a_key) ; ‚ë室 ¡¥§ ¢®ááâ ®¢«¥¨ï ¤¥ä®«â®© ª®äë?
|
||||
and a
|
||||
jp nz, NormExit
|
||||
LD DE,NextReloadRET ;
|
||||
LD (SP_Save),SP ; á®åà 塞 á⥪
|
||||
CALL Set_Ret ; ãáâ ®¢ª ¤ ëå ¤«ï ¢®§¢à â
|
||||
JP RESET
|
||||
;*******************************************************
|
||||
|
||||
; _ _ _
|
||||
; | \ | | _____ _| |_
|
||||
; | \| |/ _ \ \/ / __|
|
||||
; | |\ | __/> <| |_
|
||||
; |_| \_|\___/_/\_\\__|
|
||||
; ____ _ _ ____ _____ _____
|
||||
; | _ \ ___| | ___ __ _ __| | | _ \| ____|_ _|
|
||||
; | |_) / _ \ |/ _ \ / _` |/ _` | | |_) | _| | |
|
||||
; | _ < __/ | (_) | (_| | (_| | | _ <| |___ | |
|
||||
; |_| \_\___|_|\___/ \__,_|\__,_| |_| \_\_____| |_|
|
||||
; <09>®¤£®â®¢ª ª § ¢¥àè¥¨î ¯®á«¥ à¥á¥â ¨
|
||||
; ¢®§¢à â த®© ¯à®è¨¢ª¨
|
||||
;-----------------;
|
||||
NextReloadRET:
|
||||
DI
|
||||
LD SP,(SP_Save)
|
||||
LD A,CNF_0 ; ª®ä¨£ãà æ¨ï ¨ ®âª«î票¥ <20>‡“
|
||||
OUT (SYS_PORT_OFF),A
|
||||
|
||||
LD A,(page0_save) ; SET PAGE DOS
|
||||
OUT (PAGE0),A
|
||||
LD A,(page1_save)
|
||||
OUT (PAGE1),A
|
||||
; ƒ«ïãâì, ¬®¦¥â ¥ ¤® ¢®§¢à é âì ®¤ã ¨§ áâà ¨æ???
|
||||
LD A,(page3_save)
|
||||
OUT (PAGE3),A
|
||||
|
||||
JP NormExit
|
||||
;*******************************************************
|
||||
|
||||
; _____ _ _ ____ _
|
||||
; | ____|_ _(_) |_ | _ \ _ __ ___ ___( )___
|
||||
; | _| \ \/ / | __| | |_) | '__/ _ \ / __|// __|
|
||||
; | |___ > <| | |_ | __/| | | (_) | (__ \__ \
|
||||
; |_____/_/\_\_|\__| |_| |_| \___/ \___| |___/
|
||||
|
||||
;-----------------;
|
||||
NormExit:
|
||||
LD HL,WellDone
|
||||
CALL PrintStr
|
||||
LD B,0
|
||||
CALL Exit
|
||||
;-----------------;
|
||||
|
||||
BadExit: ; ‚ HL áâப á ®è¨¡ª®©
|
||||
CALL PrintStr
|
||||
LD B,1 ; ª®¤ ®è¨¡ª¨
|
||||
CALL Exit
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
Exit:
|
||||
LD A,CNF_0 ;??????
|
||||
OUT (SYS_PORT_OFF),A
|
||||
;
|
||||
PUSH BC
|
||||
LD HL,FirstHandler
|
||||
LD C,12h
|
||||
LD B,(LastHandler-FirstHandler)
|
||||
.loop: ; ‡ ªàë¢ ¥¬ ¢á¥ ®âªàëâë¥ ä ©«ë,
|
||||
LD A,(HL) ; ¥á«¨ ¥áâì. ‚ 横«¥.
|
||||
AND A
|
||||
JR Z,1F
|
||||
PUSH HL
|
||||
PUSH BC
|
||||
RST 10h
|
||||
POP BC
|
||||
POP HL
|
||||
1: INC HL
|
||||
DJNZ .loop
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ®á¢®¡®¦¤ ¥¬ ¯ ¬ïâì, ¥á«¨ ª«ï稫¨
|
||||
ld c,#C3
|
||||
ld a,(ram_blk_id)
|
||||
cp 0
|
||||
jr z,1F
|
||||
rst 8
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¢®ááâ ¢«¨¢ ¥¬ íªà
|
||||
ld c,53h
|
||||
rst 10h
|
||||
push de
|
||||
|
||||
ld a,(VModPage)
|
||||
ld b,a
|
||||
ld a,(VMod)
|
||||
ld c,50h
|
||||
rst 10h
|
||||
|
||||
ld c,52h
|
||||
pop de
|
||||
rst 10h
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ‚ë室 ¢ DOS
|
||||
1:
|
||||
POP BC
|
||||
LD C,41h
|
||||
RST 10h
|
||||
DI
|
||||
HALT
|
||||
;-----------------;
|
||||
;*******************************************************
|
||||
|
||||
; ____ _ _
|
||||
; / ___| ___| |_ | | _____ _ _ ___
|
||||
; \___ \ / _ \ __| | |/ / _ \ | | / __|
|
||||
; ___) | __/ |_ | < __/ |_| \__ \
|
||||
; |____/ \___|\__| |_|\_\___|\__, |___/
|
||||
; |___/
|
||||
; <09>®«ãç ¥¬ ª«îç¨ § ¯ã᪠, à ᯨ娢 ¥¬ ¨å ¯® 㣫 ¬,
|
||||
; áâà ¨¢ ¥¬ ç «ìë¥ ãá«®¢¨ï à ¡®âë.
|
||||
|
||||
;-----------------;
|
||||
Set_keys:
|
||||
LD HL,(dss_line)
|
||||
INC HL
|
||||
.CheckChar:
|
||||
CALL .GetParam
|
||||
JP NC,1F
|
||||
CCF ; …᫨ ¯®á«¥¤¨© ¯ à ¬¥âà ¢ áâப¥ = 0
|
||||
RET ; â® ¢ë室¨¬. <20> §¡®à ®ª®ç¥
|
||||
1: LD A,(Buffer+1) ; ‚ ®á®¢®¬ 横«¥ CheckChar ¬ë
|
||||
AND A ; ¦¤ñ¬ ⮫쪮 ®¤¨ ᨬ¢®« ¢
|
||||
JP Z,1F ; ª«îç¥. <20>®í⮬㠥᫨ ¨å ¡®«ìè¥,
|
||||
SCF ; â® ¢ë室¨¬ á ®è¨¡ª®©.
|
||||
RET ; ‚ë室 á ®è¨¡ª®©.
|
||||
1: ; <20>஢¥àª /ãáâ ®¢ª ª«îç
|
||||
LD C,A ; ’“’ †„ðŒ, çâ® ¢ € «¥¦¨â 0 ¨ ¨á¯®«ì§ã¥¬ BC
|
||||
LD B,A ; ª ª ᬥ饨¥ ¢ ¯ ¬ïâ¨, £¤¥ åà ïâáï ª«îç¨
|
||||
LD A,(Buffer)
|
||||
RES 5,A ; ¤¥« ¥¬ ¬ «¥ìª¨© ᨬ¢®« ¡®«ì訬)))
|
||||
CP 'A' ; ¯à®¢¥à塞 ¯ à ¬¥âà ã¦ë©
|
||||
JR Z,.set_keys_a
|
||||
CP 'C'
|
||||
JR Z,.set_keys_c
|
||||
CP 'E'
|
||||
JR Z,.set_keys_e
|
||||
CP 'X'
|
||||
JR Z,.set_keys_x
|
||||
SCF ; ®è¨¡ª ¢ ¯ à ¬¥âà¥
|
||||
RET ; ¢ë室 á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.set_keys_x:
|
||||
INC C
|
||||
.set_keys_e:
|
||||
INC C
|
||||
.set_keys_c:
|
||||
INC C
|
||||
.set_keys_a:
|
||||
EX DE,HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
LD HL,key_buff ; ‚ëç¨á«ï¥¬ ï祩ªã åà ¥¨ï ª«îç
|
||||
ADD HL,BC
|
||||
LD A,(HL) ; ¨ ¯à®¢¥à塞 ¥â «¨ â ¬ 㦥 ª«îç .
|
||||
CP 0 ; ¥á«¨ ¥áâì, § ç¨â ª«îç ¢¢¥¤ñ 2 à §
|
||||
SCF
|
||||
RET NZ ; ®è¨¡ª - ¯®¢â®à ª«îç . ¢ë室
|
||||
OR C ; ’ãâ Ž†ˆ„€…’‘Ÿ, çâ® €=0. …᫨ ‘=0, â® íâ® ª«îç "A"
|
||||
LD A,3
|
||||
LD (HL),A ; ãáâ ®¢¨«¨ ª«îç
|
||||
EX DE,HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
JR Z,.CheckChar ; ¥á«¨ ª«îç "A" â® á«¥¤ãî騩 ªà㣠横«
|
||||
xor C ; ’ãâ Ž†ˆ„€…’‘Ÿ, çâ® €=3. …᫨ ‘=3, â® íâ® ª«îç "X"
|
||||
JR Z,.CheckChar ; ¥á«¨ ª«îç "X" â® á«¥¤ãî騩 ªà㣠横«
|
||||
|
||||
PUSH BC
|
||||
CALL .GetParam ; ¯®«ãç ¥¬ á«¥¤ãî騩 ¯ à ¬¥âà áâப¨ DOS ª ©¤¥®¬ã ª«îçã
|
||||
POP BC
|
||||
RET C ; ¢ë室, ¥á«¨ ®è¨¡ª
|
||||
EX DE,HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
LD HL,FirstHandler ; ¢ëç¨á«ï¥¬ ï祩ªã åà ¥¨ï 奤«¥à
|
||||
ADD HL,BC ;
|
||||
DEC HL ;
|
||||
LD (.fileHandler),HL ; ¨ ¯®¤áâ ¢«ï¥¬ ¥ñ ¯àאַ ¢ ª®¤ ".OpenFile"
|
||||
EX DE,HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
PUSH HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
CALL .OpenFile ; Žâªàë⨥ ä ©« (¨«¨ ¯à®¢¥àª «¨ç¨ï) ¯® ¨¬¥¨ ¨§ ¡ãä¥à
|
||||
POP HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
RET C ; ¢ë室, ¥á«¨ ®è¨¡ª
|
||||
JP .CheckChar ; ¯®£ «¨ á«¥¤ãî騩 ¢¨â®ª à §¡®à ª«î祩
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.GetParam: ; ¢ HL ¯à¨¨¬ ¥âáï á«¥¤. ¯ à. áâப¨ DOS
|
||||
LD C,43h ; âã⠢뤥«ï¥¬ ¯ à ¬¥âà § ¯ãáª
|
||||
LD DE,Buffer ; ¡ãä¥à ¤«ï ®¯¥à 権 á® áâப ¬¨
|
||||
RST #10 ; ¯®«ãç ¥¬ ¢ ¡ãä¥à¥ á«¥¤ãî騩 ¯ à ¬¥âà
|
||||
CCF
|
||||
LD A,(Buffer)
|
||||
AND A
|
||||
RET NZ ; <20>®à¬ «ìë© ¢®§¢à â C = 0
|
||||
SCF
|
||||
RET ; ‚®§¢à â á ®è¨¡ª®© C = 1
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.OpenFile:
|
||||
LD HL,key_save ; ¯à®¯¨áë¢ ¥¬ ª«îç ¢ ª®¤ ¤«ï ¯à®¢¥àª¨ EXE
|
||||
LD (HL),C ; ¢âëª ¥¬ § 票¥ ª«îç ¢ ª®¤
|
||||
LD BC,#0045 ; ¯à®¢¥à塞 ¡ãä¥à ª®à४â®áâì ¨¬¥¨ ä ©«
|
||||
LD HL,Buffer ; ????? ᤥ« âì ¯à®¢¥àªã ª®à४â®áâì ¢á¥£® ¯ãâ¨?????
|
||||
RST 10h
|
||||
RET C ; ®è¨¡ª ¢ áâப¥
|
||||
AND %00000011 ; ¯à®¢¥à塞, çâ® ¥áâì ¨¬ï ¨
|
||||
XOR %00000011 ; à áè¨à¥¨¥ ä ©« (0 ¨ 1 ¡¨âë)
|
||||
SCF
|
||||
RET NZ ; ®è¨¡ª ä ©« - ¢ë室
|
||||
|
||||
LD A,0
|
||||
LD C,11h
|
||||
LD HL,Buffer
|
||||
RST 10h ; ®âªàë⨥ ä ©«
|
||||
RET C ; ®è¨¡ª ä ©« - ¢ë室
|
||||
LD (.fileHandler),A ; á®åà 塞 奤«¥à
|
||||
.fileHandler EQU $-2
|
||||
;-----------------;
|
||||
|
||||
;-----------------; <20>஢¥à塞 ®¡à ¡ âë¢ ¥¬ë© ª«îç
|
||||
key_save EQU $+1
|
||||
LD A,#FF ; áî¤ ¢®âªñâáï § 票¥ ¨§ ॣ¨áâà C
|
||||
XOR 2 ; ¥á«¨ 2, â® íâ® ª«îç "E"
|
||||
ret NZ ; ¥á«¨ ¥â, â® ¢ë室 ¨§ ¯à®æ¥¤ãàë.
|
||||
;-----------------;
|
||||
|
||||
;-----------------; <20>஢¥àª à áè¨à¥¨ï ä ©«
|
||||
LD BC,#0445 ; ‘ ª«î箬 "E" ¯à®¢¥à塞 ä ©«
|
||||
LD HL,Buffer ; à áè¨à¥¨¥ "EXE" ¢ë¤¥«¨¢
|
||||
LD DE,BufferEXE ; ¨§ áâப¨ ¨¬¥¨ à áè¨à¥¨¥
|
||||
RST 10h ; ä ©« ¢ ®â¤¥«ìë© ¡ãä¥à 4 ¡ ©â
|
||||
;-----------------;
|
||||
|
||||
;-----------------; â¥á⨬ ¡ãä¥à à áè¨à¥¨ï ¯®á¨¬¢®«ì®
|
||||
LD DE,IsEXE
|
||||
LD HL,BufferEXE
|
||||
LD BC,IsEXElength-IsEXE
|
||||
2: LD A,(DE)
|
||||
RES 5,(HL) ; ¤¥« ¥¬ ¬ «¥ìª¨© ᨬ¢®« ¡®«ì訬)))
|
||||
CPI
|
||||
INC DE
|
||||
JP PO,3F ; ¥á«¨ ¯®á«¥¤¨© ᨬ¢®« ¯à®¢¥à¥, â® JP ¯à®¢¥àªã
|
||||
JP Z,2B ; ¥á«¨ ᨬ¢®« ᮢ¯ ¤ ¥â, â® ¯®¢â®à
|
||||
3: SCF ; áî¤ ¯®¯ ¤ñ¬ ª®£¤ BC=0 ¨«¨ ᨬ¢®« ¥ ᮢ¯ «
|
||||
RET NZ ; ¥á«¨ ¢ë諨 ¨§ 横« ¨ ᨬ¢®« ¥ ᮢ¯ « - ®è¨¡ª ,
|
||||
|
||||
xor A ; ¥á«¨ ¢áñ ¨èâïª (???- § ªàë¢ ¥¬ ®âªàëâë© EXE ¨???) ¢ë室¨¬
|
||||
ex af,af'
|
||||
ld hl,Buffer
|
||||
ld de,EXEfileBuff
|
||||
ld bc, #00FF
|
||||
1: ldi
|
||||
ex af,af'
|
||||
cp (hl)
|
||||
jr z,1F
|
||||
ex af,af'
|
||||
jp pe,1B
|
||||
1:
|
||||
|
||||
ld a,0
|
||||
ld (de),a
|
||||
ld a,(ExeHandler)
|
||||
ld c,12h
|
||||
rst 10h
|
||||
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; _____ _ ____ __
|
||||
; |_ _|__ ___| |_ / ___|___ _ __ / _|
|
||||
; | |/ _ \/ __| __| | | / _ \| '_ \| |_
|
||||
; | | __/\__ \ |_ | |__| (_) | | | | _|
|
||||
; |_|\___||___/\__| \____\___/|_| |_|_|
|
||||
; <09>஢¥à塞 à §¬¥à ¨ § £®«®¢®ª ä ©« ¯à®è¨¢ª¨
|
||||
; (???¤®¡ ¢¨âì ª«îç ¤«ï ®â¬¥ë???)
|
||||
|
||||
;-----------------;
|
||||
TestConf:
|
||||
LD A,(ConfHandler) ; á®åà 塞 奤«¥à ⥪ã騩
|
||||
LD (NowHandler),A ; ä ©« á ª®â®àë¬ à ¡®â ¥¬. ??? ã¡à âì «¨è¥¥ ???
|
||||
AND A ; ¯à®¢¥àª ®âáãâá⢨¥ 奤«¥à
|
||||
SCF
|
||||
RET Z ; ¢ë室 á ®è¨¡ª®© ¥á«¨ ä ©« ¥ ®âªàëâ
|
||||
|
||||
CALL .testing
|
||||
/*
|
||||
RET C
|
||||
|
||||
LD A,(ConfHandler2) ; ¢ë¡¨à ¥¬ ⥪ã騬 á«¥¤ãî騩 ä ©«
|
||||
LD (NowHandler),A
|
||||
AND A ; ¯à®¢¥àª ®âáãâá⢨¥ 奤«¥à
|
||||
RET Z ; ¢ë室 ¡¥§ ®è¨¡ª¨ - ¢â®à®© ¯à®è¨¢ª¨ ¬®¦¥â ¥ ¡ëâì ¢ ¯ à ¬¥âà å
|
||||
CALL .testing
|
||||
*/
|
||||
RET
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.testing:
|
||||
LD HL,Buffer
|
||||
LD DE,8
|
||||
LD C,13h ; ç¨â ¥¬ ¢ ¡ãä¥à ¯¥à¢ë¥ 8 ¡ ©â
|
||||
RST 10h ; ¤«ï áà ¢¥¨ï á è ¡«®®¬
|
||||
RET C
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ª®¢ëà塞 ¡ãä¥à ¯®á¨¬¢®«ì®:
|
||||
LD DE,IsNormConf ; è ¡«® ¤«ï áà ¢¥¨ï
|
||||
LD HL,Buffer
|
||||
LD BC,IsNormConfLen-IsNormConf
|
||||
2: LD A,(DE)
|
||||
CPI
|
||||
INC DE
|
||||
JP PO,3F ; ¥á«¨ ¯®á«¥¤¨© ᨬ¢®« ¯à®¢¥à¥, â® JP ¯à®¢¥àªã
|
||||
JP Z,2B ; ¥á«¨ ᨬ¢®« ᮢ¯ ¤ ¥â, â® ¯®¢â®à
|
||||
3: SCF ; áî¤ ¯®¯ ¤ñ¬ ª®£¤ BC=0 ¨«¨ ᨬ¢®« ¥ ᮢ¯ «
|
||||
RET NZ ; ¥á«¨ ¢ë諨 ¨§ 横« ¨ ᨬ¢®« ¥ ᮢ¯ « - ®è¨¡ª ,
|
||||
;-----------------; ; ¥á«¨ ŽŠ, â® á¡à áë¢ ¥¬ 㪠§ â¥«ì ¢ ä ©«¥ 0
|
||||
|
||||
;-----------------;
|
||||
LD B,2 ; ‘â ¢¨¬ 㪠§ â¥«ì ª®¥æ ä ©«
|
||||
CALL .set_fp ; ç⮡ ã§ âì ¥£® à §¬¥à
|
||||
RET C
|
||||
LD A,H ; <20> §¬¥à ä ©« ¢ HL:IX. <20>¥â á¬ëá« , ¥á«¨ ® ¡®«ìè¥
|
||||
OR L ; 65536 ¡ ©â, ¯®í⮬㠯஢¥à塞, çâ® ¢ HL ®«ì.
|
||||
SCF
|
||||
RET NZ
|
||||
LD HL,(ConfSize) ; ‘à ¢¨¢ ¥¬ à §¬¥à ä ©«
|
||||
LD A,H ; á íâ ««®ë¬ (59215 ¨«¨ #E74F)
|
||||
SUB XL
|
||||
JP NZ,1F
|
||||
LD A,L
|
||||
SUB XH
|
||||
1: SCF
|
||||
RET NZ
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
LD B,0 ; ‚®§¢à é ¥¬ 㪠§ ⥫ì
|
||||
CALL .set_fp ; ¢ ä ©«¥ ¥£® ç «®
|
||||
RET
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.set_fp:
|
||||
LD A,(NowHandler) ; •í¤«¥à ä ©« á ª®â®àë¬ á¥©ç á à ¡®â ¥¬
|
||||
LD HL,0
|
||||
LD IX,0
|
||||
LD C,15h
|
||||
RST 10h ; ãáâ ®¢ª 㪠§ ⥫ï
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; _____ _ __ __
|
||||
; |_ _|_ _| | _____ | \/ | ___ _ __ ___
|
||||
; | |/ _` | |/ / _ \ | |\/| |/ _ \ '_ ` _ \
|
||||
; | | (_| | < __/ | | | | __/ | | | | |
|
||||
; |_|\__,_|_|\_\___| |_| |_|\___|_| |_| |_|
|
||||
; ‚뤥«ï¥¬ ¯ ¬ïâì ¯®¤ § £à㧪㠯à®è¨¢ª¨ - 64 ª¡
|
||||
|
||||
;-----------------;
|
||||
TakeMem:
|
||||
LD BC,#04C2 ; ‡ ¯à®á ¢ë¤¥«¥¨¥ 64 Š¡ ¯ ¬ï⨠¯®¤ ª®äã
|
||||
RST 8
|
||||
RET C ; § ¢¥à襨¥ - ¥å¢ ⪠¯ ¬ïâ¨
|
||||
LD (ram_blk_id),A ;
|
||||
LD C,#C5 ; § ¯à®á ®¬¥à®¢ ¢ë¤¥«¥ëå áâà ¨æ
|
||||
LD HL,ram_pages ; ¡ãä¥à ¤«ï ¯¥à¥ç¨á«¥¨ï áâà ¨æ
|
||||
RST 8
|
||||
RET C ; § ¢¥à襨¥ - ®è¨¡ª ¢ ID ¡«®ª
|
||||
LD A,B
|
||||
CP 4
|
||||
SCF
|
||||
RET NZ ; § ¢¥à襨¥ - ¥ª®à४⮥ ª®«-¢® ¡«®ª®¢
|
||||
CCF
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; _ _ ____ __
|
||||
; | | ___ __ _ __| | / ___|___ _ __ / _|
|
||||
; | | / _ \ / _` |/ _` | | | / _ \| '_ \| |_
|
||||
; | |__| (_) | (_| | (_| | | |__| (_) | | | | _|
|
||||
; |_____\___/ \__,_|\__,_| \____\___/|_| |_|_|
|
||||
; ‡ £à㦠¥¬ ¯à®è¨¢ªã ¢ ¯ ¬ïâì
|
||||
; —¨â ¥â ä ©« ¯à®è¨¢ª¨ 59215 ¡ ©â.
|
||||
;<3B>à®æ¥¤ãà éñ«ª ¥â PAGE3 ¡¥§ á®åà ¥¨ï/¢®ááâ ®¢«¥¨ï
|
||||
; ¯à¥¤ë¤ã饣® á®áâ®ï¨ï.
|
||||
|
||||
;-----------------;
|
||||
Load_conf:
|
||||
LD A,(ram_pages)
|
||||
OUT (PAGE3),A
|
||||
|
||||
LD A,(ConfHandler)
|
||||
LD HL,#D000
|
||||
LD DE,#3000
|
||||
LD C,13h
|
||||
RST 10h
|
||||
; RET C
|
||||
; AND A
|
||||
; JP NZ,2F
|
||||
|
||||
LD A,(ram_pages+1)
|
||||
OUT (PAGE3),A
|
||||
|
||||
LD A,(ConfHandler)
|
||||
LD HL,#C000
|
||||
LD DE,#4000
|
||||
LD C,13h
|
||||
RST 10h
|
||||
; RET C
|
||||
; AND A
|
||||
; JP NZ,2F
|
||||
|
||||
LD A,(ram_pages+2)
|
||||
OUT (PAGE3),A
|
||||
|
||||
LD A,(ConfHandler)
|
||||
LD HL,#C000
|
||||
LD DE,#4000
|
||||
LD C,13h
|
||||
RST 10h
|
||||
; RET C
|
||||
; AND A
|
||||
; JP NZ,2F
|
||||
|
||||
LD A,(ram_pages+3)
|
||||
OUT (PAGE3),A
|
||||
|
||||
LD A,(ConfHandler)
|
||||
LD HL,#C000
|
||||
LD DE,#4000
|
||||
LD C,13h
|
||||
RST 10h
|
||||
; RET C
|
||||
; and a
|
||||
JP 3F
|
||||
|
||||
LD HL,#374F
|
||||
SBC HL,DE
|
||||
JP Z,3F
|
||||
2: SCF
|
||||
3: RET
|
||||
;*******************************************************
|
||||
|
||||
; ____ _ _
|
||||
; / ___| ___| |_ / \ ___ _____ __
|
||||
; \___ \ / _ \ __| / _ \ / __/ _ \ \/ /
|
||||
; ___) | __/ |_ / ___ \ (_| __/> <
|
||||
; |____/ \___|\__| /_/ \_\___\___/_/\_\
|
||||
; <09>¥à¥ª¨¤ë¢ ¥¬ ¯à®è¨¢ªã ¢ ªíè ¨ ®á¢®¡®¦¤ ¥¬ ¯ ¬ïâì,
|
||||
; ¥á«¨ ¥â ¢â®à®© ¯à®è¨¢ª¨
|
||||
; (???®á¢®¡®¦¤¥¨¥ ¯ ¬ï⨠¥¤®¤¥« ®???)
|
||||
|
||||
;-----------------;
|
||||
Set_Acex_Data:
|
||||
DI
|
||||
|
||||
IN A,(CASH_ON) ; ‚ª«î票¥ ªíè
|
||||
|
||||
LD BC,1FFDh
|
||||
XOR A
|
||||
OUT (C),A ; ®âª«îç¨âì RAM-0
|
||||
LD A,4
|
||||
OUT (SYS_PORT_ON),A ; DCP-PAGE 0
|
||||
|
||||
LD A,0
|
||||
OUT (5Ch),A ; ‘âà ¨æ Š<>˜ = 0
|
||||
|
||||
LD A,(ram_pages)
|
||||
OUT (PAGE1),A ; áâà ¨æ á ¤ 묨 ä ©«
|
||||
|
||||
LD HL,5000h ; ¯¥à¥ª¨¤ë¢ ¨¥ ¤ ëå ¢ áâà ¨æã Š<>˜ = 0
|
||||
LD DE,1000h
|
||||
LD BC,3000h
|
||||
LDIR
|
||||
|
||||
LD A,1
|
||||
OUT (5Ch),A ; ‘âà ¨æ Š<>˜ = 1
|
||||
LD A,(ram_pages+1)
|
||||
OUT (PAGE1),A ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
||||
|
||||
ld h,d ; LD HL,4000h
|
||||
ld d,e ; LD DE,0000h
|
||||
ld b,h ; LD BC,4000h
|
||||
LDIR
|
||||
|
||||
LD A,2
|
||||
OUT (5Ch),A ; ‘âà ¨æ Š<>˜ = 2
|
||||
LD A,(ram_pages+2)
|
||||
OUT (PAGE1),A ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
||||
|
||||
ex de,hl ; LD HL,4000h
|
||||
ld d,e ; LD DE,0000h
|
||||
ld b,h ; LD BC,4000h
|
||||
LDIR
|
||||
|
||||
LD A,3
|
||||
OUT (05Ch),A ; ‘âà ¨æ Š<>˜ = 3
|
||||
LD A,(ram_pages+3)
|
||||
OUT (PAGE1),A ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
||||
|
||||
ld h,d ; LD HL,4000h
|
||||
ld d,e ; LD DE,0000h
|
||||
; LD BC,37F4h
|
||||
ld b,h ; LD BC,4000h
|
||||
LDIR
|
||||
|
||||
LD HL,Reload_String ; ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-
|
||||
LD DE,3EF0h
|
||||
LD C,10h ; LD BC, 16
|
||||
LDIR
|
||||
|
||||
LD A,0FFh
|
||||
LD (3EE0h),A ; no multiple ! ¯¥à¥§ £à㧪 ⮫쪮 ®¤
|
||||
|
||||
IN A,(CASH_OFF) ; Žâª«î票¥ ªíè
|
||||
|
||||
LD A,(page1_save) ; ¢®§¢à â áâà ¨æë 1
|
||||
OUT (PAGE1),A
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; ____ _ ____ _____ _____
|
||||
; / ___| ___| |_ | _ \| ____|_ _|
|
||||
; \___ \ / _ \ __| | |_) | _| | |
|
||||
; ___) | __/ |_ | _ <| |___ | |
|
||||
; |____/ \___|\__| |_| \_\_____| |_|
|
||||
; <09> áâனª¨ ¯¥à¥¤ à¥á¥â®¬
|
||||
; “áâ ®¢ª ¤à¥á ¢®§¢à â ¯®á«¥ reboot
|
||||
; ‘®åà ¥¨¥ ªâ¨¢ëå áâà ¨æ
|
||||
; €¤à¥á ¯à®£à ¬¬ë ¤«ï ¢®§¢à â ¢ ॣ¨áâॠDE
|
||||
|
||||
;-----------------;
|
||||
Set_Ret:
|
||||
DI
|
||||
LD A,Spec_Page
|
||||
OUT (PAGE3),A ; ®âªàëâì ᯥæ-áâà ¨æã
|
||||
LD (#FFF4),DE ; ¤à¥á ¯à®£à ¬¬ë ¯¥à¥§ ¯ãáª
|
||||
|
||||
LD A,'Z'
|
||||
LD (#FFFE),A
|
||||
LD A,'X'
|
||||
LD (#FFFF),A ; ä« £ ¯¥à¥§ ¯ãáª
|
||||
|
||||
ld A,(page0_save) ; á®åà ïâì áâà ¨æë
|
||||
LD (0FFF0h),A ; DOS-PAGE
|
||||
ld A,(page1_save)
|
||||
LD (0FFF1h),A
|
||||
ld A,(page2_save)
|
||||
LD (0FFF2h),A ; ¯à®£à ¬¬ë ¤«ï ¢®§¢à â ???
|
||||
in A,(PAGE3) ; ‘®åà 塞 ’…Š“™“ž áâà ¨æã 3
|
||||
LD (0FFF3h),A
|
||||
ld A,(page3_save) ; ‚®ááâ ¢«¨¢ ¥¬ ç «ìãî áâà ¨æã 3
|
||||
OUT (PAGE3),A
|
||||
; EI
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
|
||||
;(.)(.) (.)(.) (.)(.) (.)(.) (.)(.) (.)(.) (.)(.)
|
||||
; <09>®¤£à㧪 ä ©« á ¯¥à¥¬¥ë¬¨, ª®áâ â ¬¨ ¨ ¡ãä¥à ¬¨:
|
||||
INCLUDE "LDconf_Consts.ASM"
|
||||
;
|
||||
the_end EQU $
|
||||
;
|
||||
IF (the_end>(ST_Point-SP_Win))
|
||||
DISPLAY "the_end = ",/H,the_end
|
||||
DISPLAY "ST_Point-SP_Win = ",/H,(ST_Point-SP_Win)
|
||||
Stack_Error 0
|
||||
ENDIF
|
||||
|
||||
IF (LastHandler=FirstHandler) or ((LastHandler-FirstHandler) > 255)
|
||||
DISPLAY "FirstHandler = ",/H,FirstHandler
|
||||
DISPLAY "LastHandler = ",/H,LastHandler
|
||||
Handler_Error 0
|
||||
ENDIF
|
||||
;(.)(.) (.)(.) (.)(.) (.)(.) (.)(.) (.)(.) (.)(.)
|
||||
855
LDCONFW.ASM
855
LDCONFW.ASM
@ -1,855 +0,0 @@
|
||||
; _ ____ ____ __
|
||||
; | | | _ \ / ___|___ _ __ / _|
|
||||
; | | | | | | | / _ \| '_ \| |_
|
||||
; | |___| |_| | |__| (_) | | | | _|
|
||||
; |_____|____/ \____\___/|_| |_|_|
|
||||
|
||||
; _____ ____ _ _ ____ _
|
||||
; | ___|__ _ __ / ___| _ __ _ __(_)_ __ | |_ ___ _ __ / ___|___ _ __ ___ _ __ _ _| |_ ___ _ __
|
||||
; | |_ / _ \| '__| \___ \| '_ \| '__| | '_ \| __/ _ \ '__| | | / _ \| '_ ` _ \| '_ \| | | | __/ _ \ '__|
|
||||
; | _| (_) | | ___) | |_) | | | | | | | || __/ | | |__| (_) | | | | | | |_) | |_| | || __/ |
|
||||
; |_| \___/|_| |____/| .__/|_| |_|_| |_|\__\___|_| \____\___/|_| |_| |_| .__/ \__,_|\__\___|_|
|
||||
; |_| |_|
|
||||
;*******************************************************
|
||||
; ’¥á⮢ ï ᡮઠ¨«¨ ¥â?
|
||||
define debug 0
|
||||
define sprinter 1
|
||||
;
|
||||
; Œ ªà®áë
|
||||
MACRO TraceMSG tr_mess
|
||||
LD HL,tr_mess
|
||||
CALL PrintStr
|
||||
ENDM
|
||||
|
||||
MACRO iDontKnow
|
||||
;-----------------; ’ ©ë¥ ¬ ¨¯ã«ï樨
|
||||
DI
|
||||
LD A,CNF_3
|
||||
OUT (SYS_PORT_OFF),A
|
||||
LD A,3 ; ãáâ ®¢ª ¢ãâà.¯®à⮢ Z84C15 ¤«ï ¯¥à¥§ £à㧪¨
|
||||
OUT (#EE),A
|
||||
OUT (#EF),A ; CASH & ROM
|
||||
;-----------------;
|
||||
ENDM
|
||||
|
||||
|
||||
;
|
||||
; ‚¥àá¨ï ¯à®£¨ ¨ ¨ä® ¤«ï ¯®â®¢:
|
||||
DEFINE Ver_ID "0.1 alpha"
|
||||
DEFINE e_mail "Tolik.Trek@gmail.com"
|
||||
; <20>®¤£à㧪 ä ©« á ª®áâ â ¬¨ BIOS ¨ DSS:
|
||||
INCLUDE "EQU/SP2000.ASM"
|
||||
; <20>®¤£à㧪 ä ©« á ®è¨¡ª ¬¨)))
|
||||
INCLUDE "EQU/Errors_MSG.a80"
|
||||
;
|
||||
ST_Point EQU #BFFE ; ¤à¥á á⥪
|
||||
SP_Win EQU 64 ; ¬¨¬ë© ª®âà®«ì ¯¥à¥á¥ç¥¨ï á⥪ á ª®¤®¬
|
||||
ORG_Addr EQU #8100 ; ¤à¥á ª®¬¯¨«ï樨. DSS ¢áâ ¢«ï¥â áâபã
|
||||
; á ¯ à ¬¥âà ¬¨ § ¯ã饮£® EXE ¯¥à¥¤
|
||||
; ¤à¥á®¬ § £à㧪¨ START, ¯®í⮬ã
|
||||
; £à㧨¬áï ¥ á ç « áâà ¨æë.
|
||||
|
||||
; _______ _______ ____ __ _
|
||||
; | ____\ \/ / ____| | _ \ _ __ ___ / _(_)_ __
|
||||
; | _| \ /| _| | |_) | '__/ _ \ |_| \ \/ /
|
||||
; | |___ / \| |___ | __/| | | __/ _| |> <
|
||||
; |_____/_/\_\_____| |_| |_| \___|_| |_/_/\_\
|
||||
|
||||
;-----------------;
|
||||
ORG ORG_Addr-#200
|
||||
; ‘ ç « ¢ EXE ä ©«¥ ¨¤ñâ § £®«®¢®ª
|
||||
; ¤«¨®© ¢ 1 ᥪâ®à (512 ¡ ©â)
|
||||
;-----------------;
|
||||
DB 'EX' ; EXE ‘¨£ âãà
|
||||
DB 'E' ; Reserved (EXE type)
|
||||
DB 0 ; Version of EXE file
|
||||
DW #0200 ; ‘ ª ª®£® á¬¥é¥¨ï ¢ ä ©«¥ ¡ã¤¥â £à㧨âìáï ª®¤ ¢
|
||||
DW #0000 ; ¯ ¬ïâì ¯® ¤à¥áã (START) Low - 0200h, High - 0000.
|
||||
DW #0000 ; <20> §¬¥à ¯¥à¢¨ç®£® § £àã§ç¨ª ¨«¨ 0
|
||||
DW #0000 ; Reserved
|
||||
DW #0000 ; Reserved
|
||||
DW #0000 ; Reserved
|
||||
DW START ; €¤à¥á à ᯮ«®¦¥¨ï ª®¤ ¢ ¯ ¬ïâ¨
|
||||
DW START ; €¤à¥á ¢ ¯ ¬ïâ¨ á ª®â®à®£® § ¯ãáâ¨âáï ª®¤ (Reg. PC)
|
||||
DW ST_Point ; €¤à¥á á⥪ (Reg. SP)
|
||||
BLOCK 490 ; Reserved. „®¡¨¢ª ¤® ª®æ ᥪâ®à (512 ¡ ©â). Œ®¦¥â ¨á¯®«ì§®¢ âìáï ¢ ®¢ëå ¢¥àá¨ïå DSS
|
||||
;*******************************************************
|
||||
|
||||
; __ __ _
|
||||
; | \/ | __ _(_)_ __
|
||||
; | |\/| |/ _` | | '_ \
|
||||
; | | | | (_| | | | | |
|
||||
; |_| |_|\__,_|_|_| |_|
|
||||
|
||||
START:
|
||||
;
|
||||
|
||||
;
|
||||
;-----------------; —¨á⨬ ¡ãä¥à ªá¥«¥¬
|
||||
DI
|
||||
LD HL,Buffer
|
||||
LD D,D ; “áâ ®¢¨âì à §¬¥à ¡«®ª
|
||||
LD A,255 ; <20> §¬¥à ¡«®ª
|
||||
LD C,C ;
|
||||
LD A,0 ;
|
||||
LD (HL),A
|
||||
LD B,B ; ‚몫îç ¥¬ ªá¥«ì
|
||||
; EI
|
||||
;-----------------; ‘®åà 塞 ⥪ã騥 áâà ¨æë
|
||||
IN A,(PAGE0)
|
||||
LD (page0_save),A
|
||||
IN A,(PAGE1)
|
||||
LD (page1_save),A
|
||||
IN A,(PAGE2)
|
||||
LD (page2_save),A
|
||||
IN A,(PAGE3)
|
||||
LD (page3_save),A
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ‘®åà 塞 áâனª¨ íªà
|
||||
ld c,51h
|
||||
rst 10h
|
||||
jp nc,1f
|
||||
LD HL,error_Vmode
|
||||
JP BadExit
|
||||
1:
|
||||
ld (VMod),a
|
||||
ld a,b
|
||||
ld (VModPage),a
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
LD (dss_line),IX ; ‘®åà 塞 㪠§ ⥫ì áâப㠧 ¯ã᪠. ????? <20>㦠«¨ ® ¢ ¤ «ì¥©è¥¬ ?????
|
||||
LD A,(IX) ; âãâ DSS ª« ¤ñâ ¤«¨ã ¯ à ¬¥â஢ ª®¬.áâப¨
|
||||
AND A ; ¯à®¢¥à塞 ®âáãâá⢨¥ ¯ à ¬¥â஢
|
||||
JP NZ,1F ; § ¯ã᪠¢ ª®¬.áâப¥. …᫨ ¨å ¥â,
|
||||
LD HL,Help_Msg ; â® ¯¥ç â ¥¬ ¨áâàãªæ¨î ¨ ¢ë室¨¬
|
||||
CALL PrintStr ; ¨§ ¯à®£à ¬¬ë á ®à¬ «ìë¬ ª®¤®¬
|
||||
LD B,0 ; § ¢¥à襨ï.
|
||||
JP Exit ;
|
||||
;-----------------;
|
||||
|
||||
;-----------------; <20> §¡¨à ¥¬ ¨ ªâ¨¢¨à㥬 ª«îç¨
|
||||
1:
|
||||
CALL Set_keys ; ¢ë室¥ CF=0 - ¥â ®è¨¡ª¨
|
||||
JR NC,1F ; ‘F=1 - ¥áâì ®è¨¡ª
|
||||
LD HL,error_ComStr ; …᫨ à §®¡à «¨ á ®è¨¡ª ¬¨
|
||||
JP BadExit ; â® ¢ë室 á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¥á«¨ ®à¬. § ¢¥à襨¥ set_keys
|
||||
1:
|
||||
if debug : TraceMSG trace_msg1 : endif
|
||||
;
|
||||
ld a,(x_key)
|
||||
and A ; ¥á«¨ ª«îç X ãáâ ®¢«¥, â® ¯à®¢¥àªã ¯à®¯ã᪠¥¬
|
||||
jp nz,1F
|
||||
CALL TestConf ; ¯à®¢¥àª ª®äë. ¢ë室¥ CF=0 - ¥â ®è¨¡ª
|
||||
JR NC,1F ; ‘F=1 - ¥áâì ®è¨¡ª
|
||||
LD HL,error_confFile ; …᫨ ª®áïª á ä ©«®¬ ¯à®è¨¢ª¨
|
||||
JP BadExit ; â® ¢ë室 á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¥á«¨ ®à¬. § ¢¥à襨¥ TestConf
|
||||
1:
|
||||
if debug : TraceMSG trace_msg2 : endif
|
||||
;
|
||||
CALL TakeMem ; ‚뤥«¥¨¥ ¯ ¬ï⨠¤«ï ª®äë 65536 ¡ ©â
|
||||
JR NC,1F
|
||||
LD HL,error_freeMem ; …᫨ ¥¤®áâ â®ç® ¯ ¬ïâ¨
|
||||
JP BadExit ; â® ¢ë室 á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¥á«¨ ®à¬. § ¢¥à襨¥ TakeMem
|
||||
1:
|
||||
if debug : TraceMSG trace_msg3 : endif
|
||||
;
|
||||
; LD A,(ConfHandler) ; ‚ëáâ ¢«ï¥¬ 奤«¥à ¯à®è¨¢ª¨
|
||||
; LD (NowHandler),A ; á ª®â®à®© ¡ã¤¥¬ à ¡®â âì
|
||||
;
|
||||
;
|
||||
CALL Load_conf ; —¨â ¥¬ ¯à®è¨¢ªã ¨§ ä ©« (¬¥ï¥â PAGE3)
|
||||
LD A,(page3_save) ; ¢®ááâ ¢«¨¢ ¥¬ áâà ¨æã
|
||||
OUT (PAGE3),A ; ¯ ¬ï⨠¯®á«¥ ᬥë
|
||||
JR NC,1F
|
||||
LD HL,error_readConf ; …᫨ ®è¨¡ª ¯à¨ ç⥨¨ ¯à®è¨¢ª¨ ¨§ ä ©«
|
||||
JP BadExit ; â® ¢ë室 á 祬? <20>à ¢¨«ì®, á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¥á«¨ ®à¬. § ¢¥à襨¥ Load_conf
|
||||
1:
|
||||
if debug : TraceMSG trace_msg4 : endif
|
||||
;
|
||||
if sprinter : iDontKnow : endif
|
||||
;
|
||||
LD DE,ReloadRET ; €¤à¥á ‚އ‚<E280A1>€’€ ¯®á«¥ ¯¥à¥§ £à㧪¨
|
||||
LD (SP_Save),SP ; á®åà 塞 á⥪
|
||||
CALL Set_Ret ; ãáâ ®¢ª ¤ ëå ¤«ï ¢®§¢à â
|
||||
;
|
||||
if debug : TraceMSG trace_msg5 : endif
|
||||
;
|
||||
CALL Set_Acex_Data ; ¯¥à¥£à㧪 ¤ ëå ACEX ¢ FAST-RAM
|
||||
; <20>®á«¥ í⮩ ¯à®æ¥¤ãàë å¨âன ^^^^^^ ç¨ îâáï £«îª¨
|
||||
; á ¢ë§®¢®¬ ¯à®æ¥¤ãà DSS. —ñâ ® â ¬ ¬ã¤à¨â á ¯®àâ ¬¨
|
||||
; ¨«¨ á ¯ ¬ïâìî, ¥ à §®¡à «áï. <20>®í⮬㠯®á«¥ ¥ñ «ãçè¥
|
||||
; áà §ã ¢ à¥á¥â á £®«®¢®© ¨ ¥ ¯ à¨âìáï...
|
||||
;-----------------;
|
||||
|
||||
;-----------------; 7 ¡¥¤ - 1 à¥á¥â
|
||||
RESET:
|
||||
|
||||
DI
|
||||
|
||||
IN A,(PAGE1) ; ®âªàë⨥ ¯®àâ á¡à®á
|
||||
PUSH AF
|
||||
LD A,40h
|
||||
OUT (PAGE1),A ; set DCP page
|
||||
LD A,2Eh
|
||||
LD (04400h),A ; open for WR
|
||||
LD (04600h),A ; open for RD
|
||||
POP AF
|
||||
OUT (PAGE1),A ; Close PAGE1 ???????
|
||||
|
||||
RESET_LOOP: ; 横« á¡à®á
|
||||
LD BC,100h
|
||||
OUT (C),C
|
||||
LD BC,000h
|
||||
OUT (C),C
|
||||
JR RESET_LOOP ; ¯®«®áâìî § 横«¨âì!
|
||||
|
||||
HALT ; ¯ë«¥ã«®¢¨â¥«ì
|
||||
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||||
|
||||
; ____ _ _ ____ _
|
||||
; | _ \ _ __(_)_ __ | |_ / ___|| |_ _ __
|
||||
; | |_) | '__| | '_ \| __| \___ \| __| '__|
|
||||
; | __/| | | | | | | |_ ___) | |_| |
|
||||
; |_| |_| |_|_| |_|\__| |____/ \__|_|
|
||||
; <09>¥ç âì áâப¨. €¤à¥á áâப¨ ¢ HL
|
||||
|
||||
;-----------------;
|
||||
PrintStr:
|
||||
LD C,5Ch
|
||||
RST 10h
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; ____ _ _ ____ _____ _____
|
||||
; | _ \ ___| | ___ __ _ __| | | _ \| ____|_ _|
|
||||
; | |_) / _ \ |/ _ \ / _` |/ _` | | |_) | _| | |
|
||||
; | _ < __/ | (_) | (_| | (_| | | _ <| |___ | |
|
||||
; |_| \_\___|_|\___/ \__,_|\__,_| |_| \_\_____| |_|
|
||||
; Œ¥áâ®, ªã¤ ¡ã¤¥â ¢®§¢à â ¯®á«¥
|
||||
; ¯¥à¥§ £à㧪¨ ®¢®© ¯à®è¨¢ª¨
|
||||
|
||||
;-----------------;
|
||||
ReloadRET:
|
||||
DI
|
||||
LD SP,(SP_Save)
|
||||
LD A,CNF_0 ; ª®ä¨£ãà æ¨ï ¨ ®âª«î票¥ <20>‡“
|
||||
OUT (SYS_PORT_OFF),A
|
||||
LD A,(page0_save) ; SET PAGE DOS
|
||||
OUT (PAGE0),A
|
||||
LD A,(page3_save) ; ¢®§¢à â áâ ன áâà ¨æë PAGE3
|
||||
OUT (PAGE3),A
|
||||
;-----------------;
|
||||
|
||||
;-----------------; <20> ¡®â ¯à®£à ¬¬ë á ®¢®© ¯à®è¨¢ª®©
|
||||
ld a,(e_key)
|
||||
and a
|
||||
jp z,1F
|
||||
ld hl,EXEfileBuff ; ‡ ¯ã᪠EXE
|
||||
ld bc,0040h
|
||||
rst 10h
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
1:
|
||||
ld a,(a_key) ; ‚ë室 ¡¥§ ¢®ááâ ®¢«¥¨ï ¤¥ä®«â®© ª®äë?
|
||||
and a
|
||||
jp nz, NormExit
|
||||
LD DE,NextReloadRET ;
|
||||
LD (SP_Save),SP ; á®åà 塞 á⥪
|
||||
CALL Set_Ret ; ãáâ ®¢ª ¤ ëå ¤«ï ¢®§¢à â
|
||||
JP RESET
|
||||
;*******************************************************
|
||||
|
||||
; _ _ _
|
||||
; | \ | | _____ _| |_
|
||||
; | \| |/ _ \ \/ / __|
|
||||
; | |\ | __/> <| |_
|
||||
; |_| \_|\___/_/\_\\__|
|
||||
; ____ _ _ ____ _____ _____
|
||||
; | _ \ ___| | ___ __ _ __| | | _ \| ____|_ _|
|
||||
; | |_) / _ \ |/ _ \ / _` |/ _` | | |_) | _| | |
|
||||
; | _ < __/ | (_) | (_| | (_| | | _ <| |___ | |
|
||||
; |_| \_\___|_|\___/ \__,_|\__,_| |_| \_\_____| |_|
|
||||
; <09>®¤£®â®¢ª ª § ¢¥àè¥¨î ¯®á«¥ à¥á¥â ¨
|
||||
; ¢®§¢à â த®© ¯à®è¨¢ª¨
|
||||
;-----------------;
|
||||
NextReloadRET:
|
||||
DI
|
||||
LD SP,(SP_Save)
|
||||
LD A,CNF_0 ; ª®ä¨£ãà æ¨ï ¨ ®âª«î票¥ <20>‡“
|
||||
OUT (SYS_PORT_OFF),A
|
||||
|
||||
LD A,(page0_save) ; SET PAGE DOS
|
||||
OUT (PAGE0),A
|
||||
LD A,(page1_save)
|
||||
OUT (PAGE1),A
|
||||
; ƒ«ïãâì, ¬®¦¥â ¥ ¤® ¢®§¢à é âì ®¤ã ¨§ áâà ¨æ???
|
||||
LD A,(page3_save)
|
||||
OUT (PAGE3),A
|
||||
|
||||
JP NormExit
|
||||
;*******************************************************
|
||||
|
||||
; _____ _ _ ____ _
|
||||
; | ____|_ _(_) |_ | _ \ _ __ ___ ___( )___
|
||||
; | _| \ \/ / | __| | |_) | '__/ _ \ / __|// __|
|
||||
; | |___ > <| | |_ | __/| | | (_) | (__ \__ \
|
||||
; |_____/_/\_\_|\__| |_| |_| \___/ \___| |___/
|
||||
|
||||
;-----------------;
|
||||
NormExit:
|
||||
LD HL,WellDone
|
||||
CALL PrintStr
|
||||
LD B,0
|
||||
CALL Exit
|
||||
;-----------------;
|
||||
|
||||
BadExit: ; ‚ HL áâப á ®è¨¡ª®©
|
||||
CALL PrintStr
|
||||
LD B,1 ; ª®¤ ®è¨¡ª¨
|
||||
CALL Exit
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
Exit:
|
||||
LD A,CNF_0 ;??????
|
||||
OUT (SYS_PORT_OFF),A
|
||||
;
|
||||
PUSH BC
|
||||
LD HL,FirstHandler
|
||||
LD C,12h
|
||||
LD B,(LastHandler-FirstHandler)
|
||||
.loop: ; ‡ ªàë¢ ¥¬ ¢á¥ ®âªàëâë¥ ä ©«ë,
|
||||
LD A,(HL) ; ¥á«¨ ¥áâì. ‚ 横«¥.
|
||||
AND A
|
||||
JR Z,1F
|
||||
PUSH HL
|
||||
PUSH BC
|
||||
RST 10h
|
||||
POP BC
|
||||
POP HL
|
||||
1: INC HL
|
||||
DJNZ .loop
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ®á¢®¡®¦¤ ¥¬ ¯ ¬ïâì, ¥á«¨ ª«ï稫¨
|
||||
ld c,#C3
|
||||
ld a,(ram_blk_id)
|
||||
cp 0
|
||||
jr z,1F
|
||||
rst 8
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ¢®ááâ ¢«¨¢ ¥¬ íªà
|
||||
ld c,53h
|
||||
rst 10h
|
||||
push de
|
||||
|
||||
ld a,(VModPage)
|
||||
ld b,a
|
||||
ld a,(VMod)
|
||||
ld c,50h
|
||||
rst 10h
|
||||
|
||||
ld c,52h
|
||||
pop de
|
||||
rst 10h
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ‚ë室 ¢ DOS
|
||||
1:
|
||||
POP BC
|
||||
LD C,41h
|
||||
RST 10h
|
||||
DI
|
||||
HALT
|
||||
;-----------------;
|
||||
;*******************************************************
|
||||
|
||||
; ____ _ _
|
||||
; / ___| ___| |_ | | _____ _ _ ___
|
||||
; \___ \ / _ \ __| | |/ / _ \ | | / __|
|
||||
; ___) | __/ |_ | < __/ |_| \__ \
|
||||
; |____/ \___|\__| |_|\_\___|\__, |___/
|
||||
; |___/
|
||||
; <09>®«ãç ¥¬ ª«îç¨ § ¯ã᪠, à ᯨ娢 ¥¬ ¨å ¯® 㣫 ¬,
|
||||
; áâà ¨¢ ¥¬ ç «ìë¥ ãá«®¢¨ï à ¡®âë.
|
||||
|
||||
;-----------------;
|
||||
Set_keys:
|
||||
LD HL,(dss_line)
|
||||
INC HL
|
||||
.CheckChar:
|
||||
CALL .GetParam
|
||||
JP NC,1F
|
||||
CCF ; …᫨ ¯®á«¥¤¨© ¯ à ¬¥âà ¢ áâப¥ = 0
|
||||
RET ; â® ¢ë室¨¬. <20> §¡®à ®ª®ç¥
|
||||
1: LD A,(Buffer+1) ; ‚ ®á®¢®¬ 横«¥ CheckChar ¬ë
|
||||
AND A ; ¦¤ñ¬ ⮫쪮 ®¤¨ ᨬ¢®« ¢
|
||||
JP Z,1F ; ª«îç¥. <20>®í⮬㠥᫨ ¨å ¡®«ìè¥,
|
||||
SCF ; â® ¢ë室¨¬ á ®è¨¡ª®©.
|
||||
RET ; ‚ë室 á ®è¨¡ª®©.
|
||||
1: ; <20>஢¥àª /ãáâ ®¢ª ª«îç
|
||||
LD C,A ; ’“’ †„ðŒ, çâ® ¢ € «¥¦¨â 0 ¨ ¨á¯®«ì§ã¥¬ BC
|
||||
LD B,A ; ª ª ᬥ饨¥ ¢ ¯ ¬ïâ¨, £¤¥ åà ïâáï ª«îç¨
|
||||
LD A,(Buffer)
|
||||
RES 5,A ; ¤¥« ¥¬ ¬ «¥ìª¨© ᨬ¢®« ¡®«ì訬)))
|
||||
CP 'A' ; ¯à®¢¥à塞 ¯ à ¬¥âà ã¦ë©
|
||||
JR Z,.set_keys_a
|
||||
CP 'C'
|
||||
JR Z,.set_keys_c
|
||||
CP 'E'
|
||||
JR Z,.set_keys_e
|
||||
CP 'X'
|
||||
JR Z,.set_keys_x
|
||||
SCF ; ®è¨¡ª ¢ ¯ à ¬¥âà¥
|
||||
RET ; ¢ë室 á ®è¨¡ª®©
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.set_keys_x:
|
||||
INC C
|
||||
.set_keys_e:
|
||||
INC C
|
||||
.set_keys_c:
|
||||
INC C
|
||||
.set_keys_a:
|
||||
EX DE,HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
LD HL,key_buff ; ‚ëç¨á«ï¥¬ ï祩ªã åà ¥¨ï ª«îç
|
||||
ADD HL,BC
|
||||
LD A,(HL) ; ¨ ¯à®¢¥à塞 ¥â «¨ â ¬ 㦥 ª«îç .
|
||||
CP 0 ; ¥á«¨ ¥áâì, § ç¨â ª«îç ¢¢¥¤ñ 2 à §
|
||||
SCF
|
||||
RET NZ ; ®è¨¡ª - ¯®¢â®à ª«îç . ¢ë室
|
||||
OR C ; ’ãâ Ž†ˆ„€…’‘Ÿ, çâ® €=0. …᫨ ‘=0, â® íâ® ª«îç "A"
|
||||
LD A,3
|
||||
LD (HL),A ; ãáâ ®¢¨«¨ ª«îç
|
||||
EX DE,HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
JR Z,.CheckChar ; ¥á«¨ ª«îç "A" â® á«¥¤ãî騩 ªà㣠横«
|
||||
xor C ; ’ãâ Ž†ˆ„€…’‘Ÿ, çâ® €=3. …᫨ ‘=3, â® íâ® ª«îç "X"
|
||||
JR Z,.CheckChar ; ¥á«¨ ª«îç "X" â® á«¥¤ãî騩 ªà㣠横«
|
||||
|
||||
PUSH BC
|
||||
CALL .GetParam ; ¯®«ãç ¥¬ á«¥¤ãî騩 ¯ à ¬¥âà áâப¨ DOS ª ©¤¥®¬ã ª«îçã
|
||||
POP BC
|
||||
RET C ; ¢ë室, ¥á«¨ ®è¨¡ª
|
||||
EX DE,HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
LD HL,FirstHandler ; ¢ëç¨á«ï¥¬ ï祩ªã åà ¥¨ï 奤«¥à
|
||||
ADD HL,BC ;
|
||||
DEC HL ;
|
||||
LD (.fileHandler),HL ; ¨ ¯®¤áâ ¢«ï¥¬ ¥ñ ¯àאַ ¢ ª®¤ ".OpenFile"
|
||||
EX DE,HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
PUSH HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
CALL .OpenFile ; Žâªàë⨥ ä ©« (¨«¨ ¯à®¢¥àª «¨ç¨ï) ¯® ¨¬¥¨ ¨§ ¡ãä¥à
|
||||
POP HL ; <20>… ’…<E28099>Ÿ’œ “Š€‡€’…‹œ <20>€ ‘‹…„“ž™ˆ‰ <20>€<EFBFBD>€Œ…’<E280A6>!
|
||||
RET C ; ¢ë室, ¥á«¨ ®è¨¡ª
|
||||
JP .CheckChar ; ¯®£ «¨ á«¥¤ãî騩 ¢¨â®ª à §¡®à ª«î祩
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.GetParam: ; ¢ HL ¯à¨¨¬ ¥âáï á«¥¤. ¯ à. áâப¨ DOS
|
||||
LD C,43h ; âã⠢뤥«ï¥¬ ¯ à ¬¥âà § ¯ãáª
|
||||
LD DE,Buffer ; ¡ãä¥à ¤«ï ®¯¥à 権 á® áâப ¬¨
|
||||
RST #10 ; ¯®«ãç ¥¬ ¢ ¡ãä¥à¥ á«¥¤ãî騩 ¯ à ¬¥âà
|
||||
CCF
|
||||
LD A,(Buffer)
|
||||
AND A
|
||||
RET NZ ; <20>®à¬ «ìë© ¢®§¢à â C = 0
|
||||
SCF
|
||||
RET ; ‚®§¢à â á ®è¨¡ª®© C = 1
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.OpenFile:
|
||||
LD HL,key_save ; ¯à®¯¨áë¢ ¥¬ ª«îç ¢ ª®¤ ¤«ï ¯à®¢¥àª¨ EXE
|
||||
LD (HL),C ; ¢âëª ¥¬ § 票¥ ª«îç ¢ ª®¤
|
||||
LD BC,#0045 ; ¯à®¢¥à塞 ¡ãä¥à ª®à४â®áâì ¨¬¥¨ ä ©«
|
||||
LD HL,Buffer ; ????? ᤥ« âì ¯à®¢¥àªã ª®à४â®áâì ¢á¥£® ¯ãâ¨?????
|
||||
RST 10h
|
||||
RET C ; ®è¨¡ª ¢ áâப¥
|
||||
AND %00000011 ; ¯à®¢¥à塞, çâ® ¥áâì ¨¬ï ¨
|
||||
XOR %00000011 ; à áè¨à¥¨¥ ä ©« (0 ¨ 1 ¡¨âë)
|
||||
SCF
|
||||
RET NZ ; ®è¨¡ª ä ©« - ¢ë室
|
||||
|
||||
LD A,0
|
||||
LD C,11h
|
||||
LD HL,Buffer
|
||||
RST 10h ; ®âªàë⨥ ä ©«
|
||||
RET C ; ®è¨¡ª ä ©« - ¢ë室
|
||||
LD (.fileHandler),A ; á®åà 塞 奤«¥à
|
||||
.fileHandler EQU $-2
|
||||
;-----------------;
|
||||
|
||||
;-----------------; <20>஢¥à塞 ®¡à ¡ âë¢ ¥¬ë© ª«îç
|
||||
key_save EQU $+1
|
||||
LD A,#FF ; áî¤ ¢®âªñâáï § 票¥ ¨§ ॣ¨áâà C
|
||||
XOR 2 ; ¥á«¨ 2, â® íâ® ª«îç "E"
|
||||
ret NZ ; ¥á«¨ ¥â, â® ¢ë室 ¨§ ¯à®æ¥¤ãàë.
|
||||
;-----------------;
|
||||
|
||||
;-----------------; <20>஢¥àª à áè¨à¥¨ï ä ©«
|
||||
LD BC,#0445 ; ‘ ª«î箬 "E" ¯à®¢¥à塞 ä ©«
|
||||
LD HL,Buffer ; à áè¨à¥¨¥ "EXE" ¢ë¤¥«¨¢
|
||||
LD DE,BufferEXE ; ¨§ áâப¨ ¨¬¥¨ à áè¨à¥¨¥
|
||||
RST 10h ; ä ©« ¢ ®â¤¥«ìë© ¡ãä¥à 4 ¡ ©â
|
||||
;-----------------;
|
||||
|
||||
;-----------------; â¥á⨬ ¡ãä¥à à áè¨à¥¨ï ¯®á¨¬¢®«ì®
|
||||
LD DE,IsEXE
|
||||
LD HL,BufferEXE
|
||||
LD BC,IsEXElength-IsEXE
|
||||
2: LD A,(DE)
|
||||
RES 5,(HL) ; ¤¥« ¥¬ ¬ «¥ìª¨© ᨬ¢®« ¡®«ì訬)))
|
||||
CPI
|
||||
INC DE
|
||||
JP PO,3F ; ¥á«¨ ¯®á«¥¤¨© ᨬ¢®« ¯à®¢¥à¥, â® JP ¯à®¢¥àªã
|
||||
JP Z,2B ; ¥á«¨ ᨬ¢®« ᮢ¯ ¤ ¥â, â® ¯®¢â®à
|
||||
3: SCF ; áî¤ ¯®¯ ¤ñ¬ ª®£¤ BC=0 ¨«¨ ᨬ¢®« ¥ ᮢ¯ «
|
||||
RET NZ ; ¥á«¨ ¢ë諨 ¨§ 横« ¨ ᨬ¢®« ¥ ᮢ¯ « - ®è¨¡ª ,
|
||||
|
||||
xor A ; ¥á«¨ ¢áñ ¨èâïª (???- § ªàë¢ ¥¬ ®âªàëâë© EXE ¨???) ¢ë室¨¬
|
||||
ex af,af'
|
||||
ld hl,Buffer
|
||||
ld de,EXEfileBuff
|
||||
ld bc, #00FF
|
||||
1: ldi
|
||||
ex af,af'
|
||||
cp (hl)
|
||||
jr z,1F
|
||||
ex af,af'
|
||||
jp pe,1B
|
||||
1:
|
||||
|
||||
ld a,0
|
||||
ld (de),a
|
||||
ld a,(ExeHandler)
|
||||
ld c,12h
|
||||
rst 10h
|
||||
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; _____ _ ____ __
|
||||
; |_ _|__ ___| |_ / ___|___ _ __ / _|
|
||||
; | |/ _ \/ __| __| | | / _ \| '_ \| |_
|
||||
; | | __/\__ \ |_ | |__| (_) | | | | _|
|
||||
; |_|\___||___/\__| \____\___/|_| |_|_|
|
||||
; <09>஢¥à塞 à §¬¥à ¨ § £®«®¢®ª ä ©« ¯à®è¨¢ª¨
|
||||
; (???¤®¡ ¢¨âì ª«îç ¤«ï ®â¬¥ë???)
|
||||
|
||||
;-----------------;
|
||||
TestConf:
|
||||
LD A,(ConfHandler) ; á®åà 塞 奤«¥à ⥪ã騩
|
||||
LD (NowHandler),A ; ä ©« á ª®â®àë¬ à ¡®â ¥¬. ??? ã¡à âì «¨è¥¥ ???
|
||||
AND A ; ¯à®¢¥àª ®âáãâá⢨¥ 奤«¥à
|
||||
SCF
|
||||
RET Z ; ¢ë室 á ®è¨¡ª®© ¥á«¨ ä ©« ¥ ®âªàëâ
|
||||
|
||||
CALL .testing
|
||||
/*
|
||||
RET C
|
||||
|
||||
LD A,(ConfHandler2) ; ¢ë¡¨à ¥¬ ⥪ã騬 á«¥¤ãî騩 ä ©«
|
||||
LD (NowHandler),A
|
||||
AND A ; ¯à®¢¥àª ®âáãâá⢨¥ 奤«¥à
|
||||
RET Z ; ¢ë室 ¡¥§ ®è¨¡ª¨ - ¢â®à®© ¯à®è¨¢ª¨ ¬®¦¥â ¥ ¡ëâì ¢ ¯ à ¬¥âà å
|
||||
CALL .testing
|
||||
*/
|
||||
RET
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.testing:
|
||||
LD HL,Buffer
|
||||
LD DE,8
|
||||
LD C,13h ; ç¨â ¥¬ ¢ ¡ãä¥à ¯¥à¢ë¥ 8 ¡ ©â
|
||||
RST 10h ; ¤«ï áà ¢¥¨ï á è ¡«®®¬
|
||||
RET C
|
||||
;-----------------;
|
||||
|
||||
;-----------------; ª®¢ëà塞 ¡ãä¥à ¯®á¨¬¢®«ì®:
|
||||
LD DE,IsNormConf ; è ¡«® ¤«ï áà ¢¥¨ï
|
||||
LD HL,Buffer
|
||||
LD BC,IsNormConfLen-IsNormConf
|
||||
2: LD A,(DE)
|
||||
CPI
|
||||
INC DE
|
||||
JP PO,3F ; ¥á«¨ ¯®á«¥¤¨© ᨬ¢®« ¯à®¢¥à¥, â® JP ¯à®¢¥àªã
|
||||
JP Z,2B ; ¥á«¨ ᨬ¢®« ᮢ¯ ¤ ¥â, â® ¯®¢â®à
|
||||
3: SCF ; áî¤ ¯®¯ ¤ñ¬ ª®£¤ BC=0 ¨«¨ ᨬ¢®« ¥ ᮢ¯ «
|
||||
RET NZ ; ¥á«¨ ¢ë諨 ¨§ 横« ¨ ᨬ¢®« ¥ ᮢ¯ « - ®è¨¡ª ,
|
||||
;-----------------; ; ¥á«¨ ŽŠ, â® á¡à áë¢ ¥¬ 㪠§ â¥«ì ¢ ä ©«¥ 0
|
||||
|
||||
;-----------------;
|
||||
LD B,2 ; ‘â ¢¨¬ 㪠§ â¥«ì ª®¥æ ä ©«
|
||||
CALL .set_fp ; ç⮡ ã§ âì ¥£® à §¬¥à
|
||||
RET C
|
||||
LD A,H ; <20> §¬¥à ä ©« ¢ HL:IX. <20>¥â á¬ëá« , ¥á«¨ ® ¡®«ìè¥
|
||||
OR L ; 65536 ¡ ©â, ¯®í⮬㠯஢¥à塞, çâ® ¢ HL ®«ì.
|
||||
SCF
|
||||
RET NZ
|
||||
LD HL,(ConfSize) ; ‘à ¢¨¢ ¥¬ à §¬¥à ä ©«
|
||||
LD A,H ; á íâ ««®ë¬ (59215 ¨«¨ #E74F)
|
||||
SUB XL
|
||||
JP NZ,1F
|
||||
LD A,L
|
||||
SUB XH
|
||||
1: SCF
|
||||
RET NZ
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
LD B,0 ; ‚®§¢à é ¥¬ 㪠§ ⥫ì
|
||||
CALL .set_fp ; ¢ ä ©«¥ ¥£® ç «®
|
||||
RET
|
||||
;-----------------;
|
||||
|
||||
;-----------------;
|
||||
.set_fp:
|
||||
LD A,(NowHandler) ; •í¤«¥à ä ©« á ª®â®àë¬ á¥©ç á à ¡®â ¥¬
|
||||
LD HL,0
|
||||
LD IX,0
|
||||
LD C,15h
|
||||
RST 10h ; ãáâ ®¢ª 㪠§ ⥫ï
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; _____ _ __ __
|
||||
; |_ _|_ _| | _____ | \/ | ___ _ __ ___
|
||||
; | |/ _` | |/ / _ \ | |\/| |/ _ \ '_ ` _ \
|
||||
; | | (_| | < __/ | | | | __/ | | | | |
|
||||
; |_|\__,_|_|\_\___| |_| |_|\___|_| |_| |_|
|
||||
; ‚뤥«ï¥¬ ¯ ¬ïâì ¯®¤ § £à㧪㠯à®è¨¢ª¨ - 64 ª¡
|
||||
|
||||
;-----------------;
|
||||
TakeMem:
|
||||
LD BC,#04C2 ; ‡ ¯à®á ¢ë¤¥«¥¨¥ 64 Š¡ ¯ ¬ï⨠¯®¤ ª®äã
|
||||
RST 8
|
||||
RET C ; § ¢¥à襨¥ - ¥å¢ ⪠¯ ¬ïâ¨
|
||||
LD (ram_blk_id),A ;
|
||||
LD C,#C5 ; § ¯à®á ®¬¥à®¢ ¢ë¤¥«¥ëå áâà ¨æ
|
||||
LD HL,ram_pages ; ¡ãä¥à ¤«ï ¯¥à¥ç¨á«¥¨ï áâà ¨æ
|
||||
RST 8
|
||||
RET C ; § ¢¥à襨¥ - ®è¨¡ª ¢ ID ¡«®ª
|
||||
LD A,B
|
||||
CP 4
|
||||
SCF
|
||||
RET NZ ; § ¢¥à襨¥ - ¥ª®à४⮥ ª®«-¢® ¡«®ª®¢
|
||||
CCF
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; _ _ ____ __
|
||||
; | | ___ __ _ __| | / ___|___ _ __ / _|
|
||||
; | | / _ \ / _` |/ _` | | | / _ \| '_ \| |_
|
||||
; | |__| (_) | (_| | (_| | | |__| (_) | | | | _|
|
||||
; |_____\___/ \__,_|\__,_| \____\___/|_| |_|_|
|
||||
; ‡ £à㦠¥¬ ¯à®è¨¢ªã ¢ ¯ ¬ïâì
|
||||
; —¨â ¥â ä ©« ¯à®è¨¢ª¨ 59215 ¡ ©â.
|
||||
;<3B>à®æ¥¤ãà éñ«ª ¥â PAGE3 ¡¥§ á®åà ¥¨ï/¢®ááâ ®¢«¥¨ï
|
||||
; ¯à¥¤ë¤ã饣® á®áâ®ï¨ï.
|
||||
|
||||
;-----------------;
|
||||
Load_conf:
|
||||
LD A,(ram_pages)
|
||||
OUT (PAGE3),A
|
||||
|
||||
LD A,(ConfHandler)
|
||||
LD HL,#D000
|
||||
LD DE,#3000
|
||||
LD C,13h
|
||||
RST 10h
|
||||
RET C
|
||||
AND A
|
||||
JP NZ,2F
|
||||
|
||||
LD A,(ram_pages+1)
|
||||
OUT (PAGE3),A
|
||||
|
||||
LD A,(ConfHandler)
|
||||
LD HL,#C000
|
||||
LD DE,#4000
|
||||
LD C,13h
|
||||
RST 10h
|
||||
RET C
|
||||
AND A
|
||||
JP NZ,2F
|
||||
|
||||
LD A,(ram_pages+2)
|
||||
OUT (PAGE3),A
|
||||
|
||||
LD A,(ConfHandler)
|
||||
LD HL,#C000
|
||||
LD DE,#4000
|
||||
LD C,13h
|
||||
RST 10h
|
||||
RET C
|
||||
AND A
|
||||
JP NZ,2F
|
||||
|
||||
LD A,(ram_pages+3)
|
||||
OUT (PAGE3),A
|
||||
|
||||
LD A,(ConfHandler)
|
||||
LD HL,#C000
|
||||
LD DE,#374F
|
||||
LD C,13h
|
||||
RST 10h
|
||||
RET C
|
||||
CP #FF
|
||||
JP Z,3F
|
||||
|
||||
LD HL,#374F
|
||||
SBC HL,DE
|
||||
JP Z,3F
|
||||
2: SCF
|
||||
3: RET
|
||||
;*******************************************************
|
||||
|
||||
; ____ _ _
|
||||
; / ___| ___| |_ / \ ___ _____ __
|
||||
; \___ \ / _ \ __| / _ \ / __/ _ \ \/ /
|
||||
; ___) | __/ |_ / ___ \ (_| __/> <
|
||||
; |____/ \___|\__| /_/ \_\___\___/_/\_\
|
||||
; <09>¥à¥ª¨¤ë¢ ¥¬ ¯à®è¨¢ªã ¢ ªíè ¨ ®á¢®¡®¦¤ ¥¬ ¯ ¬ïâì,
|
||||
; ¥á«¨ ¥â ¢â®à®© ¯à®è¨¢ª¨
|
||||
; (???®á¢®¡®¦¤¥¨¥ ¯ ¬ï⨠¥¤®¤¥« ®???)
|
||||
|
||||
;-----------------;
|
||||
Set_Acex_Data:
|
||||
DI
|
||||
|
||||
IN A,(CASH_ON) ; ‚ª«î票¥ ªíè
|
||||
|
||||
LD BC,1FFDh
|
||||
XOR A
|
||||
OUT (C),A ; ®âª«îç¨âì RAM-0
|
||||
LD A,4
|
||||
OUT (SYS_PORT_ON),A ; DCP-PAGE 0
|
||||
|
||||
LD A,0
|
||||
OUT (5Ch),A ; ‘âà ¨æ Š<>˜ = 0
|
||||
|
||||
LD A,(ram_pages)
|
||||
OUT (PAGE1),A ; áâà ¨æ á ¤ 묨 ä ©«
|
||||
|
||||
LD HL,5000h ; ¯¥à¥ª¨¤ë¢ ¨¥ ¤ ëå ¢ áâà ¨æã Š<>˜ = 0
|
||||
LD DE,1000h
|
||||
LD BC,3000h
|
||||
LDIR
|
||||
|
||||
LD A,1
|
||||
OUT (5Ch),A ; ‘âà ¨æ Š<>˜ = 1
|
||||
LD A,(ram_pages+1)
|
||||
OUT (PAGE1),A ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
||||
|
||||
ld h,d ; LD HL,4000h
|
||||
ld d,e ; LD DE,0000h
|
||||
ld b,h ; LD BC,4000h
|
||||
LDIR
|
||||
|
||||
LD A,2
|
||||
OUT (5Ch),A ; ‘âà ¨æ Š<>˜ = 2
|
||||
LD A,(ram_pages+2)
|
||||
OUT (PAGE1),A ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
||||
|
||||
ex de,hl ; LD HL,4000h
|
||||
ld d,e ; LD DE,0000h
|
||||
ld b,h ; LD BC,4000h
|
||||
LDIR
|
||||
|
||||
LD A,3
|
||||
OUT (05Ch),A ; ‘âà ¨æ Š<>˜ = 3
|
||||
LD A,(ram_pages+3)
|
||||
OUT (PAGE1),A ; á«¥¤ãîé ï áâà ¨æ á ¤ 묨 ä ©«
|
||||
|
||||
ld h,d ; LD HL,4000h
|
||||
ld d,e ; LD DE,0000h
|
||||
LD BC,37F4h
|
||||
LDIR
|
||||
|
||||
LD HL,Reload_String ; ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-
|
||||
LD DE,3EF0h
|
||||
LD C,10h ; LD BC, 16
|
||||
LDIR
|
||||
|
||||
LD A,0FFh
|
||||
LD (3EE0h),A ; no multiple ! ¯¥à¥§ £à㧪 ⮫쪮 ®¤
|
||||
|
||||
IN A,(CASH_OFF) ; Žâª«î票¥ ªíè
|
||||
|
||||
LD A,(page1_save) ; ¢®§¢à â áâà ¨æë 1
|
||||
OUT (PAGE1),A
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
; ____ _ ____ _____ _____
|
||||
; / ___| ___| |_ | _ \| ____|_ _|
|
||||
; \___ \ / _ \ __| | |_) | _| | |
|
||||
; ___) | __/ |_ | _ <| |___ | |
|
||||
; |____/ \___|\__| |_| \_\_____| |_|
|
||||
; <09> áâனª¨ ¯¥à¥¤ à¥á¥â®¬
|
||||
; “áâ ®¢ª ¤à¥á ¢®§¢à â ¯®á«¥ reboot
|
||||
; ‘®åà ¥¨¥ ªâ¨¢ëå áâà ¨æ
|
||||
; €¤à¥á ¯à®£à ¬¬ë ¤«ï ¢®§¢à â ¢ ॣ¨áâॠDE
|
||||
|
||||
;-----------------;
|
||||
Set_Ret:
|
||||
DI
|
||||
LD A,Spec_Page
|
||||
OUT (PAGE3),A ; ®âªàëâì ᯥæ-áâà ¨æã
|
||||
LD (#FFF4),DE ; ¤à¥á ¯à®£à ¬¬ë ¯¥à¥§ ¯ãáª
|
||||
|
||||
LD A,'Z'
|
||||
LD (#FFFE),A
|
||||
LD A,'X'
|
||||
LD (#FFFF),A ; ä« £ ¯¥à¥§ ¯ãáª
|
||||
|
||||
ld A,(page0_save) ; á®åà ïâì áâà ¨æë
|
||||
LD (0FFF0h),A ; DOS-PAGE
|
||||
ld A,(page1_save)
|
||||
LD (0FFF1h),A
|
||||
ld A,(page2_save)
|
||||
LD (0FFF2h),A ; ¯à®£à ¬¬ë ¤«ï ¢®§¢à â ???
|
||||
in A,(PAGE3) ; ‘®åà 塞 ’…Š“™“ž áâà ¨æã 3
|
||||
LD (0FFF3h),A
|
||||
ld A,(page3_save) ; ‚®ááâ ¢«¨¢ ¥¬ ç «ìãî áâà ¨æã 3
|
||||
OUT (PAGE3),A
|
||||
; EI
|
||||
RET
|
||||
;*******************************************************
|
||||
|
||||
|
||||
;(.)(.) (.)(.) (.)(.) (.)(.) (.)(.) (.)(.) (.)(.)
|
||||
; <09>®¤£à㧪 ä ©« á ¯¥à¥¬¥ë¬¨, ª®áâ â ¬¨ ¨ ¡ãä¥à ¬¨:
|
||||
INCLUDE "LDconf_Consts.ASM"
|
||||
;
|
||||
the_end EQU $
|
||||
;
|
||||
IF (the_end>(ST_Point-SP_Win))
|
||||
DISPLAY "the_end = ",/H,the_end
|
||||
DISPLAY "ST_Point-SP_Win = ",/H,(ST_Point-SP_Win)
|
||||
Stack_Error 0
|
||||
ENDIF
|
||||
|
||||
IF (LastHandler=FirstHandler) or ((LastHandler-FirstHandler) > 255)
|
||||
DISPLAY "FirstHandler = ",/H,FirstHandler
|
||||
DISPLAY "LastHandler = ",/H,LastHandler
|
||||
Handler_Error 0
|
||||
ENDIF
|
||||
;(.)(.) (.)(.) (.)(.) (.)(.) (.)(.) (.)(.) (.)(.)
|
||||
588
SP2000.inc
588
SP2000.inc
@ -1,588 +0,0 @@
|
||||
/* <EFBFBD><EFBFBD>直<EFBFBD> <EFBFBD><EFBFBD>४⨢<EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.LION EQU 0
|
||||
.FLEX EQU 1
|
||||
.IBMK EQU 1
|
||||
.PROJ1 EQU 0
|
||||
.PROJ2 EQU 0
|
||||
.PROJ3 EQU 1
|
||||
.PROJ4 EQU 1
|
||||
.PAL EQU 1
|
||||
*/
|
||||
;ELCOM256 EQU 1 ; ०<EFBFBD><EFBFBD> ELCOM-256
|
||||
;IF ELCOM256 EQ 1
|
||||
|
||||
D_TBON EQU 3 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><EFBFBD> TURBO
|
||||
D_TBOFF EQU 2 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><EFBFBD> TURBO
|
||||
D_ROM16ON EQU 1
|
||||
D_ROM16OFF EQU 0
|
||||
CNF_0 EQU 04h ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⮢ 0
|
||||
CNF_1 EQU 0Ch ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⮢ 1
|
||||
CNF_2 EQU 14h ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⮢ 2
|
||||
CNF_3 EQU 1Ch ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⮢ 3
|
||||
CNF_512 EQU 80h ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><EFBFBD> Pentagon 128
|
||||
|
||||
CBL_DIR EQU 78 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ࠢ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> COVOX-Blaster
|
||||
; bit 7 - 1 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CBL
|
||||
;ELSE
|
||||
;D_TBON EQU 03h ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><EFBFBD> TURBO
|
||||
;D_TBOFF EQU 02h ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><EFBFBD> TURBO
|
||||
;D_ROM16ON EQU 40h
|
||||
;D_ROM16OFF EQU 00h
|
||||
;CNF_0 EQU 04h
|
||||
;CNF_1 EQU 0Ch
|
||||
;CNF_2 EQU 14h
|
||||
;CNF_3 EQU 1Ch
|
||||
;ENDIF
|
||||
|
||||
SPRINTER EQU 4 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> !!!
|
||||
ISD_WARM EQU 3
|
||||
ISD_COLD EQU 0
|
||||
IS_KEY EQU 40h ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> IS-DOS
|
||||
IS_RAM_ADR EQU 5BC0h ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> IS-DOS
|
||||
TB_WAITES EQU 00H ; WAIT<EFBFBD> <EFBFBD><EFBFBD><EFBFBD> TURBO-MODE
|
||||
NTB_WAITES EQU 00H ; WAIT<EFBFBD> <EFBFBD><EFBFBD><EFBFBD> neTURBO-MODE
|
||||
IS_WAITES EQU 00H ; WAIT<EFBFBD> <EFBFBD><EFBFBD><EFBFBD> IS-DOS
|
||||
;****************************************
|
||||
;SYS_PORT_ON EQU 07DH
|
||||
;SYS_PORT_OFF EQU 03DH
|
||||
SYS_PORT_ON EQU 07CH
|
||||
SYS_PORT_OFF EQU 03CH
|
||||
|
||||
CASH_ON EQU #FB ;<3B><><EFBFBD><EFBFBD>祭<EFBFBD><E7A5AD> <20><><EFBFBD><EFBFBD> IN A,(CASH_ON)
|
||||
CASH_OFF EQU #7B ;<3B>⪫<EFBFBD>祭<EFBFBD><E7A5AD> <20><><EFBFBD><EFBFBD> IN A,(CASH_OFF)
|
||||
CASH_PAGE EQU #5C ;<3B><>४<EFBFBD><E0A5AA>祭<EFBFBD><E7A5AD> <20><>࠭<EFBFBD><E0A0AD> <20><><EFBFBD><EFBFBD>
|
||||
|
||||
PAL_V_PAGE EQU 09EH
|
||||
PAL_SCP EQU 01EH
|
||||
|
||||
CNF_PAGE EQU 040H ; <EFBFBD><EFBFBD>࠭<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⮢
|
||||
SYS_PAGE EQU 0FEH
|
||||
MODE_PAGE EQU 0FCH
|
||||
;SCR_PAGE EQU 0FDH
|
||||
;PAL_PAGE EQU 0FDH
|
||||
|
||||
KBD_COM EQU 1Bh
|
||||
KBD_DAT EQU 1Ah
|
||||
|
||||
COM_B EQU 1Bh
|
||||
DAT_B EQU 1Ah
|
||||
COM_A EQU 19h
|
||||
DAT_A EQU 18h
|
||||
|
||||
LPT1_D EQU 1CH
|
||||
LPT1_C EQU 1DH
|
||||
LPT2_D EQU 1EH
|
||||
LPT2_C EQU 1FH
|
||||
|
||||
STC0_C EQU 10H
|
||||
STC1_C EQU 11H
|
||||
STC2_C EQU 12H
|
||||
STC3_C EQU 13H
|
||||
|
||||
RAMD_LET EQU ('R' - 'A')
|
||||
|
||||
P_KBD_OUT EQU 0F8H
|
||||
P_KBD_IN EQU 0FEH
|
||||
;***************************************
|
||||
;HD_HEADS EQU 5
|
||||
HD_CS EQU 0A0H
|
||||
|
||||
;HD_S_P_T EQU 17
|
||||
;HD_S_X_H EQU (HD_S_P_T * HD_HEADS) ; ??? <EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD> 樫<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
P_DATS EQU 050H ; READ/WRITE INIR/OTIR
|
||||
|
||||
P_ERR EQU 051H ; READ
|
||||
P_PREC EQU 151H ; WRITE
|
||||
|
||||
P_S_CNT EQU 152H ;
|
||||
P_S_NUM EQU 153H
|
||||
P_C_LOW EQU 154H
|
||||
P_C_HIG EQU 155H ;<-\
|
||||
P_HD_CS EQU 4152H ;<-/
|
||||
|
||||
P_HDST EQU 4053H ; READ
|
||||
P_CMD EQU 4153H ; WRITE
|
||||
|
||||
P_HD3F6 EQU 4154H ; WRITE 3F6
|
||||
P_HD3F7 EQU 4055H ; READ 3F7
|
||||
|
||||
;***************************************
|
||||
CMOS_DRD EQU 0FFBDh
|
||||
CMOS_DWR EQU 0BFBDh
|
||||
CMOS_AWR EQU 0DFBDh
|
||||
ISA_PORT EQU 09FBDh
|
||||
|
||||
;***************************************
|
||||
SEC_SIZE EQU 11
|
||||
CLAST_SIZE EQU 13
|
||||
RESERV_SECS EQU 14
|
||||
FATS_NUM EQU 16
|
||||
FLS_NUM EQU 17
|
||||
S_P_D EQU 19
|
||||
FORM_CODE EQU 21
|
||||
S_P_F EQU 22
|
||||
S_P_T EQU 24
|
||||
H_P_S EQU 26
|
||||
SPECIAL_SECS EQU 28
|
||||
FAT_ID EQU 36H
|
||||
;***************************************
|
||||
|
||||
SYSTEM_ID EQU 0C020H
|
||||
|
||||
SYS_SP EQU 0C0FEH ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
DISK_TYPE EQU 0C100H ; <EFBFBD><EFBFBD>ॠ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>
|
||||
COPY_PAGE0 EQU 0C104H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⮢ <EFBFBD><EFBFBD>࠭<EFBFBD><EFBFBD>
|
||||
COPY_PAGE1 EQU 0C105H
|
||||
COPY_PAGE2 EQU 0C106H
|
||||
COPY_PAGE3 EQU 0C107H
|
||||
RAMD_VARS EQU 0C108H ; <EFBFBD><EFBFBD>६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> RAM-<EFBFBD><EFBFBD><EFBFBD>
|
||||
A_RAMD_VARS EQU 0C118H ; ⥪<EFBFBD>騩 RAM-Disk
|
||||
SP_SAVE EQU 0C11AH ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>࠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>⥪<EFBFBD>
|
||||
ERR_SAVE EQU 0C11CH
|
||||
COPY_RGADR EQU 0C11DH
|
||||
RAM_MSD EQU 0C11EH ; <EFBFBD><EFBFBD>࠭<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> ࠡ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD> MS-DOS
|
||||
MSD_SECS EQU 0C11FH ; <EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD> <EFBFBD> MS-DOS
|
||||
MSD_NAME EQU 0C120H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<EFBFBD><EFBFBD>
|
||||
;MSD_FAT_SEC EQU 0C122H ; <EFBFBD><EFBFBD>砫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD> FAT
|
||||
INT_ADRESS EQU 0C124H ; <EFBFBD><EFBFBD>砫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD> CAT
|
||||
INT_PAGE EQU 0C126H ; <EFBFBD><EFBFBD>砫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD> DAT
|
||||
DS_1440 EQU 0C128H ; 䫠<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>४<EFBFBD><EFBFBD>祭<EFBFBD><EFBFBD> 720/1440
|
||||
F_P_S EQU 0C129H ; <EFBFBD><EFBFBD> 䠩<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᥩ <EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
S_P_C EQU 0C12AH ; <EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>⠫<EFBFBD><EFBFBD><EFBFBD>
|
||||
COUNT_FL EQU 0C12BH ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD>稪 䠩<EFBFBD><EFBFBD><EFBFBD> <EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
COUNT_SEC EQU 0C12CH ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD>稪 ᥪ<EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD>⠫<EFBFBD><EFBFBD><EFBFBD>
|
||||
C_P_B EQU 0C12DH ; <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>
|
||||
;CLASTER_LEN EQU 0C12EH ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
FAT_FLAG EQU 0C130H ; FAT 䫠<EFBFBD> + FAT sector
|
||||
MSD_CONT_SEC EQU 0C132H ; ⥪<EFBFBD>騩 ᥪ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> MS-DOS
|
||||
MSD_CONT_SEC2 EQU 0C134H
|
||||
S_X_H EQU 0C136H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ ᥪ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD> 樫<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CONFIG_ALL EQU 0C138H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥫<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>䨣<EFBFBD><EFBFBD><EFBFBD>樨
|
||||
CONFIG_DE EQU 0C13AH ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥫<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>䨣<EFBFBD><EFBFBD><EFBFBD>樨
|
||||
CONFIG_BYTE EQU 0C13EH ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>䨣<EFBFBD><EFBFBD><EFBFBD>樨
|
||||
|
||||
WIN_MAP_SC EQU 0C140H
|
||||
WIN_TAB_SC EQU 0C142H
|
||||
WIN_SAV_HL EQU 0C144H
|
||||
WIN_SAV_DE EQU 0C146H
|
||||
WIN_SAV_BC EQU 0C148H
|
||||
WIN_ZG EQU 0C14AH
|
||||
WIN_PLACE_WIN EQU 0C14CH
|
||||
WIN_GR_MAP EQU 0C14EH
|
||||
|
||||
SYS_WORK1 EQU 0C150H
|
||||
SYS_WORK2 EQU 0C152H
|
||||
SYS_WORK3 EQU 0C154H
|
||||
SYS_WORK4 EQU 0C156H
|
||||
|
||||
WIN_MAP_LAB1 EQU 0C158H
|
||||
WIN_MODE_SH EQU 0C15CH
|
||||
WIN_MODE_SC EQU 0C15EH
|
||||
|
||||
MSD_FAT_SEC EQU 0C160H ; <EFBFBD><EFBFBD>砫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD> FAT
|
||||
MSD_FAT_SEC2 EQU 0C162H ; <EFBFBD><EFBFBD>砫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD> FAT
|
||||
MSD_CAT_SEC EQU 0C164H ; <EFBFBD><EFBFBD>砫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD> CAT
|
||||
MSD_CAT_SEC2 EQU 0C166H ; <EFBFBD><EFBFBD>砫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD> CAT
|
||||
MSD_DAT_SEC EQU 0C168H ; <EFBFBD><EFBFBD>砫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD> DAT
|
||||
MSD_DAT_SEC2 EQU 0C16AH ; <EFBFBD><EFBFBD>砫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᥪ<EFBFBD><EFBFBD><EFBFBD> DAT
|
||||
CLASTER_LEN EQU 0C16CH ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CLASTER_LEN2 EQU 0C16EH ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
;CMOS_FLAG_1 EQU 0C170H
|
||||
|
||||
GR_BIT_END EQU 7
|
||||
|
||||
S_BIT_END EQU 7
|
||||
S_BIT_LIN EQU 6
|
||||
S_BIT_MOD EQU 5
|
||||
|
||||
BIT_1440 EQU 1
|
||||
BIT_MASK_1440 EQU 00000010B
|
||||
|
||||
RAMD_KEYS EQU 0C180H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> RAM-Disks
|
||||
RAMD_KEY_NUM EQU 16
|
||||
|
||||
LIB_TABLE EQU 0C1A0H ; ⠡<EFBFBD><EFBFBD><EFBFBD><EFBFBD> librares 32 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
; +0 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD> DOS
|
||||
|
||||
HDD_INI_TABLE EQU 0C1C0H ; ⠡<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> ide <EFBFBD><EFBFBD><EFBFBD>ன<EFBFBD><EFBFBD><EFBFBD> 32 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
; 0 - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> DRV_HEAD
|
||||
; 1 - ᥪ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
; 2 - <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
; 3 - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ 樫<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>.
|
||||
; 4 - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ 樫<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>訩.
|
||||
; 5 - ᥪ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD> 樫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>.
|
||||
; 6 - ᥪ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD> 樫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
; 7 - reserv - type
|
||||
|
||||
FDD_INI_TABLE EQU 0C1E0H ; ⠡<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> FDD <EFBFBD><EFBFBD><EFBFBD>ன<EFBFBD><EFBFBD><EFBFBD> 32 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
RAMD_FAT EQU 0C200H ; <EFBFBD><EFBFBD>ᯮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> RAM-Disk-<EFBFBD><EFBFBD>
|
||||
|
||||
MS_BPB EQU 0C400H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> BPB
|
||||
MS_DIR EQU 0C800H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> DIR sector
|
||||
MS_FAT EQU 0CC00H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FAT sector
|
||||
MS_BUF EQU 0D000H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> DAT sector
|
||||
HD_IDF_ADR EQU 0C600H
|
||||
|
||||
|
||||
WIN_MAP_IX EQU 0E000H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
TASK_DATA EQU 0EC00H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
; ***** - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - *****
|
||||
|
||||
WIN_SIZE_H EQU 0 ; <EFBFBD><EFBFBD>ਧ<EFBFBD><EFBFBD>⠫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ࠧ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
WIN_SIZE_V EQU 1 ; <EFBFBD><EFBFBD><EFBFBD>⨪<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ࠧ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
WIN_PLACE_H EQU 2 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ਧ<EFBFBD><EFBFBD>ࠫ<EFBFBD>, <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
WIN_PLACE_V EQU 3 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⨪<EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
WIN_MODE EQU 4 ; ०<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
WIN_MODE_S EQU 5 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ०<EFBFBD><EFBFBD>
|
||||
; <EFBFBD><EFBFBD><EFBFBD> 0 - Sp-SCR,
|
||||
WIN_GR_X EQU 6 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> X <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>䨪<EFBFBD> (<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
WIN_GR_Y EQU 7 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> Y <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>䨪<EFBFBD> (<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
|
||||
WIN_HL EQU 8 ; <EFBFBD><EFBFBD><EFBFBD>࠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD> HL
|
||||
WIN_BC EQU 10 ; <EFBFBD><EFBFBD><EFBFBD>࠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD> BC
|
||||
WIN_DE EQU 12 ; <EFBFBD><EFBFBD><EFBFBD>࠭<EFBFBD><EFBFBD><EFBFBD><EFBFBD> DE
|
||||
WIN_V_BEG EQU 14 ; <EFBFBD><EFBFBD>砫<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⨪<EFBFBD><EFBFBD><EFBFBD>
|
||||
WIN_V_END EQU 15 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>⨪<EFBFBD><EFBFBD><EFBFBD>
|
||||
WIN_H_BEG EQU 16 ; <EFBFBD><EFBFBD>砫<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ਧ<EFBFBD><EFBFBD>⠫<EFBFBD>
|
||||
WIN_H_END EQU 17 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ਧ<EFBFBD><EFBFBD>⠫<EFBFBD>
|
||||
WIN_SIZE_REL EQU 18 ; ॠ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ࠧ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD> ᨬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
WIN_MODE_E EQU 19 ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥫<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ०<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>࠭<EFBFBD>
|
||||
WIN_WORK_1 EQU 20 ; ࠡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1
|
||||
WIN_WORK_2 EQU 21 ; ࠡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2
|
||||
WIN_GRAF_X EQU 24 ; <EFBFBD><EFBFBD>砫쭠<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>न<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> X
|
||||
WIN_GRAF_Y EQU 26 ; <EFBFBD><EFBFBD>砫쭠<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>न<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> Y
|
||||
|
||||
USER_VARS EQU 0F000h ; <EFBFBD><EFBFBD>६<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>짮<EFBFBD><EFBFBD>⥫<EFBFBD><EFBFBD>
|
||||
|
||||
;SW_ROM EQU 3CF9H
|
||||
|
||||
; IF .PROJ4
|
||||
;RGADR EQU 0D0H
|
||||
;RGSCR EQU 0D1H
|
||||
;RGMOD EQU 0D2H
|
||||
;RGACC EQU 0D3H
|
||||
;PGACC EQU 0FCH
|
||||
|
||||
;PAGE0 EQU 0C0H
|
||||
;PAGE1 EQU 0C5H
|
||||
;PAGE2 EQU 0C2H
|
||||
;PAGE3 EQU 0C0H
|
||||
|
||||
; ELSE
|
||||
|
||||
; ENDIF
|
||||
|
||||
PAGE0 EQU 082H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0
|
||||
PAGE1 EQU 0A2H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1
|
||||
PAGE2 EQU 0C2H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2
|
||||
PAGE3 EQU 0E2H ; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 3
|
||||
|
||||
;RGADR EQU 089H
|
||||
;RGSCR EQU 0A9H
|
||||
;RGMOD EQU 099H
|
||||
;RGACC EQU 0B9H
|
||||
PORT_Y EQU 089H
|
||||
RGADR EQU 089H
|
||||
RGSCR EQU 0E9H
|
||||
RGMOD EQU 0C9H
|
||||
;RGACC EQU 0A9H
|
||||
;PGACC EQU 0FCH
|
||||
CNF_PORT EQU 7Ch
|
||||
|
||||
ALTERA EQU 1400H
|
||||
|
||||
WG_COM EQU 00FH
|
||||
WG_TRK EQU 03FH
|
||||
WG_SEC EQU 05FH
|
||||
WG_DATA EQU 07FH
|
||||
P_DOS_FF EQU 0FFH
|
||||
|
||||
BUFER_RD EQU 5D25H
|
||||
|
||||
PR_BUFER EQU 05B00H
|
||||
AUTO_5B08 EQU 05B08H
|
||||
AUTO_5B5C EQU 05B5CH
|
||||
COPY_P128 EQU 05B5CH
|
||||
AUTO_5BFF EQU 05BFFH
|
||||
K_STATE EQU 05C00H
|
||||
KEY_TIME EQU 05C09H
|
||||
REP_K_TYME EQU 05C10H
|
||||
ZG EQU 05C36H
|
||||
ERR_BEEP EQU 05C38H
|
||||
KEY_BEEP EQU 05C39H
|
||||
ERR_NR EQU 05C3AH
|
||||
FLAGS EQU 05C3BH
|
||||
TV_FLAG EQU 05C3CH
|
||||
ERR_SP EQU 05C3DH
|
||||
LIST_SP EQU 05C3FH
|
||||
MODE EQU 05C41H
|
||||
NEW_PPC EQU 05C42H
|
||||
NEW_S_PPC EQU 05C44H
|
||||
PPC EQU 05C45H
|
||||
SUB_PPC EQU 05C47H
|
||||
BORDER EQU 05C48H
|
||||
EDIT_PPC EQU 05C49H
|
||||
BAS_VARS EQU 05C4BH
|
||||
WORK_VAR EQU 05C4DH
|
||||
CHANS EQU 05C4FH
|
||||
CUR_CHL EQU 05C51H
|
||||
BAS_PROG EQU 05C53H
|
||||
NEXT_LINE EQU 05C55H
|
||||
DATA_ADR EQU 05C57H
|
||||
E_LINE EQU 05C59H
|
||||
K_CUR EQU 05C5BH
|
||||
CH_ADR EQU 05C5DH
|
||||
SINT_ER_AD EQU 05C5FH
|
||||
WORK_SP EQU 05C61H
|
||||
STK_BOT EQU 05C63H
|
||||
STK_END EQU 05C65H
|
||||
B_REG EQU 05C67H
|
||||
MEM_CALC EQU 05C68H
|
||||
FLAGS_2 EQU 05C6AH
|
||||
L_SCR_SIZE EQU 05C6BH
|
||||
AUTO_LST_L EQU 05C6CH
|
||||
OLD_PPC EQU 05C6EH
|
||||
OLD_S_PPC EQU 05C70H
|
||||
FLG_INPUT EQU 05C71H
|
||||
S_VAR_LEN EQU 05C72H
|
||||
SINT_TB_ADR EQU 05C74H
|
||||
RAND_SEED EQU 05C76H
|
||||
FRAMES EQU 05C78H
|
||||
UDG EQU 05C7BH
|
||||
X_Y_COORD EQU 05C7DH
|
||||
PRN_POS EQU 05C7FH
|
||||
ADR_PR_BUF EQU 05C80H
|
||||
ECHO_E EQU 05C82H
|
||||
SCR_PL_M EQU 05C84H
|
||||
SCR_PL_L EQU 05C86H
|
||||
SCR_POS_M EQU 05C88H
|
||||
SCR_POS_L EQU 05C8AH
|
||||
SCROLL_ST EQU 05C8CH
|
||||
ATTR_P EQU 05C8DH
|
||||
MASK_P EQU 05C8EH
|
||||
ATTR_T EQU 05C8FH
|
||||
MASK_E EQU 05C90H
|
||||
FLAGS_ATR EQU 05C91H
|
||||
MEM_BOT EQU 05C92H
|
||||
AUTO_5C9A EQU 05C9AH
|
||||
NMI_ADR EQU 05CB0H
|
||||
TOP_CLEAR EQU 05CB2H
|
||||
P_RAMTOP EQU 05CB4H
|
||||
BEG_ADRESS EQU 05CB6H
|
||||
RET_INS EQU 05CC2H
|
||||
AUTO_5CC3 EQU 05CC3H
|
||||
DISK_A EQU 05CC8H
|
||||
DISK_B EQU 05CC9H
|
||||
DISK_C EQU 05CCAH
|
||||
DISK_D EQU 05CCBH
|
||||
CAT_SEC EQU 05CCCH
|
||||
DRV_READY EQU 05CCDH
|
||||
RD_WR_COM EQU 05CCEH
|
||||
VAR_1 EQU 05CCFH
|
||||
AUTO_5CD1 EQU 05CD1H
|
||||
AUTO_5CD2 EQU 05CD2H
|
||||
AUTO_5CD3 EQU 05CD3H
|
||||
AUTO_5CD5 EQU 05CD5H
|
||||
DOS_ERROR EQU 05CD6H
|
||||
MED_START EQU 05CD7H
|
||||
DOS_CH_ADR EQU 05CD9H
|
||||
MED_LEN EQU 05CDBH
|
||||
FL_NAME EQU 05CDDH
|
||||
FL_N_2 EQU 05CDFH
|
||||
FL_N_4 EQU 05CE1H
|
||||
FL_N_6 EQU 05CE3H
|
||||
FL_N_7 EQU 05CE4H
|
||||
FL_TYPE EQU 05CE5H
|
||||
FL_START EQU 05CE6H
|
||||
|
||||
FL_LEN EQU 05CE8H
|
||||
START_CLASTER EQU FL_LEN
|
||||
|
||||
FL_SIZE EQU 05CEAH
|
||||
FL_PLACE EQU 05CEBH
|
||||
VAR_2 EQU 05CEDH
|
||||
INTERF_I EQU 05CEFH
|
||||
VAR_2_0 EQU 05CF1H
|
||||
VAR_2_1 EQU 05CF2H
|
||||
CONT_SEC EQU 05CF4H
|
||||
CONT_TRK EQU 05CF5H
|
||||
OPER_DISK EQU 05CF6H
|
||||
DOS_FLAG EQU 05CF7H
|
||||
DISK_1_FLG EQU 05CF8H
|
||||
DISK_2_FLG EQU 05CF9H
|
||||
TIME_A EQU 05CFAH
|
||||
TIME_B EQU 05CFBH
|
||||
TIME_C EQU 05CFCH
|
||||
TIME_D EQU 05CFDH
|
||||
COMAND_WG EQU 05CFEH
|
||||
SEC_NUM EQU 05CFFH
|
||||
CONT_BUF_ADR EQU 05D00H
|
||||
WORK_2 EQU 05D02H
|
||||
WORK_4 EQU 05D04H
|
||||
S_NAME_NUM EQU 05D06H
|
||||
N_DEL_FLS EQU 05D07H
|
||||
FST_SYM_NAME EQU 05D08H
|
||||
VAR_3 EQU 05D09H
|
||||
BUF_FLAG EQU 05D0CH
|
||||
BAS_DOS_FLG EQU 05D0EH
|
||||
DOS_ERR_2 EQU 05D0FH
|
||||
ERR_3D00 EQU 05D10H
|
||||
ADR_DOS_COM EQU 05D11H
|
||||
ERR_SP_COPY EQU 05D13H
|
||||
MSG_FLAG EQU 05D15H
|
||||
PDOS_COPY EQU 05D16H
|
||||
FLAG_BOOT EQU 05D17H
|
||||
INT_1_VAR EQU 05D18H
|
||||
CONT_DISK EQU 05D19H
|
||||
ADR_RET EQU 05D1AH
|
||||
DOS_SP EQU 05D1CH
|
||||
FL_NUMBER EQU 05D1EH
|
||||
COM_LN_COPY EQU 05D20H
|
||||
L_5D23 EQU 05D23H
|
||||
BUFER EQU 05D25H
|
||||
AUTO_5D33 EQU 05D33H
|
||||
CLEAR_SEC EQU 05E06H
|
||||
CLEAR_TRK EQU 05E07H
|
||||
TYPE_DISK EQU 05E08H
|
||||
N_FILES EQU 05E09H
|
||||
FREE_SEC EQU 05E0AH
|
||||
CODE_10H EQU 05E0CH
|
||||
DISK_MRK_1 EQU 05E0FH
|
||||
DISK_ALT_NM EQU 05E10H
|
||||
N_DEL_FL EQU 05E19H
|
||||
DISK_NAME EQU 05E1AH
|
||||
|
||||
|
||||
|
||||
;RET_PAGE0 MACRO
|
||||
; LD A,0
|
||||
; OUT (PAGE0),A
|
||||
; ENDM
|
||||
;RET_PAGE1 MACRO
|
||||
; LD A,5
|
||||
; OUT (PAGE1),A
|
||||
; ENDM
|
||||
;RET_PAGE2 MACRO
|
||||
; LD A,2
|
||||
; OUT (PAGE2),A
|
||||
; ENDM
|
||||
;
|
||||
MACRO RET_PAGE3
|
||||
LD A, 0
|
||||
OUT (PAGE3), A
|
||||
ENDM
|
||||
;
|
||||
MACRO DSS adr, dt
|
||||
IF (adr >= $)
|
||||
DUP ((adr - $) / 16)
|
||||
DB dt,dt,dt,dt,dt,dt,dt,dt,dt,dt,dt,dt,dt,dt,dt,dt
|
||||
EDUP
|
||||
DUP (adr - $)
|
||||
DB dt
|
||||
EDUP
|
||||
ELSE
|
||||
ASSERT 0, "Error memory relocation."
|
||||
ENDIF
|
||||
ENDM
|
||||
|
||||
MACRO CALL_48 adr
|
||||
LOCAL ADR_R
|
||||
PUSH HL
|
||||
LD HL, ADR_R
|
||||
PUSH HL
|
||||
LD HL, SW_ROM
|
||||
PUSH HL
|
||||
LD HL, adr
|
||||
JP JP_HL_48
|
||||
ADR_R: POP HL
|
||||
ENDM
|
||||
|
||||
MACRO CALL_48X adr
|
||||
LOCAL ADR_R
|
||||
PUSH HL
|
||||
LD HL, ADR_R
|
||||
EX (SP), HL
|
||||
PUSH HL
|
||||
LD HL, SW_ROM
|
||||
EX (SP), HL
|
||||
PUSH HL
|
||||
LD HL, adr
|
||||
EX (SP), HL
|
||||
JP SW_ROM
|
||||
ADR_R:
|
||||
ENDM
|
||||
|
||||
MACRO RAMD_KEY
|
||||
SUB 4
|
||||
DI
|
||||
LD B, SYS_PAGE
|
||||
LD C, PAGE3
|
||||
OUT (C), B
|
||||
LD HL, RAMD_KEYS
|
||||
ADD A, L
|
||||
LD L, A
|
||||
DEC L
|
||||
LD (A_RAMD_VARS), HL
|
||||
INC L
|
||||
LD L, (HL)
|
||||
RET_PAGE3
|
||||
EI
|
||||
LD A, L
|
||||
ENDM
|
||||
|
||||
|
||||
|
||||
|
||||
; <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD> Sprinter. (<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> PORT_X)<<
|
||||
; 0 - port FF<<
|
||||
; 1 - port keyboard<<
|
||||
; 2 - port BORDER<<
|
||||
; 3 - port 1FFDh<<
|
||||
; 4 - port 7FFDh<<
|
||||
; 5 - port 3FFDh<<
|
||||
; 6 - port Start-ROM<<
|
||||
; 7 - port Start-ROM-ALT<<
|
||||
; 8 - port ROM-BASIC48<<
|
||||
; 9 - port ROM-BASIC128<<
|
||||
; 10 - port ROM-TR-DOS<<
|
||||
; 11 - port ROM-EXPANSION<<
|
||||
; 12 - port ROM-BASIC48-ALT<<
|
||||
; 13 - port ROM-BASIC128-ALT<<
|
||||
; 14 - port ROM-TR-DOS-ALT<<
|
||||
; 15 - port ROM-EXPANSION-ALT<<
|
||||
; 16 Ŀ<<
|
||||
; .. Ĵ<<
|
||||
; 31 <EFBFBD><EFBFBD><EFBFBD>ports RAM-PAGES - <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD> 㪠<EFBFBD>뢠<EFBFBD>騥, <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><<
|
||||
; <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢥ <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0..F <EFBFBD> <EFBFBD><EFBFBD><EFBFBD>䨣<EFBFBD>p<EFBFBD>樨 Scorpion.<<
|
||||
; 33 - port RAM-0 <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砥<EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD>㫥<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>p<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>p<EFBFBD><<
|
||||
; 34 - port RAM-5 <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砥<EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>p<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>p<EFBFBD><<
|
||||
; 35 - port RAM-2 <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>砥<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>p<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>p<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>p<EFBFBD><<
|
||||
; 36 - port CONFIG<<
|
||||
; 37 - port COVOX-1<<
|
||||
; 38 - port COVOX-2<<
|
||||
; 39 - port AY-3-8910-adr<<
|
||||
; 40 - port AY-3-8910-dat<<
|
||||
; 41 - port KEMPSTON<<
|
||||
; 42 - port ISA-interface<<
|
||||
; 43 Ŀreserv<<
|
||||
; .. Ĵ<<
|
||||
; 47 <EFBFBD><EFBFBD><<
|
||||
; 48 - 51 <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>93<<
|
||||
; 52 - <EFBFBD><EFBFBD>p<EFBFBD> DOS-1<<
|
||||
; 53 - <EFBFBD><EFBFBD>p<EFBFBD> DOS-2<<
|
||||
; 54 Ŀ <EFBFBD><EFBFBD>㦥<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD><<
|
||||
; .. Ĵ<<
|
||||
; 63 <EFBFBD><EFBFBD><<
|
||||
; 64 Ŀ <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD> IDE interface<<
|
||||
; .. Ĵ<<
|
||||
; 79 <EFBFBD><EFBFBD><<
|
||||
; 80..127 - p<EFBFBD><EFBFBD><EFBFBD>p<EFBFBD>.<<
|
||||
; 128..143 - <EFBFBD><EFBFBD>p<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䨪<EFBFBD><EFBFBD><EFBFBD>p<EFBFBD> <EFBFBD><EFBFBD>設<EFBFBD> ( ⮫쪮 <EFBFBD><EFBFBD><EFBFBD> <EFBFBD>⥭<EFBFBD><EFBFBD>.)<<
|
||||
; 144..254 - p<EFBFBD><EFBFBD><EFBFBD>p<EFBFBD><<
|
||||
; 255 - <EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<EFBFBD><EFBFBD>p<EFBFBD> - <EFBFBD>⪫<EFBFBD>祭<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ﭨ<EFBFBD>.<<
|
||||
;
|
||||
@ -1 +1 @@
|
||||
Subproject commit 9a65a386bfb6aaccc7fb476a3e159a684af65743
|
||||
Subproject commit 8c5550f810d173790e4665d610328b9247b00f02
|
||||
Loading…
Reference in New Issue
Block a user