input
A : ascii code
------------------------------------
SHCHR: ;SHOW CHAR.
MOV DPTR,#EROW24
;CALCULATE PATTERN POSITION
MOV B,#48 ;48 BYTES FOR ONE CHAR
MOV R6,#24 ;24 rows/Char
MUL AB
;一個ascii 佔48bytes
;dptr = erow24 = 1st ascii (ascii code=0 [0~47])
;a*b = ascii code * 48 = 該字的1st byte address
ADD A,DPL
MOV DPL,A
MOV A,B
ADDC A,DPH
MOV DPH,A
;計算memory 位置
MOV A,ROW ;row似乎是1
RL A
RL A
RL A ;*8 ;*8仍是1
MOV B,#TOTCOL*3 ;80*3 //*3不知作啥用
MUL AB ;BA=ROW*1920=ROW*(80*24)
ADD A,COL ;col=2 a=1 -?> a=3
MOV R0,A ;r0=3
MOV A,B ;row * 1920的高位
ADDC A,#GBASE/256 ;a = 0 + c
MOV R1,A
PUSH P1
MOV P1,#0FFH
No comments:
Post a Comment