📄 call_lib.asm
字号:
iny
cpy #2
beq ?_show_exit
pla
bra ?_show_a
?_show_exit:
plx
rts
ENDMOD
;.EFUNC ;API_LcmShowNumber2B
;***************************************************************************
;* Func: API_LcmStringSkipMode
;* Input: skip_pix_mode : 1 enable
; 0 disbale
;* Output: none
;*
;* Description: enable/disable string skip mode
;*
;***************************************************************************
;extern void API_LcmStringSkipMode(uint8 SkipPixMode);
MODULE API_LcmStringSkipMode
PUBLIC API_LcmStringSkipMode
RSEG APP
DEFFN API_LcmStringSkipMode(0,0,0,0,32768,0,1,0)
API_LcmStringSkipMode:
sta str_skip_pix_onoff
rts
ENDMOD
;.EFUNC ;API_LcmStringSkipMode
;***************************************************************************
;* Func: API_LcmSetStringSkipPIX
;* Input: skip_pix
;* Output: none
;*
;* Description: set string skip pix
;*
;***************************************************************************
;extern void API_LcmSetStringSkipPIX(uint8 SkipPIX);
MODULE API_LcmSetStringSkipPIX
PUBLIC API_LcmSetStringSkipPIX
RSEG APP
DEFFN API_LcmSetStringSkipPIX(0,0,0,0,32768,0,1,0)
API_LcmSetStringSkipPIX:
sta str_skip_pix
rts
ENDMOD
;.EFUNC ;API_LcmSetStringSkipPIX
;***************************************************************************
;* Func: API_LcmShowString
;* Input: ptr, pos_x, pos_y
;* Output: none
;*
;* Description: lcm show string
;*
;***************************************************************************
;extern void API_LcmShowString(uint8 *pStr,uint16 PosX,uint16 PosY);
MODULE API_LcmShowString
PUBLIC API_LcmShowString
RSEG APP
DEFFN API_LcmShowString(0,0,0,0,32768,0,6,0)
API_LcmShowString:
php
lda np:PRMBN API_LcmShowString+0
sta str_ptrl
lda np:PRMBN API_LcmShowString+1
sta str_ptrh
lda np:PRMBN API_LcmShowString+2
sta pos_x_l
lda np:PRMBN API_LcmShowString+3
sta pos_x_h
lda np:PRMBN API_LcmShowString+4
sta pos_y_l
lda np:PRMBN API_LcmShowString+5
sta pos_y_h
phx
phy
jsr lcm_char_puts
tya
ply
plx
plp
rts
ENDMOD
;.EFUNC ;lcd_show_str_
;***************************************************************************
;* Func: API_LcmShowStringEx
;* Input: ptr, pos_x, pos_y, ch_fs, ch_cs, fg_clrl, bg_clrl
;* Output: none
;*
;* Description: extern lcm show string
;*
;***************************************************************************
;extern void API_LcmShowStringEx(uint8 *pStr,uint16 PosX,uint16 PosY, uint8 CharFs, uint8 CharLag, uint16 FGClrl, uint16 BGClrl, uint8 StrLen);
MODULE API_LcmShowStringEx
PUBLIC API_LcmShowStringEx
RSEG APP
DEFFN API_LcmShowStringEx(0,0,0,0,32768,0,13,0)
API_LcmShowStringEx:
;php
sei
lda np:PRMBN API_LcmShowStringEx+0
sta str_ptrl
lda np:PRMBN API_LcmShowStringEx+1
sta str_ptrh
lda np:PRMBN API_LcmShowStringEx+2
sta pos_x_l
lda np:PRMBN API_LcmShowStringEx+3
sta pos_x_h
lda np:PRMBN API_LcmShowStringEx+4
sta pos_y_l
lda np:PRMBN API_LcmShowStringEx+5
sta pos_y_h
lda np:PRMBN API_LcmShowStringEx+6
sta ch_fs
lda np:PRMBN API_LcmShowStringEx+7
sta ch_cs
lda np:PRMBN API_LcmShowStringEx+8
sta fg_clrll
lda np:PRMBN API_LcmShowStringEx+9
sta fg_clrlh
lda np:PRMBN API_LcmShowStringEx+10
sta bg_clrll
lda np:PRMBN API_LcmShowStringEx+11
sta bg_clrlh
lda np:PRMBN API_LcmShowStringEx+12
sta str_len
phx
jsr lcm_char_puts
tya
plx
;plp
rts
ENDMOD
;.EFUNC ;API_LcmShowStringEx
;***************************************************************************
;* Func: API_LcmPutSysImage
;* Input: img_idx_l,img_idx_h,pos_x_l,pos_x_h,pos_y_l,pos_y_h
;* Output: none
;*
;* Description: API_LcmPutSysImage
;*
;***************************************************************************
;extern void API_LcmPutSysImage(uint16 ImgIdx, uint16 PosX, uint16 PosY);
;lcm_put_sysimg:
MODULE API_LcmPutSysImage
PUBLIC API_LcmPutSysImage
RSEG APP
DEFFN API_LcmPutSysImage(0,0,0,0,32768,0,6,0)
API_LcmPutSysImage:
lda np:PRMBN API_LcmPutSysImage+0
sta img_idx_l
lda np:PRMBN API_LcmPutSysImage+1
sta img_idx_h
lda np:PRMBN API_LcmPutSysImage+2
sta pos_x_l
lda np:PRMBN API_LcmPutSysImage+3
sta pos_x_h
lda np:PRMBN API_LcmPutSysImage+4
sta pos_y_l
lda np:PRMBN API_LcmPutSysImage+5
sta pos_y_h
phx
jsr lcm_put_sysimg
plx
rts
ENDMOD
;.EFUNC ;API_LcmPutSysImage
;***************************************************************************
;* Func: API_LcmFillRectangle
;* Input: pos_x_l,pos_x_h,pos_y_l,pos_y_h,reg_w_l,reg_w_h,reg_h_l,reg_h_h,fg_clrll,fg_clrlh
;* Output: none
;*
;* Description: API_LcmFillRectangle
;*
;***************************************************************************
;extern void API_LcmFillRectangle(uint16 PosX, uint16 PosY,uint16 Width,uint16 High,uint16 FGClrl);
;API_LcmFillRectangle:
MODULE API_LcmFillRectangle
PUBLIC API_LcmFillRectangle
RSEG APP
DEFFN API_LcmFillRectangle(0,0,0,0,32768,0,10,0)
API_LcmFillRectangle:
phx
SETB pos_x_l,np:PRMBN API_LcmFillRectangle+0
SETB pos_x_h,np:PRMBN API_LcmFillRectangle+1
SETB pos_y_l,np:PRMBN API_LcmFillRectangle+2
SETB pos_y_h,np:PRMBN API_LcmFillRectangle+3
SETB reg_w_l,np:PRMBN API_LcmFillRectangle+4
SETB reg_w_h,np:PRMBN API_LcmFillRectangle+5
SETB reg_h_l,np:PRMBN API_LcmFillRectangle+6
SETB reg_h_h,np:PRMBN API_LcmFillRectangle+7
SETB fg_clrll,np:PRMBN API_LcmFillRectangle+8
SETB fg_clrlh,np:PRMBN API_LcmFillRectangle+9
JSR lcm_fill_region
plx
rts
ENDMOD
;.EFUNC ;API_LcmFillRectangle
;***************************************************************************
;* Func: API_LcmEnableKeepBackGround
;* Input:
;* Output:
;*
;* Description:
;*
;***************************************************************************
;extern void API_LcmEnableKeepBackGround(void);
MODULE API_LcmEnableKeepBackGround
PUBLIC API_LcmEnableKeepBackGround
RSEG APP
DEFFN API_LcmEnableKeepBackGround(0,0,0,0,32768,0,0,0)
API_LcmEnableKeepBackGround:
SETB char_mode,#1 ;keep background
rts
ENDMOD
;.EFUNC ;API_LcmEnableKeepBackGround
;***************************************************************************
;* Func: API_LcmDisableKeepBackGround
;* Input:
;* Output:
;*
;* Description:
;*
;***************************************************************************
;extern void API_LcmDisableKeepBackGround;
MODULE API_LcmDisableKeepBackGround
PUBLIC API_LcmDisableKeepBackGround
RSEG APP
DEFFN API_LcmDisableKeepBackGround(0,0,0,0,32768,0,0,0)
API_LcmDisableKeepBackGround:
stz char_mode ;clean background
rts
ENDMOD
;.EFUNC ;API_LcmDisableKeepBackGround
;***************************************************************************
;* Func: API_LcmGetBackLight
;* Input:
;* Output: BackLight(0~31)
;*
;* Description: get backlight level (0~31)
;*
;***************************************************************************
;extern uint8 API_LcmGetBackLight(Bl);
MODULE API_LcmGetBackLight
PUBLIC API_LcmGetBackLight
RSEG APP
DEFFN API_LcmGetBackLight(0,0,0,0,32768,0,0,0)
API_LcmGetBackLight:
phx
jsr get_backlight_level
plx
rts
ENDMOD
;.EFUNC ;API_LcmGetBackLight
;***************************************************************************
;* Func: API_LcmSetBackLight
;* Input: BackLight(0~31)
;* Output:
;*
;* Description: set backlight level (0~31)
;*
;***************************************************************************
;extern void API_LcmSetBackLight(uint8 bl);
MODULE API_LcmSetBackLight
PUBLIC API_LcmSetBackLight
RSEG APP
DEFFN API_LcmSetBackLight(0,0,0,0,32768,0,1,0)
API_LcmSetBackLight:
phx
jsr set_backlight_level
plx
rts
ENDMOD
;.EFUNC ;API_LcmSetBackLight
;***************************************************************************
;* Func: API_LcmGetScreenWH
;* Input: pWidth : a pointer to Width
;* pHigh : a pointer to High
;* Output: none
;*
;* Description: get screen width, high
;*
;***************************************************************************
;extern void API_LcmGetScreenWH(uint16 *pWidth, uint16 *pHigh);
MODULE API_LcmGetScreenWH
PUBLIC API_LcmGetScreenWH
RSEG APP
DEFFN API_LcmGetScreenWH(0,0,0,0,32768,0,8,0)
API_LcmGetScreenWH:
.EXTERN ?DP0_L00
PHA
LDA zp:?DP0_L00+1
PHA
LDA zp:?DP0_L00
PHA
; SETB file_filter,np:PRMBN API_PhotoGetWH
; SETB file_filter_grp,np:PRMBN API_PhotoGetWH+1
;
; SETB fileIdxL,np:PRMBN API_PhotoGetWH+2
; SETB fileIdxH,np:PRMBN API_PhotoGetWH+3
;
; phx
; ;jsr API_get_jpg_wh
; ;_pre_photo_open
; _LOAD_API _SA_FFGP_PRE_ENS,API_ID_FF_GP
; _LOAD_API _SA_PPP_PPO,API_ID_PRE_PHOTO_PLAY
; _LOAD_API SUBID_NONE,API_ID_GET_JPG_WH
;
; plx
; sta np:PRMBN API_PhotoGetWH ;backup result
; cmp #0
; beq ?end
;load width
LDA np:PRMBN API_LcmGetScreenWH+0
STA zp:?DP0_L00
LDA np:PRMBN API_LcmGetScreenWH+1
STA zp:?DP0_L00+1
LDY #0
LDA lcm_width_l
STA (zp:?DP0_L00),Y
INY
LDA lcm_width_h
STA (zp:?DP0_L00),Y
;load high
LDA np:PRMBN API_LcmGetScreenWH+2
STA zp:?DP0_L00
LDA np:PRMBN API_LcmGetScreenWH+3
STA zp:?DP0_L00+1
LDY #0
LDA lcm_height_l
STA (zp:?DP0_L00),Y
INY
LDA lcm_height_h
STA (zp:?DP0_L00),Y
?end:
PLA
STA zp:?DP0_L00
PLA
STA zp:?DP0_L00+1
PLA
rts
ENDMOD
;.EFUNC ;API_PhotoGetWH
;***************************************************************************
;* Func: API_LcmWriteImage
;* Input: pos_x - start x
;* pos_y - start y
;* reg_w - width
;* reg_h - height
;* reg_npx(l:h) - number of pixels
;* img_adr(ll-lh) - image address (format 565)
;* Output:
;*
;* Description:
;*
;***************************************************************************
;extern void API_LcmWriteImage(uint16 PosX, uint16 PosY, uint16 Width, uint16 High ,uint16 PixNum, uint16 *pImgData);
MODULE API_LcmWriteImage
PUBLIC API_LcmWriteImage
RSEG APP
DEFFN API_LcmWriteImage(0,0,0,0,32768,0,12,0)
API_LcmWriteImage:
SETB pos_x_l,np:PRMBN API_LcmWriteImage+0
SETB pos_x_h,np:PRMBN API_LcmWriteImage+1
SETB pos_y_l,np:PRMBN API_LcmWriteImage+2
SETB pos_y_h,np:PRMBN API_LcmWriteImage+3
SETB reg_w_l,np:PRMBN API_LcmWriteImage+4
SETB reg_w_h,np:PRMBN API_LcmWriteImage+5
SETB reg_h_l,np:PRMBN API_LcmWriteImage+6
SETB reg_h_h,np:PRMBN API_LcmWriteImage+7
SETB reg_npxl,np:PRMBN API_LcmWriteImage+8
SETB reg_npxh,np:PRMBN API_LcmWriteImage+9
SETB img_adrll,np:PRMBN API_LcmWriteImage+10
SETB img_adrlh,np:PRMBN API_LcmWriteImage+11
phx
jsr lcm_img_put_bitmap
plx
rts
ENDMOD
;.EFUNC ;API_LcmWriteImage
;***************************************************************************
;* Func: API_LcmReadImage
;* Input: pos_x - start x
;* pos_y - start y
;* reg_w - width
;* reg_h - height
;* reg_npx(l:h) - number of pixels
;* img_adr(ll-lh) - image address (format 565)
;* Output:
;*
;* Description:
;*
;***************************************************************************
;extern void API_LcmReadImage(uint16 PosX, uint16 PosY, uint16 Width, uint16 H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -