📄 isd4004_v08.asm
字号:
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "i:1",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabs "m:1",128,0,0,1',0x0d,0x0a
.CODE
.debug
.dw '.stabs "j:1",128,0,0,2',0x0d,0x0a
.CODE
.debug
.dw '.stabs "a:1",128,0,0,3',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE8-_mc
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME7-_mc
.dw 0x0d,0x0a
.code
LME7:
.code
.debug
.dw '.stabs "rint:F19",36,0,0,',0,0,offset _rint,seg _rint,0x0d,0x0a
.CODE
.public _rint
_rint: .proc
.debug
.dw '.stabn 0x44,0,191,',0,0
.dd LM112-_rint
.dw 0x0d,0x0a
.code
LM112:
// total=11, vars=11
// frame_pointer_needed: 1
push bp to [sp]
sp-=11
bp=sp+1
R1=BP+14
.debug
.dw '.stabn 0x44,0,192,',0,0
.dd LM113-_rint
.dw 0x0d,0x0a
.code
LM113:
LBB9:
R2=0 // QImode move
[BP]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,193,',0,0
.dd LM114-_rint
.dw 0x0d,0x0a
.code
LM114:
R2=BP // QImode move
R3=BP+1
R2=0 // QImode move
R4=R3 // QImode move
[R4]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,194,',0,0
.dd LM115-_rint
.dw 0x0d,0x0a
.code
LM115:
R2=BP // QImode move
R3=BP+2
R2=0 // QImode move
R4=R3 // QImode move
[R4]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,195,',0,0
.dd LM116-_rint
.dw 0x0d,0x0a
.code
LM116:
R2=BP // QImode move
R3=BP+3
R2=0 // QImode move
R4=R3 // QImode move
[R4]=R2 // QImode move
R2=BP // QImode move
R3=BP+4
R2=0 // QImode move
R4=R3 // QImode move
[R4]=R2 // QImode move
R2=BP // QImode move
R3=BP+5
R2=0 // QImode move
R4=R3 // QImode move
[R4]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,197,',0,0
.dd LM117-_rint
.dw 0x0d,0x0a
.code
LM117:
R2=BP // QImode move
R3=BP+1
R2=48 // QImode move
R4=R3 // QImode move
[R4]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,198,',0,0
.dd LM118-_rint
.dw 0x0d,0x0a
.code
LM118:
R2=0 // QImode move
[BP]=R2 // QImode move
L45:
R2=[BP] // QImode move
CMP R2,7 // QImode compare
JG L57 // QImode LE
PC=L48
L57:
pc=L46 // Indirect jump
L48:
.debug
.dw '.stabn 0x44,0,200,',0,0
.dd LM119-_rint
.dw 0x0d,0x0a
.code
LM119:
R2=[28677] // QImode move
R3=(-12) // QImode move
[28677]=R2&R3
.debug
.dw '.stabn 0x44,0,201,',0,0
.dd LM120-_rint
.dw 0x0d,0x0a
.code
LM120:
R3=BP // QImode move
R2=BP+2
R3=BP // QImode move
R3=BP+1
[bp+10]=R3 // QImode move
R4=[bp+10] // QImode move
R3=[R4] // QImode move
R4=R3&1
R3=R2 // QImode move
[R3]=R4 // QImode move
.debug
.dw '.stabn 0x44,0,202,',0,0
.dd LM121-_rint
.dw 0x0d,0x0a
.code
LM121:
R3=BP // QImode move
R2=BP+2
R3=BP // QImode move
R4=BP+2
[bp+10]=R4 // QImode move
R4=[bp+10] // QImode move
R3=[R4] // QImode move
R4=R3 lsl 1
R3=R2 // QImode move
[R3]=R4 // QImode move
.debug
.dw '.stabn 0x44,0,203,',0,0
.dd LM122-_rint
.dw 0x0d,0x0a
.code
LM122:
R2=BP // QImode move
R3=BP+2
R2=[28677] // QImode move
R4=R3 // QImode move
R3=[R4] // QImode move
[28677]=R2|R3
.debug
.dw '.stabn 0x44,0,204,',0,0
.dd LM123-_rint
.dw 0x0d,0x0a
.code
LM123:
R2=[28677] // QImode move
R3=1 // QImode move
[28677]=R2|R3
.debug
.dw '.stabn 0x44,0,205,',0,0
.dd LM124-_rint
.dw 0x0d,0x0a
.code
LM124:
R3=BP // QImode move
R2=BP+1
R3=BP // QImode move
R3=BP+1
[bp+10]=R3 // QImode move
R4=[bp+10] // QImode move
R3=[R4] // QImode move
R4=R3 asr 1
R3=R2 // QImode move
[R3]=R4 // QImode move
.debug
.dw '.stabn 0x44,0,198,',0,0
.dd LM125-_rint
.dw 0x0d,0x0a
.code
LM125:
L47:
R2=[BP] // QImode move
R3=R2+1
[BP]=R3 // QImode move
pc=L45 // Indirect jump
L46:
.debug
.dw '.stabn 0x44,0,209,',0,0
.dd LM126-_rint
.dw 0x0d,0x0a
.code
LM126:
R2=1 // QImode move
[28690]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,211,',0,0
.dd LM127-_rint
.dw 0x0d,0x0a
.code
LM127:
R2=0 // QImode move
[BP]=R2 // QImode move
L49:
R2=[BP] // QImode move
CMP R2,1 // QImode compare
JG L58 // QImode LE
PC=L52
L58:
pc=L50 // Indirect jump
L52:
.debug
.dw '.stabn 0x44,0,213,',0,0
.dd LM128-_rint
.dw 0x0d,0x0a
.code
LM128:
R2=[28677] // QImode move
R3=(-2) // QImode move
[28677]=R2&R3
.debug
.dw '.stabn 0x44,0,214,',0,0
.dd LM129-_rint
.dw 0x0d,0x0a
.code
LM129:
R3=BP // QImode move
R2=BP+5
R3=[28677] // QImode move
R4=R3&4
R3=R2 // QImode move
[R3]=R4 // QImode move
.debug
.dw '.stabn 0x44,0,215,',0,0
.dd LM130-_rint
.dw 0x0d,0x0a
.code
LM130:
R3=BP // QImode move
R2=BP+5
R3=BP // QImode move
R4=BP+5
[bp+10]=R4 // QImode move
R4=[bp+10] // QImode move
R3=[R4] // QImode move
R4=R3 asr 2
R3=R2 // QImode move
[R3]=R4 // QImode move
.debug
.dw '.stabn 0x44,0,216,',0,0
.dd LM131-_rint
.dw 0x0d,0x0a
.code
LM131:
R3=BP // QImode move
R2=BP+4
R4=BP // QImode move
R3=BP+4
[bp+6]=BP // QImode move
R4=BP+5
[bp+10]=R4 // QImode move
R4=R3 // QImode move
R4=[R4] // QImode move
[bp+7]=R4 // QImode move
R3=[bp+7] // QImode move
R4=[bp+10] // QImode move
R3|=[R4] // iorqi3_r0R
R4=R2 // QImode move
[R4]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,217,',0,0
.dd LM132-_rint
.dw 0x0d,0x0a
.code
LM132:
R3=BP // QImode move
R2=BP+4
R3=BP // QImode move
R3=BP+4
[bp+10]=R3 // QImode move
R4=[bp+10] // QImode move
R3=[R4] // QImode move
R4=R3 lsl 1
R3=R2 // QImode move
[R3]=R4 // QImode move
.debug
.dw '.stabn 0x44,0,218,',0,0
.dd LM133-_rint
.dw 0x0d,0x0a
.code
LM133:
R2=[28677] // QImode move
R3=1 // QImode move
[28677]=R2|R3
.debug
.dw '.stabn 0x44,0,211,',0,0
.dd LM134-_rint
.dw 0x0d,0x0a
.code
LM134:
L51:
R2=[BP] // QImode move
R3=R2+1
[BP]=R3 // QImode move
pc=L49 // Indirect jump
L50:
.debug
.dw '.stabn 0x44,0,220,',0,0
.dd LM135-_rint
.dw 0x0d,0x0a
.code
LM135:
R2=0 // QImode move
[BP]=R2 // QImode move
L53:
R2=[BP] // QImode move
CMP R2,15 // QImode compare
JG L59 // QImode LE
PC=L56
L59:
pc=L54 // Indirect jump
L56:
.debug
.dw '.stabn 0x44,0,222,',0,0
.dd LM136-_rint
.dw 0x0d,0x0a
.code
LM136:
R2=[28677] // QImode move
R3=(-2) // QImode move
[28677]=R2&R3
.debug
.dw '.stabn 0x44,0,223,',0,0
.dd LM137-_rint
.dw 0x0d,0x0a
.code
LM137:
R3=BP // QImode move
R2=BP+5
R3=[28677] // QImode move
R4=R3&4
R3=R2 // QImode move
[R3]=R4 // QImode move
.debug
.dw '.stabn 0x44,0,224,',0,0
.dd LM138-_rint
.dw 0x0d,0x0a
.code
LM138:
R3=BP // QImode move
R2=BP+5
R3=BP // QImode move
R4=BP+5
[bp+10]=R4 // QImode move
R4=[bp+10] // QImode move
R3=[R4] // QImode move
R4=R3 asr 2
R3=R2 // QImode move
[R3]=R4 // QImode move
.debug
.dw '.stabn 0x44,0,225,',0,0
.dd LM139-_rint
.dw 0x0d,0x0a
.code
LM139:
R3=BP // QImode move
R2=BP+3
R4=BP // QImode move
R3=BP+3
[bp+8]=BP // QImode move
R4=BP+5
[bp+10]=R4 // QImode move
R4=R3 // QImode move
R4=[R4] // QImode move
[bp+9]=R4 // QImode move
R3=[bp+9] // QImode move
R4=[bp+10] // QImode move
R3|=[R4] // iorqi3_r0R
R4=R2 // QImode move
[R4]=R3 // QImode move
.debug
.dw '.stabn 0x44,0,226,',0,0
.dd LM140-_rint
.dw 0x0d,0x0a
.code
LM140:
R3=BP // QImode move
R2=BP+3
R3=BP // QImode move
R3=BP+3
[bp+10]=R3 // QImode move
R4=[bp+10] // QImode move
R3=[R4] // QImode move
R4=R3 lsl 1
R3=R2 // QImode move
[R3]=R4 // QImode move
.debug
.dw '.stabn 0x44,0,227,',0,0
.dd LM141-_rint
.dw 0x0d,0x0a
.code
LM141:
R2=[28677] // QImode move
R3=1 // QImode move
[28677]=R2|R3
.debug
.dw '.stabn 0x44,0,220,',0,0
.dd LM142-_rint
.dw 0x0d,0x0a
.code
LM142:
L55:
R2=[BP] // QImode move
R3=R2+1
[BP]=R3 // QImode move
pc=L53 // Indirect jump
L54:
.debug
.dw '.stabn 0x44,0,229,',0,0
.dd LM143-_rint
.dw 0x0d,0x0a
.code
LM143:
LBE9:
.debug
.dw '.stabn 0x44,0,229,',0,0
.dd LM144-_rint
.dw 0x0d,0x0a
.code
LM144:
L44:
sp+=11
pop bp from [sp]
retf
.endp // end of rint
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB9-_rint
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "i:1",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabs "m:1",128,0,0,1',0x0d,0x0a
.CODE
.debug
.dw '.stabs "j:1",128,0,0,2',0x0d,0x0a
.CODE
.debug
.dw '.stabs "r:1",128,0,0,3',0x0d,0x0a
.CODE
.debug
.dw '.stabs "e:1",128,0,0,4',0x0d,0x0a
.CODE
.debug
.dw '.stabs "k:1",128,0,0,5',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE9-_rint
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME8-_rint
.dw 0x0d,0x0a
.code
LME8:
.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,238,',0,0
.dd LM145-_main
.dw 0x0d,0x0a
.code
LM145:
// total=3, vars=3
// frame_pointer_needed: 1
push bp to [sp]
sp-=3
bp=sp+1
R1=BP+6
[bp+2]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,312,',0,0
.dd LM146-_main
.dw 0x0d,0x0a
.code
LM146:
LBB10:
R1=0 // QImode move
[BP]=R1 // QImode move
R1=BP // QImode move
R2=BP+1
R1=0 // QImode move
R3=R2 // QImode move
[R3]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,315,',0,0
.dd LM147-_main
.dw 0x0d,0x0a
.code
LM147:
R1=0 // QImode move
[28674]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,316,',0,0
.dd LM148-_main
.dw 0x0d,0x0a
.code
LM148:
R1=0 // QImode move
[28675]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,317,',0,0
.dd LM149-_main
.dw 0x0d,0x0a
.code
LM149:
R1=0 // QImode move
[28672]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,319,',0,0
.dd LM150-_main
.dw 0x0d,0x0a
.code
LM150:
L61:
pc=L63 // Indirect jump
pc=L62 // Indirect jump
L63:
.debug
.dw '.stabn 0x44,0,321,',0,0
.dd LM151-_main
.dw 0x0d,0x0a
.code
LM151:
R1=[28672] // QImode move
[BP]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,322,',0,0
.dd LM152-_main
.dw 0x0d,0x0a
.code
LM152:
R1=BP // QImode move
R2=BP+1
R1=[BP] // QImode move
R3=R2 // QImode move
[R3]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,323,',0,0
.dd LM153-_main
.dw 0x0d,0x0a
.code
LM153:
R1=BP // QImode move
R2=BP+1
R3=R2 // QImode move
R1=[R3] // QImode move
CMP R1,8 // QImode compare
JNZ L78 // QImode EQ
PC=L73
L78:
CMP R1,8 // QImode compare
JNA L79 // QImode GTU
PC=L76
L79:
CMP R1,1 // QImode compare
JNZ L80 // QImode EQ
PC=L66
L80:
CMP R1,1 // QImode compare
JNB L81 // QImode LTU
PC=L65
L81:
CMP R1,2 // QImode compare
JNZ L82 // QImode EQ
PC=L67
L82:
CMP R1,4 // QImode compare
JNZ L83 // QImode EQ
PC=L73
L83:
pc=L74 // Indirect jump
L76:
CMP R1,32 // QImode compare
JNZ L84 // QImode EQ
PC=L73
L84:
CMP R1,32 // QImode compare
JNA L85 // QImode GTU
PC=L77
L85:
CMP R1,16 // QImode compare
JNZ L86 // QImode EQ
PC=L73
L86:
pc=L74 // Indirect jump
L77:
CMP R1,64 // QImode compare
JNZ L87 // QImode EQ
PC=L73
L87:
CMP R1,128 // QImode compare
JNZ L88 // QImode EQ
PC=L73
L88:
pc=L74 // Indirect jump
.debug
.dw '.stabn 0x44,0,325,',0,0
.dd LM154-_main
.dw 0x0d,0x0a
.code
LM154:
L65:
pc=L64 // Indirect jump
L66:
.debug
.dw '.stabn 0x44,0,327,',0,0
.dd LM155-_main
.dw 0x0d,0x0a
.code
LM155:
call _poweron // call without return value
.debug
.dw '.stabn 0x44,0,328,',0,0
.dd LM156-_main
.dw 0x0d,0x0a
.code
LM156:
R1=71 // QImode move
[SP--]=R1 // QImode move
call _play // call without return value
SP=SP+1
.debug
.dw '.stabn 0x44,0,329,',0,0
.dd LM157-_main
.dw 0x0d,0x0a
.code
LM157:
pc=L64 // Indirect jump
L67:
.debug
.dw '.stabn 0x44,0,330,',0,0
.dd LM158-_main
.dw 0x0d,0x0a
.code
LM158:
call _stop // call without return value
.debug
.dw '.stabn 0x44,0,331,',0,0
.dd LM159-_main
.dw 0x0d,0x0a
.code
LM159:
pc=L64 // Indirect jump
L68:
L69:
L70:
L71:
L72:
L73:
.debug
.dw '.stabn 0x44,0,338,',0,0
.dd LM160-_main
.dw 0x0d,0x0a
.code
LM160:
pc=L64 // Indirect jump
L74:
.debug
.dw '.stabn 0x44,0,340,',0,0
.dd LM161-_main
.dw 0x0d,0x0a
.code
LM161:
pc=L64 // Indirect jump
L64:
.debug
.dw '.stabn 0x44,0,342,',0,0
.dd LM162-_main
.dw 0x0d,0x0a
.code
LM162:
pc=L61 // Indirect jump
L62:
.debug
.dw '.stabn 0x44,0,343,',0,0
.dd LM163-_main
.dw 0x0d,0x0a
.code
LM163:
LBE10:
.debug
.dw '.stabn 0x44,0,343,',0,0
.dd LM164-_main
.dw 0x0d,0x0a
.code
LM164:
L60:
sp+=3
pop bp from [sp]
retf
.endp // end of main
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB10-_main
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "t:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabs "I_Key:4",128,0,0,1',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE10-_main
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME9-_main
.dw 0x0d,0x0a
.code
LME9:
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -