反汇编:
_65FB() { if (Lcd_Y<0x40) {662D } elif (Lcd_Y==0x40) {6650 } if (Lcd_Y==0x41) {666C } elif (Lcd_Y>=0x41) {660A *(U16*)&003A+=0x0020 *(U16*)&0038+=0x0020 } }
汇编:
[00E955FB]65FB [AD 82 20]: LDA $2082 = #$57 @ 送累加器
[00E955FE]65FE [C9 40 90]: CMP #$40 @ 累加器与存储器比较
[00E95600]6600 [90 2B F0]: BCC $662D @ 进位为0分支
[00E95602]6602 [F0 4C C9]: BEQ $6650 @ 结果为0分支
[00E95604]6604 [C9 41 F0]: CMP #$41 @ 累加器与存储器比较
[00E95606]6606 [F0 64 B0]: BEQ $666C @ 结果为0分支
[00E95608]6608 [B0 00 18]: BCS $660A @ 进位为“1”分支
[00E9560A]660A [18 AD 3A]: CLC @ 清进位标志
[00E9560B]660B [AD 3A 00]: LDA $003A = #$8D @ 送累加器
[00E9560E]660E [69 20 8D]: ADC #$20 @ 带进位加
[00E95610]6610 [8D 3A 00]: STA $003A = #$AD @ 存累加器
[00E95613]6613 [AD 3B 00]: LDA $003B = #$20 @ 送累加器
[00E95616]6616 [69 00 8D]: ADC #$00 @ 带进位加
[00E95618]6618 [8D 3B 00]: STA $003B = #$20 @ 存累加器
[00E9561B]661B [18 AD 38]: CLC @ 清进位标志
[00E9561C]661C [AD 38 00]: LDA $0038 = #$B2 @ 送累加器
[00E9561F]661F [69 20 8D]: ADC #$20 @ 带进位加
[00E95621]6621 [8D 38 00]: STA $0038 = #$D2 @ 存累加器
[00E95624]6624 [AD 39 00]: LDA $0039 = #$0B @ 送累加器
[00E95627]6627 [69 00 8D]: ADC #$00 @ 带进位加
[00E95629]6629 [8D 39 00]: STA $0039 = #$0B @ 存累加器
[00E9562C]662C [60 38 AD]: RTS @ 子程序返回