其他分享
首页 > 其他分享> > 【BA4988】SysLcd_Init函数

【BA4988】SysLcd_Init函数

作者:互联网

反汇编:

SysLcd_Init()
{
    A = 0
    Y = 0
    buff_point = &Lcd_WriteData
    do
    {
        A = 0
        *(buff_point+Y) = 0x00
        Y += 1
    }
    while (Y < 0x7F)
}

汇编:

574A [A9 00 A0]: LDA #$00 @ 送累加器
574C [A0 00 A9]: LDY #$00 @ 送变址寄存器Y
574E [A9 80 8D]: LDA #$80 @ 送累加器
5750 [8D 2F 00]: STA $002F = #$80 @ 存累加器
5753 [A9 20 8D]: LDA #$20 @ 送累加器
5755 [8D 30 00]: STA $0030 = #$20 @ 存累加器
5758 [A9 00 91]: LDA #$00 @ 送累加器
575A [91 2F C8]: STA ($2F),Y @ $2080 = #$00 @ 存累加器
575C [C8 C0 7F]: INY @ 变址寄存器Y加1
575D [C0 7F 90]: CPY #$7F @ 变址寄存器Y与存储器比较
575F [90 F7 60]: BCC $5758 @ 进位为0分支
5761 [60 A9 F4]: RTS @ 子程序返回

标签:00,变址,累加器,LDA,8D,Init,SysLcd,A9,BA4988
来源: https://www.cnblogs.com/kevinshq/p/15631450.html