📄 lcd_driver_user.asm
字号:
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB6-_Fill_Dot_LCD
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "uiTemp:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabs "uiTemp2:4",128,0,0,1',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE6-_Fill_Dot_LCD
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME5-_Fill_Dot_LCD
.dw 0x0d,0x0a
.code
LME5:
.code
.debug
.dw '.stabs "LCD_PortInit:F19",36,0,0,',0,0,offset _LCD_PortInit,seg _LCD_PortInit,0x0d,0x0a
.CODE
.public _LCD_PortInit
_LCD_PortInit: .proc
.debug
.dw '.stabn 0x44,0,293,',0,0
.dd LM120-_LCD_PortInit
.dw 0x0d,0x0a
.code
LM120:
// total=0, vars=0
// frame_pointer_needed: 1
.debug
.dw '.stabn 0xa6,0,0,0',0x0d, 0x0a
.code
PUSH BP to [SP]
BP=SP+1
R1=BP+3
.debug
.dw '.stabn 0x44,0,300,',0,0
.dd LM121-_LCD_PortInit
.dw 0x0d,0x0a
.code
LM121:
R2=[28674] // QImode move
R3=R2|255
[28674]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,301,',0,0
.dd LM122-_LCD_PortInit
.dw 0x0d,0x0a
.code
LM122:
R2=[28675] // QImode move
R3=R2|255
[28675]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,302,',0,0
.dd LM123-_LCD_PortInit
.dw 0x0d,0x0a
.code
LM123:
R2=[28673] // QImode move
R3=R2|255
[28673]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,304,',0,0
.dd LM124-_LCD_PortInit
.dw 0x0d,0x0a
.code
LM124:
R2=[28674] // QImode move
R3=R2|7936
[28674]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,305,',0,0
.dd LM125-_LCD_PortInit
.dw 0x0d,0x0a
.code
LM125:
R2=[28675] // QImode move
R3=R2|7936
[28675]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,306,',0,0
.dd LM126-_LCD_PortInit
.dw 0x0d,0x0a
.code
LM126:
R2=[28673] // QImode move
R3=R2|7936
[28673]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,307,',0,0
.dd LM127-_LCD_PortInit
.dw 0x0d,0x0a
.code
LM127:
.debug
.dw '.stabn 0x44,0,307,',0,0
.dd LM128-_LCD_PortInit
.dw 0x0d,0x0a
.code
LM128:
L7:
POP BP from [SP]
RETF
.endp // end of LCD_PortInit
.debug
.dw '.stabf ',0,0
.dd LME6-_LCD_PortInit
.dw 0x0d,0x0a
.code
LME6:
.code
.debug
.dw '.stabs "Write_Dot_LCD:F19",36,0,0,',0,0,offset _Write_Dot_LCD,seg _Write_Dot_LCD,0x0d,0x0a
.CODE
.public _Write_Dot_LCD
_Write_Dot_LCD: .proc
.debug
.dw '.stabn 0x44,0,321,',0,0
.dd LM129-_Write_Dot_LCD
.dw 0x0d,0x0a
.code
LM129:
// total=1, vars=1
// frame_pointer_needed: 1
.debug
.dw '.stabn 0xa6,0,0,1',0x0d, 0x0a
.code
PUSH BP to [SP]
SP-=1
BP=SP+1
R1=BP+4
[BP]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,322,',0,0
.dd LM130-_Write_Dot_LCD
.dw 0x0d,0x0a
.code
LM130:
R2=[BP] // QImode move
R1=[R2] // QImode move
[SP--]=R1 // QImode move
R1=32 // QImode move
[SP--]=R1 // QImode move
CALL _LCD_RegWrite // call without return value
SP = SP + 2 //SP
.debug
.dw '.stabn 0x44,0,323,',0,0
.dd LM131-_Write_Dot_LCD
.dw 0x0d,0x0a
.code
LM131:
R1=[BP] // QImode move
R3=[BP] // QImode move
R2=R3+1
R3=R2 // QImode move
R1=[R3] // QImode move
[SP--]=R1 // QImode move
R1=33 // QImode move
[SP--]=R1 // QImode move
CALL _LCD_RegWrite // call without return value
SP = SP + 2 //SP
.debug
.dw '.stabn 0x44,0,324,',0,0
.dd LM132-_Write_Dot_LCD
.dw 0x0d,0x0a
.code
LM132:
R1=[BP] // QImode move
R1=[BP] // QImode move
R2=R1+2
R3=R2 // QImode move
R1=[R3] // QImode move
[SP--]=R1 // QImode move
CALL _LCD_DataWrite // call without return value
SP = SP + 1 //SP
.debug
.dw '.stabn 0x44,0,325,',0,0
.dd LM133-_Write_Dot_LCD
.dw 0x0d,0x0a
.code
LM133:
.debug
.dw '.stabn 0x44,0,325,',0,0
.dd LM134-_Write_Dot_LCD
.dw 0x0d,0x0a
.code
LM134:
L8:
SP+=1
POP BP from [SP]
RETF
.endp // end of Write_Dot_LCD
.debug
.dw '.stabs "x:p1",160,0,0,4',0x0d,0x0a
.CODE
.debug
.dw '.stabs "y:p1",160,0,0,5',0x0d,0x0a
.CODE
.debug
.dw '.stabs "i:p4",160,0,0,6',0x0d,0x0a
.CODE
.debug
.dw '.stabf ',0,0
.dd LME7-_Write_Dot_LCD
.dw 0x0d,0x0a
.code
LME7:
.code
.debug
.dw '.stabs "Clear_Dot_LCD:F19",36,0,0,',0,0,offset _Clear_Dot_LCD,seg _Clear_Dot_LCD,0x0d,0x0a
.CODE
.public _Clear_Dot_LCD
_Clear_Dot_LCD: .proc
.debug
.dw '.stabn 0x44,0,338,',0,0
.dd LM135-_Clear_Dot_LCD
.dw 0x0d,0x0a
.code
LM135:
// total=0, vars=0
// frame_pointer_needed: 1
.debug
.dw '.stabn 0xa6,0,0,0',0x0d, 0x0a
.code
PUSH BP to [SP]
BP=SP+1
R1=BP+3
.debug
.dw '.stabn 0x44,0,340,',0,0
.dd LM136-_Clear_Dot_LCD
.dw 0x0d,0x0a
.code
LM136:
L9:
POP BP from [SP]
RETF
.endp // end of Clear_Dot_LCD
.debug
.dw '.stabs "x:p1",160,0,0,3',0x0d,0x0a
.CODE
.debug
.dw '.stabs "y:p1",160,0,0,4',0x0d,0x0a
.CODE
.debug
.dw '.stabf ',0,0
.dd LME8-_Clear_Dot_LCD
.dw 0x0d,0x0a
.code
LME8:
.code
.debug
.dw '.stabs "Get_Dot_LCD:F4",36,0,0,',0,0,offset _Get_Dot_LCD,seg _Get_Dot_LCD,0x0d,0x0a
.CODE
.public _Get_Dot_LCD
_Get_Dot_LCD: .proc
.debug
.dw '.stabn 0x44,0,352,',0,0
.dd LM137-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
LM137:
// total=2, vars=2
// frame_pointer_needed: 1
.debug
.dw '.stabn 0xa6,0,0,2',0x0d, 0x0a
.code
PUSH BP to [SP]
SP-=2
BP=SP+1
R1=BP+5
[BP+1]=R1 // QImode move
LBB7:
.debug
.dw '.stabn 0x44,0,355,',0,0
.dd LM138-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
LM138:
R2=[BP+1] // QImode move
R1=[R2] // QImode move
[SP--]=R1 // QImode move
R1=32 // QImode move
[SP--]=R1 // QImode move
CALL _LCD_RegWrite // call without return value
SP = SP + 2 //SP
.debug
.dw '.stabn 0x44,0,356,',0,0
.dd LM139-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
LM139:
R1=[BP+1] // QImode move
R3=[BP+1] // QImode move
R2=R3+1
R3=R2 // QImode move
R1=[R3] // QImode move
[SP--]=R1 // QImode move
R1=33 // QImode move
[SP--]=R1 // QImode move
CALL _LCD_RegWrite // call without return value
SP = SP + 2 //SP
.debug
.dw '.stabn 0x44,0,357,',0,0
.dd LM140-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
LM140:
CALL _LCD_DataRead // call with return value
[BP]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,358,',0,0
.dd LM141-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
LM141:
R2=[BP] // QImode move
R1=R2 // QImode move
PC=L10 // jump
.debug
.dw '.stabn 0x44,0,359,',0,0
.dd LM142-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
LM142:
LBE7:
.debug
.dw '.stabn 0x44,0,359,',0,0
.dd LM143-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
LM143:
L10:
SP+=2
POP BP from [SP]
RETF
.endp // end of Get_Dot_LCD
.debug
.dw '.stabs "x:p1",160,0,0,5',0x0d,0x0a
.CODE
.debug
.dw '.stabs "y:p1",160,0,0,6',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB7-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "Read_Data:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE7-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME9-_Get_Dot_LCD
.dw 0x0d,0x0a
.code
LME9:
.code
.debug
.dw '.stabs "Set_Dot_Addr_LCD:F19",36,0,0,',0,0,offset _Set_Dot_Addr_LCD,seg _Set_Dot_Addr_LCD,0x0d,0x0a
.CODE
.public _Set_Dot_Addr_LCD
_Set_Dot_Addr_LCD: .proc
.debug
.dw '.stabn 0x44,0,372,',0,0
.dd LM144-_Set_Dot_Addr_LCD
.dw 0x0d,0x0a
.code
LM144:
// total=1, vars=1
// frame_pointer_needed: 1
.debug
.dw '.stabn 0xa6,0,0,1',0x0d, 0x0a
.code
PUSH BP to [SP]
SP-=1
BP=SP+1
R1=BP+4
[BP]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,373,',0,0
.dd LM145-_Set_Dot_Addr_LCD
.dw 0x0d,0x0a
.code
LM145:
R2=[BP] // QImode move
R1=[R2] // QImode move
[SP--]=R1 // QImode move
R1=32 // QImode move
[SP--]=R1 // QImode move
CALL _LCD_RegWrite // call without return value
SP = SP + 2 //SP
.debug
.dw '.stabn 0x44,0,374,',0,0
.dd LM146-_Set_Dot_Addr_LCD
.dw 0x0d,0x0a
.code
LM146:
R1=[BP] // QImode move
R3=[BP] // QImode move
R2=R3+1
R3=R2 // QImode move
R1=[R3] // QImode move
[SP--]=R1 // QImode move
R1=33 // QImode move
[SP--]=R1 // QImode move
CALL _LCD_RegWrite // call without return value
SP = SP + 2 //SP
.debug
.dw '.stabn 0x44,0,375,',0,0
.dd LM147-_Set_Dot_Addr_LCD
.dw 0x0d,0x0a
.code
LM147:
CALL _LCD_Reg22 // call without return value
.debug
.dw '.stabn 0x44,0,376,',0,0
.dd LM148-_Set_Dot_Addr_LCD
.dw 0x0d,0x0a
.code
LM148:
.debug
.dw '.stabn 0x44,0,376,',0,0
.dd LM149-_Set_Dot_Addr_LCD
.dw 0x0d,0x0a
.code
LM149:
L11:
SP+=1
POP BP from [SP]
RETF
.endp // end of Set_Dot_Addr_LCD
.debug
.dw '.stabs "x:p1",160,0,0,4',0x0d,0x0a
.CODE
.debug
.dw '.stabs "y:p1",160,0,0,5',0x0d,0x0a
.CODE
.debug
.dw '.stabf ',0,0
.dd LME10-_Set_Dot_Addr_LCD
.dw 0x0d,0x0a
.code
LME10:
.code
.debug
.dw '.stabs "LCD_Fill:F19",36,0,0,',0,0,offset _LCD_Fill,seg _LCD_Fill,0x0d,0x0a
.CODE
.public _LCD_Fill
_LCD_Fill: .proc
.debug
.dw '.stabn 0x44,0,388,',0,0
.dd LM150-_LCD_Fill
.dw 0x0d,0x0a
.code
LM150:
// total=4, vars=4
// frame_pointer_needed: 1
.debug
.dw '.stabn 0xa6,0,0,4',0x0d, 0x0a
.code
PUSH BP to [SP]
SP-=4
BP=SP+1
R1=BP+7
[BP+3]=R1 // QImode move
LBB8:
.debug
.dw '.stabn 0x44,0,391,',0,0
.dd LM151-_LCD_Fill
.dw 0x0d,0x0a
.code
LM151:
R1=BP // QImode move
R2=BP+2
R1=319 // QImode move
R3=R2 // QImode move
[R3]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,392,',0,0
.dd LM152-_LCD_Fill
.dw 0x0d,0x0a
.code
LM152:
R1=0 // QImode move
[SP--]=R1 // QImode move
R1=0 // QImode move
[SP--]=R1 // QImode move
CALL _Set_Dot_Addr_LCD // call without return value
SP = SP + 2 //SP
.debug
.dw '.stabn 0x44,0,393,',0,0
.dd LM153-_LCD_Fill
.dw 0x0d,0x0a
.code
LM153:
R1=0 // QImode move
[BP]=R1 // QImode move
L13:
R1=BP // QImode move
R2=BP+2
R1=[BP] // QImode move
R4=R2 // QImode move
CMP R1,[R4] // QImode compare
NSJNA L16 //QImode LEU
PC=L14 // jump
L16:
.debug
.dw '.stabn 0x44,0,395,',0,0
.dd LM154-_LCD_Fill
.dw 0x0d,0x0a
.code
LM154:
R1=BP // QImode move
R2=BP+1
R1=0 // QImode move
R3=R2 // QImode move
[R3]=R1 // QImode move
L17:
R1=BP // QImode move
R2=BP+1
R4=R2 // QImode move
R1=[R4] // QImode move
CMP R1,239 // QImode compare
NSJNA L20 //QImode LEU
PC=L15 // jump
L20:
.debug
.dw '.stabn 0x44,0,397,',0,0
.dd LM155-_LCD_Fill
.dw 0x0d,0x0a
.code
LM155:
R2=[BP+3] // QImode move
R1=[R2] // QImode move
[SP--]=R1 // QImode move
CALL _Fill_Dot_LCD // call without return value
SP = SP + 1 //SP
.debug
.dw '.stabn 0x44,0,395,',0,0
.dd LM156-_LCD_Fill
.dw 0x0d,0x0a
.code
LM156:
L19:
R1=BP // QImode move
R2=BP+1
R3=BP // QImode move
R1=BP+1
R2=BP // QImode move
R3=BP+1
R4=R3 // QImode move
R2=[R4] // QImode move
R3=R2+1
R2=R1 // QImode move
[R2]=R3 // QImode move
PC=L17 // jump
L18:
.debug
.dw '.stabn 0x44,0,393,',0,0
.dd LM157-_LCD_Fill
.dw 0x0d,0x0a
.code
LM157:
L15:
R1=[BP] // QImode move
R2=R1+1
[BP]=R2 // QImode move
PC=L13 // jump
L14:
.debug
.dw '.stabn 0x44,0,400,',0,0
.dd LM158-_LCD_Fill
.dw 0x0d,0x0a
.code
LM158:
LBE8:
.debug
.dw '.stabn 0x44,0,400,',0,0
.dd LM159-_LCD_Fill
.dw 0x0d,0x0a
.code
LM159:
L12:
SP+=4
POP BP from [SP]
RETF
.endp // end of LCD_Fill
.debug
.dw '.stabs "Data:p4",160,0,0,7',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB8-_LCD_Fill
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "i:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabs "j:4",128,0,0,1',0x0d,0x0a
.CODE
.debug
.dw '.stabs "uiTemp:4",128,0,0,2',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE8-_LCD_Fill
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME11-_LCD_Fill
.dw 0x0d,0x0a
.code
LME11:
.code
.debug
.dw '.stabs "LCD_Fill_s:F19",36,0,0,',0,0,offset _LCD_Fill_s,seg _LCD_Fill_s,0x0d,0x0a
.CODE
.public _LCD_Fill_s
_LCD_Fill_s: .proc
.debug
.dw '.stabn 0x44,0,412,',0,0
.dd LM160-_LCD_Fill_s
.dw 0x0d,0x0a
.code
LM160:
// total=1, vars=1
// frame_pointer_needed: 1
.debug
.dw '.stabn 0xa6,0,0,1',0x0d, 0x0a
.code
PUSH BP to [SP]
SP-=1
BP=SP+1
R1=BP+4
[BP]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,415,',0,0
.dd LM161-_LCD_Fill_s
.dw 0x0d,0x0a
.code
LM161:
L24:
R2=[BP] // QImode move
R1=[R2] // QImode move
CMP R1,0 // QImode test
NSJNZ L26 //QImode NE
PC=L25 // jump
L26:
.debug
.dw '.stabn 0x44,0,417,',0,0
.dd LM162-_LCD_Fill_s
.dw 0x0d,0x0a
.code
LM162:
R1=[BP] // QImode move
R3=[BP] // QImode move
R2=R3+1
R3=R2 // QImode move
R1=[R3] // QImode move
[SP--]=R1 // QImode move
CALL _Fill_Dot_LCD // call without return value
SP = SP + 1 //SP
.debug
.dw '.stabn 0x44,0,418,',0,0
.dd LM163-_LCD_Fill_s
.dw 0x0d,0x0a
.code
LM163:
R2=[BP] // QImode move
R1=[R2] // QImode move
R2=R1+(-1)
R3=[BP] // QImode move
[R3]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,419,',0,0
.dd LM164-_LCD_Fill_s
.dw 0x0d,0x0a
.code
LM164:
PC=L24 // jump
L25:
.debug
.dw '.stabn 0x44,0,420,',0,0
.dd LM165-_LCD_Fill_s
.dw 0x0d,0x0a
.code
LM165:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -