
;  GNU C 2.7.2 [AL 1.1, MM 40] RISC NEWS-OS compiled by CC

;  Cc1 defaults:
;  -mmemcpy

;  Cc1 arguments (-G value = 0, Cpu = 3000, ISA = 1):
;  -quiet -dumpbase -O2 -Wall -o

gcc2_compiled.:
__gnu_compiled_c:
	.code
	.align	1
ufe_exec:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	ufe+0x4@ah	; 	xld.w	[ufe+4],%r12
	ext	ufe+0x4@al
	ld.w	[%r8],%r12
	cmp	%r12,0x0
	jreq	__LX72		; 	xjreq	__L72
__LX73:				; __L73:
	ext	pceUSBCOMGetStat@rm	; 	xcall	pceUSBCOMGetStat
	call	pceUSBCOMGetStat@rl
	ext	0x1fe0		; 	xand	%r10,%r10,0xff000000
	ext	0x0
	and	%r10,0x0
	jrne	__LX71		; 	xjrne	__L71
	ld.w	%r10,0x3f	; 	xld.w	%r10,-1			; 0xffffffff
	jp	__LX76		; 	xjp	__L76
__LX71:				; __L71:
	ext	ufe+0x4@ah	; 	xld.w	%r10,[ufe+4]
	ext	ufe+0x4@al
	ld.w	%r10,[%r8]
	cmp	%r10,0x0
	jrne	__LX73		; 	xjrne	__L73
__LX72:				; __L72:
	ext	ufe+0x0@ah	; 	xld.w	%r10,[ufe]
	ext	ufe+0x0@al
	ld.w	%r10,[%r8]
__LX76:				; __L76:
	ret
	.align	1
ufeFileFindOpen:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	ufe+0x8@ah	; 	xld.w	[ufe+8],%r12
	ext	ufe+0x8@al
	ld.w	[%r8],%r12
	ext	0x1		; 	xld.w	%r12,0x00000048		; 72
	ld.w	%r12,0x8
	call	ufe_exec	; 	xcall	ufe_exec
	ret
	.align	1
ufeFileFindNext:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	ufe+0x8@ah	; 	xld.w	[ufe+8],%r12
	ext	ufe+0x8@al
	ld.w	[%r8],%r12
	ext	0x1		; 	xld.w	%r12,0x00000049		; 73
	ld.w	%r12,0x9
	call	ufe_exec	; 	xcall	ufe_exec
	ret
	.align	1
ufeFileFindClose:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	ufe+0x8@ah	; 	xld.w	[ufe+8],%r12
	ext	ufe+0x8@al
	ld.w	[%r8],%r12
	ext	0x1		; 	xld.w	%r12,0x0000004a		; 74
	ld.w	%r12,0xa
	call	ufe_exec	; 	xcall	ufe_exec
	ret
	.align	1
ufeFileOpen:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	ufe+0x8@h	; 	xld.w	%r10,ufe+8
	ext	ufe+0x8@m
	ld.w	%r10,ufe+0x8@l
	ld.w	[%r10],%r12	; 	xld.w	[%r10],%r12
	ext	0x4		; 	xld.w	[%r10+4],%r13
	ld.w	[%r10],%r13
	ext	0x8		; 	xld.w	[%r10+8],%r14
	ld.w	[%r10],%r14
	ext	0x1		; 	xld.w	%r12,0x0000004c		; 76
	ld.w	%r12,0xc
	call	ufe_exec	; 	xcall	ufe_exec
	ret
	.align	1
ufeFileReadSct:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	ufe+0x8@h	; 	xld.w	%r10,ufe+8
	ext	ufe+0x8@m
	ld.w	%r10,ufe+0x8@l
	ld.w	[%r10],%r12	; 	xld.w	[%r10],%r12
	ext	0x4		; 	xld.w	[%r10+4],%r13
	ld.w	[%r10],%r13
	ext	0x8		; 	xld.w	[%r10+8],%r14
	ld.w	[%r10],%r14
	ext	0xc		; 	xld.w	[%r10+12],%r15
	ld.w	[%r10],%r15
	ext	0x1		; 	xld.w	%r12,0x0000004d		; 77
	ld.w	%r12,0xd
	call	ufe_exec	; 	xcall	ufe_exec
	ret
	.align	1
ufeFileWriteSct:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	ufe+0x8@h	; 	xld.w	%r10,ufe+8
	ext	ufe+0x8@m
	ld.w	%r10,ufe+0x8@l
	ld.w	[%r10],%r12	; 	xld.w	[%r10],%r12
	ext	0x4		; 	xld.w	[%r10+4],%r13
	ld.w	[%r10],%r13
	ext	0x8		; 	xld.w	[%r10+8],%r14
	ld.w	[%r10],%r14
	ext	0xc		; 	xld.w	[%r10+12],%r15
	ld.w	[%r10],%r15
	ext	0x1		; 	xld.w	%r12,0x0000004e		; 78
	ld.w	%r12,0xe
	call	ufe_exec	; 	xcall	ufe_exec
	ret
	.align	1
ufeFileClose:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	ufe+0x8@ah	; 	xld.w	[ufe+8],%r12
	ext	ufe+0x8@al
	ld.w	[%r8],%r12
	ext	0x1		; 	xld.w	%r12,0x0000004f		; 79
	ld.w	%r12,0xf
	call	ufe_exec	; 	xcall	ufe_exec
	ret
	.align	1
ufeFileCreate:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	ufe+0x8@h	; 	xld.w	%r10,ufe+8
	ext	ufe+0x8@m
	ld.w	%r10,ufe+0x8@l
	ld.w	[%r10],%r12	; 	xld.w	[%r10],%r12
	ext	0x4		; 	xld.w	[%r10+4],%r13
	ld.w	[%r10],%r13
	ext	0x1		; 	xld.w	%r12,0x00000078		; 120
	ld.w	%r12,0x38
	call	ufe_exec	; 	xcall	ufe_exec
	ret
	.align	1
	.global	myFileFindOpen
myFileFindOpen:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r0,%r12
	ext	pffsFileFindOpen+0x0@ah	; 	xld.w	%r10,[pffsFileFindOpen]
	ext	pffsFileFindOpen+0x0@al
	ld.w	%r10,[%r8]
	call	%r10
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX86		; 	xjrne	__L86
	ext	0x3		; 	xld.w	%r10,0x000000e6		; 230
	ld.w	%r10,0x26
	ext	0x33		; 	xld.b	[%r0+51],%r10
	ld.b	[%r0],%r10
	jp	__LX87		; 	xjp	__L87
__LX86:				; __L86:
	ld.w	%r12,%r0
	call	ufeFileFindOpen	; 	xcall	ufeFileFindOpen
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX88		; 	xjrne	__L88
	ext	0x3		; 	xld.w	%r10,0x000000e5		; 229
	ld.w	%r10,0x25
	ext	0x33		; 	xld.b	[%r0+51],%r10
	ld.b	[%r0],%r10
	jp	__LX87		; 	xjp	__L87
__LX88:				; __L88:
	ld.w	%r12,%r0
	ld.w	%r13,0x0
	ext	0x0		; 	xld.w	%r14,0x00000034		; 52
	ld.w	%r14,0x34
	ext	memset@rm	; 	xcall	memset
	call	memset@rl
__LX87:				; __L87:
	ld.w	%r10,%r1
	popn	%r1
	ret
	.align	1
	.global	myFileFindNext
myFileFindNext:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r0,%r12
	ld.w	%r1,0x0
	ext	0x33		; 	xld.ub	%r10,[%r0+51]
	ld.ub	%r10,[%r0]
	ext	0x3		; 	xcmp	%r10,230
	cmp	%r10,0x26
	jrne	__LX91		; 	xjrne	__L91
	ext	pffsFileFindNext+0x0@ah	; 	xld.w	%r10,[pffsFileFindNext]
	ext	pffsFileFindNext+0x0@al
	ld.w	%r10,[%r8]
	call	%r10
	ld.w	%r1,%r10
	cmp	%r1,0x0
	jrne	__LX91		; 	xjrne	__L91
	ext	pffsFileFindClose+0x0@ah	; 	xld.w	%r10,[pffsFileFindClose]
	ext	pffsFileFindClose+0x0@al
	ld.w	%r10,[%r8]
	ld.w	%r12,%r0
	call	%r10
	ld.w	%r12,%r0
	ext	ufeFileFindOpen@rm	; 	xcall	ufeFileFindOpen
	call	ufeFileFindOpen@rl
	cmp	%r10,0x0
	jrne	__LX93		; 	xjrne	__L93
	ext	0x3		; 	xld.w	%r10,0x000000e5		; 229
	ld.w	%r10,0x25
	ext	0x33		; 	xld.b	[%r0+51],%r10
	ld.b	[%r0],%r10
	jp	__LX91		; 	xjp	__L91
__LX93:				; __L93:
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	ext	0x0		; 	xld.w	%r14,0x00000034		; 52
	ld.w	%r14,0x34
	ext	memset@rm	; 	xcall	memset
	call	memset@rl
__LX91:				; __L91:
	ext	0x33		; 	xld.ub	%r10,[%r0+51]
	ld.ub	%r10,[%r0]
	ext	0x3		; 	xcmp	%r10,229
	cmp	%r10,0x25
	jrne	__LX95		; 	xjrne	__L95
	ld.w	%r12,%r0
	ext	ufeFileFindNext@rm	; 	xcall	ufeFileFindNext
	call	ufeFileFindNext@rl
	ld.w	%r1,%r10
__LX95:				; __L95:
	ld.w	%r10,%r1
	popn	%r1
	ret
	.align	1
	.global	myFileFindClose
myFileFindClose:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r1,%r12
	ext	0x33		; 	xld.ub	%r10,[%r1+51]
	ld.ub	%r10,[%r1]
	ext	0x3		; 	xcmp	%r10,229
	cmp	%r10,0x25
	jreq	__LX99		; 	xjreq	__L99
	ext	0x3		; 	xcmp	%r10,230
	cmp	%r10,0x26
	jrne	__LX100		; 	xjrne	__L100
	ext	pffsFileFindClose+0x0@ah	; 	xld.w	%r10,[pffsFileFindClose]
	ext	pffsFileFindClose+0x0@al
	ld.w	%r10,[%r8]
	call	%r10
	ld.w	%r0,%r10
	jp	__LX97		; 	xjp	__L97
__LX99:				; __L99:
	ld.w	%r12,%r1
	ext	ufeFileFindClose@rm	; 	xcall	ufeFileFindClose
	call	ufeFileFindClose@rl
	ld.w	%r0,%r10
	jp	__LX97		; 	xjp	__L97
__LX100:				; __L100:
	ld.w	%r0,0x3f	; 	xld.w	%r0,-1			; 0xffffffff
__LX97:				; __L97:
	cmp	%r0,0x0
	jrne	__LX102		; 	xjrne	__L102
	ld.w	%r12,%r1
	ld.w	%r13,%r0
	ext	0x0		; 	xld.w	%r14,0x00000034		; 52
	ld.w	%r14,0x34
	ext	memset@rm	; 	xcall	memset
	call	memset@rl
__LX102:				; __L102:
	ld.w	%r10,%r0
	popn	%r1
	ret
	.align	1
	.global	myFileOpen
myFileOpen:
;	.frame	%sp,20,$31		# vars= 0, regs= 5/0, args= 0, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	ld.w	%r1,%r12
	ld.w	%r2,%r13
	ld.w	%r3,%r14
	ext	pffsFileOpen+0x0@ah	; 	xld.w	%r10,[pffsFileOpen]
	ext	pffsFileOpen+0x0@al
	ld.w	%r10,[%r8]
	call	%r10
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jreq	__LX104		; 	xjreq	__L104
	ld.w	%r12,%r1
	ld.w	%r13,%r2
	ld.w	%r14,%r3
	ext	ufeFileOpen@rm	; 	xcall	ufeFileOpen
	call	ufeFileOpen@rl
	ld.w	%r0,%r10
	cmp	%r0,0x0
	jreq	__LX104		; 	xjreq	__L104
	ld.w	%r12,%r1
	ld.w	%r13,0x0
	ld.w	%r14,0x10	; 	xld.w	%r14,0x00000010		; 16
	ext	memset@rm	; 	xcall	memset
	call	memset@rl
__LX104:				; __L104:
	ld.w	%r10,%r0
	popn	%r3
	ret
	.align	1
	.global	myFileReadSct
myFileReadSct:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ld.uh	%r10,[%r12]	; 	xld.uh	%r10,[%r12]
	ext	0x273		; 	xcmp	%r10,40165
	cmp	%r10,0x25
	jreq	__LX109		; 	xjreq	__L109
	ext	0x273		; 	xcmp	%r10,40166
	cmp	%r10,0x26
	jrne	__LX110		; 	xjrne	__L110
	ext	pffsFileReadSct+0x0@ah	; 	xld.w	%r10,[pffsFileReadSct]
	ext	pffsFileReadSct+0x0@al
	ld.w	%r10,[%r8]
	call	%r10
	jp	__LX107		; 	xjp	__L107
__LX109:				; __L109:
	ext	ufeFileReadSct@rm	; 	xcall	ufeFileReadSct
	call	ufeFileReadSct@rl
	jp	__LX107		; 	xjp	__L107
__LX110:				; __L110:
	ld.w	%r10,0x0
__LX107:				; __L107:
	ret
	.align	1
	.global	myFileWriteSct
myFileWriteSct:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ld.uh	%r10,[%r12]	; 	xld.uh	%r10,[%r12]
	ext	0x273		; 	xcmp	%r10,40165
	cmp	%r10,0x25
	jreq	__LX115		; 	xjreq	__L115
	ext	0x273		; 	xcmp	%r10,40166
	cmp	%r10,0x26
	jrne	__LX116		; 	xjrne	__L116
	ext	pffsFileWriteSct+0x0@ah	; 	xld.w	%r10,[pffsFileWriteSct]
	ext	pffsFileWriteSct+0x0@al
	ld.w	%r10,[%r8]
	call	%r10
	jp	__LX113		; 	xjp	__L113
__LX115:				; __L115:
	ext	ufeFileWriteSct@rm	; 	xcall	ufeFileWriteSct
	call	ufeFileWriteSct@rl
	jp	__LX113		; 	xjp	__L113
__LX116:				; __L116:
	ld.w	%r10,0x0
__LX113:				; __L113:
	ret
	.align	1
	.global	myFileClose
myFileClose:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r1,%r12
	ld.uh	%r10,[%r1]	; 	xld.uh	%r10,[%r1]
	ext	0x273		; 	xcmp	%r10,40165
	cmp	%r10,0x25
	jreq	__LX121		; 	xjreq	__L121
	ext	0x273		; 	xcmp	%r10,40166
	cmp	%r10,0x26
	jrne	__LX122		; 	xjrne	__L122
	ext	pffsFileClose+0x0@ah	; 	xld.w	%r10,[pffsFileClose]
	ext	pffsFileClose+0x0@al
	ld.w	%r10,[%r8]
	call	%r10
	ld.w	%r0,%r10
	jp	__LX119		; 	xjp	__L119
__LX121:				; __L121:
	ld.w	%r12,%r1
	ext	ufeFileClose@rm	; 	xcall	ufeFileClose
	call	ufeFileClose@rl
	ld.w	%r0,%r10
	jp	__LX119		; 	xjp	__L119
__LX122:				; __L122:
	ld.w	%r0,0x3f	; 	xld.w	%r0,-1			; 0xffffffff
__LX119:				; __L119:
	cmp	%r0,0x0
	jrne	__LX124		; 	xjrne	__L124
	ld.w	%r12,%r1
	ld.w	%r13,%r0
	ld.w	%r14,0x10	; 	xld.w	%r14,0x00000010		; 16
	ext	memset@rm	; 	xcall	memset
	call	memset@rl
__LX124:				; __L124:
	ld.w	%r10,%r0
	popn	%r1
	ret
	.align	1
	.global	myFileCreate
myFileCreate:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r0,%r12
	ld.w	%r1,%r13
	ext	pffsFileCreate+0x0@ah	; 	xld.w	%r10,[pffsFileCreate]
	ext	pffsFileCreate+0x0@al
	ld.w	%r10,[%r8]
	call	%r10
	cmp	%r10,0x0
	jreq	__LX126		; 	xjreq	__L126
	ld.w	%r12,%r0
	ld.w	%r13,%r1
	ext	ufeFileCreate@rm	; 	xcall	ufeFileCreate
	call	ufeFileCreate@rl
__LX126:				; __L126:
	popn	%r1
	ret
	.align	1
