📄 main.asm
字号:
R1=(-1) // QImode move
pc=L12 // jump
L25:
.debug
.dw '.stabn 0x44,0,114,',0,0
.dd LM44-_TrainWord
.dw 0x0d,0x0a
.code
LM44:
R1=(-1) // QImode move
pc=L12 // jump
L27:
L17:
.debug
.dw '.stabn 0x44,0,116,',0,0
.dd LM45-_TrainWord
.dw 0x0d,0x0a
.code
LM45:
pc=L13 // jump
L14:
.debug
.dw '.stabn 0x44,0,117,',0,0
.dd LM46-_TrainWord
.dw 0x0d,0x0a
.code
LM46:
R1=0 // QImode move
pc=L12 // jump
.debug
.dw '.stabn 0x44,0,118,',0,0
.dd LM47-_TrainWord
.dw 0x0d,0x0a
.code
LM47:
LBE6:
.debug
.dw '.stabn 0x44,0,118,',0,0
.dd LM48-_TrainWord
.dw 0x0d,0x0a
.code
LM48:
L12:
sp+=2
pop bp from [sp]
retf
.endp // end of TrainWord
.debug
.dw '.stabs "WordID:p1",160,0,0,5',0x0d,0x0a
.CODE
.debug
.dw '.stabs "RespondID:p1",160,0,0,6',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB6-_TrainWord
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "res:1",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE6-_TrainWord
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME3-_TrainWord
.dw 0x0d,0x0a
.code
LME3:
.code
.debug
.dw '.stabs "main:F1",36,0,0,',0,0,offset _main,seg _main,0x0d,0x0a
.CODE
.public _main
_main: .proc
.debug
.dw '.stabn 0x44,0,121,',0,0
.dd LM49-_main
.dw 0x0d,0x0a
.code
LM49:
// total=4, vars=4
// frame_pointer_needed: 1
push bp to [sp]
sp-=4
bp=sp+1
R1=BP+7
[bp+3]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,122,',0,0
.dd LM50-_main
.dw 0x0d,0x0a
.code
LM50:
LBB7:
R1=BP // QImode move
R2=BP+1
R1=0 // QImode move
R3=R2 // QImode move
[R3]=R1 // QImode move
R1=BP // QImode move
R2=BP+2
R1=0 // QImode move
R4=R2 // QImode move
[R4]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,124,',0,0
.dd LM51-_main
.dw 0x0d,0x0a
.code
LM51:
R1=0 // QImode move
[SP--]=R1 // QImode move
call _BSR_DeleteSDGroup // call with return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,126,',0,0
.dd LM52-_main
.dw 0x0d,0x0a
.code
LM52:
R1=0 // QImode move
[SP--]=R1 // QImode move
call _PlayRespond // call without return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,128,',0,0
.dd LM53-_main
.dw 0x0d,0x0a
.code
LM53:
L32:
R1=1 // QImode move
[SP--]=R1 // QImode move
R1=256 // QImode move
[SP--]=R1 // QImode move
call _TrainWord // call with return value
SP=SP+2
CMP R1,0 // QImode test
JZ L59 // QImode NE
PC=L34
L59:
pc=L33 // jump
L34:
pc=L32 // jump
L33:
.debug
.dw '.stabn 0x44,0,130,',0,0
.dd LM54-_main
.dw 0x0d,0x0a
.code
LM54:
L35:
R1=2 // QImode move
[SP--]=R1 // QImode move
R1=257 // QImode move
[SP--]=R1 // QImode move
call _TrainWord // call with return value
SP=SP+2
CMP R1,0 // QImode test
JZ L60 // QImode NE
PC=L37
L60:
pc=L36 // jump
L37:
pc=L35 // jump
L36:
.debug
.dw '.stabn 0x44,0,132,',0,0
.dd LM55-_main
.dw 0x0d,0x0a
.code
LM55:
L38:
R1=3 // QImode move
[SP--]=R1 // QImode move
R1=258 // QImode move
[SP--]=R1 // QImode move
call _TrainWord // call with return value
SP=SP+2
CMP R1,0 // QImode test
JZ L61 // QImode NE
PC=L40
L61:
pc=L39 // jump
L40:
pc=L38 // jump
L39:
.debug
.dw '.stabn 0x44,0,135,',0,0
.dd LM56-_main
.dw 0x0d,0x0a
.code
LM56:
R1=0 // QImode move
[SP--]=R1 // QImode move
call _BSR_InitRecognizer // call with return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,136,',0,0
.dd LM57-_main
.dw 0x0d,0x0a
.code
LM57:
call _BSR_EnableCPUIndicator // call without return value
.debug
.dw '.stabn 0x44,0,138,',0,0
.dd LM58-_main
.dw 0x0d,0x0a
.code
LM58:
R1=8 // QImode move
[SP--]=R1 // QImode move
call _PlayRespond // call without return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,140,',0,0
.dd LM59-_main
.dw 0x0d,0x0a
.code
LM59:
L41:
pc=L43 // jump
pc=L42 // jump
L43:
.debug
.dw '.stabn 0x44,0,142,',0,0
.dd LM60-_main
.dw 0x0d,0x0a
.code
LM60:
R1=BP // QImode move
R2=BP+2
R3=BP // QImode move
R1=BP+2
R2=BP // QImode move
R3=BP+2
R4=R3 // QImode move
R2=[R4] // QImode move
R3=R2+1
R2=R1 // QImode move
[R2]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,143,',0,0
.dd LM61-_main
.dw 0x0d,0x0a
.code
LM61:
R1=BP // QImode move
R2=BP+2
R3=R2 // QImode move
R1=[R3] // QImode move
CMP R1,2 // QImode compare
JG L62 // QImode LE
PC=L44
L62:
R1=BP // QImode move
R2=BP+2
R1=0 // QImode move
R4=R2 // QImode move
[R4]=R1 // QImode move
L44:
.debug
.dw '.stabn 0x44,0,144,',0,0
.dd LM62-_main
.dw 0x0d,0x0a
.code
LM62:
call _BSR_GetResult // call with return value
[BP]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,146,',0,0
.dd LM63-_main
.dw 0x0d,0x0a
.code
LM63:
R1=[BP] // QImode move
CMP R1,0 // QImode test
JG L63 // QImode LE
PC=L45
L63:
.debug
.dw '.stabn 0x44,0,148,',0,0
.dd LM64-_main
.dw 0x0d,0x0a
.code
LM64:
R1=[_gActivated] // QImode move
CMP R1,0 // QImode test
JNZ L64 // QImode EQ
PC=L46
L64:
.debug
.dw '.stabn 0x44,0,150,',0,0
.dd LM65-_main
.dw 0x0d,0x0a
.code
LM65:
R1=BP // QImode move
R2=BP+1
R1=0 // QImode move
R3=R2 // QImode move
[R3]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,151,',0,0
.dd LM66-_main
.dw 0x0d,0x0a
.code
LM66:
R1=[BP] // QImode move
CMP R1,257 // QImode compare
JNZ L65 // QImode EQ
PC=L49
L65:
CMP R1,257 // QImode compare
JNG L66 // QImode GT
PC=L53
L66:
CMP R1,256 // QImode compare
JNZ L67 // QImode EQ
PC=L48
L67:
pc=L47 // jump
L53:
CMP R1,258 // QImode compare
JNZ L68 // QImode EQ
PC=L50
L68:
pc=L47 // jump
L48:
.debug
.dw '.stabn 0x44,0,154,',0,0
.dd LM67-_main
.dw 0x0d,0x0a
.code
LM67:
R1=BP // QImode move
R2=BP+2
R1=_gTriggerRespond // QImode move
R4=R2 // QImode move
R2=[R4] // QImode move
R1+=R2 // addqi3_r0r
R3=R1 // QImode move
R2=[R3] // QImode move
[SP--]=R2 // QImode move
call _PlayRespond // call without return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,155,',0,0
.dd LM68-_main
.dw 0x0d,0x0a
.code
LM68:
pc=L47 // jump
L49:
.debug
.dw '.stabn 0x44,0,157,',0,0
.dd LM69-_main
.dw 0x0d,0x0a
.code
LM69:
R1=1 // QImode move
[_PlayFlag]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,158,',0,0
.dd LM70-_main
.dw 0x0d,0x0a
.code
LM70:
R1=0 // QImode move
[SP--]=R1 // QImode move
call _PlayRespond2 // call without return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,159,',0,0
.dd LM71-_main
.dw 0x0d,0x0a
.code
LM71:
R1=0 // QImode move
[_PlayFlag]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,160,',0,0
.dd LM72-_main
.dw 0x0d,0x0a
.code
LM72:
R1=0 // QImode move
[_gActivated]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,161,',0,0
.dd LM73-_main
.dw 0x0d,0x0a
.code
LM73:
pc=L47 // jump
L50:
.debug
.dw '.stabn 0x44,0,163,',0,0
.dd LM74-_main
.dw 0x0d,0x0a
.code
LM74:
R1=BP // QImode move
R2=BP+2
R1=_gComm2Respond // QImode move
R4=R2 // QImode move
R2=[R4] // QImode move
R1+=R2 // addqi3_r0r
R3=R1 // QImode move
R2=[R3] // QImode move
[SP--]=R2 // QImode move
call _PlayRespond // call without return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,164,',0,0
.dd LM75-_main
.dw 0x0d,0x0a
.code
LM75:
R1=0 // QImode move
[_gActivated]=R1 // QImode move
L52:
L47:
.debug
.dw '.stabn 0x44,0,166,',0,0
.dd LM76-_main
.dw 0x0d,0x0a
.code
LM76:
pc=L54 // jump
L46:
.debug
.dw '.stabn 0x44,0,169,',0,0
.dd LM77-_main
.dw 0x0d,0x0a
.code
LM77:
R1=[BP] // QImode move
CMP R1,256 // QImode compare
JZ L69 // QImode NE
PC=L54
L69:
.debug
.dw '.stabn 0x44,0,171,',0,0
.dd LM78-_main
.dw 0x0d,0x0a
.code
LM78:
R1=BP // QImode move
R2=BP+2
R1=_gTriggerRespond // QImode move
R4=R2 // QImode move
R2=[R4] // QImode move
R1+=R2 // addqi3_r0r
R3=R1 // QImode move
R2=[R3] // QImode move
[SP--]=R2 // QImode move
call _PlayRespond // call without return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,172,',0,0
.dd LM79-_main
.dw 0x0d,0x0a
.code
LM79:
R1=1 // QImode move
[_gActivated]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,173,',0,0
.dd LM80-_main
.dw 0x0d,0x0a
.code
LM80:
R1=BP // QImode move
R2=BP+1
R1=0 // QImode move
R4=R2 // QImode move
[R4]=R1 // QImode move
L55:
L54:
.debug
.dw '.stabn 0x44,0,176,',0,0
.dd LM81-_main
.dw 0x0d,0x0a
.code
LM81:
pc=L56 // jump
L45:
.debug
.dw '.stabn 0x44,0,177,',0,0
.dd LM82-_main
.dw 0x0d,0x0a
.code
LM82:
R1=[_gActivated] // QImode move
CMP R1,0 // QImode test
JNZ L70 // QImode EQ
PC=L56
L70:
.debug
.dw '.stabn 0x44,0,179,',0,0
.dd LM83-_main
.dw 0x0d,0x0a
.code
LM83:
R1=BP // QImode move
R2=BP+1
R3=BP // QImode move
R1=BP+1
R2=BP // QImode move
R3=BP+1
R2=R3 // QImode move
R4=[R2] // QImode move
R2=R4+1
R3=R2 // QImode move
R4=R1 // QImode move
[R4]=R3 // QImode move
CMP R3,450 // QImode compare
JG L71 // QImode LE
PC=L56
L71:
.debug
.dw '.stabn 0x44,0,181,',0,0
.dd LM84-_main
.dw 0x0d,0x0a
.code
LM84:
R1=5 // QImode move
[SP--]=R1 // QImode move
call _PlayRespond // call without return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,182,',0,0
.dd LM85-_main
.dw 0x0d,0x0a
.code
LM85:
R1=0 // QImode move
[_gActivated]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,183,',0,0
.dd LM86-_main
.dw 0x0d,0x0a
.code
LM86:
R1=BP // QImode move
R2=BP+1
R1=0 // QImode move
R3=R2 // QImode move
[R3]=R1 // QImode move
L58:
L57:
L56:
.debug
.dw '.stabn 0x44,0,186,',0,0
.dd LM87-_main
.dw 0x0d,0x0a
.code
LM87:
pc=L41 // jump
L42:
.debug
.dw '.stabn 0x44,0,187,',0,0
.dd LM88-_main
.dw 0x0d,0x0a
.code
LM88:
LBE7:
.debug
.dw '.stabn 0x44,0,187,',0,0
.dd LM89-_main
.dw 0x0d,0x0a
.code
LM89:
L31:
sp+=4
pop bp from [sp]
retf
.endp // end of main
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB7-_main
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "res:1",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabs "timeCnt:1",128,0,0,1',0x0d,0x0a
.CODE
.debug
.dw '.stabs "random_no:1",128,0,0,2',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE7-_main
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME4-_main
.dw 0x0d,0x0a
.code
LME4:
.external _BSR_GetResult
.external _BSR_DeleteSDGroup
.external _BSR_Train
.external _SACM_S480_Stop
.external _SACM_S480_ServiceLoop
.external _SACM_S480_Status
.external _SACM_S480_Play
.external _SACM_S480_Initial
.external _BSR_EnableCPUIndicator
.external _BSR_InitRecognizer
.external _SACM_A2000_Stop
.external _ClearWatchDog
.external _SACM_A2000_ServiceLoop
.external _SACM_A2000_Status
.external _SACM_A2000_Play
.external _SACM_A2000_Initial
.external _BSR_StopRecognizer
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -