📄 bit1611b5_v023.asm
字号:
; OSD2 (10 col x 7 row): 0x587..0x5CC
; OSD3 (27 col x 1 row): 0x5CD..0x5E7
; Left: 0x5CD
; Bar: 0x5CE..0x5E2
; Right: 0x5E3
; CSTD: 0x5E4
; D100: 0x5E5
; D10: 0x5E6
; D1: 0x5E7
; OSD1
VP_ATTR_OSD1 EQU 0580h
; OSD2
VP_ATTR_OSD2 EQU 0587h
VP_ATTR_OSD2_ROW0 EQU 0587h
VP_ATTR_OSD2_ROW1 EQU 0591h
VP_ATTR_OSD2_ROW2 EQU 059Bh
VP_ATTR_OSD2_ROW3 EQU 05A5h
VP_ATTR_OSD2_ROW4 EQU 05AFh
VP_ATTR_OSD2_ROW5 EQU 05B9h
VP_ATTR_OSD2_ROW6 EQU 05C3h
; OSD3
VP_ATTR_OSD3 EQU 05CDh
VP_ATTR_BAR EQU 05CEh
VP_ATTR_DIGIT EQU 05E5h
VERSION_WIDTH EQU 19
VERSION_WIDTH_1 EQU 18
MESSAGE_WIDTH EQU 7
MESSAGE_WIDTH_1 EQU 6
CUE43_WIDTH EQU 4
CUE43_WIDTH_1 EQU 3
CUE169_WIDTH EQU 5
CUE169_WIDTH_1 EQU 4
; =====================================
; OSD Palette
PALETTE_AREA EQU 16 ; 4 x 4 = 16
PALETTE_AREA_1 EQU 15
; ------------------------------------------------------------------------------
; BIT1611B RAM Map
; 8-bit: 0x001,
; 0x094 to 0x099,
; 0x0A1,
; 0x0CF to 0x0D4,
; 0x0D6 to 0x0D8
; 0x0DB
; 6-bit: 0x09A to 0x0A0
; ------------------------------------------------------------------------------
RAM_MENU_CURSOR EQU 0001h
RAM_BRIGHTNESS EQU 0094h
RAM_CONTRAST EQU 0095h
RAM_SATURATION EQU 0096h
RAM_HUE EQU 0097h
RAM_PWM EQU 0098h
RAM_Backup EQU 0099h
RAM_VS_CNT EQU 00A1h
RAM_TCON EQU 00CFh ; R037
TCON_ID_RU EQU 001h
TCON_ID_LU EQU 002h
TCON_ID_LD EQU 004h
TCON_ID_RD EQU 008h
TCON_BIT_RU EQU 0
TCON_BIT_LU EQU 1
TCON_BIT_LD EQU 2
TCON_BIT_RD EQU 3
RAM_REMAINDER EQU 00D0h
RAM_FULL EQU 00D1h
RAM_EMPTY EQU 00D2h
RAM_DIGIT10 EQU 00D3h
RAM_OSD_VANISH_CNT EQU 00D4h
OSD_AUTO_VANISH EQU 255 ; OSD Auto Vanish=255 VS
RAM_OSD_OFFSET EQU 00D6h
RAM_SYSTEM_STATE EQU 009Ah
STATE_NORMAL EQU 0
STATE_PAL_PWM EQU 1 ; PAL + PWM tuning
STATE_NTSC_PWM EQU 3 ; NTSC + PWM tuning
STATE_BIT_PWM EQU 0 ; 1=PWM tuning, 0=Normal
STATE_BIT_NTSC EQU 1 ; 1=NTSC, 0=PAL
RAM_SOURCE EQU 00D7h
; ------------------------------------------------------------------------------
; BIT1611B Fixed Font
; ------------------------------------------------------------------------------
FONT_00_DASH_0 EQU 000h
FONT_03_DASH_3 EQU 003h
FONT_10_BAREMPTY EQU 010h
FONT_16_BARFULL EQU 016h
FONT_17_CONTRAST EQU 017h
FONT_18_SATURATION EQU 018h
FONT_19_HUE EQU 019h
FONT_1B_BRIGHTNESS EQU 01Bh
FONT_1C_LEFT_ARROW EQU 01Ch
FONT_1D_RIGHT_ARROW EQU 01Dh
FONT_20_BLANK EQU 020h
FONT_21 EQU 021h
FONT_2F_SLASH EQU 02Fh
FONT_30_DIGIT_0 EQU 030h
FONT_31_DIGIT_1 EQU 031h
FONT_39_DIGIT_9 EQU 039h
FONT_3A EQU 03Ah
FONT_3C_CHECK_OFF EQU 03Ch
FONT_3E_CHECK_ON EQU 03Eh
FONT_00_TRACK_0 EQU 000h
FONT_01_TRACK_1 EQU 001h
FONT_06_TRACK_2 EQU 006h
FONT_07_TRACK_3 EQU 007h
FONT_5B_BAR_LEFT EQU 05Bh
FONT_10_BAR_0 EQU 010h
FONT_11_BAR_1 EQU 011h
FONT_12_BAR_2 EQU 012h
FONT_13_BAR_3 EQU 013h
FONT_14_BAR_4 EQU 014h
FONT_15_BAR_5 EQU 015h
FONT_16_BAR_6 EQU 016h
FONT_5D_BAR_RIGHT EQU 05Dh
FONT_4E_N EQU 04Eh
FONT_50_P EQU 050h
FONT_DUMMY EQU 020h
; Backlight: Active LOW
; GPO3/GOUT1 pin 92 with PULL HIGH to 5V (12V Inverter)
; GPO_SEL (0x008[3]) = 1
; GPO_TYPE (0x009[3]) = 1 for HIGH
; = 0 for LOW
; GPO_REG (0x00A[3]) = 0
; POWER_SEL (0x0DA[3]) = 0
; GPO_STATUS (0x101[2]) = 0
;
;BL_OFF EQU 008h ; GPO3 = HIGH
;BL_ON EQU 000h ; GPO3 = LOW
; Write Protect: Active HIGH
; GPO0/ROUT0 pin 78 with PULL HIGH to 3.3V
; GPO_SEL (0x008[0]) = 1
; GPO_TYPE (0x009[0]) = 1 for HIGH (Read Only)
; = 0 for LOW (Read/Write)
; GPO_REG (0x00A[0]) = 0
; POWER_SEL (0x0DA[0]) = 0
; GPO_STATUS (0x101[2]) = 0
;WP_OFF EQU 000h ; GPO0 = LOW Read/Write
;WP_ON EQU 001h ; GPO0 = HIGH Read Only
; BL WP
; 7 6 5 4 3 2 1 0
BL_OFF_WP_OFF EQU 008h ; x x x x 1 x x 0
BL_OFF_WP_ON EQU 009h ; x x x x 1 x x 1
BL_ON_WP_OFF EQU 000h ; x x x x 0 x x 0
BL_ON_WP_ON EQU 001h ; x x x x 0 x x 1
; XCLK p26:
; 7 6 5 4 3 2 1 0
; | | | | | | |_|_ XCLK_SEL
; |_|_|_|_|_|_____
;
; SPI p82
; 7 6 5 4 3 2 1 0
; | | | | | |_|_|_ I2C R/W Speed
; |_|_|_|_|_______
;
CLK_SPEEDUP EQU 080h ; XCLK Speed = OSCCLK (0)
CLK_SPEEDDOWN EQU 083h ; XCLK Speed = OSCCLK/8 (3)
SPI_SPEEDUP EQU 0B6h ; EEPROM Speed = Faster (6) 90 KHz
SPI_SPEEDDOWN EQU 0B7h ; EEPROM Speed = Slowest (7) 5.x KHz
OSD_ON EQU 009h
OSD_OFF EQU 008h
OSD_BIT_ENABLE EQU 0
OSD_CLK_ON EQU 07Fh
OSD_CLK_OFF EQU 03Fh
; ------------------------------------------------------------------------------
; Interrupt ACK (004h)
; 0_SIGIN
; 1_NOSIG
; 2_MODECHG
; 3_VSYNC
; 4_TIMER0
; 5_TIMER1
; 6_IR
; 7_KEYIN
; ------------------------------------------------------------------------------
; 1101 0111 (KEY + IR + TIMER0 + MODECHG + NOSIG + SIGIN)
INT_ACK_VS_OFF EQU 0D7h
; 1101 1111 (KEY + IR + TIMER0 + VS + MODECHG + NOSIG + SIGIN)
INT_ACK_VS_ON EQU 0DFh
; ------------------------------------------------------------------------------
; Interrupt ATTR (005h)
; 0 0=Edge, 1=Level
; 1 1=Low/Falling Active, 0=High/Rising Active
; 2 0=ODD Field, 1=EVEN Field
; 3
; 4 Double Buffer Load Enable
; 5 Double Buffer Register Update Type
; 6 Interrupt Vector[3] source select
; 7 Interrupt Vector[5:4] source select
; ------------------------------------------------------------------------------
; 1110 0000 ( RISING + EDGE)
INT_ATTR_LOAD_DISABLE EQU 060h
; 1111 0000 (ENABLE + RISING + EDGE)
INT_ATTR_LOAD_ENABLE EQU 070h
PWM1_FREQ_NTSC EQU 04Dh ; R0E0
PWM1_FREQ_PAL EQU 04Dh
ACLAMP_LEVEL_NTSC EQU 045h ; R12A
ACLAMP_LEVEL_PAL EQU 045h
BRIGHTNESS_N EQU 084h ; 0x7C..0x7E
BRIGHTNESS_P EQU 084h
CONTRAST_N EQU 05Bh ; 0x7F..0x81
CONTRAST_P EQU 05Bh
; ------------------------------------------------------------------------------
; Menu ID
; ------------------------------------------------------------------------------
MENU_ID_STANDBY EQU 001h
MENU_ID_BRIGHTNESS EQU 002h
MENU_BIT_STANDBY EQU 0
MENU_BIT_BRIGHTNESS EQU 1
MENU_BIT_CONTRAST EQU 2
MENU_BIT_SATURATION EQU 3
MENU_BIT_HUE EQU 4
MENU_BIT_MODE EQU 5 ; Display Mode (16:9/4:3)
MENU_BIT_RESET EQU 6
MENU_BIT_EXIT EQU 7
; ------------------------------------------------------------------------------
; Video Source
; ------------------------------------------------------------------------------
SOURCE_CVBS1 EQU 001h
SOURCE_CVBS2 EQU 002h
SOURCE_YC1 EQU 004h
SOURCE_DEFAULT EQU SOURCE_CVBS1
SOURCE_BIT_CVBS1 EQU 0
SOURCE_BIT_CVBS2 EQU 1
SOURCE_BIT_YC1 EQU 2
; ------------------------------------------------------------------------------
; GAMMA
; ------------------------------------------------------------------------------
GAMMA_OFF EQU 000h
GAMMA_ON EQU 001h
GAMMA_ON_SINGLE EQU 005h
; ------------------------------------------------------------------------------
; KEY
; ------------------------------------------------------------------------------
;
; DOWN = BIN3 PIN 55 (GPI3) : Active HIGH
; UP = BIN4 PIN 53 (GPI4) : Active HIGH
; SELECT = BIN5 PIN 52 (GPI5) : Active HIGH
; MENU = BIN6 PIN 51 (GPI6) : Active HIGH
; POWER = BIN7 PIN 50 (GPI7) : Active HIGH
;
; PWM Menu: MENU + UP
;
; 7 6 5 4 3 2 1 0
; | | | | | |_|_|_
; | | | | |_______ DOWN
; | | | |_________ UP
; | | |___________ SELECT
; | |_____________ MENU
; |_______________ POWER
;
KEY_BIT_DOWN EQU 3 ; GPI3
KEY_BIT_UP EQU 4 ; GPI4
KEY_BIT_SELECT EQU 5 ; GPI5
KEY_BIT_MENU EQU 6 ; GPI6
KEY_BIT_POWER EQU 7 ; GPI7
KEY_BIT_PWM EQU 4 ; GPI6 + GPI4 (MENU + UP)
; GPI3 GPI2 GPI1 GPI0: 01 11 11 11 (0x7F)
; GPI7 GPI6 GPI5 GPI4: 01 01 01 01 (0x55)
KEY_DISABLE EQU 0FFh
KEY_C4_SETUP3210 EQU 07Fh ; GPI3
KEY_C5_SETUP7654 EQU 055h ; GPI7 / GPI6 / GPI5 / GPI4
; RC03
; IR C /C D /D
; IR_TV_AV 01 FE 04 FB
; IR_MUTE 01 FE 08 F7
; IR_POWER 01 FE 00 FF
; IR_MENU 01 FE 05 FA
; IR_AUTO 01 FE 0D F2
; IR_CHANNEL_UP 01 FE 0A F5
; IR_CHANNEL_DOWN 01 FE 11 EE
; IR_VOLUME_UP 01 FE 12 ED
; IR_VOLUME_DOWN 01 FE 0E F1
;IR_UDCC EQU 001h ; 0xFA
;IR_UDCC_BAR EQU 0FEh ; 0xF9
;IR_ATTR EQU 08Bh ; 0xFB
;IR_ATTR2 EQU 012h ; 0xFC
;
;IR_DOWN EQU 011h
;IR_UP EQU 00Ah
;IR_SELECT EQU 00Dh
;IR_MENU EQU 005h
;IR_POWER EQU 000h
; RMC-2001
; IR C /C D /D
; IR_MENU 86 6B 11 EE
; IR_POWER 86 6B 12 ED
; IR_SOURCE 86 6B 0F F0
; IR_CHANNEL_UP 86 6B 1A E5
; IR_CHANNEL_DOWN 86 6B 1E E1
; IR_VOLUME_UP 86 6B 1B E4
; IR_VOLUME_DOWN 86 6B 1F E0
IR_REPEAT_ON EQU 002h
IR_REPEAT_OFF EQU 003h
IR_UDCC EQU 086h ; 0xFA
IR_UDCC_BAR EQU 06Bh ; 0xF9
IR_ATTR EQU 08Bh ; 0xFB
IR_ATTR2 EQU 003h ; 0xFC
IR_DOWN EQU 01Eh
IR_UP EQU 01Ah
IR_SELECT EQU 00Fh
IR_MENU EQU 011h
IR_POWER EQU 012h
IR_BIT_DOWN EQU 3
IR_BIT_UP EQU 4
IR_BIT_SELECT EQU 5
IR_BIT_MENU EQU 6
IR_BIT_POWER EQU 7
IR_BIT_REPEAT EQU 4
; ------------------------------------------------------------------------------
; OSD Palette
; ------------------------------------------------------------------------------
OSD1_NM_ATTR EQU 043h ; Palette 3
OSD2_NM_ATTR EQU 040h ; Palette 0
OSD2_HL_ATTR EQU 041h ; Palette 1
OSD3_NM_ATTR EQU 040h ; Palette 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -