⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_au.s

📁 一个两碟控制的VCD的代码,两碟之间的转动及连续播放,已大量生产的CODE.
💻 S
📖 第 1 页 / 共 2 页
字号:
	beq	r4,r0,L16
	nop	;via slot (len 1)
	addi	r0,#1,r17	;movsi smallint
	jspci	r24,#L17,r0	;jump L17
	ld	_WavBuf1Begin[r25],r7	;movsi _WavBuf1Begin -> r7
	st	_wav_wrptr[r25],r7	;movsi r7 -> _wav_wrptr
L16:
	ld	_WavBuf0Begin[r25],r8	;movsi _WavBuf0Begin -> r8
	st	_wav_wrptr[r25],r8	;movsi r8 -> _wav_wrptr
L17:
LM44:
.stabn 68,0,129,LM44
	beq	r4,r0,L18
	nop	;via slot (len 0)
	nop	;via slot (len 0)
	st	_buf1ready[r25],r0	;movsi 0 -> _buf1ready
	jspci	r24,#L12,r0
	nop	;via slot (len 0)
	nop	;via slot (len 0)	;jump L12
L18:
LM45:
.stabn 68,0,130,LM45
	st	_buf0ready[r25],r0	;movsi 0 -> _buf0ready
L12:
LM46:
.stabn 68,0,132,LM46
	ld	_au_repeat[r25],r2	;movsi _au_repeat -> r2
	bne	r2,r0,L20
	nop	;via slot (len 1)
	addi	r0,#1,r2	;movsi smallint
LM47:
.stabn 68,0,133,LM47
	bne	r17,r2,L21
	nop	;via slot (len 1)
	addi	r0,#2,r2	;movsi smallint
LM48:
.stabn 68,0,135,LM48
	jspci	r24,#L22,r0
	nop	;via slot (len 1)	;jump L22
	st	_wavbuf0size[r25],r0	;movsi 0 -> _wavbuf0size
L21:
	beqsq	r17,r2,L22
	nop	;via slot (len 1)
	st	_wavbuf1size[r25],r0	;movsi 0 -> _wavbuf1size
L22:
LM49:
.stabn 68,0,138,LM49
	ld	_PCM_srcsize[r25],r2	;movsi _PCM_srcsize -> r2
	bgt	r2,r0,L42
	ld	_wavbuf0size[r25],r2	;movsi _wavbuf0size -> r2
	ld	_wavbuf1size[r25],r7	;movsi _wavbuf1size -> r7
	add	r2,r7,r2	;addsi3	r2,r7 -> r2
	bne	r2,r0,L42
	nop	;via slot (len 0)
	nop	;via slot (len 0)
LM50:
.stabn 68,0,139,LM50
	jspci	r24,#_au_end,r31
	nop	;via slot (len 1)	;1 _au_end
	addi	r0,#0,r4	;movsi smallint
LM51:
.stabn 68,0,140,LM51
	jspci	r24,#L41,r0
	nop	;via slot (len 1)	;jump L41
	addi	r0,#1,r2	;movsi smallint
L20:
LM52:
.stabn 68,0,144,LM52
	beq	r17,r0,L42
	nop	;via slot (len 0)
	nop	;via slot (len 0)
LM53:
.stabn 68,0,145,LM53
	bne	r17,r2,L27
	nop	;via slot (len 1)
	addi	r0,#2,r2	;movsi smallint
LM54:
.stabn 68,0,147,LM54
	jspci	r24,#L43,r0
	nop	;via slot (len 1)	;jump L43
	ld	_WavBuf0Begin[r25],r8	;movsi _WavBuf0Begin -> r8
L27:
	bne	r17,r2,L44
	ld	_VBV_start[r25],r2	;movsi _VBV_start -> r2
	addi	r2,#5120,r2	;addsi3	r2,5120 -> r2
LM55:
.stabn 68,0,148,LM55
	ld	_WavBuf1Begin[r25],r8	;movsi _WavBuf1Begin -> r8
L43:
	ld	_x12000000[r25],r7	;movsi _x12000000 -> r7
	sub	r8,r7,r2	;subsi3 r8,r7 -> r2
	asr	r2,r2,#2	;ashrsi3	 (r2>>2) -> r2
	st	_VBV_start[r25],r2	;movsi r2 -> _VBV_start
LM56:
.stabn 68,0,150,LM56
	ld	_VBV_start[r25],r2	;movsi _VBV_start -> r2
	addi	r2,#5120,r2	;addsi3	r2,5120 -> r2
L44:
	st	_VBV_end[r25],r2	;movsi r2 -> _VBV_end
LM57:
.stabn 68,0,155,LM57
	addi	r25,#_wav_msf+4,r2	;C movsi _wav_msf+4(AExp) -> r2
	ld	0[r2],r8	;movsi 0[r2] -> r8
	ld	4[r2],r7	;C r7 4 r2
	sub	r8,r7,r16	;subsi3 r8,r7 -> r16
LM58:
.stabn 68,0,156,LM58
	bgt	r16,r0,L30
	nop	;via slot (len 1)
	addi	r0,#10,r4	;movsi smallint
L42:
	jspci	r24,#L41,r0
	nop	;via slot (len 1)	;jump L41
	addi	r0,#0,r2	;movsi smallint
L30:
LM59:
.stabn 68,0,158,LM59
	bltsq	r16,r4,L31
	addi	r25,#_wav_msf+12,r2	;C movsi _wav_msf+12(AExp) -> r2
	ld	0[r2],r8	;movsi 0[r2] -> r8
LM60:
.stabn 68,0,161,LM60
	jspci	r24,#L32,r0	;jump L32
	addi	r0,#20480,r18	;movsi smallint
	addi	r0,#10,r16	;movsi smallint
L31:
LM61:
.stabn 68,0,162,LM61
	ld	4[r2],r7	;C r7 4 r2
	sub	r8,r7,r18	;subsi3 r8,r7 -> r18
L32:
LM62:
.stabn 68,0,164,LM62
	addi	r25,#_wav_msf+8,r2	;C movsi _wav_msf+8(AExp) -> r2
	jspci	r24,#_logical2physical,r31
	ld	0[r2],r4	;movsi 0[r2] -> r4
	addi	r4,#150,r4	;addsi3	r4,150 -> r4
LM63:
.stabn 68,0,165,LM63
	add	r0,r2,r4	;movsi	r2 -> r4 
	jspci	r24,#_getSectors,r31
	add	r0,r16,r5	;movsi	r16 -> r5 
	addi	r0,#2048,r6	;movsi smallint
	add	r0,r2,r19	;movsi	r2 -> r19 
LM64:
.stabn 68,0,167,LM64
	addi	r0,#1,r2	;movsi smallint
	beq	r19,r2,L33
	nop	;via slot (len 0)
	nop	;via slot (len 0)
LM65:
.stabn 68,0,175,LM65
	ld	_buf0ready[r25],r2	;movsi _buf0ready -> r2
	bne	r2,r0,L33
	nop	;via slot (len 0)
	nop	;via slot (len 0)
	ld	_buf1ready[r25],r2	;movsi _buf1ready -> r2
	bne	r2,r0,L33
	nop	;via slot (len 0)
	nop	;via slot (len 0)
	jspci	r24,#_au_end,r31
	nop	;via slot (len 1)	;1 _au_end
	addi	r0,#0,r4	;movsi smallint
L33:
LM66:
.stabn 68,0,178,LM66
	addi	r25,#_wav_msf+8,r4	;C movsi _wav_msf+8(AExp) -> r4
	ld	0[r4],r8	;movsi 0[r4] -> r8
	add	r16,r8,r2	;addsi3	r16,r8 -> r2
	st	0[r4],r2	; movsi r2 -> 0[r4]
LM67:
.stabn 68,0,179,LM67
	ld	8[r4],r7	;C r7 8 r4
	add	r18,r7,r3	;addsi3	r18,r7 -> r3
	st	8[r4],r3	; movsi r3 -> 8[r4]
LM68:
.stabn 68,0,180,LM68
	ld	-4[r4],r3	;C r3 -4 r4
	blt	r2,r3,L35
	nop	;via slot (len 0)
	nop	;via slot (len 0)
LM69:
.stabn 68,0,181,LM69
	ld	-8[r4],r8	;C r8 -8 r4
	st	0[r4],r8	; movsi r8 -> 0[r4]
LM70:
.stabn 68,0,182,LM70
	st	8[r4],r0	; movsi 0 -> 8[r4]
LM71:
.stabn 68,0,183,LM71
	ld	_au_repeat[r25],r2	;movsi _au_repeat -> r2
	beq	r2,r0,L35
	nop	;via slot (len 1)
	addi	r2,#-1,r2	;addsi3	r2,-1 -> r2
	st	_au_repeat[r25],r2	;movsi r2 -> _au_repeat
L35:
LM72:
.stabn 68,0,185,LM72
	addi	r0,#1,r2	;movsi smallint
	bnesq	r17,r2,L37
	st	_wavbuf1size[r25],r18	;movsi r18 -> _wavbuf1size
	addi	r0,#1,r7	;movsi smallint
LM73:
.stabn 68,0,186,LM73
	st	_wavbuf0size[r25],r18	;movsi r18 -> _wavbuf0size
LM74:
.stabn 68,0,187,LM74
	st	_buf0ready[r25],r2	;movsi r2 -> _buf0ready
LM75:
.stabn 68,0,188,LM75
	jspci	r24,#L45,r0
	nop	;via slot (len 1)	;jump L45
	addi	r0,#1,r3	;movsi smallint
L37:
LM76:
.stabn 68,0,190,LM76
	st	_buf1ready[r25],r7	;movsi r7 -> _buf1ready
LM77:
.stabn 68,0,196,LM77
	addi	r0,#1,r3	;movsi smallint
LM78:
.stabn 68,0,196,LM78
L45:
	beq	r19,r3,L41
	nop	;via slot (len 1)
	addi	r0,#0,r2	;movsi smallint
LM79:
.stabn 68,0,197,LM79
	ld	_PCM_rd_ptr[r25],r3	;movsi _PCM_rd_ptr -> r3
	beqsq	r3,r0,L41
	nop	;via slot (len 1)
	addi	r0,#-1,r2	;movsi smallint
LM80:
.stabn 68,0,199,LM80
L41:
LM81:
.stabn 68,0,200,LM81
LBE4:
;EPILOGUE
	addi	r30,#-48,r29	; sp not trusted  here
	ld	16[r29],r31
	ld	20[r29],r30
	ld	24[r29],r19
	ld	28[r29],r18
	ld	32[r29],r17
	ld	36[r29],r16
	jspci	r31,#0,r0	;return
	addi	r29,#48,r29
	nop
;END EPILOGUE
.eop	;au_doit
.stabs "au_doit:F1",36,0,118,_au_doit
.stabs "mmssff:r1",64,0,119,2
.stabs "wavsecrd:r1",64,0,119,16
.stabs "wavbytes:r1",64,0,119,18
.stabs "status:r1",64,0,119,19
.stabs "kcase:r1",64,0,120,17
.stabs "k:r1",64,0,120,4
.stabs "offset:r1",64,0,122,2
.stabn 192,0,0,LBB4
.stabn 224,0,0,LBE4
.align	2
.globl _au_end
_au_end:
LM82:
.stabn 68,0,203,LM82
;#PROLOGUE
	addi	r29,#-32,r29	; temp= 0, regs= 8, args= 0, sfo= -8
	st	16[r29],r31
	st	20[r29],r30
;.mask	0xc0000000,-28
	addi	r29,#32,r30	; set up frame pointer
;END PROLOGUE
au_end_body:
LM83:
.stabn 68,0,204,LM83
LBB5:
LM84:
.stabn 68,0,205,LM84
	st	_au_repeat[r25],r0	;movsi 0 -> _au_repeat
LM85:
.stabn 68,0,206,LM85
	st	_wavelen[r25],r0	;movsi 0 -> _wavelen
LM86:
.stabn 68,0,207,LM86
	st	_wavbuf0size[r25],r0	;movsi 0 -> _wavbuf0size
LM87:
.stabn 68,0,208,LM87
	st	_wavbuf1size[r25],r0	;movsi 0 -> _wavbuf1size
LM88:
.stabn 68,0,209,LM88
	st	_WAV_data_ready[r25],r0	;movsi 0 -> _WAV_data_ready
LM89:
.stabn 68,0,225,LM89
LBE5:
;EPILOGUE
	addi	r30,#-32,r29	; sp not trusted  here
	ld	16[r29],r31
	ld	20[r29],r30
	jspci	r31,#0,r0	;return
	addi	r29,#32,r29
	nop
;END EPILOGUE
.eop	;au_end
.stabs "au_end:F19",36,0,203,_au_end
.stabs "flag:P1",64,0,203,4
.stabn 192,0,0,LBB5
.stabn 224,0,0,LBE5
.stabs "reg0:r1",64,0,58,0
.stabs "mvd:r51=*1",64,0,8,27
.stabs "buf0ready:G1",32,0,39,0

.data
.comm	_buf0ready,4
.stabs "buf1ready:G1",32,0,39,0

.data
.comm	_buf1ready,4
.stabs "wav_msf:G52=s20start:1,0,32;end:1,32,32;\\",32,0,0,0
.stabs "curr:1,64,32;size:1,96,32;read:1,128,32;;",32,0,47,0

.data
.comm	_wav_msf,20

.end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -