Making LP_PR_LINE_DIR

This commit is contained in:
Anatoliy Belyanskiy 2023-08-11 01:15:56 +10:00
parent acc561bb6a
commit 007fb96bad
7 changed files with 153 additions and 128 deletions

@ -1 +1 @@
Subproject commit 7e4985b40214f573ba17b707ad5191319841acdd
Subproject commit 361bce691cf4130a703e57b8fc7b3b87d3b929de

View File

@ -209,7 +209,7 @@ TAB_FNS:
DB low FN_LIB ; #DE
DB low FN_LIB ; #DF
; Ex
DB low LP_PRINT_LINE_DIR ; #E0
DB low LP_PR_LINE_DIR ; #E0
DB low FN_RESERVED ; #E1
DB low FN_RESERVED ; #E2
DB low FN_RESERVED ; #E3
@ -401,7 +401,7 @@ TAB_FNS:
DB high FN_LIB
DB high FN_LIB
; Ex
DB high LP_PRINT_LINE_DIR
DB high LP_PR_LINE_DIR
DB high FN_RESERVED
DB high FN_RESERVED
DB high FN_RESERVED

View File

@ -124,9 +124,9 @@
LD SP,SYS_SP
PUSH BC
LD HL,(SYS_PAGE.WIN_MAP_IX+WIN_HL)
LD DE,(SYS_PAGE.WIN_MAP_IX+WIN_DE)
LD BC,(SYS_PAGE.WIN_MAP_IX+WIN_BC)
LD HL,(WIN_ID_0.HL)
LD DE,(WIN_ID_0.DE)
LD BC,(WIN_ID_0.BC)
LD A,E
AND A
@ -141,9 +141,9 @@
EXX
RLA
LD E,A
LD (SYS_PAGE.WIN_MAP_IX+WIN_HL),HL ; ¬¥áâ® ¯¥ç â¨
LD (SYS_PAGE.WIN_MAP_IX+WIN_DE),DE
LD (SYS_PAGE.WIN_MAP_IX+WIN_BC),BC
LD (WIN_ID_0.HL),HL ; ¬¥áâ® ¯¥ç â¨
LD (WIN_ID_0.DE),DE
LD (WIN_ID_0.BC),BC
POP BC
LD A,B
@ -418,9 +418,9 @@ LP_END_P: ; !!!!!
EXX
RLA
LD E,A
LD (SYS_PAGE.WIN_MAP_IX+WIN_HL),HL ; ¬¥áâ® ¯¥ç â¨
LD (SYS_PAGE.WIN_MAP_IX+WIN_DE),DE
LD (SYS_PAGE.WIN_MAP_IX+WIN_BC),BC
LD (WIN_ID_0.reg_HL),HL ; ¬¥áâ® ¯¥ç â¨
LD (WIN_ID_0.reg_DE),DE
LD (WIN_ID_0.reg_BC),BC
LP_CLOSE_PG
EXX
EX AF,AF'
@ -485,14 +485,14 @@ LP_SET_PLACE: ; !!!!!
LP_GET_PLACE:
CALL LP_BEG_P
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_H_BEG)
LD A,(WIN_ID_0.H_BEG)
NEG
EXX
ADD A,D
EXX
LD E,A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_V_BEG)
LD A,(WIN_ID_0.V_BEG)
NEG
EXX
ADD A,L
@ -642,8 +642,8 @@ WIN_SET_ZG: ; LP_SET_ZG:
; 3 - ver place
LP_SIZE: ; ®¯à¥¤¥«¥­¨¥ size
LP_OPEN_PG
LD DE,(SYS_PAGE.WIN_MAP_IX+WIN_SIZE_H)
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_MODE)
LD DE,(WIN_ID_0.USER.SIZE_H)
LD A,(WIN_ID_0.USER.MODE)
BIT 5,A
LP_CLOSE_PG
RET NZ
@ -655,7 +655,7 @@ LP_SIZE: ;
LP_AT_D: ; !!!!! ®¦¨¤ ¥âáï, çâ® ¯®àâïâáï ⮫쪮  «ìâ¥à­ â¨¢­ë¥ ॣ¨áâàë ¨ â¥, çâ® ª ª ¯ à ¬¥âàë ­  ¢å®¤¥
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_SIZE_V)
LD A,(WIN_ID_0.USER.SIZE_V)
EXX
LD L,A
EXX
@ -669,7 +669,7 @@ LP_AT_D: ; !!!!!
ADD A,A
ADD A,A
LD L,A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_V_BEG)
LD A,(WIN_ID_0.V_BEG)
ADD A,L
LD L,A
INC L
@ -681,7 +681,7 @@ LP_AT_D: ; !!!!!
; !!!!! ®¦¨¤ ¥âáï, çâ® ¯®àâïâáï ⮫쪮  «ìâ¥à­ â¨¢­ë¥ ॣ¨áâàë ¨ â¥, çâ® ª ª ¯ à ¬¥âàë ­  ¢å®¤¥
LP_TAB_E:
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_SIZE_REL)
LD A,(WIN_ID_0.SIZE_REL)
EXX
LD D,A
EXX
@ -697,14 +697,14 @@ LP_TAB_E:
NEG
ADD A,D
LD D,A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_MODE)
LD A,(WIN_ID_0.USER.MODE)
AND %0010'0000
JR Z,.skip_Dx2
LD A,D
ADD A,A
LD D,A
.skip_Dx2:
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_H_BEG)
LD A,(WIN_ID_0.H_BEG)
ADD A,D
LD D,A
EXX
@ -719,19 +719,18 @@ LP_NEXT_HL:
INC L
INC L
INC L
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_V_END)
LD A,(WIN_ID_0.V_END)
CP L
JR NC,LP_NEXT_HL1
LD HL,(SYS_PAGE.WIN_MAP_IX+WIN_V_BEG)
;LD A,(SYS_PAGE.WIN_MAP_IX+WIN_V_BEG)
LD HL,(WIN_ID_0.V_BEG)
;LD A,(WIN_ID_0.V_BEG)
;LD L,A
INC L
LD H,#C3 ;!HARDCODE
LP_NEXT_HL1:
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_H_BEG)
LD A,(WIN_ID_0.H_BEG)
LD D,A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_SIZE_REL)
LD A,(WIN_ID_0.SIZE_REL)
LD B,A
LD A,#50
@ -743,9 +742,9 @@ LP_BEG_P:
EX AF,AF'
EXX
LP_OPEN_PG
LD HL,(SYS_PAGE.WIN_MAP_IX+WIN_HL)
LD DE,(SYS_PAGE.WIN_MAP_IX+WIN_DE)
LD BC,(SYS_PAGE.WIN_MAP_IX+WIN_BC)
LD HL,(WIN_ID_0.reg_HL)
LD DE,(WIN_ID_0.reg_DE)
LD BC,(WIN_ID_0.reg_BC)
LD A,E
AND A
RRA
@ -758,14 +757,14 @@ LP_INI_P:
EX AF,AF'
EXX
LP_OPEN_PG
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_MODE)
LD A,(WIN_ID_0.USER.MODE)
CP #C0
JR NC,LP_INI_NO_ZG ; ®âªàë⨥ ¡®à¤¥à ...
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_MODE_S)
LD A,(WIN_ID_0.USER.MODE_S)
BIT 0,A
JR NZ,LP_INI_NO_ZG ; ®âªàë⨥ Spectrum-Screen
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_MODE)
LD A,(WIN_ID_0.USER.MODE)
BIT 4,A
JR Z,LP_INI_NO_ZG ; ®âªàë⨥ £à ä¨ç¥áª®£® íªà ­ 
LD DE,(SYS_PAGE.WIN_ZG) ; §­ ª®£¥­¥à â®à
@ -777,24 +776,24 @@ LP_INI_P:
EX AF,AF'
LP_INI_NO_ZG:
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_H_BEG)
LD A,(WIN_ID_0.H_BEG)
LD D,A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_V_BEG)
LD A,(WIN_ID_0.V_BEG)
LD L,A
INC L
LD H,#C3
AND A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_MODE)
LD A,(WIN_ID_0.USER.MODE)
BIT 5,A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_SIZE_H)
LD A,(WIN_ID_0.USER.SIZE_H)
JR NZ,LP_INI_40
ADD A,A
SCF
;!TODO çâ®-â® âãâ ¯®¤¢ë¯¨«¥­­®
LP_INI_40:
LD B,A
LD (SYS_PAGE.WIN_MAP_IX+WIN_SIZE_REL),A
LD (WIN_ID_0.SIZE_REL),A
; LD DE,(SYS_PAGE.WIN_MODE_SC) ; ¬¥áâ® ¯® £®à¨§®­â «¨ ¨ áâà ­¨æ  ¬®¤ë
; LD HL,(SYS_PAGE.WIN_MODE_SH) ; ¬¥áâ® ¯® ¢¥à⨪ «¨ á  ¤à¥á®¬
@ -890,14 +889,14 @@ WIN_OPEN:
LD (SYS_PAGE.WIN_MAP_SC),IX ; ª àâ  ®ª­ 
PUSH DE
LD HL,(SYS_PAGE.WIN_MAP_SC)
LD DE,SYS_PAGE.WIN_MAP_IX
LD BC,32
LD DE,WIN_ID_0
LD BC,Window_UserVars
LDIR
LD IX,SYS_PAGE.WIN_MAP_IX
LD IX,WIN_ID_0
POP DE
LD L,(IX+WIN_PLACE_H)
LD H,(IX+WIN_PLACE_V)
LD (IX+WIN_MODE_E),E
LD L,(IX+Window_Variables.USER.PLACE_H)
LD H,(IX+Window_Variables.USER.PLACE_V)
LD (IX+Window_Variables.MODE_E),E
JP WIN_OPEN_W1
@ -924,14 +923,14 @@ LP_SET_MODE:
PUSH DE
LD HL,(SYS_PAGE.WIN_MAP_SC)
LD DE,SYS_PAGE.WIN_MAP_IX
LD BC,32
LD BC,Window_UserVars
LDIR
LD IX,SYS_PAGE.WIN_MAP_IX
POP DE
POP HL
LD (IX+WIN_PLACE_H),L
LD (IX+WIN_PLACE_V),H
LD (IX+WIN_MODE_E),E
LD (IX+Window_Variables.USER.PLACE_H),L
LD (IX+Window_Variables.USER.PLACE_V),H
LD (IX+Window_Variables.MODE_E),E
WIN_OPEN_W1:
LD A,L
ADD A,A
@ -940,12 +939,12 @@ WIN_OPEN_W1:
JR NZ,LP_SET_NO_OR
OR #80 ; ¥á«¨ ¢ë¢®¤ ­  ¢â®à®© íªà ­
LP_SET_NO_OR:
LD (IX+WIN_H_BEG),A
LD (IX+Window_Variables.H_BEG),A
LD D,A
LD A,(IX+WIN_SIZE_H)
LD A,(IX+Window_Variables.USER.SIZE_H)
ADD A,A
ADD A,D
LD (IX+WIN_H_END),A
LD (IX+Window_Variables.H_END),A
LD (SYS_PAGE.WIN_MODE_SC),DE ; ¬¥áâ® ¯® £®à¨§®­â «¨ ¨ áâà ­¨æ  ¬®¤ë
LD A,H
AND #3F
@ -954,50 +953,50 @@ LP_SET_NO_OR:
LD L,A
LD H,#C3
LD (SYS_PAGE.WIN_MODE_SH),HL ; ¬¥áâ® ¯® ¢¥à⨪ «¨ á  ¤à¥á®¬
LD (IX+WIN_V_BEG),A
LD A,(IX+WIN_SIZE_V)
LD (IX+Window_Variables.V_BEG),A
LD A,(IX+Window_Variables.USER.SIZE_V)
ADD A,A
ADD A,A
ADD A,L
LD (IX+WIN_V_END),A
LD (IX+Window_Variables.V_END),A
LD L,(IX+WIN_V_BEG)
LD L,(IX+Window_Variables.V_BEG)
LD H,#C3
LD B,(IX+WIN_SIZE_V) ; à §¬¥à ¯® ¢¥à⨪ «¨
LD B,(IX+Window_Variables.USER.SIZE_V) ; à §¬¥à ¯® ¢¥à⨪ «¨
LD (IX+WIN_WORK_1),0
LD A,(IX+WIN_MODE) ; §­ ª®£¥­¥à â®à ¯«îá ०¨¬
LD (IX+WIN_WORK_2),A
LD (IX+Window_Variables.WORK_1),0
LD A,(IX+Window_Variables.USER.MODE) ; §­ ª®£¥­¥à â®à ¯«îá ०¨¬
LD (IX+Window_Variables.WORK_2),A
BIT 4,A
JR NZ,LP_SET_LOOP ; ¯¥à¥å®¤, ¥á«¨ ⥪áâ®¢ë© à¥¦¨¬
AND #F0
LD C,A
LD A,(IX+WIN_GR_X)
LD A,(IX+Window_Variables.USER.GR_X)
RRCA
RRCA
RRCA
LD D,A
AND #0F
OR C
LD (IX+WIN_WORK_2),A
LD (IX+Window_Variables.WORK_2),A
LD A,D
AND #E0
LD C,A
LD A,(IX+WIN_GR_Y)
LD A,(IX+Window_Variables.USER.GR_Y)
AND #1F
OR C
RLCA
RLCA
RLCA
LD (IX+WIN_WORK_1),A
LD (IX+Window_Variables.WORK_1),A
LP_SET_LOOP:
LD D,(IX+WIN_H_BEG) ; D - ­ ç «® áâப¨ (PORT_Y)
LD C,(IX+WIN_SIZE_H) ; à §¬¥à ¯® £®à¨§®­â «¨
LD A,(IX+WIN_MODE) ; §­ ª®£¥­¥à â®à ¯«îá ०¨¬
LD D,(IX+Window_Variables.H_BEG) ; D - ­ ç «® áâப¨ (PORT_Y)
LD C,(IX+Window_Variables.USER.SIZE_H) ; à §¬¥à ¯® £®à¨§®­â «¨
LD A,(IX+Window_Variables.USER.MODE) ; §­ ª®£¥­¥à â®à ¯«îá ०¨¬
PUSH BC
CALL LP_MODE_LINE
@ -1008,10 +1007,10 @@ LP_SET_LOOP:
INC L
DJNZ LP_SET_LOOP
LD A,(IX+WIN_MODE_E)
LD A,(IX+Window_Variables.MODE_E)
AND 1
OUT (RGMOD),A
; LD A,(IX+WIN_MODE)
; LD A,(IX+Window_Variables.MODE)
; BIT 4,A
LP_CLOSE_PG
; RET Z
@ -1029,7 +1028,7 @@ WIN_CLOSE:
; “áâ ­®¢ª  ०¨¬  ­  «¨­¨¨
LP_MODE_LINE:
BIT 0,(IX+WIN_MODE_S)
BIT 0,(IX+Window_Variables.USER.MODE_S)
JP NZ,LP_MODE_LINE2 ; ¨¤â¨ ­  ᯥªâàã¬
BIT 4,A
JP Z,LP_MODE_LINE3 ; ¨¤â¨ ­  £à ä¨ªã!
@ -1104,8 +1103,8 @@ LP_MODE_LINE2:
; Spectrum mode
LD A,(IX+WIN_WORK_2)
LD B,(IX+WIN_WORK_1)
LD A,(IX+Window_Variables.WORK_2)
LD B,(IX+Window_Variables.WORK_1)
DEC D
@ -1194,8 +1193,8 @@ LP_EXIT_MODE2:
OUT (SLOT3),A
EX AF,AF'
LD (IX+WIN_WORK_1),B
LD (IX+WIN_WORK_2),A
LD (IX+Window_Variables.WORK_1),B
LD (IX+Window_Variables.WORK_2),A
RET
@ -1203,8 +1202,8 @@ LP_MODE_LINE3: ;
; Grafic Mode
LD A,(IX+WIN_WORK_1)
LD B,(IX+WIN_WORK_2)
LD A,(IX+Window_Variables.WORK_1)
LD B,(IX+Window_Variables.WORK_2)
DEC D
@ -1299,9 +1298,9 @@ LP_EXIT_MODE3:
OUT (SLOT3),A
EX AF,AF'
LD A,(IX+WIN_WORK_1)
LD A,(IX+Window_Variables.WORK_1)
ADD A,8
LD (IX+WIN_WORK_1),A
LD (IX+Window_Variables.WORK_1),A
RET
LP_GR_640:
@ -1360,13 +1359,16 @@ LP_SCROLL_UD:
; D - ¢¥àå­ïï áâப  ( ®â 0 )
; E - ç¨á«® áªà®««¨à㥬ëå áâப
LP_SCROLL_UP:
DEC E ;!FIXIT ¯à ¢¨«ì­®?
DEC E
RET Z
LP_OPEN_PG
LP_OPEN_PG
LD B,E
LD E,0
PUSH BC
LD E,0 ;!FIXIT çñâ âãâ ­¥ç¨áâ®, ¯®¤£®­ª  ¯®¤ ®¤¨­ ¢ à¨ ­â ®ª­  £«®¡ «ì­®£®?
CALL .RUN
.EXIT: LP_CLOSE_PG
RET
;
.RUN: PUSH BC
CALL LP_AT_D
CALL LP_TAB_E ; ¢ëç¨á«¨âì ¯¥à¥¬¥­­ë¥ ¤«ï áâப¨
POP BC
@ -1382,9 +1384,10 @@ LP_SCROLL_UP:
INC L
INC L
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_V_END)
LD A,(WIN_ID_0.V_END)
CP L
JR C,.EXIT ; ¥á«¨ ª®­¥æ, â® ¢ë室
;JR C,.EXIT ; ¥á«¨ ª®­¥æ, â® ¢ë室
RET C
PUSH BC
LD A,L
@ -1392,7 +1395,7 @@ LP_SCROLL_UP:
LD L,A
EXX
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_SIZE_H)
LD A,(WIN_ID_0.USER.SIZE_H)
ADD A,A ; ç¨á«® ¡ ©â ¢ áâப¥ ¤«ï ¯¥à¥­®á 
ADD A,A
@ -1416,13 +1419,12 @@ LP_SCROLL_UP:
LD A,SYS_PAGE
OUT (SLOT3),A
POP BC
DJNZ .loop2
.EXIT: LP_CLOSE_PG
RET
; ‚室 :
; D - ¢¥àå­ïï áâப  ( ®â 0 )
; E - ç¨á«® áªà®««¨à㥬ëå áâப
@ -1454,7 +1456,7 @@ LP_SCROLL_DN:
DEC L
DEC L
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_V_BEG)
LD A,(WIN_ID_0.V_BEG)
CP L ; .CONT: L >= A
JR Z,.CONT
JR NC,.EXIT ; ¥á«¨ ª®­¥æ, â® ¢ë室
@ -1465,7 +1467,7 @@ LP_SCROLL_DN:
LD L,A
EXX
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_SIZE_H)
LD A,(WIN_ID_0.USER.SIZE_H)
ADD A,A
ADD A,A
LD C,A
@ -1539,7 +1541,8 @@ WIN_GET_SYM:
; DE - ¬¥á⮠ᨬ¢®«  ¢ ®ª­¥
; € - ­®¬¥à ®ª­ 
; HL - ᨬ¢®«/ âਡãâ B - §­ ª®£¥­¥à â®à
; HL - ᨬ¢®«/ âਡãâ
; B - §­ ª®£¥­¥à â®à
WIN_PUT_SYM:
AND A
SCF
@ -1755,7 +1758,10 @@ LP_REST_L1:
;!FIXIT ­¥â ®¯¨á ­¨ï, ­¥¤®¤¥« ­ . <20>¥ç âì á ã¯à ¢«ïî騬¨ ᨬ¢®« ¬¨
;------------------------------------------------------------------[#E0]
LP_PRINT_LINE_DIR:
; DE - ¬¥á⮠ᨬ¢®«  ¢ ®ª­¥
; HL -  ¤à¥á á ¢ë¢®¤¨¬®© áâப®©
; B - à §¤¥«¨â¥«ì
LP_PR_LINE_DIR:
CALL LP_BEG_P
LD A,#50
OUT (SLOT3),A
@ -1778,7 +1784,7 @@ LP_PRINT_LINE_DIR:
SUB 7
JR Z,LP_BELL ; A = 07 "BELL"
DEC A
JR Z,LP_BACK ; A = 08 "backspace"
JR Z,LP_BACK ; A = 08 "Backspace"
DEC A
JR Z,LP_TAB ; A = 09 "TAB"
DEC A
@ -1819,7 +1825,7 @@ LP_BACK:
LD A,SYS_PAGE
OUT (SLOT3),A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_H_BEG)
LD A,(WIN_ID_0.H_BEG)
CP D
JR Z,LP_PRINT_LN_D11
INC B
@ -1829,7 +1835,7 @@ LP_BACK:
;-------[TAB]
LP_TAB: LD A,SYS_PAGE
OUT (SLOT3),A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_H_BEG)
LD A,(WIN_ID_0.H_BEG)
SUB D
NEG
AND %0000'0111
@ -1850,9 +1856,9 @@ LP_TAB: LD A,SYS_PAGE
.end_Line:
LD A,SYS_PAGE
OUT (SLOT3),A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_H_BEG)
LD A,(WIN_ID_0.H_BEG)
LD D,A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_SIZE_REL)
LD A,(WIN_ID_0.SIZE_REL)
LD B,A
;JP LP_LF
;-------[TAB end]
@ -1864,13 +1870,32 @@ LP_LF: LD A,SYS_PAGE
INC L
INC L
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_V_END)
LD A,(WIN_ID_0.V_END)
CP L
JR NC,LP_PRINT_LN_D11
;!TEST BIOS SCROLL
;LD A,(WIN_ID_0.V_BEG)
;LD L,A ; ¢¥à­ãâìáï ­ ¢¥àå ¡¥§ áªà®«« !!!
;-------------------------------------------------------------\
PUSH HL
PUSH BC
EXX
PUSH BC
PUSH DE
EXX
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_V_BEG)
LD L,A ; ¢¥à­ãâìáï ­ ¢¥àå ¡¥§ áªà®«« !!!
LD A,(WIN_ID_0.USER.SIZE_V)
LD B,A
CALL LP_SCROLL_UP.RUN
EXX
POP DE
POP BC
EXX
POP BC
POP HL
;-------------------------------------------------------------/
;
; scrolling ????
JR LP_PRINT_LN_D11
@ -1881,9 +1906,9 @@ LP_CLS: ; ...
LP_CR: LD A,SYS_PAGE
OUT (SLOT3),A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_H_BEG)
LD A,(WIN_ID_0.H_BEG)
LD D,A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_SIZE_REL)
LD A,(WIN_ID_0.SIZE_REL)
LD B,A
JR LP_PRINT_LN_D11

View File

@ -15,11 +15,11 @@ PIC_FN1:
LD A,SYS_PAGE
OUT (SLOT3),A
LD A,(SYS_PAGE.WIN_MAP_IX+WIN_GRAF_Y)
LD A,(WIN_ID_0.GRAF_Y)
ADD A,E
OUT (RGADR),A
LD A,B
LD BC,(SYS_PAGE.WIN_MAP_IX+WIN_GRAF_X)
LD BC,(WIN_ID_0.GRAF_X)
ADD HL,BC
LD B,A
LD A,#50

View File

@ -81,8 +81,8 @@ EMM.InitMem:
RESERVED_PAGES:
;; Block #1 - ¬®¦­® ®á¢®¡®¤¨âì ¯® ID 1
DB 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 ; for Spectrum
; í¬ã«ïâ®à <20>‡“
DB #42,#43,#44,#45,#46,47,#48,#49,#4A,#4B ; For (BASIC128, BASIC48, TRDOS, SCORP_ROM)*2, vBIOS, vEXTENSION
; í¬ã«ïâ®à <20>‡“ ;!FIXIT ROM-Emulator ᤥ« âì ¤¨­ ¬¨ç¥áª¨¥ áâà ­¨æë
DB #42,#43,#44,#45,#46,47;,#48,#49,#4A,#4B ; For (BASIC128, BASIC48, TRDOS, SCORP_ROM)*2, vBIOS, vEXTENSION
DB #FF ; End of the block
;
;