ufe_hook:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	pffsFileFindOpen+0x0@ah	; 	xld.w	%r10,[pffsFileFindOpen]
	ext	pffsFileFindOpen+0x0@al
	ld.w	%r10,[%r8]
	cmp	%r10,0x0
	jrne	__LX128		; 	xjrne	__L128
	ext	0x1		; 	xld.w	%r12,0x00000048		; 72
	ld.w	%r12,0x8
	ext	myFileFindOpen+0x0@h	; 	xld.w	%r13,myFileFindOpen
	ext	myFileFindOpen+0x0@m
	ld.w	%r13,myFileFindOpen+0x0@l
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ext	pffsFileFindOpen+0x0@ah	; 	xld.w	[pffsFileFindOpen],%r10
	ext	pffsFileFindOpen+0x0@al
	ld.w	[%r8],%r10
	ext	0x1		; 	xld.w	%r12,0x00000049		; 73
	ld.w	%r12,0x9
	ext	myFileFindNext+0x0@h	; 	xld.w	%r13,myFileFindNext
	ext	myFileFindNext+0x0@m
	ld.w	%r13,myFileFindNext+0x0@l
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ext	pffsFileFindNext+0x0@ah	; 	xld.w	[pffsFileFindNext],%r10
	ext	pffsFileFindNext+0x0@al
	ld.w	[%r8],%r10
	ext	0x1		; 	xld.w	%r12,0x0000004a		; 74
	ld.w	%r12,0xa
	ext	myFileFindClose+0x0@h	; 	xld.w	%r13,myFileFindClose
	ext	myFileFindClose+0x0@m
	ld.w	%r13,myFileFindClose+0x0@l
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ext	pffsFileFindClose+0x0@ah	; 	xld.w	[pffsFileFindClose],%r10
	ext	pffsFileFindClose+0x0@al
	ld.w	[%r8],%r10
	ext	0x1		; 	xld.w	%r12,0x0000004c		; 76
	ld.w	%r12,0xc
	ext	myFileOpen+0x0@h	; 	xld.w	%r13,myFileOpen
	ext	myFileOpen+0x0@m
	ld.w	%r13,myFileOpen+0x0@l
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ext	pffsFileOpen+0x0@ah	; 	xld.w	[pffsFileOpen],%r10
	ext	pffsFileOpen+0x0@al
	ld.w	[%r8],%r10
	ext	0x1		; 	xld.w	%r12,0x0000004d		; 77
	ld.w	%r12,0xd
	ext	myFileReadSct+0x0@h	; 	xld.w	%r13,myFileReadSct
	ext	myFileReadSct+0x0@m
	ld.w	%r13,myFileReadSct+0x0@l
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ext	pffsFileReadSct+0x0@ah	; 	xld.w	[pffsFileReadSct],%r10
	ext	pffsFileReadSct+0x0@al
	ld.w	[%r8],%r10
	ext	0x1		; 	xld.w	%r12,0x0000004e		; 78
	ld.w	%r12,0xe
	ext	myFileWriteSct+0x0@h	; 	xld.w	%r13,myFileWriteSct
	ext	myFileWriteSct+0x0@m
	ld.w	%r13,myFileWriteSct+0x0@l
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ext	pffsFileWriteSct+0x0@ah	; 	xld.w	[pffsFileWriteSct],%r10
	ext	pffsFileWriteSct+0x0@al
	ld.w	[%r8],%r10
	ext	0x1		; 	xld.w	%r12,0x0000004f		; 79
	ld.w	%r12,0xf
	ext	myFileClose+0x0@h	; 	xld.w	%r13,myFileClose
	ext	myFileClose+0x0@m
	ld.w	%r13,myFileClose+0x0@l
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ext	pffsFileClose+0x0@ah	; 	xld.w	[pffsFileClose],%r10
	ext	pffsFileClose+0x0@al
	ld.w	[%r8],%r10
	ext	0x1		; 	xld.w	%r12,0x00000078		; 120
	ld.w	%r12,0x38
	ext	myFileCreate+0x0@h	; 	xld.w	%r13,myFileCreate
	ext	myFileCreate+0x0@m
	ld.w	%r13,myFileCreate+0x0@l
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ext	pffsFileCreate+0x0@ah	; 	xld.w	[pffsFileCreate],%r10
	ext	pffsFileCreate+0x0@al
	ld.w	[%r8],%r10
__LX128:				; __L128:
	ret
	.align	1
ufe_unhook:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ext	pffsFileFindOpen+0x0@ah	; 	xld.w	%r13,[pffsFileFindOpen]
	ext	pffsFileFindOpen+0x0@al
	ld.w	%r13,[%r8]
	cmp	%r13,0x0
	jreq	__LX130		; 	xjreq	__L130
	ext	0x1		; 	xld.w	%r12,0x00000048		; 72
	ld.w	%r12,0x8
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ld.w	%r11,0x0
	ext	pffsFileFindOpen+0x0@ah	; 	xld.w	[pffsFileFindOpen],%r11
	ext	pffsFileFindOpen+0x0@al
	ld.w	[%r8],%r11
	ext	0x1		; 	xld.w	%r12,0x00000049		; 73
	ld.w	%r12,0x9
	ext	pffsFileFindNext+0x0@ah	; 	xld.w	%r13,[pffsFileFindNext]
	ext	pffsFileFindNext+0x0@al
	ld.w	%r13,[%r8]
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ld.w	%r11,0x0
	ext	pffsFileFindNext+0x0@ah	; 	xld.w	[pffsFileFindNext],%r11
	ext	pffsFileFindNext+0x0@al
	ld.w	[%r8],%r11
	ext	0x1		; 	xld.w	%r12,0x0000004a		; 74
	ld.w	%r12,0xa
	ext	pffsFileFindClose+0x0@ah	; 	xld.w	%r13,[pffsFileFindClose]
	ext	pffsFileFindClose+0x0@al
	ld.w	%r13,[%r8]
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ld.w	%r11,0x0
	ext	pffsFileFindClose+0x0@ah	; 	xld.w	[pffsFileFindClose],%r11
	ext	pffsFileFindClose+0x0@al
	ld.w	[%r8],%r11
	ext	0x1		; 	xld.w	%r12,0x0000004c		; 76
	ld.w	%r12,0xc
	ext	pffsFileOpen+0x0@ah	; 	xld.w	%r13,[pffsFileOpen]
	ext	pffsFileOpen+0x0@al
	ld.w	%r13,[%r8]
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ld.w	%r11,0x0
	ext	pffsFileOpen+0x0@ah	; 	xld.w	[pffsFileOpen],%r11
	ext	pffsFileOpen+0x0@al
	ld.w	[%r8],%r11
	ext	0x1		; 	xld.w	%r12,0x0000004d		; 77
	ld.w	%r12,0xd
	ext	pffsFileReadSct+0x0@ah	; 	xld.w	%r13,[pffsFileReadSct]
	ext	pffsFileReadSct+0x0@al
	ld.w	%r13,[%r8]
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ld.w	%r11,0x0
	ext	pffsFileReadSct+0x0@ah	; 	xld.w	[pffsFileReadSct],%r11
	ext	pffsFileReadSct+0x0@al
	ld.w	[%r8],%r11
	ext	0x1		; 	xld.w	%r12,0x0000004e		; 78
	ld.w	%r12,0xe
	ext	pffsFileWriteSct+0x0@ah	; 	xld.w	%r13,[pffsFileWriteSct]
	ext	pffsFileWriteSct+0x0@al
	ld.w	%r13,[%r8]
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ld.w	%r11,0x0
	ext	pffsFileWriteSct+0x0@ah	; 	xld.w	[pffsFileWriteSct],%r11
	ext	pffsFileWriteSct+0x0@al
	ld.w	[%r8],%r11
	ext	0x1		; 	xld.w	%r12,0x0000004f		; 79
	ld.w	%r12,0xf
	ext	pffsFileClose+0x0@ah	; 	xld.w	%r13,[pffsFileClose]
	ext	pffsFileClose+0x0@al
	ld.w	%r13,[%r8]
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ld.w	%r11,0x0
	ext	pffsFileClose+0x0@ah	; 	xld.w	[pffsFileClose],%r11
	ext	pffsFileClose+0x0@al
	ld.w	[%r8],%r11
	ext	0x1		; 	xld.w	%r12,0x00000078		; 120
	ld.w	%r12,0x38
	ext	pffsFileCreate+0x0@ah	; 	xld.w	%r13,[pffsFileCreate]
	ext	pffsFileCreate+0x0@al
	ld.w	%r13,[%r8]
	ext	pceVectorSetKs@rm	; 	xcall	pceVectorSetKs
	call	pceVectorSetKs@rl
	ld.w	%r11,0x0
	ext	pffsFileCreate+0x0@ah	; 	xld.w	[pffsFileCreate],%r11
	ext	pffsFileCreate+0x0@al
	ld.w	[%r8],%r11
__LX130:				; __L130:
	ret
	.code
	.align	2
__LC0:
	.ascii	"UFE1\000"
	.align	2
__LC1:
	.ascii	" +----------------------+\n"
	.ascii	" | \203t\203@\203C\203\213\203T\201[\203o\202\251\202\347"
	.ascii	"\202\314 |\n"
	.ascii	" | \220\332\221\261\202\360\221\322\202\301\202\304\202\242"
	.ascii	"\202\334\202\267\201c |\n"
	.ascii	" |(\202`\203{\203^\203\223\202\305\203L\203\203\203\223\203"
	.ascii	"Z\203\213)|\n"
	.ascii	" +----------------------+\000"
	.align	2
__LC2:
	.ascii	"\202\240\202\306%3d\225b\000"
	.code
	.align	1
	.global	ufe_setup
ufe_setup:
;	.frame	%sp,52,$31		# vars= 24, regs= 5/0, args= 8, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x8		; 	xsub	%sp,%sp,32
	ld.w	%r3,%r12
	call	ufe_stop	; 	xcall	ufe_stop
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ld.w	%r13,0x0
	ld.w	%r14,0x10	; 	xld.w	%r14,0x00000010		; 16
	ext	memset@rm	; 	xcall	memset
	call	memset@rl
	ext	__LC0+0x0@ah	; 	xld.w	%r10,[__LC0]
	ext	__LC0+0x0@al
	ld.w	%r10,[%r8]
	ld.w	[%sp+0x2],%r10	; 	xld.w	[%sp+8],%r10
	ext	ufe+0x0@h	; 	xld.w	%r10,ufe
	ext	ufe+0x0@m
	ld.w	%r10,ufe+0x0@l
	ld.w	[%sp+0x3],%r10	; 	xld.w	[%sp+12],%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,8
	add	%r12,0x8
	ext	pceUSBCOMSetup@rm	; 	xcall	pceUSBCOMSetup
	call	pceUSBCOMSetup@rl
	ext	_def_vbuff+0x0@h	; 	xld.w	%r12,_def_vbuff
	ext	_def_vbuff+0x0@m
	ld.w	%r12,_def_vbuff+0x0@l
	ext	pceLCDSetBuffer@rm	; 	xcall	pceLCDSetBuffer
	call	pceLCDSetBuffer@rl
	ld.w	[%sp+0x6],%r10	; 	xld.w	[%sp+24],%r10
	ext	pceLCDDispStart@rm	; 	xcall	pceLCDDispStart
	call	pceLCDDispStart@rl
	ext	0x2		; 	xld.w	%r12,0x00000080		; 128
	ld.w	%r12,0x0
	ext	pceFontSetType@rm	; 	xcall	pceFontSetType
	call	pceFontSetType@rl
	ld.w	%r12,0x3	; 	xld.w	%r12,0x00000003		; 3
	ext	pceFontSetTxColor@rm	; 	xcall	pceFontSetTxColor
	call	pceFontSetTxColor@rl
	ld.w	%r12,0x0
	ext	pceFontSetBkColor@rm	; 	xcall	pceFontSetBkColor
	call	pceFontSetBkColor@rl
	ld.w	%r12,0x0
	ld.w	%r13,0x13	; 	xld.w	%r13,0x00000013		; 19
	ext	pceFontSetPos@rm	; 	xcall	pceFontSetPos
	call	pceFontSetPos@rl
	ext	__LC1+0x0@h	; 	xld.w	%r12,__LC1
	ext	__LC1+0x0@m
	ld.w	%r12,__LC1+0x0@l
	ext	pceFontPutStr@rm	; 	xcall	pceFontPutStr
	call	pceFontPutStr@rl
	ext	pceLCDTrans@rm	; 	xcall	pceLCDTrans
	call	pceLCDTrans@rl
__LX132:				; __L132:
	ext	pcePadGetDirect@rm	; 	xcall	pcePadGetDirect
	call	pcePadGetDirect@rl
	ext	0x0		; 	xand	%r10,%r10,0x00000020
	and	%r10,0x20
	jrne	__LX132		; 	xjrne	__L132
	ext	pceTimerGetCount@rm	; 	xcall	pceTimerGetCount
	call	pceTimerGetCount@rl
	ld.w	[%sp+0x7],%r10	; 	xld.w	[%sp+28],%r10
	ext	0xf		; 	xld.w	%r2,0x000003e8		; 1000
	ld.w	%r2,0x28
