713 lines
12 KiB
Plaintext
713 lines
12 KiB
Plaintext
|
||
; LAST UPDATE: 24.03.2025 savelij
|
||
|
||
PALITRA.RESERV EQU PALETTE + 0x34
|
||
|
||
;[]==========================================================[]
|
||
SetupR
|
||
SETPORT WINSP.Y_PORT,0xC0
|
||
LD HL,SetInvert
|
||
PUSH HL
|
||
LD HL,PALETTE
|
||
LD DE,TempPALETTE
|
||
LD BC,0x0040
|
||
LDIR
|
||
LD A,(SavePanels)
|
||
LD (SaveSav+1),A
|
||
OR A
|
||
LD A,0xFE
|
||
JR Z,.L1
|
||
INC A
|
||
.L1 LD (SaveFlg),A
|
||
SUB A
|
||
LD (SaveFlag),A
|
||
LD A,(AutoActivatePanel)
|
||
LD (AutoActivatePanelFlag),A
|
||
OR A
|
||
LD A,0xFF
|
||
JR Z,.L2
|
||
DEC A
|
||
.L2: LD (ActivateFlg),A
|
||
MAKEWINDOW WINSUBOBJ.STORE
|
||
W_MAIN 96,64,448,142
|
||
; W_MAIN 32,32,448,142
|
||
W_FILL 4,2,440,10,COLORI.BLACK
|
||
W_TEXT 208,3,COLORI.WHITE,"Setup"
|
||
W_BORDER 8,18,144,53
|
||
W_FILL 10,19,140,51,COLORI.WHITE
|
||
W_TEXT 14,21,COLORP.WHITE,"Panel"
|
||
W_TEXT 14,29,COLORP.WHITE,"Files"
|
||
W_TEXT 14,37,COLORP.WHITE,"Selected files"
|
||
W_TEXT 14,45,COLORP.WHITE,"Invert background"
|
||
W_TEXT 14,53,COLORP.WHITE,"Invert foreground"
|
||
W_TEXT 14,61,COLORP.WHITE,"Invert foreground (select)"
|
||
W_TEXT 164,24,COLORP.HIGHGRAY,"R:"
|
||
W_BORDER 176,22,164,10
|
||
W_ICONLEFTARROW 178,23
|
||
W_ICONRIGHTARROW 322,23
|
||
W_TEXT 164,40,COLORP.HIGHGRAY,"G:"
|
||
W_BORDER 176,38,164,10
|
||
W_ICONLEFTARROW 178,39
|
||
W_ICONRIGHTARROW 322,39
|
||
W_TEXT 164,56,COLORP.HIGHGRAY,"B:"
|
||
W_BORDER 176,54,164,10
|
||
W_ICONLEFTARROW 178,55
|
||
W_ICONRIGHTARROW 322,55
|
||
W_BORDER 372,23,64,40
|
||
W_HORIZLINE 4,75,440
|
||
W_BORDER 16,81,20,11
|
||
W_FILL 18,82,16,9,COLORI.WHITE
|
||
W_TEXT 20,83,COLORP.WHITE,"\0"
|
||
ActivateFlg EQU $-2
|
||
W_TEXT 40,84,COLORP.HIGHGRAY,"activate panel in which changed drive"
|
||
W_BORDER 16,99,20,11
|
||
W_FILL 18,100,16,9,COLORI.WHITE
|
||
W_TEXT 20,101,COLORP.WHITE,"\0"
|
||
SaveFlg EQU $-2
|
||
W_TEXT 40,102,COLORP.HIGHGRAY,"save Information about panels"
|
||
W_BUTTON 360,98,72,14
|
||
W_TEXT 384,101,COLORP.HIGHGRAY,"Save"
|
||
W_HORIZLINE 4,115,440
|
||
W_BUTTON 272,120,72,14
|
||
W_TEXT 292,123,COLORP.HIGHGRAY,"Cancel"
|
||
W_BUTTON 360,120,72,14
|
||
W_TEXT 390,123,COLORP.HIGHGRAY,"Ok"
|
||
W_END
|
||
|
||
SUB A
|
||
LD (CurElement),A
|
||
CALL SetSetupInv
|
||
LD IX,BarRed
|
||
CALL InitScrollBar
|
||
LD IX,BarGreen
|
||
CALL InitScrollBar
|
||
LD IX,BarBlue
|
||
CALL InitScrollBar
|
||
CALL InitElement
|
||
SetupLoop LD IX,SetupTab
|
||
CALL TestCoords
|
||
SPDSS DSSF.SCANKEY
|
||
JR Z,SetupLoop
|
||
LD A,B
|
||
AND 0x3F
|
||
JR Z,SetupLoop0
|
||
BIT 4,B
|
||
JR NZ,SetupLoop
|
||
BIT 5,B
|
||
JR Z,SetupLoop
|
||
LD HL,SetupLoop
|
||
PUSH HL
|
||
LD A,D
|
||
AND 0x7F
|
||
CP SC.R
|
||
JP Z,InputRED
|
||
CP SC.G
|
||
JP Z,InputGREEN
|
||
CP SC.B
|
||
JP Z,InputBLUE
|
||
RET
|
||
|
||
SetupLoop0 LD A,B
|
||
AND 0xC0
|
||
JR Z,SetupLoop1
|
||
LD HL,SetupLoop
|
||
PUSH HL
|
||
LD A,E
|
||
AND 0x5F
|
||
CP 'R'
|
||
JP Z,DecRED
|
||
CP 'G'
|
||
JP Z,DecGREEN
|
||
CP 'B'
|
||
JP Z,DecBLUE
|
||
RET
|
||
|
||
SetupLoop1 LD A,E
|
||
RES 5,A
|
||
CP 0x1B
|
||
JP Z,SetupCancel
|
||
CP 0x0D
|
||
JP Z,SetupOkey
|
||
CP 'C'
|
||
JP Z,SetupCancel
|
||
CP 'O'
|
||
JP Z,SetupOkey
|
||
LD HL,SetupLoop
|
||
PUSH HL
|
||
CP 'S'
|
||
JP Z,SaveSetup
|
||
CP 'R'
|
||
JP Z,IncRED
|
||
CP 'G'
|
||
JP Z,IncGREEN
|
||
CP 'B'
|
||
JP Z,IncBLUE
|
||
CP 'I'
|
||
JP Z,ChSavePan
|
||
CP 'A'
|
||
JP Z,ChActivatePan
|
||
OR A
|
||
RET NZ
|
||
LD A,D
|
||
CP SC.X8
|
||
JP Z,BoxUp
|
||
CP SC.X2
|
||
JP Z,BoxDown
|
||
CP SC.X7
|
||
JP Z,BoxHome
|
||
CP SC.X1
|
||
JP Z,BoxEnd
|
||
CP SC.X9
|
||
JP Z,BoxHome
|
||
CP SC.X3
|
||
JP Z,BoxEnd
|
||
RET
|
||
|
||
;[]----------------------------------------------------------[]
|
||
SaveSetup CALL SetClock
|
||
PUSH IY
|
||
SPDSS DSSF.CURDISK
|
||
POP IY
|
||
LD HL,WorkBuffer
|
||
ADD A,'A'
|
||
LD (HL),A
|
||
INC HL
|
||
LD (HL),':'
|
||
INC HL
|
||
PUSH IY
|
||
SPDSS DSSF.CURDIR
|
||
POP IY
|
||
LD HL,FlexDIRECTORY
|
||
PUSH IY
|
||
SPDSS DSSF.CHDIR
|
||
POP IY
|
||
PUSH AF
|
||
CALL C,DOSError
|
||
POP AF
|
||
JP C,SetupSaveEx
|
||
LD HL,SetupName
|
||
PUSH IY
|
||
SPDSS DSSF.CREATE,,0
|
||
POP IY
|
||
PUSH AF
|
||
CALL C,DOSError
|
||
POP AF
|
||
JR C,SetupSaveEx
|
||
EX AF,AF'
|
||
LD HL,SetupHead
|
||
LD DE,WorkBuffer+0x100
|
||
LD BC,11
|
||
LDIR
|
||
LD HL,TempPALETTE
|
||
LD BC,0x0040
|
||
LDIR
|
||
LD A,(SavePanels)
|
||
LD (DE),A
|
||
INC DE
|
||
OR A
|
||
JR Z,SvSetup
|
||
LD A,(MouseFlag)
|
||
LD (DE),A
|
||
INC DE
|
||
LD HL,LeftPanel
|
||
PUSH HL
|
||
LDI
|
||
LDI
|
||
LDI
|
||
POP HL
|
||
LD BC,PANEL.FILEMASK
|
||
ADD HL,BC
|
||
SUB A
|
||
.L1 LDI
|
||
CP (HL)
|
||
JR NZ,.L1
|
||
LD (DE),A
|
||
INC DE
|
||
LD HL,RightPanel
|
||
PUSH HL
|
||
LDI
|
||
LDI
|
||
LDI
|
||
POP HL
|
||
LD BC,PANEL.FILEMASK
|
||
ADD HL,BC
|
||
SUB A
|
||
.L2 LDI
|
||
CP (HL)
|
||
JR NZ,.L2
|
||
LD (DE),A
|
||
INC DE
|
||
SvSetup ld a,(AutoActivatePanelFlag)
|
||
ld (de),a
|
||
inc de
|
||
LD HL,WorkBuffer+0x100
|
||
OR A
|
||
EX DE,HL
|
||
SBC HL,DE
|
||
EX DE,HL
|
||
EX AF,AF'
|
||
PUSH IY
|
||
PUSH AF
|
||
SPDSS DSSF.WRITE
|
||
POP AF
|
||
SPDSS DSSF.CLOSE
|
||
POP IY
|
||
LD A,0x01
|
||
LD (SaveFlag),A
|
||
SetupSaveEx LD HL,WorkBuffer
|
||
PUSH IY
|
||
SPDSS DSSF.CHDIR
|
||
POP IY
|
||
JP SetMouse
|
||
|
||
SetupHead DEFB 0xAE,"FlexSetup",0
|
||
SetupName DZ FILENAME.FN_INI
|
||
|
||
;--------------------------------------------------------------
|
||
SetupCancel
|
||
WINDOWCLOSE
|
||
SaveSav LD A,0x00
|
||
LD (SavePanels),A
|
||
JR SetupExit
|
||
|
||
SetupOkey
|
||
WINDOWCLOSE
|
||
LD HL,TempPALETTE
|
||
LD DE,PALETTE
|
||
LD BC,0x0040
|
||
PUSH DE
|
||
LDIR
|
||
POP HL
|
||
LD DE,0x1000
|
||
SPBIOS BIOSF.PIC_GET_PAL,0xFF,0
|
||
LD A,(AutoActivatePanelFlag)
|
||
LD (AutoActivatePanel),A
|
||
SetupExit LD A,(SaveFlag)
|
||
OR A
|
||
RET Z
|
||
LD IX,LeftPanel
|
||
LD HL,LeftPanel + PANEL.CURRPATH
|
||
LD DE,FlexDIRECTORY
|
||
LD A,(DE)
|
||
SetRef1 CP (HL)
|
||
JR NZ,SetRef2
|
||
INC HL
|
||
INC DE
|
||
LD A,(DE)
|
||
OR A
|
||
JR NZ,SetRef1
|
||
CP (HL)
|
||
CALL Z,RefreshSetup
|
||
SetRef2 LD IX,RightPanel
|
||
LD HL,RightPanel + PANEL.CURRPATH
|
||
LD DE,FlexDIRECTORY
|
||
LD A,(DE)
|
||
SetRef3 CP (HL)
|
||
JR NZ,SetRef4
|
||
INC HL
|
||
INC DE
|
||
LD A,(DE)
|
||
OR A
|
||
JR NZ,SetRef3
|
||
CP (HL)
|
||
CALL Z,RefreshSetup
|
||
SetRef4 PUSH IY
|
||
POP HL
|
||
LD DE,PANEL.CURRPATH
|
||
ADD HL,DE
|
||
PUSH IY
|
||
SPDSS DSSF.CHDIR
|
||
POP IY
|
||
RET
|
||
|
||
RefreshSetup BIT VIEWFLAG.B_TREE,(IX+PANEL.VIEWFLAG)
|
||
RET NZ
|
||
PUSH IY
|
||
PUSH IX
|
||
POP IY
|
||
PUSH IY
|
||
POP HL
|
||
LD DE,PANEL.CURRPATH
|
||
ADD HL,DE
|
||
PUSH IY
|
||
SPDSS DSSF.CHDIR
|
||
POP IY
|
||
JR C,RefrErr
|
||
CALL ReadDIR
|
||
CALL PrintDIR
|
||
CALL PrnFileInfo
|
||
PUSH IY
|
||
POP IX
|
||
LD DE,PANEL.BARXL
|
||
ADD IX,DE
|
||
CALL InitScrollBar
|
||
LD A,(IY+PANEL.VIEWFLAG)
|
||
AND VIEWFLAG.MASK
|
||
PUSH AF
|
||
CALL Z,PrnHScrBar
|
||
POP AF
|
||
CALL NZ,PrnVScrBar
|
||
RefrErr POP IY
|
||
RET
|
||
|
||
SaveFlag DEFB 0x00
|
||
|
||
;--------------------------------------------------------------
|
||
BoxUp LD A,(CurElement)
|
||
DEC A
|
||
RET M
|
||
JR BoxKeyExt
|
||
|
||
BoxDown LD A,(CurElement)
|
||
INC A
|
||
CP 0x06
|
||
RET Z
|
||
JR BoxKeyExt
|
||
|
||
BoxHome LD A,(CurElement)
|
||
OR A
|
||
RET Z
|
||
SUB A
|
||
JR BoxKeyExt
|
||
|
||
BoxEnd LD A,(CurElement)
|
||
CP 0x05
|
||
RET Z
|
||
LD A,0x05
|
||
JR BoxKeyExt
|
||
|
||
NewElement LD A,(CurElement)
|
||
LD C,A
|
||
LD A,E
|
||
SUB 0x55
|
||
SRL A
|
||
SRL A
|
||
SRL A
|
||
CP C
|
||
RET Z
|
||
BoxKeyExt PUSH AF
|
||
CALL ResSetupInv
|
||
POP AF
|
||
LD (CurElement),A
|
||
CALL SetSetupInv
|
||
JP InitElement
|
||
|
||
;--------------------------------------------------------------
|
||
ChSavePan LD HL,SavePanTxt
|
||
LD A,(SavePanels)
|
||
XOR 0x01
|
||
LD (SavePanels),A
|
||
XOR 0x01
|
||
INC A
|
||
NEG
|
||
LD (HL),A
|
||
LD DE,0x0074
|
||
LD BC,0x00A5
|
||
LD A,0xF0
|
||
CALL PrnTxtLnIFF
|
||
JP ResFire
|
||
|
||
SavePanTxt DEFB 0x00,0x00
|
||
|
||
;--------------------------------------------------------------
|
||
ChActivatePan: LD HL,SavePanTxt
|
||
LD A,0
|
||
AutoActivatePanelFlag EQU $-1
|
||
XOR 0x01
|
||
LD (AutoActivatePanelFlag),A
|
||
INC A
|
||
NEG
|
||
LD (HL),A
|
||
LD DE,0x0074
|
||
LD BC,0x0093
|
||
LD A,0xF0
|
||
CALL PrnTxtLnIFF
|
||
JP ResFire
|
||
|
||
;--------------------------------------------------------------
|
||
DecRED LD HL,PALITRA.RESERV + 2
|
||
LD DE,PrintRED
|
||
JR DecCOLOR
|
||
|
||
IncRED LD HL,PALITRA.RESERV + 2
|
||
LD DE,PrintRED
|
||
JR IncCOLOR
|
||
|
||
DecGREEN LD HL,PALITRA.RESERV + 1
|
||
LD DE,PrintGREEN
|
||
JR DecCOLOR
|
||
|
||
IncGREEN LD HL,PALITRA.RESERV + 1
|
||
LD DE,PrintGREEN
|
||
JR IncCOLOR
|
||
|
||
DecBLUE LD HL,PALITRA.RESERV
|
||
LD DE,PrintBLUE
|
||
JR DecCOLOR
|
||
|
||
IncBLUE LD HL,PALITRA.RESERV
|
||
LD DE,PrintBLUE
|
||
JR IncCOLOR
|
||
|
||
DecCOLOR LD A,(HL)
|
||
OR A
|
||
RET Z
|
||
DEC A
|
||
LD (HL),A
|
||
JR DecIncCOLOR
|
||
|
||
IncCOLOR LD A,(HL)
|
||
INC A
|
||
RET Z
|
||
LD (HL),A
|
||
DecIncCOLOR LD HL,PrnPALETTE
|
||
PUSH HL
|
||
PUSH DE
|
||
LD HL,ElementColor
|
||
LD A,(CurElement)
|
||
ADD A,L
|
||
LD L,A
|
||
JR NC,.L1
|
||
INC H
|
||
.L1 LD A,(HL)
|
||
ADD A,A
|
||
ADD A,A
|
||
LD DE,TempPALETTE
|
||
ADD A,E
|
||
LD E,A
|
||
JR NC,.L2
|
||
INC D
|
||
.L2 LD HL,PALITRA.RESERV
|
||
LDI
|
||
LDI
|
||
LDI
|
||
RET
|
||
|
||
;--------------------------------------------------------------
|
||
InputRED LD HL,PALITRA.RESERV + 2
|
||
LD DE,PrintRED
|
||
LD BC,0x0058
|
||
JR InputColor
|
||
|
||
InputGREEN LD HL,PALITRA.RESERV + 1
|
||
LD DE,PrintGREEN
|
||
LD BC,0x0068
|
||
JR InputColor
|
||
|
||
InputBLUE LD HL,PALITRA.RESERV
|
||
LD DE,PrintBLUE
|
||
LD BC,0x0078
|
||
InputColor LD (ColorY),BC
|
||
LD BC,DecIncCOLOR
|
||
PUSH BC
|
||
PUSH HL
|
||
PUSH DE
|
||
LD DE,ColText
|
||
LD A,(HL)
|
||
CALL ConvNumTxt8
|
||
SUB A
|
||
LD (DE),A
|
||
LD A,E
|
||
SUB LOW (ColText)
|
||
LD (ColLen),A
|
||
InpAg LD IX,ColorStr
|
||
LD HL,EmptyTab
|
||
CALL InputLine
|
||
POP DE
|
||
POP HL
|
||
RET C
|
||
PUSH HL
|
||
PUSH DE
|
||
LD DE,ColText
|
||
CALL ConvTxtNum16
|
||
JR C,InpAg
|
||
LD A,H
|
||
OR A
|
||
JR NZ,InpAg
|
||
LD A,L
|
||
POP DE
|
||
POP HL
|
||
LD (HL),A
|
||
RET
|
||
|
||
ColorStr DEFB 0x03,0x00,0x00,0x00
|
||
ColLen DEFB 0x00
|
||
DEFW 0x01B8
|
||
ColorY DEFW 0x0000
|
||
DEFW 0x001A
|
||
DEFB 0x80
|
||
ColText DUPL 0x04,0x00
|
||
|
||
;--------------------------------------------------------------
|
||
CurElement DEFB 0x00
|
||
SavePanels DEFB 0x01
|
||
ElementColor DB COLORI.PANEL,COLORI.FILES,COLORI.SELECTFILES
|
||
DB COLORI.INVERTPAPER,COLORI.INVERTINK,COLORI.INVSELFILES
|
||
|
||
BarRed DEFW 0x0122 ; X <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0057 ; Y <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0080 ; Max <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0000 ; ⥪.<2E><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0000 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20>祩<EFBFBD><E7A5A9> BarLeft
|
||
DEFW 0x0000 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20>祩<EFBFBD><E7A5A9> BarRight
|
||
DEFW 0x0198 ; <20><><EFBFBD>-<2D><> 䠩<><E4A0A9><EFBFBD> <20><> <20><>࠭<EFBFBD><E0A0AD><EFBFBD>
|
||
DEFW 0x0FF0 ; <20><>饥 <20><><EFBFBD>-<2D><> 䠩<><E4A0A9><EFBFBD>
|
||
CRed DEFW 0x0000 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<> <20><> <20><>࠭<EFBFBD><E0A0AD><EFBFBD>
|
||
|
||
BarGreen DEFW 0x0122 ; X <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0067 ; Y <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0080 ; Max <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0000 ; ⥪.<2E><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0000 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20>祩<EFBFBD><E7A5A9> BarLeft
|
||
DEFW 0x0000 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20>祩<EFBFBD><E7A5A9> BarRight
|
||
DEFW 0x0198 ; <20><><EFBFBD>-<2D><> 䠩<><E4A0A9><EFBFBD> <20><> <20><>࠭<EFBFBD><E0A0AD><EFBFBD>
|
||
DEFW 0x0FF0 ; <20><>饥 <20><><EFBFBD>-<2D><> 䠩<><E4A0A9><EFBFBD>
|
||
CGreen DEFW 0x0000 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<> <20><> <20><>࠭<EFBFBD><E0A0AD><EFBFBD>
|
||
|
||
BarBlue DEFW 0x0122 ; X <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0077 ; Y <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0080 ; Max <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0000 ; ⥪.<2E><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD>
|
||
DEFW 0x0000 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20>祩<EFBFBD><E7A5A9> BarLeft
|
||
DEFW 0x0000 ; <20><><EFBFBD><EFBFBD><EFBFBD> <20>祩<EFBFBD><E7A5A9> BarRight
|
||
DEFW 0x0198 ; <20><><EFBFBD>-<2D><> 䠩<><E4A0A9><EFBFBD> <20><> <20><>࠭<EFBFBD><E0A0AD><EFBFBD>
|
||
DEFW 0x0FF0 ; <20><>饥 <20><><EFBFBD>-<2D><> 䠩<><E4A0A9><EFBFBD>
|
||
CBlue DEFW 0x0000 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<> <20><> <20><>࠭<EFBFBD><E0A0AD><EFBFBD>
|
||
|
||
TempPALETTE DUPL 0x40,0
|
||
|
||
;--------------------------------------------------------------
|
||
ResSetupInv LD DE,(COLORP.BLUE + COLORI.WHITE) << 8 | (COLORP.WHITE + COLORI.BLACK) ;0x4FF0
|
||
JR SetupInvert
|
||
|
||
SetSetupInv LD DE,(COLORP.WHITE + COLORI.BLACK) << 8 | (COLORP.BLUE + COLORI.WHITE) ;0xF04F
|
||
SetupInvert LD HL,85 ; Y <20><>室<EFBFBD><E5AEA4><EFBFBD>
|
||
; TODO <20><> <20><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, ᤥ<><E1A4A5><EFBFBD><EFBFBD> <20>ਢ離<E0A8A2>
|
||
LD A,(CurElement)
|
||
OR A
|
||
JR Z,SetupI1
|
||
LD B,A
|
||
PUSH DE
|
||
LD DE,8
|
||
.L1 ADD HL,DE
|
||
DJNZ .L1
|
||
POP DE
|
||
SetupI1 LD IX,8 << 8 | 70 ; HIGH -> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, LOW -> <20><>ਭ<EFBFBD>
|
||
LD C,L
|
||
LD B,H ; Y
|
||
LD HL,106 ; X
|
||
; TODO <20><> <20><><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, ᤥ<><E1A4A5><EFBFBD><EFBFBD> <20>ਢ離<E0A8A2>
|
||
JP InvertRectan
|
||
|
||
InitElement LD HL,ElementColor
|
||
LD A,(CurElement)
|
||
ADD A,L
|
||
LD L,A
|
||
JR NC,.L1
|
||
INC H
|
||
.L1 LD A,(HL)
|
||
ADD A,A
|
||
ADD A,A
|
||
LD HL,PALETTE
|
||
ADD A,L
|
||
LD L,A
|
||
JR NC,.L2
|
||
INC H
|
||
.L2 LD DE,PALITRA.RESERV
|
||
LDI
|
||
LDI
|
||
LDI
|
||
CALL PrintRED
|
||
CALL PrintGREEN
|
||
CALL PrintBLUE
|
||
JP PrnPALETTE
|
||
|
||
PrintRED LD DE,WorkBuffer
|
||
LD A,(PALITRA.RESERV + 2)
|
||
LD L,A
|
||
LD H,0x00
|
||
ADD HL,HL
|
||
ADD HL,HL
|
||
ADD HL,HL
|
||
ADD HL,HL
|
||
LD (CRed),HL
|
||
CALL ConvNumTxt8
|
||
LD A,0x04
|
||
SUB E
|
||
LD B,A
|
||
LD A,0x20
|
||
.L1 LD (DE),A
|
||
INC E
|
||
DJNZ .L1
|
||
SUB A
|
||
InitEl1 LD (DE),A
|
||
LD HL,WorkBuffer
|
||
LD DE,0x01B8
|
||
LD BC,0x0058
|
||
LD A,0x80
|
||
CALL PrnTxtLnIFF
|
||
LD IX,BarRed
|
||
JP PrnHScrBar
|
||
|
||
PrintGREEN LD DE,WorkBuffer
|
||
LD A,(PALITRA.RESERV + 1)
|
||
LD L,A
|
||
LD H,0x00
|
||
ADD HL,HL
|
||
ADD HL,HL
|
||
ADD HL,HL
|
||
ADD HL,HL
|
||
LD (CGreen),HL
|
||
CALL ConvNumTxt8
|
||
LD A,0x04
|
||
SUB E
|
||
LD B,A
|
||
LD A,0x20
|
||
.L1 LD (DE),A
|
||
INC E
|
||
DJNZ .L1
|
||
SUB A
|
||
InitEl2 LD (DE),A
|
||
LD HL,WorkBuffer
|
||
LD DE,0x01B8
|
||
LD BC,0x0068
|
||
LD A,0x80
|
||
CALL PrnTxtLnIFF
|
||
LD IX,BarGreen
|
||
JP PrnHScrBar
|
||
|
||
PrintBLUE LD DE,WorkBuffer
|
||
LD A,(PALITRA.RESERV)
|
||
LD L,A
|
||
LD H,0x00
|
||
ADD HL,HL
|
||
ADD HL,HL
|
||
ADD HL,HL
|
||
ADD HL,HL
|
||
LD (CBlue),HL
|
||
CALL ConvNumTxt8
|
||
LD A,0x04
|
||
SUB E
|
||
LD B,A
|
||
LD A,0x20
|
||
.L1 LD (DE),A
|
||
INC E
|
||
DJNZ .L1
|
||
SUB A
|
||
InitEl3 LD (DE),A
|
||
LD HL,WorkBuffer
|
||
LD DE,0x01B8
|
||
LD BC,0x0078
|
||
LD A,0x80
|
||
CALL PrnTxtLnIFF
|
||
LD IX,BarBlue
|
||
JP PrnHScrBar
|
||
|
||
PrnPALETTE LD HL,PALETTE
|
||
LD DE,0x1000
|
||
SPBIOS BIOSF.PIC_GET_PAL,0xFF,0
|
||
MAKEWINDOW WINSUBOBJ.WOBIND
|
||
W_FILL 470,88,60,38,COLORI.RESERVED
|
||
W_END
|
||
RET
|