View File

@ -2,7 +2,6 @@
;**********************************;
; ACEX Loading program ;
;**********************************;
MACRO Conf_loader altera_chip
.START: DI
LD BC,#FFEE ; !HARDCODE
@ -74,13 +73,13 @@
; ¢ HL  ¤à¥á ¯¥à¢®£® ¡ ©â  ª®­äë
LD DE,.Conf_header
LD B,.Conf_header.length
1:
.conf_header_loop:
LD A,(DE)
CP (HL)
JR NZ,.Conf_Packed
INC DE
INC L
DJNZ 1B
DJNZ .conf_header_loop
XOR A
JR .exit_conf_check

View File

@ -359,27 +359,28 @@ LOGOX: LD IX,win_descriptor.tab320x256
EI
RET
win_descriptor:
.tab80x32:
DB 40
DB 32
DB 0
DB 0
DB %0001'1011
DB 0
DB 0
DB 0
.tab320x256:
DB 16 ; £®à¨§®­â «ì­ë© à §¬¥à ®ª­  ¢ §­ ª®¬¥áâ å
DB 9 ; ¢¥à⨪ «ì­ë© à §¬¥à ¢ §­ ª®¬¥áâ å
DB 0 ; ¯®«®¦¥­¨¥ ®ª­  ¯® £®à¨§®­â «¨ ­  íªà ­¥
DB 0 ; ¯®«®¦¥­¨¥ ®ª­  ¯® ¢¥à⨪ «¨ ­  íªà ­¥
DB %0010'0000 ; ०¨¬ §­ ª®¬¥áâ 
DB 0 ; ¤®¯®«­¨â¥«ì­ë© ०¨¬ §­ ª®¬¥áâ 
DB 8 ; ¯®«®¦¥­¨¥ ¯® X ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
DB 0 ; ¯®«®¦¥­¨¥ ¯® Y ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
.tab80x32 Window_UserVars{
40, ; £®à¨§®­â «ì­ë© à §¬¥à ®ª­  ¢ §­ ª®¬¥áâ å
32, ; ¢¥à⨪ «ì­ë© à §¬¥à ¢ §­ ª®¬¥áâ å
0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® £®à¨§®­â «¨ ­  íªà ­¥
0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® ¢¥à⨪ «¨ ­  íªà ­¥
%0001'1011, ; ०¨¬ §­ ª®¬¥áâ 
0, ; ¤®¯®«­¨â¥«ì­ë© ०¨¬ §­ ª®¬¥áâ 
0, ; ¯®«®¦¥­¨¥ ¯® X ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
0 ; ¯®«®¦¥­¨¥ ¯® Y ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
}
.tab320x256 Window_UserVars{
16, ; £®à¨§®­â «ì­ë© à §¬¥à ®ª­  ¢ §­ ª®¬¥áâ å
9, ; ¢¥à⨪ «ì­ë© à §¬¥à ¢ §­ ª®¬¥áâ å
0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® £®à¨§®­â «¨ ­  íªà ­¥
0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® ¢¥à⨪ «¨ ­  íªà ­¥
%0010'0000, ; ०¨¬ §­ ª®¬¥áâ 
0, ; ¤®¯®«­¨â¥«ì­ë© ०¨¬ §­ ª®¬¥áâ 
8, ; ¯®«®¦¥­¨¥ ¯® X ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
0 ; ¯®«®¦¥­¨¥ ¯® Y ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
}
;
MACRO _mFADE
LD HL,memBUFFER.Shared