__LX135:				; __L135:
	ext	pceUSBCOMGetStat@rm	; 	xcall	pceUSBCOMGetStat
	call	pceUSBCOMGetStat@rl
	ld.w	%r1,%r10
	ext	0x1fe0		; 	xand	%r10,%r10,0xff000000
	ext	0x0
	and	%r10,0x0
	jrne	__LX141		; 	xjrne	__L141
	ext	pcePadGetDirect@rm	; 	xcall	pcePadGetDirect
	call	pcePadGetDirect@rl
	ext	0x0		; 	xand	%r10,%r10,0x00000020
	and	%r10,0x20
	jrne	__LX141		; 	xjrne	__L141
	cmp	%r3,0x0
	jrlt	__LX135		; 	xjrlt	__L135
	ext	pceTimerGetCount@rm	; 	xcall	pceTimerGetCount
	call	pceTimerGetCount@rl
	mlt.w	%r3,%r2
	ld.w	%r11,[%sp+0x7]	; 	xld.w	%r11,[%sp+28]
	sub	%r10,%r11
	ld.w	%r0,%alr
	sub	%r0,%r10
	jrle	__LX141		; 	xjrle	__L141
	ext	0x0		; 	xld.w	%r12,0x00000029		; 41
	ld.w	%r12,0x29
	ext	0x1		; 	xld.w	%r13,0x00000048		; 72
	ld.w	%r13,0x8
	ext	pceFontSetPos@rm	; 	xcall	pceFontSetPos
	call	pceFontSetPos@rl
	ext	__LC2+0x0@h	; 	xld.w	%r10,__LC2
	ext	__LC2+0x0@m
	ld.w	%r10,__LC2+0x0@l
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ext	0x3e7		; 	xadd	%r12,%r0,999
	add	%r12,%r0
	ld.w	%r13,%r2
	ext	__divsi3@rm	; 	xcall	__divsi3
	call	__divsi3@rl
	ld.w	[%sp+0x1],%r10	; 	xld.w	[%sp+4],%r10
	ext	pceFontPrintf@rm	; 	xcall	pceFontPrintf
	call	pceFontPrintf@rl
	ext	pceLCDTrans@rm	; 	xcall	pceLCDTrans
	call	pceLCDTrans@rl
	jp	__LX135		; 	xjp	__L135
__LX141:				; __L141:
	ext	pcePadGetDirect@rm	; 	xcall	pcePadGetDirect
	call	pcePadGetDirect@rl
	ld.w	%r0,%r10
	ext	0x0		; 	xand	%r0,%r0,0x00000020
	and	%r0,0x20
	jrne	__LX141		; 	xjrne	__L141
	ld.w	%r12,[%sp+0x6]	; 	xld.w	%r12,[%sp+24]
	ext	pceLCDSetBuffer@rm	; 	xcall	pceLCDSetBuffer
	call	pceLCDSetBuffer@rl
	ld.w	%r10,%r1
	ext	0x1fe0		; 	xand	%r10,%r10,0xff000000
	ext	0x0
	and	%r10,0x0
	jrne	__LX144		; 	xjrne	__L144
	call	ufe_stop	; 	xcall	ufe_stop
	ld.w	%r10,0x3f	; 	xld.w	%r10,-1			; 0xffffffff
	jp	__LX145		; 	xjp	__L145
__LX144:				; __L144:
	ext	ufe_hook@rm	; 	xcall	ufe_hook
	call	ufe_hook@rl
	ld.w	%r10,%r0
__LX145:				; __L145:
	add	%sp,0x8		; 	xadd	%sp,%sp,32
	popn	%r3
	ret
	.align	1
	.global	ufe_stop
ufe_stop:
;	.frame	%sp,20,$31		# vars= 16, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	sub	%sp,0x4		; 	xsub	%sp,%sp,16
	ext	ufe_unhook@rm	; 	xcall	ufe_unhook
	call	ufe_unhook@rl
	ld.w	%r12,%sp
	ld.w	%r13,0x0
	ld.w	%r14,0x10	; 	xld.w	%r14,0x00000010		; 16
	ext	memset@rm	; 	xcall	memset
	call	memset@rl
	ld.w	%r12,%sp
	ext	pceUSBCOMSetup@rm	; 	xcall	pceUSBCOMSetup
	call	pceUSBCOMSetup@rl
	ext	pceUSBCOMStop@rm	; 	xcall	pceUSBCOMStop
	call	pceUSBCOMStop@rl
	add	%sp,0x4		; 	xadd	%sp,%sp,16
	ret

	.lcomm	ufe 4120

	.lcomm	pffsFileFindOpen 4

	.lcomm	pffsFileFindNext 4

	.lcomm	pffsFileFindClose 4

	.lcomm	pffsFileOpen 4

	.lcomm	pffsFileReadSct 4

	.lcomm	pffsFileWriteSct 4

	.lcomm	pffsFileClose 4

	.lcomm	pffsFileCreate 4

