📄 ui_puts_jp.msa
字号:
/*
********************************************************************************
* ACTOS
* Show String
*
* (c) Copyright 2002-2003, Actions Co,Ld.
* All Right Reserved
*
* File : PutS.msa
* By : Chliang
* Version: 1> v1.00 first version date
********************************************************************************
*/
#include "display.h"
#include "Drv_S6B33B0A.h"
//module UI_PutS
//public sUI_PutS
module Sdrv_PutS
public Sdrv_PutS
//char StrHeight // = ASCII_SMALL_HEIGHT_DEF;//一行字的高度
extern Sdrv_PutChar
extern TextPage
extern sUI_SetTextPos
extern AsciiSelect
StrHeight defb 1
rseg UI_RCODE
//*******************************************************************************/
/*
** FUNCTION: sUI_PutS
**
** Description: output string
**
** Arguments :
** input
** de=字串首地址
** c=字串输出长度
** output
** none
********************************************************************************/
//sUI_PutS:
Sdrv_PutS:
push de
push bc
ex de,hl
ShowStringLoop:
ld a,(hl)
inc hl
or a
jr z,_show_string_end //遇到0x00结束
cp 0dh
jr z,_show_string_end //遇到0x0d结束
cp 0ah //换行
jr z,_ChgLine
ld e,a //区码
cp 0x81 //change by ybfu
jr c,ShowStringConti1
ld d,(hl) //位码
inc hl
ShowStringConti1:
push hl
call Sdrv_PutChar
pop hl
dec c //-1为输入全部字串,其他为实际输出字符长度
jr z,_show_string_end
jr ShowStringLoop
_ChgLine:
push bc
ld a,(TextPage) //当前行
ld c,a
ld a,(AsciiSelect)
cp FONT_TYPE_LARGE
ld a,16 //大ASCII
jr z,lsIsLargeASCII
ld a,8 //小ASCII
lsIsLargeASCII:
add a,c
ld c,a
ld e,0
call sUI_SetTextPos
pop bc
jr ShowStringLoop
_show_string_end:
pop bc
pop de
ret
/*
********************************************************************************
* the end of file
********************************************************************************
*/
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -