PIC_GET_PAL optimized and documented
This commit is contained in:
parent
32b684103d
commit
bc3397d204
@ -1 +1 @@
|
|||||||
Subproject commit 9a65a386bfb6aaccc7fb476a3e159a684af65743
|
Subproject commit 90f4b54edb1effbd0b57b0ee64771d27e84023ff
|
||||||
@ -183,9 +183,9 @@ PIC_FN3_NO:
|
|||||||
RET
|
RET
|
||||||
|
|
||||||
;**************************************************************************
|
;**************************************************************************
|
||||||
|
;PIC_FN4:
|
||||||
; ¢å®¤: HL - ¤ ë¥ ¯ «¨âàë RGB, E - ç «ìë© æ¢¥â
|
; ¢å®¤: HL - ¤ ë¥ ¯ «¨âàë RGB, E - ç «ìë© æ¢¥â
|
||||||
; D - ç¨á«® 梥⮢, B - PAL-mask, A - page PAL
|
; D - ç¨á«® 梥⮢, B - PAL-mask, A - page PAL
|
||||||
;PIC_FN4:
|
|
||||||
PIC_SET_PAL:
|
PIC_SET_PAL:
|
||||||
PUSH IX
|
PUSH IX
|
||||||
|
|
||||||
@ -199,18 +199,17 @@ PIC_SET_PAL:
|
|||||||
|
|
||||||
BIT 7,H ; ¯à®¢¥à¨âì ¤à¥á ¤ ëå
|
BIT 7,H ; ¯à®¢¥à¨âì ¤à¥á ¤ ëå
|
||||||
LD C,SLOT3 ; ¥á«¨ ¨¦¥ 8000h
|
LD C,SLOT3 ; ¥á«¨ ¨¦¥ 8000h
|
||||||
LD D,0C3H ; â® £à ä.íªà áâà ¨æ¥ 3
|
LD D,#C3 ; â® £à ä.íªà áâà ¨æ¥ 3
|
||||||
JR Z,PIC_FN4_NO_PAGE1
|
JR Z,.NO_PAGE1
|
||||||
LD D,043H ; ¨ ç¥
|
LD D,#43 ; ¨ ç¥
|
||||||
LD C,SLOT1 ; áâà ¨æ¥ 1
|
LD C,SLOT1 ; áâà ¨æ¥ 1
|
||||||
PIC_FN4_NO_PAGE1:
|
.NO_PAGE1:
|
||||||
|
ADD A,A
|
||||||
|
PUSH AF
|
||||||
|
|
||||||
ADD A,A
|
ADD A,A
|
||||||
JR C,PIC_PAL_READ
|
AND #1C
|
||||||
|
XOR #E0 ; ¬« ¤è¨© ¡ ©â ¤à¥á PAL
|
||||||
ADD A,A
|
|
||||||
AND 1CH
|
|
||||||
XOR 0E0H ; ¬« ¤è¨© ¡ ©â ¤à¥á PAL
|
|
||||||
LD E,A ; DE - ¤à¥á ¢ ¢¨¤¥®-އ“
|
LD E,A ; DE - ¤à¥á ¢ ¢¨¤¥®-އ“
|
||||||
PUSH DE
|
PUSH DE
|
||||||
POP IX ; ¤à¥á ¯ «¨âàë
|
POP IX ; ¤à¥á ¯ «¨âàë
|
||||||
@ -223,8 +222,10 @@ PIC_FN4_NO_PAGE1:
|
|||||||
LD A,#50 ; áâà ¨æ £à ä¨ç¥áª®£® RAM
|
LD A,#50 ; áâà ¨æ £à ä¨ç¥áª®£® RAM
|
||||||
OUT (C),A
|
OUT (C),A
|
||||||
|
|
||||||
PIC_FN4_L1: ; 横« ãáâ ®¢ª¨ 梥⮢ ¯ «¨âàë
|
POP AF
|
||||||
|
JR C,PIC_GET_PAL
|
||||||
|
; 横« ãáâ ®¢ª¨ 梥⮢ ¯ «¨âàë
|
||||||
|
.loopPal:
|
||||||
LD A,(HL) ; B
|
LD A,(HL) ; B
|
||||||
AND D
|
AND D
|
||||||
LD (IX+2),A
|
LD (IX+2),A
|
||||||
@ -248,36 +249,32 @@ PIC_FN4_L1: ; 横
|
|||||||
IN A,(RGADR)
|
IN A,(RGADR)
|
||||||
INC A
|
INC A
|
||||||
OUT (RGADR),A
|
OUT (RGADR),A
|
||||||
|
DJNZ .loopPal ; ¢ë¯®«ïâì, ¯®ª ¥ 0
|
||||||
|
|
||||||
DJNZ PIC_FN4_L1 ; ¢ë¯®«ïâì, ¯®ª ¥ 0
|
.exit: OUT (C),E ; ¢®ááâ ®¢¨âì áâà ¨æã 3
|
||||||
|
|
||||||
OUT (C),E ; ¢®ááâ ®¢¨âì áâà ¨æã 3
|
|
||||||
|
|
||||||
POP AF
|
POP AF
|
||||||
OUT (RGADR),A ; ¢®ááâ ®¢¨âì Y_PORT
|
OUT (RGADR),A ; ¢®ááâ ®¢¨âì Y_PORT
|
||||||
POP IX
|
POP IX
|
||||||
AND A
|
AND A
|
||||||
RET
|
RET
|
||||||
|
|
||||||
PIC_PAL_READ:
|
PIC_GET_PAL:
|
||||||
|
; ADD A,A
|
||||||
|
; AND #1C
|
||||||
|
; XOR #E0 ; ¬« ¤è¨© ¡ ©â ¤à¥á PAL
|
||||||
|
; LD E,A ; DE - ¤à¥á ¢ ¢¨¤¥®-އ“
|
||||||
|
; PUSH DE
|
||||||
|
; POP IX ; ¤à¥á ¯ «¨âàë
|
||||||
|
|
||||||
ADD A,A
|
; LD D,B ; ¬ ᪠PAL
|
||||||
AND 1CH
|
; EX AF,AF' ; ¢¥àãâì ç¨á«® 梥⮢
|
||||||
XOR 0E0H ; ¬« ¤è¨© ¡ ©â ¤à¥á PAL
|
; LD B,A ; ç¨á«® 梥⮢
|
||||||
LD E,A ; DE - ¤à¥á ¢ ¢¨¤¥®-އ“
|
|
||||||
PUSH DE
|
|
||||||
POP IX ; ¤à¥á ¯ «¨âàë
|
|
||||||
|
|
||||||
LD D,B ; ¬ ᪠PAL
|
|
||||||
EX AF,AF' ; ¢¥àãâì ç¨á«® 梥⮢
|
|
||||||
LD B,A ; ç¨á«® 梥⮢
|
|
||||||
|
|
||||||
IN E,(C) ; á®åà ¨âì áâà ¨æã 3
|
|
||||||
LD A,#50 ; áâà ¨æ £à ä¨ç¥áª®£® RAM
|
|
||||||
OUT (C),A
|
|
||||||
|
|
||||||
PIC_FN4_L2: ; 横« ãáâ ®¢ª¨ 梥⮢ ¯ «¨âàë
|
|
||||||
|
|
||||||
|
; IN E,(C) ; á®åà ¨âì áâà ¨æã 3
|
||||||
|
; LD A,#50 ; áâà ¨æ £à ä¨ç¥áª®£® RAM
|
||||||
|
; OUT (C),A
|
||||||
|
; 横« çâ¥¨ï æ¢¥â®¢ ¯ «¨âàë
|
||||||
|
.loopPal:
|
||||||
LD A,(IX+2)
|
LD A,(IX+2)
|
||||||
LD (HL),A ; B
|
LD (HL),A ; B
|
||||||
INC HL
|
INC HL
|
||||||
@ -297,16 +294,15 @@ PIC_FN4_L2: ; 横
|
|||||||
IN A,(RGADR)
|
IN A,(RGADR)
|
||||||
INC A
|
INC A
|
||||||
OUT (RGADR),A
|
OUT (RGADR),A
|
||||||
|
DJNZ .loopPal ; ¢ë¯®«ïâì, ¯®ª ¥ 0
|
||||||
|
|
||||||
DJNZ PIC_FN4_L2 ; ¢ë¯®«ïâì, ¯®ª ¥ 0
|
JR PIC_SET_PAL.exit
|
||||||
|
; OUT (C),E ; ¢®ááâ ®¢¨âì áâà ¨æã 3
|
||||||
OUT (C),E ; ¢®ááâ ®¢¨âì áâà ¨æã 3
|
; POP AF
|
||||||
|
; OUT (RGADR),A ; ¢®ááâ ®¢¨âì Y_PORT
|
||||||
POP AF
|
; POP IX
|
||||||
OUT (RGADR),A ; ¢®ááâ ®¢¨âì Y_PORT
|
; AND A
|
||||||
POP IX
|
; RET
|
||||||
AND A
|
|
||||||
RET
|
|
||||||
|
|
||||||
|
|
||||||
;********************************************************************
|
;********************************************************************
|
||||||
@ -339,9 +335,9 @@ PIC_FN6:
|
|||||||
; AND 3
|
; AND 3
|
||||||
; ADD A,A
|
; ADD A,A
|
||||||
; ADD A,A
|
; ADD A,A
|
||||||
; ADD A,0E0H
|
; ADD A,#E0
|
||||||
; LD L,A
|
; LD L,A
|
||||||
; LD H,43H
|
; LD H,#43
|
||||||
; IN A,(SLOT1)
|
; IN A,(SLOT1)
|
||||||
; PUSH AF
|
; PUSH AF
|
||||||
;
|
;
|
||||||
|
|||||||
@ -594,101 +594,5 @@ DCR01:
|
|||||||
LDIR
|
LDIR
|
||||||
RET
|
RET
|
||||||
|
|
||||||
MODULE COLORS
|
include 'shared_includes/constants/standart_colors.inc'
|
||||||
CGA:
|
|
||||||
; B G R _
|
|
||||||
.PALETTE: DB #00,#00,#00,#00 ; 0 BLACK
|
|
||||||
DB #A8,#00,#00,#00 ; 1 BLUE
|
|
||||||
DB #00,#A8,#00,#00 ; 2 GREEN
|
|
||||||
DB #A8,#A8,#00,#00 ; 3 CYAN
|
|
||||||
DB #00,#00,#A8,#00 ; 4 RED
|
|
||||||
DB #A8,#00,#A8,#00 ; 5 MAGENTA
|
|
||||||
DB #00,#54,#A8,#00 ; 6 BROWN
|
|
||||||
DB #A8,#A8,#A8,#00 ; 7 WHITE
|
|
||||||
DB #54,#54,#54,#00 ; 8 GRAY
|
|
||||||
DB #FC,#54,#54,#00 ; 9 BRIGHT BLUE
|
|
||||||
DB #54,#FC,#54,#00 ; 10 BRIGHT GREEN
|
|
||||||
DB #FC,#FC,#54,#00 ; 11 BRIGHT CYAN
|
|
||||||
DB #54,#54,#FC,#00 ; 12 BRIGHT RED
|
|
||||||
DB #FC,#54,#FC,#00 ; 13 BRIGHT MAGENTA
|
|
||||||
DB #54,#FC,#FC,#00 ; 14 YELLOW
|
|
||||||
DB #FC,#FC,#FC,#00 ; 15 WHITE
|
|
||||||
;
|
|
||||||
;
|
|
||||||
INC:
|
|
||||||
.BLACK EQU #00
|
|
||||||
.BLUE EQU #01
|
|
||||||
.GREEN EQU #02
|
|
||||||
.CYAN EQU #03
|
|
||||||
.RED EQU #04
|
|
||||||
.MAGENTA EQU #05
|
|
||||||
.BROWN EQU #06
|
|
||||||
.LGRAY EQU #07
|
|
||||||
.DGRAY EQU #08
|
|
||||||
.LBLUE EQU #09
|
|
||||||
.LGREEN EQU #0A
|
|
||||||
.LCYAN EQU #0B
|
|
||||||
.LRED EQU #0C
|
|
||||||
.LMAGENT EQU #0D
|
|
||||||
.YELLOW EQU #0E
|
|
||||||
.WHITE EQU #0F
|
|
||||||
PAPER:
|
|
||||||
.BLACK EQU 16*INC.BLACK
|
|
||||||
.BLUE EQU 16*INC.BLUE
|
|
||||||
.GREEN EQU 16*INC.GREEN
|
|
||||||
.CYAN EQU 16*INC.CYAN
|
|
||||||
.RED EQU 16*INC.RED
|
|
||||||
.MAGENTA EQU 16*INC.MAGENTA
|
|
||||||
.BROWN EQU 16*INC.BROWN
|
|
||||||
.LGRAY EQU 16*INC.LGRAY
|
|
||||||
.DGRAY EQU 16*INC.DGRAY
|
|
||||||
.LBLUE EQU 16*INC.LBLUE
|
|
||||||
.LGREEN EQU 16*INC.LGREEN
|
|
||||||
.LCYAN EQU 16*INC.LCYAN
|
|
||||||
.LRED EQU 16*INC.LRED
|
|
||||||
.LMAGENT EQU 16*INC.LMAGENT
|
|
||||||
.YELLOW EQU 16*INC.YELLOW
|
|
||||||
.WHITE EQU 16*INC.WHITE
|
|
||||||
|
|
||||||
FLASH EQU #80
|
|
||||||
|
|
||||||
/*
|
|
||||||
INC_COLOR:
|
|
||||||
.BLACK EQU #00
|
|
||||||
.BLUE EQU #01
|
|
||||||
.GREEN EQU #02
|
|
||||||
.CYAN EQU #03
|
|
||||||
.RED EQU #04
|
|
||||||
.MAGENTA EQU #05
|
|
||||||
.BROWN EQU #06
|
|
||||||
.LGRAY EQU #07
|
|
||||||
.DGRAY EQU #08
|
|
||||||
.LBLUE EQU #09
|
|
||||||
.LGREEN EQU #0A
|
|
||||||
.LCYAN EQU #0B
|
|
||||||
.LRED EQU #0C
|
|
||||||
.LMAGENT EQU #0D
|
|
||||||
.YELLOW EQU #0E
|
|
||||||
.WHITE EQU #0F
|
|
||||||
.FLASH EQU #80
|
|
||||||
PAPER_COLOR:
|
|
||||||
.BLACK EQU 16*COLORS.INC.BLACK
|
|
||||||
.BLUE EQU 16*COLORS.INC.BLUE
|
|
||||||
.GREEN EQU 16*COLORS.INC.GREEN
|
|
||||||
.CYAN EQU 16*COLORS.INC.CYAN
|
|
||||||
.RED EQU 16*COLORS.INC.RED
|
|
||||||
.MAGENTA EQU 16*COLORS.INC.MAGENTA
|
|
||||||
.BROWN EQU 16*COLORS.INC.BROWN
|
|
||||||
.LGRAY EQU 16*COLORS.INC.LGRAY
|
|
||||||
.DGRAY EQU 16*COLORS.INC.DGRAY
|
|
||||||
.LBLUE EQU 16*COLORS.INC.LBLUE
|
|
||||||
.LGREEN EQU 16*COLORS.INC.LGREEN
|
|
||||||
.LCYAN EQU 16*COLORS.INC.LCYAN
|
|
||||||
.LRED EQU 16*COLORS.INC.LRED
|
|
||||||
.LMAGENT EQU 16*COLORS.INC.LMAGENT
|
|
||||||
.YELLOW EQU 16*COLORS.INC.YELLOW
|
|
||||||
.WHITE EQU 16*COLORS.INC.WHITE
|
|
||||||
.FLASH EQU #80
|
|
||||||
*/
|
|
||||||
ENDMODULE
|
|
||||||
;
|
;
|
||||||
@ -7,7 +7,7 @@
|
|||||||
DEFINE NeedSafePort_Y 1 ; !!!!! ¥á«¨ 0, â® ¢ ०¨¬¥ sp-ᯥªâà㬠¥ª®â®àë¥ ¯à®æ¥¤ãàë ¬®£ãâ § áà âì íªà
|
DEFINE NeedSafePort_Y 1 ; !!!!! ¥á«¨ 0, â® ¢ ०¨¬¥ sp-ᯥªâà㬠¥ª®â®àë¥ ¯à®æ¥¤ãàë ¬®£ãâ § áà âì íªà
|
||||||
DEFINE Pashalki 0 ;
|
DEFINE Pashalki 0 ;
|
||||||
DEFINE PICTURE_FILE './src/bios/logo/psfathers.bmp'
|
DEFINE PICTURE_FILE './src/bios/logo/psfathers.bmp'
|
||||||
|
DEFINE StandartCGApallete 1 ; <20>®¤ª«îç âì ¯ «¨âàã ¨§ standart_colors.inc
|
||||||
|
|
||||||
|
|
||||||
; ‡ ¤¥à¦ª ¢ ª ¤à å ¯®á«¥ ®âà¨á®¢ª¨ «®£®â¨¯ (0 = 256)
|
; ‡ ¤¥à¦ª ¢ ª ¤à å ¯®á«¥ ®âà¨á®¢ª¨ «®£®â¨¯ (0 = 256)
|
||||||
|
|||||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user