📄 updatesc.asm
字号:
jmp EndScrUpdate_bug
;;==========================================================================
Screen18Update_bug:
jsr UpDate8_bug ; Update one line for height 8.(English ).
jsr UpDate8_bug ; Update one line for height 8.(English ).
jsr UpDate8_bug ; Update one line for height 8.(English ).
jsr UpDate8_bug ; Update one line for height 8.(English ).
jsr UpDate8_bug ; Update one line for height 8.(English ).
jsr UpDate8Phonetic_bug ; Update one line for height 8.(Phonetic)
jsr UpDate16_bug ; Update one line for height 16.(English & Chinese).
jsr UpDate16_bug ; Update one line for height 8.(English ).
jmp EndScrUpdate_bug
;;==========================================================================
Screen19Update_bug:
jsr UpDate8_bug ; Update one line for height 8.(English ).
jsr UpDate8Phonetic_bug ; Update one line for height 8.(Phonetic)
jsr UpDate8Phonetic_bug ; Update one line for height 8.(Phonetic)
jsr UpDate8Phonetic_bug ; Update one line for height 8.(Phonetic)
jsr UpDate16_bug ; Update one line for height 16.(English & Chinese).
jsr UpDate16_bug ; Update one line for height 8.(English ).
jsr UpDate16_bug ; Update one line for height 8.(English ).
jmp EndScrUpdate_bug
;;==========================================================================
Screen20Update_bug: ;;只用于测试字库
jsr UpDate16_bug
jsr UpDate8_bug
jsr UpDate8_bug
jsr UpDate8_bug
jsr UpDate8_bug
jsr UpDate8_bug
jsr UpDate8_bug
jsr UpDate8_bug
jsr UpDate8_bug
jmp EndScrUpdate_bug
;;==========================================================================
Screen21Update_bug: ;;只用于测试字库
jsr UpDate16_bug
jsr UpDate8Phonetic_bug
jsr UpDate8Phonetic_bug
jsr UpDate8Phonetic_bug
jsr UpDate8Phonetic_bug
jsr UpDate8Phonetic_bug
jsr UpDate8Phonetic_bug
jsr UpDate8Phonetic_bug
jsr UpDate8Phonetic_bug
jmp EndScrUpdate_bug
Screen22Update_bug: ;;只用于测试字库
jsr UpDate16_bug
jsr UpDate16Phonetic_bug
jsr UpDate16Phonetic_bug
jsr UpDate16Phonetic_bug
jsr UpDate16Phonetic_bug
jmp EndScrUpdate_bug
;;==========================================================================
UpDate16Phonetic_bug:
lda #20-1
?_loop:
pha
phx
lda TextBuffor,x
cmp #20h+1
bcs ?1
tax
jsr DrawChar16_bug
bra ?2
?1:
sec
jsr Draw8x16Phonetic_bug ;; Draw out a (X,Y) 8X8 font block.
?2:
jsr next_coordinate_bug
plx ;; Columm counter.
inx
pla
dec
bpl ?_loop
rts
Draw8x16Phonetic_bug:
txa
sec
sbc #51h
ldx #>DJFont8x16_yh_bug ;;DJFont8x16
ldy #<DJFont8x16_yh_bug ;;DJFont8x16
jsr A2FontA_bug
stx <image_addrh
sty <image_addrl
lda <drr
pha
lda <drrh
pha
lda #>ds0Bank
sta <DRRh
lda #<ds0Bank
sta <DRR
jsr speed_print_8_x_16_bug
pla
sta <drrh
pla
sta <drr
rts
UpDate8Phonetic_bug:
ud8p1_bug:
phx
lda TextBuffor,x
tax
jsr DrawFont8Phonetic_bug ;; Draw out a (X,Y) 8X8 font block.
ud8p6_bug: plx ;; Columm counter.
inx
txa
ldy #9
ud8p6_0_bug:
cmp trowtab_bug,y
beq ud8p6_1_bug
dey
bpl ud8p6_0_bug
bra ud8p1_bug
ud8p6_1_bug:
rts
drawcharxxx_bug: ;;非任意位置,ox,oy必须以8为单位,显示速度快
jsr A2FontA_bug
stx <image_addrh
sty <image_addrl
lda <drr
pha
lda <drrh
pha
lda #>FontBank
sta <DRRh
lda #<FontBank
sta <DRR
jsr speed_print_8_x_16_bug
pla
sta <drrh
pla
sta <drr
rts
DrawChar16_bug:
txa
cmp #8ah ;;bug
bne ?fdsfd
;;===================================
ldx #>font_n_8ah
stx <image_addrh
ldy #<font_n_8ah
sty <image_addrl
lda <drr
pha
lda <drrh
pha
lda #>ds0Bank
sta <DRRh
lda #<ds0Bank
sta <DRR
jsr speed_print_8_x_16_bug
pla
sta <drrh
pla
sta <drr
rts
?fdsfd:
;;===================================
ldx #>ASC816Font_yh
ldy #<ASC816Font_yh
bra drawcharxxx_bug
public DrawChar12_bug
DrawChar12_bug:
txa
ldx #>ASC816FontD
ldy #<ASC816FontD
drawcharxxx_slow_bug: ;;任意位置,显示速度慢
jsr A2FontA_bug
stx <image_addrh
sty <image_addrl
lda <drr
pha
lda <drrh
pha
lda #>FontBank
sta <DRRh
lda #<FontBank
sta <DRR
lda #8
sta <image_width
lda #16
sta <image_hight_temp
jsr print_block_at_anywhere_8
pla
sta <drrh
pla
sta <drr
rts
DrawFont8Phonetic_bug:
cpx #20h
bne DrawFont8Phonetic_0_bug
bra DrawFont8_bug
DrawFont8Phonetic_0_bug:
lda #>FontBank
sta <DRRh
lda #<FontBank
sta <DRR
txa
ldx #>DJFont_yh
ldy #<DJFont_yh
sec
sbc #44h ;5ah
bra dwf83_bug
;;[S]-----------------------------------------------[S]
;; Draw font 8X8 (ASCII code).
;;[S]-----------------------------------------------[S]
DrawFont8_bug:
lda #>FontBank
sta <DRRh
lda #<FontBank
sta <DRR
txa
ldy #<Asc88Font_yh ;;ASC88Font
ldx #>Asc88Font_yh ;;ASC88Font
Dwf83_bug:
dwf85_bug: stx <INSH
sty <INSL
stz <INDH ;; ASCII code *= 8.
asl
rol <INDH
asl
rol <INDH
asl
rol <INDH
clc
adc <INSL
sta <image_addrl
lda <INDH
adc <INSH
sta <image_addrh
jsr speed_print_8_x_8_bug
lda <OX
clc
adc #8
cmp #LCD_SEG
bcc DrawFont_0_bug
lda <OY
adc #7
cmp #LCD_COM
bcc DrawFont_1_bug
rts
DrawFont_bug:
phx
jsr A2FontAddr_bug ;; Font code -> Font patten address.
stx <image_addrh
sty <image_addrl
pla ;; Get org. font code.
cmp #0a1h
bcc DrawFont_2_bug
jsr speed_print_16_x_16_bug
lda <OX
sec
adc #15
cmp #LCD_SEG
bcc DrawFont_0_bug
lda <OY
adc #15
cmp #LCD_COM
bcc DrawFont_1_bug
rts
DrawFont_1_bug:
stz <OX
sta <OY
rts
DrawFont_0_bug:
sta <OX
rts
DrawFont_2_bug:
jsr speed_print_8_x_16_bug
lda <OX
sec
adc #7
cmp #LCD_SEG
bcc DrawFont_0_bug
lda <OY
adc #15
cmp #LCD_COM
bcc DrawFont_1_bug
rts
DrawFont0_bug:
phx
jsr A2FontAddr_bug ;; Font code -> Font patten address.
stx <image_addrh
sty <image_addrl
pla ;; Get org. font code.
cmp #0a1h
bcc ?DrawFont_2
lda #16
sta <image_width
sta <image_hight_temp
jsr print_block_at_anywhere_16
lda <OX
sec
adc #15
cmp #LCD_SEG
bcc ?DrawFont_0
lda <OY
adc #15
cmp #LCD_COM
bcc ?DrawFont_1
rts
?DrawFont_1:
stz <OX
sta <OY
rts
?DrawFont_0:
sta <OX
rts
?DrawFont_2:
lda #8
sta <image_width
lda #16
sta <image_hight_temp
jsr print_block_at_anywhere_8
lda <OX
sec
adc #7
cmp #LCD_SEG
bcc ?DrawFont_0
lda <OY
adc #15
cmp #LCD_COM
bcc ?DrawFont_1
rts
speed_print_8_x_16_bug:
ldx #16-1
bra speed_print_8_x_8_xx_bug
speed_print_8_x_8_bug:
ldx #8-1
speed_print_8_x_8_xx_bug:
lda <ox
sta <lcd_ox
lda <oy
sta <lcd_oy
phx
jsr cnt_lcd_address_speed1_bug
plx
?8_x_8_loop2:
lda (image_addr)
sta (image_width_temp)
inc <image_addrl
bne ?dfdsf
inc <image_addrh
?dfdsf:
dex
bmi ?exit
lda <image_width_temp
clc ; INVERTED
adc #screen_width_num+1 ; INVERTED
sta <image_width_temp
bcc ?8_x_8_loop2 ; INVERTED
inc <image_width_temp+1 ; INVERTED
bra ?8_x_8_loop2
?exit:
rts
;;==========================================
speed_PrintDot_bug:
jsr cnt_lcd_address_in_speed_PrintDot_bug
;; lda <lcd_ox
;; and #07h
;; tax
ldx <lcd_ox
lda (<curx)
ora lcd_col_tab_on_in_speed_bug,x
sta (<curx)
rts
speed_ClrDot_bug:
jsr cnt_lcd_address_in_speed_PrintDot_bug
;; lda <lcd_ox
;; and #07h
;; tax
ldx <lcd_ox
lda lcd_col_tab_off_in_speed_bug,x
and (<curx)
sta (<curx)
rts
;;================================================
PUBLIC update_all_icon_bug ;
update_all_icon_bug:
jsr process_IconAlarm_bug
update_all_icon_in_test_bug:
ldy #00
?light_all_icon_loop1:
lda #01h
sta <image_dot
?light_all_icon_loop2:
phy
tya
asl
tax
tya
lsr
lsr
lsr
tay
lda table_icon_ram_address,y
and <image_dot
bne ?call_disp_dot
lda tab_icon_or_bug+1,x
sta <image_addrh
lda tab_icon_or_bug,x
sta <image_addrl
lda (<image_addrl)
and #7fh ;#feh
sta (<image_addrl)
?1:
ply
iny
cpy #28 ;#21+5
; cpy #26
bcc ?2
rts
?2:
asl <image_dot
bne ?light_all_icon_loop2
bra ?light_all_icon_loop1
?call_disp_dot:
lda tab_icon_or_bug+1,x
sta <image_addrh
lda tab_icon_or_bug,x
sta <image_addrl
lda (<image_addrl)
ora #80h
sta (<image_addrl)
bra ?1
; ***************************************************************************
tab_icon_or_bug:
DW 09BCH
DW 09D0H
DW 0AACH
DW 0AC0H
DW 0B9CH
DW 0BB0H
DW 0C8CH
DW 0CA0H
DW 0D7CH
DW 0D90H
DW 0E6CH
DW 0E80H
DW 0F0CH
DW 0F20H
DW 09E4H
DW 0AD4H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -