fix: WIN_SET_ZG теперь возможно буфер шрифта устанавливать в SLOT3, а стэк в SLOT2

This commit is contained in:
Anatoliy Belyanskiy 2024-02-11 05:02:04 +10:00
parent 746c2c882f
commit 9260afe3b5
8 changed files with 168 additions and 275 deletions

@ -1 +1 @@
Subproject commit 93f04cc30f6a3c20f382c8b467bca79718c9ab2e Subproject commit 97bdf22c00800ecee2dd714647a2892d3aa4476a

View File

@ -520,10 +520,10 @@ FN_SYNC:
jr .end_set_v_sinc jr .end_set_v_sinc
.SetCmosLines: .SetCmosLines:
LD D,CMOS.Cell.ScreenSET LD D,CMOS_CELL.ScreenSET
CALL CMOS_RD CALL CMOS_RD
AND CMOS.Cell.ScreenSET.Mask.Sinc ; ¢ ॣ¨áâॠA §­ ç¥­¨¥ ScreenSET AND high CMOS_CELL.ScreenSET.Mask.Sinc ; ¢ ॣ¨áâॠA §­ ç¥­¨¥ ScreenSET
jr z,.SetDefLines jr z,.SetDefLines
bit 6,a bit 6,a
@ -576,10 +576,10 @@ FN_SYNC:
LD DE,(SYS_PAGE.CONFIG_ALL) LD DE,(SYS_PAGE.CONFIG_ALL)
OUT (C),B OUT (C),B
LD D,CMOS.Cell.ScreenSET LD D,CMOS_CELL.ScreenSET
CALL CMOS_RD CALL CMOS_RD
AND CMOS.Cell.ScreenSET.Mask.Int ; ¢ ॣ¨áâॠA §­ ç¥­¨¥ ScreenSET AND high CMOS_CELL.ScreenSET.Mask.Int ; ¢ ॣ¨áâॠA §­ ç¥­¨¥ ScreenSET
JR NZ,.skiptest JR NZ,.skiptest
CALL Test_CONFIG_ALL CALL Test_CONFIG_ALL

View File

@ -605,8 +605,13 @@ WIN_SET_ZG: ; LP_SET_ZG:
LD L,0 LD L,0
LD BC,#0800 ;!HARDCODE LD BC,#0800 ;!HARDCODE
EX DE,HL EX DE,HL
;!TEST 11/02/2024 ãáâ ­®¢ª  èà¨äâ  ¡®«¥¥ £¨¡ª ï ¡¥§ § ¯«ñ⮢
LD A,H
SUB #C0
JR NC,.change
;
LDIR LDIR
EX DE,HL .cont: EX DE,HL
LD A,H LD A,H
RRCA RRCA
RRCA RRCA
@ -629,6 +634,14 @@ WIN_SET_ZG: ; LP_SET_ZG:
LD A,(SYS_PAGE.COPY_SLOT1) LD A,(SYS_PAGE.COPY_SLOT1)
OUT (SLOT1),A OUT (SLOT1),A
RET RET
;!TEST 11/02/2024 ãáâ ­®¢ª  èà¨äâ  ¡®«¥¥ £¨¡ª ï ¡¥§ § ¯«ñ⮢
.change:
LD A,(SYS_PAGE.COPY_SLOT3)
OUT (SLOT3),A
LDIR
LD A,SYS_PAGE
OUT (SLOT3),A
JR .cont
;------------------------------------------------------------------[#B6] ;------------------------------------------------------------------[#B6]
; ;
@ -656,23 +669,22 @@ LP_SIZE: ;
LP_AT_D: ; !!!!! ®¦¨¤ ¥âáï, çâ® ¯®àâïâáï ⮫쪮  «ìâ¥à­ â¨¢­ë¥ ॣ¨áâàë ¨ â¥, çâ® ª ª ¯ à ¬¥âàë ­  ¢å®¤¥ LP_AT_D: ; !!!!! ®¦¨¤ ¥âáï, çâ® ¯®àâïâáï ⮫쪮  «ìâ¥à­ â¨¢­ë¥ ॣ¨áâàë ¨ â¥, çâ® ª ª ¯ à ¬¥âàë ­  ¢å®¤¥
LD A,(WIN_ID_0.USER.SIZE_V) LD A,(WIN_ID_0.USER.SIZE_V)
EXX EXX
LD L,A LD L,A
EXX EXX
LD A,D LD A,D
EXX EXX
.loop: SUB L
JR NC,.loop
.loop: SUB L ADD A,L
JR NC,.loop ADD A,A
ADD A,A
ADD A,L LD L,A
ADD A,A LD A,(WIN_ID_0.V_BEG)
ADD A,A ADD A,L
LD L,A LD L,A
LD A,(WIN_ID_0.V_BEG) INC L
ADD A,L LD H,#C3
LD L,A
INC L
LD H,#C3
EXX EXX
RET RET
; ;
@ -682,30 +694,29 @@ LP_AT_D: ; !!!!!
LP_TAB_E: LP_TAB_E:
LD A,(WIN_ID_0.SIZE_REL) LD A,(WIN_ID_0.SIZE_REL)
EXX EXX
LD D,A LD D,A
EXX EXX
LD A,E LD A,E
EXX EXX
.loop: SUB D
JR NC,.loop
JR Z,.loop
.loop: SUB D NEG
JR NC,.loop LD B,A ; á®åà ­¨âì ᪮«ìª® ®áâ «®áì ᨬ¢®«®¢ ¢ áâப¥
JR Z,.loop NEG
ADD A,D
NEG LD D,A
LD B,A ; á®åà ­¨âì ᪮«ìª® ®áâ «®áì ᨬ¢®«®¢ ¢ áâப¥ LD A,(WIN_ID_0.USER.MODE)
NEG AND %0010'0000
ADD A,D JR Z,.skip_Dx2
LD D,A LD A,D
LD A,(WIN_ID_0.USER.MODE) ADD A,A
AND %0010'0000 LD D,A
JR Z,.skip_Dx2
LD A,D
ADD A,A
LD D,A
.skip_Dx2: .skip_Dx2:
LD A,(WIN_ID_0.H_BEG) LD A,(WIN_ID_0.H_BEG)
ADD A,D ADD A,D
LD D,A LD D,A
EXX EXX
RET RET
;************************************************************* ;*************************************************************
@ -1601,7 +1612,7 @@ WIN_MOVE:
POP DE POP DE
LD B,SHARED_PAGE LD B,SHARED_PAGE
LD IX,SLOT3.MEM_ADDR LD IX,SLOT3.MEM_ADDR
CALL WIN_REST_WIN1 CALL WIN_RESTORE.Start
AND A AND A
RET RET
@ -1631,53 +1642,49 @@ WIN_COPY_WIN1:
OUT (SLOT1),A OUT (SLOT1),A
EXX EXX
RES 7,H RES 7,H
LD C,D LD C,D
EXX EXX
.COPY_loop2: .COPY_loop2:
LD A,L LD A,L
EXX EXX
LD B,A LD B,A
;
ADD A,A ADD A,A
ADD A,XL ADD A,XL
LD XL,A LD XL,A
JR NC,.NO_INC_XH JR NC,.NO_INC_XH
INC XH INC XH
.NO_INC_XH: .NO_INC_XH:
LD SP,IX LD SP,IX
;
LD A,C LD A,C
ADD A,B ADD A,B
.COPY_loop: .COPY_loop:
DEC A DEC A
OUT (PORT_Y),A OUT (PORT_Y),A
LD E,(HL) LD E,(HL)
INC L INC L
LD D,(HL) LD D,(HL)
DEC L DEC L
PUSH DE PUSH DE
DJNZ .COPY_loop DJNZ .COPY_loop
;
INC HL INC HL
INC HL INC HL
INC HL INC HL
INC HL INC HL
EXX EXX
DEC H DEC H
JR NZ,.COPY_loop2 JR NZ,.COPY_loop2
;
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT3),A OUT (SLOT3),A
LD SP,(SYS_PAGE.SYS_WORK1) LD SP,(SYS_PAGE.SYS_WORK1)
;
POP AF POP AF
OUT (SLOT1),A OUT (SLOT1),A
JP LP_END_P.short JP LP_END_P.short
;AND A ;AND A
;RET ;RET
@ -1690,55 +1697,47 @@ WIN_RESTORE:
AND A AND A
SCF SCF
RET NZ RET NZ
WIN_REST_WIN1: .Start:
CALL LP_BEG_P CALL LP_BEG_P
;
IN A,(SLOT1) IN A,(SLOT1)
PUSH AF PUSH AF
;
CALL LP_AT_D CALL LP_AT_D
CALL LP_TAB_E CALL LP_TAB_E
;
LD (SYS_PAGE.SYS_WORK1),SP LD (SYS_PAGE.SYS_WORK1),SP
LD SP,IX LD SP,IX
;
LD A,B LD A,B
OUT (SLOT3),A OUT (SLOT3),A
LD A,#50 LD A,#50
OUT (SLOT1),A OUT (SLOT1),A
;
EXX EXX
RES 7,H RES 7,H
LD C,D LD C,D
EXX EXX
.L2: LD A,L
LP_REST_L2:
LD A,L
EXX EXX
LD B,A LD B,A
LD A,C
LD A,C .L1: OUT (PORT_Y),A
INC A
LP_REST_L1: POP DE
OUT (PORT_Y),A LD (HL),E
INC A INC L
POP DE LD (HL),D
LD (HL),E DEC L
INC L DJNZ .L1
LD (HL),D ;
DEC L INC HL
INC HL
DJNZ LP_REST_L1 INC HL
INC HL
INC HL
INC HL
INC HL
INC HL
EXX EXX
DEC H DEC H
JR NZ,.L2
JR NZ,LP_REST_L2
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT3),A OUT (SLOT3),A

View File

@ -228,7 +228,7 @@ INIT_SYS_ALL:
; ;
;-----------[new code start]------------; !!!!! ¯®á¬®âà¥âì-¯à¨ç¥á âì ;-----------[new code start]------------; !!!!! ¯®á¬®âà¥âì-¯à¨ç¥á âì
INIT_VSyncAndWaits: INIT_VSyncAndWaits:
LD D,CMOS.Cell.ScreenSET LD D,CMOS_CELL.ScreenSET
CALL CMOS_RD CALL CMOS_RD
ld d,a ld d,a
jr nc,.cmos_OK jr nc,.cmos_OK
@ -238,7 +238,7 @@ INIT_VSyncAndWaits:
jr z,INIT_CONFIG_ALL.setDefaultINT jr z,INIT_CONFIG_ALL.setDefaultINT
.cmos_OK: .cmos_OK:
and CMOS.Cell.ScreenSET.Mask.Sinc and high CMOS_CELL.ScreenSET.Mask.Sinc
and #40 and #40
ld a,3 ; 320 lines & no waits ld a,3 ; 320 lines & no waits
jr z,.setVSyncAndWaits jr z,.setVSyncAndWaits
@ -249,10 +249,10 @@ INIT_VSyncAndWaits:
INIT_CONFIG_ALL: INIT_CONFIG_ALL:
ld a,d ld a,d
and CMOS.Cell.ScreenSET.Mask.Int and high CMOS_CELL.ScreenSET.Mask.Int
jr z,.setDefaultINT ; set default int jr z,.setDefaultINT ; set default int
xor CMOS.Cell.ScreenSET.Mask.Int xor high CMOS_CELL.ScreenSET.Mask.Int
LD HL,SCREEN_TABLES.ORIGINAL ; set original int LD HL,SCREEN_TABLES.ORIGINAL ; set original int
jr z,.setINT jr z,.setINT

View File

@ -211,22 +211,22 @@ STEP1_GETCMOS:
LD A,H LD A,H
; ;
AND A AND A
LD BC,#3011 ;CMOS VALUE LD BC,CMOS_CELL.DrivesSetup_1.Mask.PriIDEmaster ;#3011
LD L,msgStrings.detectIdePrMA LD L,msgStrings.detectIdePrMA
JR Z,.choose JR Z,.choose
; ;
DEC A DEC A
LD BC,#C011 ;CMOS VALUE LD BC,CMOS_CELL.DrivesSetup_1.Mask.PriIDEslave ;#C011
LD L,msgStrings.detectIdePrSL LD L,msgStrings.detectIdePrSL
JR Z,.choose JR Z,.choose
; ;
DEC A DEC A
LD BC,#3020 LD BC,CMOS_CELL.DrivesSetup_2.Mask.SecIDEmaster
LD L,msgStrings.detectIdeSecMA LD L,msgStrings.detectIdeSecMA
JR Z,.choose JR Z,.choose
; ;
DEC A DEC A
LD BC,#C020 LD BC,CMOS_CELL.DrivesSetup_2.Mask.SecIDEslave
LD L,msgStrings.detectIdeSecSL LD L,msgStrings.detectIdeSecSL
JR Z,.choose JR Z,.choose
SCF SCF
@ -246,11 +246,9 @@ STEP1_GETCMOS:
JR Z,SETUP_FROM_CMOS ;Get from CMOS (SETUP) JR Z,SETUP_FROM_CMOS ;Get from CMOS (SETUP)
; ;
DEC A DEC A
JR Z,IT_IS_ATAPI ;CD-ROM RET NZ ;DON'T CHECK THIS DEVICE
RET ;DON'T CHECK THIS DEVICE ;JR Z,IT_IS_ATAPI ;CD-ROM
/////////////////////////////////////////////////////////////////////[^] /////////////////////////////////////////////////////////////////////[^]
/////////////////////////////////////////////////////////////////////[v] /////////////////////////////////////////////////////////////////////[v]
IT_IS_ATAPI: IT_IS_ATAPI:
LD A,L ;DETECT MESSAGE LD A,L ;DETECT MESSAGE

View File

@ -274,7 +274,7 @@ CLEARM: IN A,(SLOT3)
CALL .MEMLOOP CALL .MEMLOOP
; ;
CALL EMM.InitMem CALL EMM.InitMem
LD BC,#400E ;!HARDCODE LD BC,CMOS_CELL.BootUpParams.Mask.SaveRAMdisks ;#400E
CALL G_VALUE CALL G_VALUE
OR A OR A
CALL NZ,CCHAIN CALL NZ,CCHAIN
@ -521,7 +521,7 @@ START:
CALL RESCREEN CALL RESCREEN
;R06 ;R06
LD BC,#010E ; QUICK START LD BC,CMOS_CELL.BootUpParams.Mask.QuickStart ;#010E
CALL G_VALUE CALL G_VALUE
POP BC POP BC
INC B INC B
@ -663,7 +663,7 @@ INFO_MESSAGE: ;!FIXIT
CALL TSETUP CALL TSETUP
LD BC,#0710 ; !HARDCODE ¬ áª  ¨ ï祩ª  ¤«ï ç⥭¨ï §­ ç¥­¨ï ª¬®á ¤«ï ®á­®¢­®£® § £à㧮筮£® ¤à ©¢  LD BC,CMOS_CELL.BootDrives.Mask.SysDisk ;#0710
CALL PrepareToBOOT CALL PrepareToBOOT
LD A,msgStrings.bootFail LD A,msgStrings.bootFail
LD E,COLORS.CGA.INC.LRED LD E,COLORS.CGA.INC.LRED
@ -676,7 +676,7 @@ ABOOT: LD A,msgStrings.bootAltDrv
;CALL C,POSTMSG ;CALL C,POSTMSG
CALL C,POSTMSC CALL C,POSTMSC
LD BC,#7010 ; !HARDCODE ¬ áª  ¨ ï祩ª  ¤«ï ç⥭¨ï §­ ç¥­¨ï ª¬®á ¤«ï  «ìâ¥à­ â¨¢­®£® § £à㧮筮£® ¤à ©¢  LD BC,CMOS_CELL.BootDrives.Mask.AltSysDisk ;#7010
CALL PrepareToBOOT CALL PrepareToBOOT
LD A,msgStrings.bootFail LD A,msgStrings.bootFail
LD E,COLORS.CGA.INC.LRED LD E,COLORS.CGA.INC.LRED
@ -685,7 +685,7 @@ ABOOT: LD A,msgStrings.bootAltDrv
CALL ScreenPOS.CRLF CALL ScreenPOS.CRLF
;NO START DISK - RESTART / SETUP / ZX SPECTRUM mode ;NO START DISK - RESTART / SETUP / ZX SPECTRUM mode
LD BC,#021D LD BC,CMOS_CELL.Options.Mask.RebootMSG ;#021D
CALL G_VALUE CALL G_VALUE
OR A OR A
JP Z,EXIT_SETUP JP Z,EXIT_SETUP
@ -1065,7 +1065,7 @@ FINSTAL:
; ;
EX AF,AF' EX AF,AF'
OUT (SLOT3),A OUT (SLOT3),A
LD BC,#0311 ; !HARDCODE LD BC,CMOS_CELL.DrivesSetup_1.Mask.FirstFDD ;#0311
CALL G_VALUE CALL G_VALUE
LD HL,FD720A LD HL,FD720A
OR A OR A
@ -1084,7 +1084,7 @@ SETFD0:
EX AF,AF' EX AF,AF'
OUT (SLOT3),A OUT (SLOT3),A
NOFDD0: NOFDD0:
LD BC,#0C11 LD BC,CMOS_CELL.DrivesSetup_1.Mask.SecondFDD ;#0C11
CALL G_VALUE CALL G_VALUE
LD HL,FD720A LD HL,FD720A
OR A OR A
@ -1280,7 +1280,7 @@ RCHAIN:
CCHAIN: CCHAIN:
LD HL,MEMMAP2 LD HL,MEMMAP2
LD DE,#C200 LD DE,SYS_PAGE.RAMD_FAT
XOR A XOR A
CCHAINC: CCHAINC:
CP (HL) CP (HL)
@ -1303,16 +1303,16 @@ TRQUICK:
; %0000'1100 - TR DOS B: Default / FDD / HDD / RMD ; %0000'1100 - TR DOS B: Default / FDD / HDD / RMD
; %0011'0000 - TR DOS C: Default / FDD / HDD / RMD ; %0011'0000 - TR DOS C: Default / FDD / HDD / RMD
; %1100'0000 - TR DOS D: Default / FDD / HDD / RMD ; %1100'0000 - TR DOS D: Default / FDD / HDD / RMD
LD BC,#031E LD BC,CMOS_CELL.TRDOSmount.Mask.A ;#031E
LD A,0 LD A,0
CALL TRDOSX CALL TRDOSX
LD BC,#0C1E LD BC,CMOS_CELL.TRDOSmount.Mask.B ;#0C1E
LD A,1 LD A,1
CALL TRDOSX CALL TRDOSX
LD BC,#301E LD BC,CMOS_CELL.TRDOSmount.Mask.C ;#301E
LD A,2 LD A,2
CALL TRDOSX CALL TRDOSX
LD BC,#C01E LD BC,CMOS_CELL.TRDOSmount.Mask.D ;#C01E
LD A,3 LD A,3
TRDOSX: TRDOSX:
@ -1408,87 +1408,6 @@ ElementsBuffer:
.DownCenter: BYTE "Á" ; DC - DownCenter .DownCenter: BYTE "Á" ; DC - DownCenter
.Size EQU $-ElementsBuffer .Size EQU $-ElementsBuffer
; ;
/*
SDOUBLE:
DB #C9
DB #BB
DB #CD
DB #BA
DB #C8
DB #BC
DB #CC
DB #B9
DB #CB
DB #CA
SSINGLE:
DB #DA
DB #BF
DB #C4
DB #B3
DB #C0
DB #D9
DB #C3
DB #B4
DB #C2
DB #C1
SSIN_DW:
DB #C9
DB #BB
DB #C4
DB #BA
DB #C7
DB #B6
DB #C7
DB #B6
DB #D1
DB #C1
SSIN_UP:
DB #C7
DB #B6
DB #C4
DB #BA
DB #C8
DB #BC
DB #C7
DB #B6
DB #C2
DB #CF
SSIN_AL:
DB #C7
DB #B6
DB #C4
DB #BA
DB #C7
DB #B6
DB #C7
DB #B6
DB #C2
DB #C1
;
SELEM:
UL: DB #DA
UR: DB #BF
ZL: DB #C4
VL: DB #B3
LL: DB #C0
LR: DB #D9
LC: DB #C3
RC: DB #B4
UC: DB #C2
DC: DB #C1
;
*/
INCLUDE 'VIDEO_IO.asm' INCLUDE 'VIDEO_IO.asm'
INCLUDE 'AUTOIDE.asm' INCLUDE 'AUTOIDE.asm'
@ -1510,21 +1429,21 @@ FindStringAddr:
LD H,(HL) LD H,(HL)
LD L,A LD L,A
RET RET
/*
Get_Item_Address: ; Get_Item_Address:
LD L,A ; LD L,A
LD H,0 ; LD H,0
LD BC,MSG_Buffer ; LD BC,MSG_Buffer
ADD HL,HL ; ADD HL,HL
ADD HL,BC ; ADD HL,BC
LD A,(HL) ; LD A,(HL)
INC HL ; INC HL
LD H,(HL) ; LD H,(HL)
LD L,A ; LD L,A
INC HL ; INC HL
INC HL ; INC HL
RET ; RET
*/
POSTLEN: POSTLEN:
CALL FindStringAddr CALL FindStringAddr
LD BC,#0100 LD BC,#0100
@ -1594,34 +1513,11 @@ PRINT_CHANEL:
LD D,#FF LD D,#FF
JP LP_PRINT_LINE6 JP LP_PRINT_LINE6
; ;
/*
Detecting IDE Primary Master ... [Press F4 to skip]
Ž¯à¥¤¥«ï¥¬ <EFBFBD>¥à¢¨ç­ë© IDE Master ... [F4 ¤«ï ¯à®¯ã᪠]
Boot from HDD Primary IDE Master OK
Boot from HDD Primary IDE Slave OK
Boot from HDD Secondary IDE Master OK
Boot from HDD Secondary IDE Slave OK
 ¯ã᪠á HDD Secondary IDE Master OK
 ¯ã᪠á CD-ROM Secondary IDE Master OK
Boot from ATAPI Secondary IDE Master OK
*/
;--------------------------------------- ;---------------------------------------
INCLUDE 'src/bios/ROM/SETUP/messages.z80' INCLUDE 'src/bios/ROM/SETUP/messages.z80'
;--------------------------------------- ;---------------------------------------
; ;
/*
MSG_Buffer_Length EQU MSG_ENG_END-MSG_ENG
STACK EQU $+128
MSG_Buffer EQU STACK+2
TMP_BUFFER EQU MSG_Buffer+MSG_Buffer_Length
IF TMP_BUFFER+1024 > #C000
DISPLAY 'Page limit exceeded by: ',/A,$-#C000
ASSERT TMP_BUFFER+1024 > #C000
ENDIF
*/
STRUCT MAIN_BUFFERS STRUCT MAIN_BUFFERS
ID BLOCK #100 ID BLOCK #100

View File

@ -1,8 +1,8 @@
;U_SETUP: ;U_SETUP:
SETTINGS: SETTINGS:
LD A,CMOS.Cell.ScreenSET LD A,CMOS_CELL.ScreenSET
CALL READCMS CALL READCMS
AND CMOS.Cell.ScreenSET.Mask.ColorStyle AND high CMOS_CELL.ScreenSET.Mask.ColorStyle
LD L,A LD L,A
CALL CSET CALL CSET
LD DE,0 LD DE,0
@ -248,13 +248,13 @@ DECITM:
JP PCURSOR JP PCURSOR
CCHANGE: CCHANGE:
LD A,CMOS.Cell.ScreenSET LD A,CMOS_CELL.ScreenSET
CALL READCMS CALL READCMS
INC A INC A
AND CMOS.Cell.ScreenSET.Mask.ColorStyle AND high CMOS_CELL.ScreenSET.Mask.ColorStyle
LD L,A LD L,A
LD B,A LD B,A
LD A,CMOS.Cell.ScreenSET LD A,CMOS_CELL.ScreenSET
CALL WRITCMS CALL WRITCMS
CSET: CSET:
LD H,0 LD H,0
@ -826,9 +826,9 @@ setXYpos:
JP RESCREEN JP RESCREEN
setVsinc: setVsinc:
ld a,CMOS.Cell.ScreenSET ld a,CMOS_CELL.ScreenSET
call READCMS call READCMS
and CMOS.Cell.ScreenSET.Mask.Sinc and high CMOS_CELL.ScreenSET.Mask.Sinc
SCF SCF
jr z,.skip ;320 jr z,.skip ;320
SLA A SLA A
@ -843,9 +843,9 @@ setLang:
ld (ITEM_Restore),a ld (ITEM_Restore),a
pop hl ; delete return adress from stack pop hl ; delete return adress from stack
jp SETTINGS jp SETTINGS
setInt: ld a,CMOS.Cell.ScreenSET setInt: ld a,CMOS_CELL.ScreenSET
call READCMS call READCMS
and CMOS.Cell.ScreenSET.Mask.Int and high CMOS_CELL.ScreenSET.Mask.Int
jr nz,.skipDefaultInt jr nz,.skipDefaultInt
ld a,2 ; Pentagon sync - default ld a,2 ; Pentagon sync - default
jr .set jr .set

View File

@ -227,7 +227,7 @@ PRSYM: ;LD BC,1*256 + BIOS.LP_PRINT_SYM
LOGOTYP: LOGOTYP:
CALL LOGOX CALL LOGOX
LD BC,#180E LD BC,CMOS_CELL.BootUpParams.Mask.StartDelay
CALL G_VALUE CALL G_VALUE
OR A OR A
JR Z,EASYDLY ;MIN (DISABLE) JR Z,EASYDLY ;MIN (DISABLE)
@ -262,7 +262,7 @@ NOWLOGO:
CALL WIN_OPEN CALL WIN_OPEN
LD DE,0 LD DE,0
LD HL,#0920 ;LOGOTYPE SIZE LD HL,#0920 ;!HARDCODE LOGOTYPE SIZE
LD B,7 LD B,7
JP LP_CLS_WIN JP LP_CLS_WIN
@ -329,24 +329,24 @@ LOGOX: LD IX,win_descriptor.tab320x256
win_descriptor: win_descriptor:
.tab80x32 Window_UserVars{ .tab80x32 Window_UserVars{
40, ; £®à¨§®­â «ì­ë© à §¬¥à ®ª­  ¢ §­ ª®¬¥áâ å 40, ; £®à¨§®­â «ì­ë© à §¬¥à ®ª­  ¢ §­ ª®¬¥áâ å
32, ; ¢¥à⨪ «ì­ë© à §¬¥à ¢ §­ ª®¬¥áâ å 32, ; ¢¥à⨪ «ì­ë© à §¬¥à ¢ §­ ª®¬¥áâ å
0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® £®à¨§®­â «¨ ­  íªà ­¥ 0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® £®à¨§®­â «¨ ­  íªà ­¥
0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® ¢¥à⨪ «¨ ­  íªà ­¥ 0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® ¢¥à⨪ «¨ ­  íªà ­¥
%0001'1011, ; ०¨¬ §­ ª®¬¥áâ  %0001'1011, ; ०¨¬ §­ ª®¬¥áâ 
0, ; ¤®¯®«­¨â¥«ì­ë© ०¨¬ §­ ª®¬¥áâ  0, ; ¤®¯®«­¨â¥«ì­ë© ०¨¬ §­ ª®¬¥áâ 
0, ; ¯®«®¦¥­¨¥ ¯® X ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬) 0, ; ¯®«®¦¥­¨¥ ¯® X ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
0 ; ¯®«®¦¥­¨¥ ¯® Y ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬) 0 ; ¯®«®¦¥­¨¥ ¯® Y ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
} }
.tab320x256 Window_UserVars{ .tab320x256 Window_UserVars{
16, ; £®à¨§®­â «ì­ë© à §¬¥à ®ª­  ¢ §­ ª®¬¥áâ å 16, ; £®à¨§®­â «ì­ë© à §¬¥à ®ª­  ¢ §­ ª®¬¥áâ å
9, ; ¢¥à⨪ «ì­ë© à §¬¥à ¢ §­ ª®¬¥áâ å 9, ; ¢¥à⨪ «ì­ë© à §¬¥à ¢ §­ ª®¬¥áâ å
0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® £®à¨§®­â «¨ ­  íªà ­¥ 0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® £®à¨§®­â «¨ ­  íªà ­¥
0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® ¢¥à⨪ «¨ ­  íªà ­¥ 0, ; ¯®«®¦¥­¨¥ ®ª­  ¯® ¢¥à⨪ «¨ ­  íªà ­¥
%0010'0000, ; ०¨¬ §­ ª®¬¥áâ  %0010'0000, ; ०¨¬ §­ ª®¬¥áâ 
0, ; ¤®¯®«­¨â¥«ì­ë© ०¨¬ §­ ª®¬¥áâ  0, ; ¤®¯®«­¨â¥«ì­ë© ०¨¬ §­ ª®¬¥áâ 
8, ; ¯®«®¦¥­¨¥ ¯® X ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬) 8, ; ¯®«®¦¥­¨¥ ¯® X ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
0 ; ¯®«®¦¥­¨¥ ¯® Y ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬) 0 ; ¯®«®¦¥­¨¥ ¯® Y ¢ ¯®«¥ £à ä¨ª¨ (¯® §­ ª®¬¥áâ ¬)
} }
; ;