复件 ui_puts_jp.msa

来自「MP3 整个 SDK」· MSA 代码 · 共 97 行

MSA
97
字号
/*
********************************************************************************
*                       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"

        module  UI_PutS

        public  sUI_PutS

        extern  sUI_PutChar
        extern  TextPage
        extern  sUI_SetTextPos
        extern  AsciiSelect

        rseg    UI_RCODE

//*******************************************************************************/
/*
** FUNCTION:     sUI_PutS
**
** Description:  output string
**
** Arguments  :
**  input
**      de=字串首地址
**      c=字串输出长度
**  output
**      none
********************************************************************************/
sUI_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    sUI_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 + =
减小字号Ctrl + -
显示快捷键?