мелочёвка

This commit is contained in:
Tolik Trek 2026-02-26 21:14:23 +10:00
parent 63aa9fdb09
commit 7348cd6bd2
3 changed files with 67 additions and 83 deletions

View File

@ -7,7 +7,8 @@ Help_Msg: DB 13,10
DB 'c - ¯®á«¥ í⮣® ª«îç  ¤®«¦¥­ ¨¤â¨ ä ©« ª®­äë',13,10 DB 'c - ¯®á«¥ í⮣® ª«îç  ¤®«¦¥­ ¨¤â¨ ä ©« ª®­äë',13,10
DB 'e - EXE ä ©« ¤«ï § ¯ã᪠ ¯®á«¥ à¥á¥â  ¢ ª®­äã',13,10 DB 'e - EXE ä ©« ¤«ï § ¯ã᪠ ¯®á«¥ à¥á¥â  ¢ ª®­äã',13,10
DB 'x - ­¥ ¯à®¢¥àïâì ä ©« ª®­äë ­  ¢ «¨¤­®áâì § £®«®¢ª  ¨ à §¬¥à',13,10 DB 'x - ­¥ ¯à®¢¥àïâì ä ©« ª®­äë ­  ¢ «¨¤­®áâì § £®«®¢ª  ¨ à §¬¥à',13,10
DB 'l - בגא ט­כ© ׫מח, § «¨ג ן ×®­ה  ®בג ­¥גבן ₪® ¯¥א¥§ «¨¢×¨ ¨«¨ ¢כ׫מח¥­¨ן <20><>',13,10,13,10 ;DB 'l - בגא ט­כ© ׫מח, § «¨ג ן ×®­ה  ®בג ­¥גבן ₪® ¯¥א¥§ «¨¢×¨ ¨«¨ ¢כ׫מח¥­¨ן <20><>',13,10
DB 13,10
DB '…᫨ 㪠§ ­® ⮫쪮 ¨¬ï ª®­äë, â®: § £à㧪  ª®­äë -> à¥á¥â ->',13,10 DB '…᫨ 㪠§ ­® ⮫쪮 ¨¬ï ª®­äë, â®: § £à㧪  ª®­äë -> à¥á¥â ->',13,10
DB '¢®ááâ ­®¢«¥­¨¥ ¤¥ä®«â­®© ª®­äë -> à¥á¥â -> ¢ë室. <20>®ª  â ª.',13,10,13,10 DB '¢®ááâ ­®¢«¥­¨¥ ¤¥ä®«â­®© ª®­äë -> à¥á¥â -> ¢ë室. <20>®ª  â ª.',13,10,13,10
DB '<27>ணࠬ¬  ¡ë«  § ç¥¬-â® ­ ¯¨á ­  €­ â®«¨¥¬ <20>¥«ï­áª¨¬. ',13,10 DB '<27>ணࠬ¬  ¡ë«  § ç¥¬-â® ­ ¯¨á ­  €­ â®«¨¥¬ <20>¥«ï­áª¨¬. ',13,10

View File

@ -12,7 +12,7 @@
; |_| |_| ; |_| |_|
;----------------------------------------------------------------------; ;----------------------------------------------------------------------;
; ‚¥àá¨ï ¯à®£¨ ¨ ¨­ä® ¤«ï ¯®­â®¢: ; ‚¥àá¨ï ¯à®£¨ ¨ ¨­ä® ¤«ï ¯®­â®¢:
DEFINE Ver_ID "0.4 alpha" DEFINE Ver_ID "0.5 beta"
DEFINE e_mail "Tolik.Trek@gmail.com" DEFINE e_mail "Tolik.Trek@gmail.com"
; <09>®¤£à㧪  ä ©«  á ª®­áâ ­â ¬¨ BIOS ¨ DSS: ; <09>®¤£à㧪  ä ©«  á ª®­áâ ­â ¬¨ BIOS ¨ DSS:
@ -25,16 +25,9 @@
LD C,Dss.PChars LD C,Dss.PChars
RST ToDSS RST ToDSS
ENDM ENDM
MACRO iDontKnow
;-----------------;
; LD A,3 ; ãáâ ­®¢ª  ¢­ãâà.¯®à⮢ Z84C15 ¤«ï ¯¥à¥§ £à㧪¨
; OUT (#EE),A
; OUT (#EF),A ; CASH & ROM
;-----------------;
ENDM
;----------------------------------------------------------------------; ;----------------------------------------------------------------------;
stack_point EQU #BFFE ;  ¤à¥á á⥪  DEFINE App_EXE_Version 1
stack_point EQU #C000 ;  ¤à¥á á⥪ 
SP_Win EQU 64 ; ¬­¨¬ë© ª®­âà®«ì ¯¥à¥á¥ç¥­¨ï á⥪  á ª®¤®¬ SP_Win EQU 64 ; ¬­¨¬ë© ª®­âà®«ì ¯¥à¥á¥ç¥­¨ï á⥪  á ª®¤®¬
org_addr EQU #8000 + CLP_Buffer ;  ¤à¥á ª®¬¯¨«ï樨. org_addr EQU #8000 + CLP_Buffer ;  ¤à¥á ª®¬¯¨«ï樨.
program_start EQU START program_start EQU START
@ -80,7 +73,7 @@ START:
;-----------------; ‘®å࠭塞 ­ áâனª¨ íªà ­  ;-----------------; ‘®å࠭塞 ­ áâனª¨ íªà ­ 
PUSH IX PUSH IX
LD C,51h LD C,Dss.GetVMod
RST ToDSS RST ToDSS
POP IX POP IX
JP NC,1f JP NC,1f
@ -157,17 +150,6 @@ START:
;-----------------; ¥á«¨ ­®à¬. § ¢¥à襭¨¥ Load_conf ;-----------------; ¥á«¨ ­®à¬. § ¢¥à襭¨¥ Load_conf
1: 1:
;
;LD DE,ReloadRET ; €¤à¥á އ<E280A1>€ ¯®á«¥ ¯¥à¥§ £à㧪¨
;LD (SP_Save),SP ; á®å࠭塞 á⥪
;CALL Set_Ret ; ãáâ ­®¢ª  ¤ ­­ëå ¤«ï ¢®§¢à â 
;
;CALL Set_Acex_Data ; ¯¥à¥£à㧪  ¤ ­­ëå ACEX ¢ FAST-RAM
; <20>®á«¥ í⮩ ¯à®æ¥¤ãàë å¨âன ^^^^^^ ­ ç¨­ îâáï £«îª¨
; á ¢ë§®¢®¬ ¯à®æ¥¤ãà DSS. —ñâ ®­  â ¬ ¬ã¤à¨â á ¯®àâ ¬¨
; ¨«¨ á ¯ ¬ïâìî, ­¥ à §®¡à «áï. <20>®í⮬㠯®á«¥ ­¥ñ «ãçè¥
; áà §ã ¢ à¥á¥â á £®«®¢®© ¨ ­¥ ¯ à¨âìáï...
LD A,(ram_blk_id) LD A,(ram_blk_id)
LD B,A LD B,A
LD A,#FE LD A,#FE
@ -224,7 +206,7 @@ ReloadRET: DI
;-----------------; ;-----------------;
;-----------------; ;-----------------;
1: DI 1: ;DI
LD A,(a_key) ; ‚ë室 ¡¥§ ¢®ááâ ­®¢«¥­¨ï ¤¥ä®«â­®© ª®­äë? LD A,(a_key) ; ‚ë室 ¡¥§ ¢®ááâ ­®¢«¥­¨ï ¤¥ä®«â­®© ª®­äë?
AND A AND A
@ -302,15 +284,15 @@ NextReloadRET:
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 ;LD A,(page0_save) ; SET PAGE DOS
OUT (SLOT0),A ;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
;******************************************************* ;*******************************************************
; _____ _ _ ____ _ ; _____ _ _ ____ _
@ -324,13 +306,13 @@ NormExit:
LD HL,WellDone LD HL,WellDone
_PrintStr _PrintStr
LD B,0 LD B,0
CALL Exit JR Exit
;-----------------; ;-----------------;
; HL áâப  á ®è¨¡ª®© ; HL áâப  á ®è¨¡ª®©
BadExit: _PrintStr BadExit: _PrintStr
LD B,1 ; ª®¤ ®è¨¡ª¨ LD B,1 ; ª®¤ ®è¨¡ª¨
CALL Exit ;JR Exit
;-----------------; ;-----------------;
;-----------------; ;-----------------;
@ -442,8 +424,9 @@ Set_keys:
LD HL,key_buff ; ‚ëç¨á«ï¥¬ ï祩ªã åà ­¥­¨ï ª«îç  LD HL,key_buff ; ‚ëç¨á«ï¥¬ ï祩ªã åà ­¥­¨ï ª«îç 
ADD HL,BC ADD HL,BC
LD A,(HL) ; ¨ ¯à®¢¥à塞 ­¥â «¨ â ¬ 㦥 ª«îç . LD A,(HL) ; ¨ ¯à®¢¥à塞 ­¥â «¨ â ¬ 㦥 ª«îç .
AND A ; ¥á«¨ ¥áâì, §­ ç¨â ª«îç ¢¢¥¤ñ­ 2 à §  ;AND A ; ¥á«¨ ¥áâì, §­ ç¨â ª«îç ¢¢¥¤ñ­ 2 à § 
SCF ;SCF
NEG
RET NZ ; ®è¨¡ª  - ¯®¢â®à ª«îç . ¢ë室 RET NZ ; ®è¨¡ª  - ¯®¢â®à ª«îç . ¢ë室
; OR C ; ’ãâ Ž†ˆ„€…’‘Ÿ, çâ® €=0. …᫨ =0, â® íâ® ª«îç "A" ; OR C ; ’ãâ Ž†ˆ„€…’‘Ÿ, çâ® €=0. …᫨ =0, â® íâ® ª«îç "A"
@ -725,72 +708,72 @@ Load_conf: LD HL,ram_pages
; (???®á¢®¡®¦¤¥­¨¥ ¯ ¬ï⨠­¥¤®¤¥« ­­®???) ; (???®á¢®¡®¦¤¥­¨¥ ¯ ¬ï⨠­¥¤®¤¥« ­­®???)
;-----------------; ;-----------------;
Set_Acex_Data: ; Set_Acex_Data:
DI ; DI
IN A,(FastRAM.ON) ; ‚ª«î祭¨¥ ªíè  ; IN A,(FastRAM.ON) ; ‚ª«î祭¨¥ ªíè 
LD A,(ram_pages) ; LD A,(ram_pages)
OUT (SLOT1),A ; áâà ­¨æ  á ¤ ­­ë¬¨ ä ©«  ; OUT (SLOT1),A ; áâà ­¨æ  á ¤ ­­ë¬¨ ä ©« 
XOR A ; XOR A
OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 0 ; OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 0
LD HL,#5000 ; ¯¥à¥ª¨¤ë¢ ­¨¥ ¤ ­­ëå ¢ áâà ­¨æã Š<>˜ = 0 ; LD HL,#5000 ; ¯¥à¥ª¨¤ë¢ ­¨¥ ¤ ­­ëå ¢ áâà ­¨æã Š<>˜ = 0
LD DE,#1000 ; LD DE,#1000
LD BC,#3000 ; LD BC,#3000
LDIR ; LDIR
INC A ; INC A
OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 1 ; OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 1
LD A,(ram_pages+1) ; LD A,(ram_pages+1)
OUT (SLOT1),A ; á«¥¤ãîé ï áâà ­¨æ  á ¤ ­­ë¬¨ ä ©«  ; OUT (SLOT1),A ; á«¥¤ãîé ï áâà ­¨æ  á ¤ ­­ë¬¨ ä ©« 
LD H,D ; LD HL,4000h ; LD H,D ; LD HL,4000h
LD D,E ; LD DE,0000h ; LD D,E ; LD DE,0000h
LD B,H ; LD BC,4000h ; LD B,H ; LD BC,4000h
LDIR ; LDIR
LD A,2 ; LD A,2
OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 2 ; OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 2
LD A,(ram_pages+2) ; LD A,(ram_pages+2)
OUT (SLOT1),A ; á«¥¤ãîé ï áâà ­¨æ  á ¤ ­­ë¬¨ ä ©«  ; OUT (SLOT1),A ; á«¥¤ãîé ï áâà ­¨æ  á ¤ ­­ë¬¨ ä ©« 
EX DE,HL ; LD HL,4000h ; EX DE,HL ; LD HL,4000h
LD D,E ; LD DE,0000h ; LD D,E ; LD DE,0000h
LD B,H ; LD BC,4000h ; LD B,H ; LD BC,4000h
LDIR ; LDIR
LD A,3 ; LD A,3
OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 3 ; OUT (FastRAM.SLOT0),A ; ‘âà ­¨æ  Š<>˜ = 3
LD A,(ram_pages+3) ; LD A,(ram_pages+3)
OUT (SLOT1),A ; á«¥¤ãîé ï áâà ­¨æ  á ¤ ­­ë¬¨ ä ©«  ; OUT (SLOT1),A ; á«¥¤ãîé ï áâà ­¨æ  á ¤ ­­ë¬¨ ä ©« 
LD H,D ; LD HL,4000h ; LD H,D ; LD HL,4000h
LD D,E ; LD DE,0000h ; LD D,E ; LD DE,0000h
LD BC,#3EDF ; LD BC,#3EDF
LDIR ; LDIR
LD HL,Reload_String ; ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜-  ; LD HL,Reload_String ; ä« £ ¯¥à¥§ £à㧪¨ ¨§ Š<>˜- 
LD DE,#3EF0 ; LD DE,#3EF0
LD C,#10 ; LD BC, 16 ; LD C,#10 ; LD BC, 16
LDIR ; LDIR
LD HL,(ConfMultKeys) ; …᫨ âãâ ãáâ ­ ¢«¨¢ ¥¬ ­¥ 'IM' ª«îç¨ ; LD HL,(ConfMultKeys) ; …᫨ âãâ ãáâ ­ ¢«¨¢ ¥¬ ­¥ 'IM' ª«îç¨
LD A,(l_key) ; â® "no multiple! ¯¥à¥§ £à㧪  ⮫쪮 ®¤­ ", ; LD A,(l_key) ; â® "no multiple! ¯¥à¥§ £à㧪  ⮫쪮 ®¤­ ",
AND A ; ¨­ ç¥ - å§, ¥éñ ­¥ ¯à®¡®¢ «. ; AND A ; ¨­ ç¥ - å§, ¥éñ ­¥ ¯à®¡®¢ «.
JR Z,1F ; JR Z,1F
LD HL,(ConfMultKeys+2) ; LD HL,(ConfMultKeys+2)
1: LD (#3EE0),HL ; 1: LD (#3EE0),HL
LD A,(page1_save) ; ¢®§¢à â áâà ­¨æë 1 ; LD A,(page1_save) ; ¢®§¢à â áâà ­¨æë 1
OUT (SLOT1),A ; OUT (SLOT1),A
XOR A ; Žâª«î祭¨¥ ªíè  ; XOR A ; Žâª«î祭¨¥ ªíè 
OUT (FastRAM.SLOT0),A ; ¯¨è¥¬ ¢ FastRAM.SLOT0 ­®«ì, ¨­ ç¥ ¢ ; OUT (FastRAM.SLOT0),A ; ¯¨è¥¬ ¢ FastRAM.SLOT0 ­®«ì, ¨­ ç¥ ¢
IN A,(FastRAM.OFF) ; ­ã«¥¢®¥ ®ª­® ¡¨®á ¨«¨ „‘‘ ­¥ ¢®âª­ãâáï ; IN A,(FastRAM.OFF) ; ­ã«¥¢®¥ ®ª­® ¡¨®á ¨«¨ „‘‘ ­¥ ¢®âª­ãâáï
RET ; RET
;******************************************************* ;*******************************************************

@ -1 +1 @@
Subproject commit 653e504a06665ec95a8ef2a4257d9cfb18f6d6f0 Subproject commit f75e25771d6c7048f1c43f9494d3890d907ab68f