	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_InitSB                         ## -- Begin function InitSB
	.p2align	4, 0x90
_InitSB:                                ## @InitSB
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	pushq	%rax
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%esi, %ebx
	movl	%edi, %r12d
	movq	_hbusy@GOTPCREL(%rip), %rax
	movl	$0, (%rax)
	movq	_hsmode@GOTPCREL(%rip), %rax
	movl	$0, (%rax)
	movq	_whichbuf@GOTPCREL(%rip), %rax
	movl	$1, (%rax)
	leaq	L_.str(%rip), %rdi
	callq	_puts
	xorl	%ecx, %ecx
	testl	%ebx, %ebx
	setne	%cl
	movq	_format@GOTPCREL(%rip), %r15
	movl	%ecx, (%r15)
	xorl	%eax, %eax
	cmpl	$22051, %r12d                   ## imm = 0x5623
	setae	%al
	movl	%eax, %edx
	shll	$6, %edx
	addl	$64, %edx
	shll	$9, %eax
	addl	$512, %eax                      ## imm = 0x200
	cmpl	$11026, %r12d                   ## imm = 0x2B12
	movl	$32, %esi
	cmovgel	%edx, %esi
	movl	$256, %edi                      ## imm = 0x100
	cmovgel	%eax, %edi
	movq	_frags@GOTPCREL(%rip), %rax
	movl	$8, (%rax)
	movq	_fragsize@GOTPCREL(%rip), %rax
	movl	%esi, (%rax)
	movq	_fragtotal@GOTPCREL(%rip), %rbx
	movl	%edi, (%rbx)
                                        ## kill: def $cl killed $cl killed $ecx
	shll	%cl, %edi
	callq	_malloc
	movq	_WaveBuffer@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	cmpl	$0, (%r15)
	movl	(%rbx), %edx
	je	LBB0_2
## %bb.1:
	addl	%edx, %edx
	movl	%eax, %edi
	xorl	%esi, %esi
	jmp	LBB0_3
LBB0_2:
	movl	%eax, %edi
	movl	$128, %esi
LBB0_3:
	callq	_memset
	movq	_ReadPtr@GOTPCREL(%rip), %rax
	movq	$0, (%rax)
	movq	_WritePtr@GOTPCREL(%rip), %rax
	movq	$0, (%rax)
	leal	-65536(%r12), %eax
	cmpl	$-57345, %eax                   ## imm = 0xFFFF1FFF
	ja	LBB0_5
## %bb.4:
	leaq	L_.str.1(%rip), %rdi
	xorl	%r14d, %r14d
	movl	%r12d, %esi
	xorl	%eax, %eax
	callq	_printf
	jmp	LBB0_31
LBB0_5:
	xorl	%r14d, %r14d
	xorl	%eax, %eax
	callq	_GetBLASTER
	testl	%eax, %eax
	je	LBB0_31
## %bb.6:
	movq	_SBIRQ@GOTPCREL(%rip), %r13
	cmpl	$8, (%r13)
	jl	LBB0_8
## %bb.7:
	movl	$161, %r14d
	movl	$161, %edi
	callq	_inportb
	movl	%eax, %esi
	movq	_PICMask@GOTPCREL(%rip), %rax
	movl	%esi, (%rax)
	movl	(%r13), %eax
	andl	$7, %eax
	jmp	LBB0_9
LBB0_8:
	movl	$33, %r14d
	movl	$33, %edi
	callq	_inportb
	movl	%eax, %esi
	movq	_PICMask@GOTPCREL(%rip), %rax
	movl	%esi, (%rax)
	movl	(%r13), %eax
LBB0_9:
	btsl	%eax, %esi
	movl	%r14d, %edi
	callq	_outportb
	xorl	%r14d, %r14d
	xorl	%eax, %eax
	callq	_ResetDSP
	testl	%eax, %eax
	je	LBB0_10
## %bb.11:
	xorl	%r14d, %r14d
	xorl	%eax, %eax
	callq	_GetDSPVersion
	movq	_DSPV@GOTPCREL(%rip), %rbx
	movl	%eax, (%rbx)
	testl	%eax, %eax
	je	LBB0_12
## %bb.13:
	movl	%eax, %esi
	sarl	$8, %esi
	movzbl	%al, %edx
	leaq	L_.str.4(%rip), %rdi
	xorl	%r14d, %r14d
	xorl	%eax, %eax
	callq	_printf
	movq	%rbx, %rax
	movl	(%rbx), %eax
	cmpl	$512, %eax                      ## imm = 0x200
	jg	LBB0_15
## %bb.14:
	leaq	L_str(%rip), %rdi
	callq	_puts
	jmp	LBB0_31
LBB0_10:
	leaq	L_.str.2(%rip), %rdi
	callq	_puts
	jmp	LBB0_31
LBB0_12:
	leaq	L_.str.3(%rip), %rdi
	callq	_puts
	jmp	LBB0_31
LBB0_15:
	cmpl	$1023, %eax                     ## imm = 0x3FF
	ja	LBB0_17
## %bb.16:
	movl	$0, (%r15)
LBB0_17:
	xorl	%r14d, %r14d
	xorl	%eax, %eax
	callq	_MakeDMABuffer
	testl	%eax, %eax
	je	LBB0_18
## %bb.19:
	movl	(%r13), %eax
	leal	104(%rax), %ecx
	leal	8(%rax), %edx
	cmpl	$8, %eax
	cmovgel	%ecx, %edx
	movq	_IVector@GOTPCREL(%rip), %rax
	movl	%edx, (%rax)
	xorl	%r14d, %r14d
	xorl	%eax, %eax
	callq	_SetVectors
	testl	%eax, %eax
	je	LBB0_20
## %bb.21:
	movl	(%r13), %eax
	movl	%eax, %ecx
	andb	$7, %cl
	xorl	%edi, %edi
	cmpl	$8, %eax
	setge	%dil
	movq	_PICMask@GOTPCREL(%rip), %rdx
	movzbl	%cl, %ecx
	cmovll	%eax, %ecx
	movl	(%rdx), %esi
	shll	$7, %edi
	orl	$33, %edi
	btrl	%ecx, %esi
	callq	_outportb
	xorl	%eax, %eax
	callq	_ProgramDMA
	movl	$209, %edi
	callq	_WriteDSP
	cmpl	$1024, (%rbx)                   ## imm = 0x400
	jl	LBB0_23
## %bb.22:
	movl	$65, %edi
	callq	_WriteDSP
	movl	%r12d, %edi
	shrl	$8, %edi
	callq	_WriteDSP
	movzbl	%r12b, %edi
	callq	_WriteDSP
	xorl	%r14d, %r14d
	xorl	%edi, %edi
	cmpl	$0, (%r15)
	setne	%r14b
	sete	%dil
	shll	$4, %edi
	addl	$182, %edi
	shll	$4, %r14d
	callq	_WriteDSP
	movl	%r14d, %edi
	callq	_WriteDSP
	movq	_fragsize@GOTPCREL(%rip), %rbx
	movl	(%rbx), %eax
	decl	%eax
	movzbl	%al, %edi
	callq	_WriteDSP
	movl	(%rbx), %ebx
	decl	%ebx
	sarl	$8, %ebx
	movl	%r12d, %r14d
	jmp	LBB0_27
LBB0_18:
	leaq	L_.str.6(%rip), %rdi
	callq	_puts
	jmp	LBB0_31
LBB0_20:
	leaq	L_.str.7(%rip), %rdi
	callq	_puts
	xorl	%eax, %eax
	callq	_KillDMABuffer
	jmp	LBB0_31
LBB0_23:
	cmpl	$22051, %r12d                   ## imm = 0x5623
	movq	_fragsize@GOTPCREL(%rip), %r13
	jb	LBB0_25
## %bb.24:
	movl	$256000000, %eax                ## imm = 0xF424000
	xorl	%edx, %edx
	divl	%r12d
	movl	$65536, %ecx                    ## imm = 0x10000
	movl	$65536, %edx                    ## imm = 0x10000
	subl	%eax, %edx
	movl	%edx, %r12d
	shrl	$8, %r12d
	andl	$-256, %edx
	subl	%edx, %ecx
	movl	$256000000, %eax                ## imm = 0xF424000
	xorl	%edx, %edx
	divl	%ecx
	movl	%eax, %r14d
	movq	_hsmode@GOTPCREL(%rip), %rax
	movl	$1, (%rax)
	movl	$144, %ebx
	jmp	LBB0_26
LBB0_25:
	movl	$1000000, %eax                  ## imm = 0xF4240
	xorl	%edx, %edx
	divl	%r12d
	movl	%eax, %ecx
	movl	$256, %r12d                     ## imm = 0x100
	subl	%eax, %r12d
	movl	$1000000, %eax                  ## imm = 0xF4240
	xorl	%edx, %edx
	divl	%ecx
	movl	%eax, %r14d
	movl	$28, %ebx
LBB0_26:
	movl	$64, %edi
	callq	_WriteDSP
	movl	%r12d, %edi
	callq	_WriteDSP
	movl	$72, %edi
	callq	_WriteDSP
	movl	(%r13), %eax
	decl	%eax
	movzbl	%al, %edi
	callq	_WriteDSP
	movl	(%r13), %edi
	decl	%edi
	sarl	$8, %edi
	callq	_WriteDSP
LBB0_27:
	movl	%ebx, %edi
	callq	_WriteDSP
	cmpl	$0, (%r15)
	je	LBB0_29
## %bb.28:
	movq	_SBDMA16@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	andl	$3, %esi
	movl	$212, %edi
	jmp	LBB0_30
LBB0_29:
	movq	_SBDMA@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$10, %edi
LBB0_30:
	callq	_outportb
	movb	(%r15), %cl
	movl	$8, %edx
	shll	%cl, %edx
	leaq	L_.str.8(%rip), %rdi
	movl	%r14d, %esi
	xorl	%eax, %eax
	callq	_printf
LBB0_31:
	movl	%r14d, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_hbusy,4,2                      ## @hbusy
	.comm	_hsmode,4,2                     ## @hsmode
	.comm	_whichbuf,4,2                   ## @whichbuf
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Initializing Sound Blaster..."

	.comm	_format,4,2                     ## @format
	.comm	_frags,4,2                      ## @frags
	.comm	_fragsize,4,2                   ## @fragsize
	.comm	_fragtotal,4,2                  ## @fragtotal
	.comm	_WaveBuffer,4,2                 ## @WaveBuffer
	.comm	_ReadPtr,8,3                    ## @ReadPtr
	.comm	_WritePtr,8,3                   ## @WritePtr
L_.str.1:                               ## @.str.1
	.asciz	" Unsupported playback rate: %d samples per second\n"

	.comm	_SBIRQ,4,2                      ## @SBIRQ
	.comm	_PICMask,4,2                    ## @PICMask
L_.str.2:                               ## @.str.2
	.asciz	" Error resetting the DSP."

	.comm	_DSPV,4,2                       ## @DSPV
L_.str.3:                               ## @.str.3
	.asciz	" Error getting the DSP version."

L_.str.4:                               ## @.str.4
	.asciz	" DSP Version: %d.%d\n"

L_.str.6:                               ## @.str.6
	.asciz	" Error creating low-memory DMA buffer."

	.comm	_IVector,4,2                    ## @IVector
L_.str.7:                               ## @.str.7
	.asciz	" Error setting interrupt vectors."

	.comm	_SBDMA16,4,2                    ## @SBDMA16
	.comm	_SBDMA,4,2                      ## @SBDMA
L_.str.8:                               ## @.str.8
	.asciz	" %d hz, %d-bit\n"

L_str:                                  ## @str
	.asciz	" DSP version number is too low."

.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_InitSB                         ; -- Begin function InitSB
	.p2align	2
_InitSB:                                ; @InitSB
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #80
	.cfi_def_cfa_offset 80
	stp	x24, x23, [sp, #16]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #32]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	mov	x20, x1
	mov	x19, x0
Lloh0:
	adrp	x8, _hbusy@GOTPAGE
Lloh1:
	ldr	x8, [x8, _hbusy@GOTPAGEOFF]
Lloh2:
	adrp	x24, _hsmode@GOTPAGE
Lloh3:
	ldr	x24, [x24, _hsmode@GOTPAGEOFF]
Lloh4:
	str	wzr, [x8]
	str	wzr, [x24]
Lloh5:
	adrp	x8, _whichbuf@GOTPAGE
Lloh6:
	ldr	x8, [x8, _whichbuf@GOTPAGEOFF]
	mov	w9, #1
Lloh7:
	str	w9, [x8]
Lloh8:
	adrp	x0, l_.str@PAGE
Lloh9:
	add	x0, x0, l_.str@PAGEOFF
	bl	_puts
	cmp	w20, #0
	cset	w8, ne
Lloh10:
	adrp	x22, _format@GOTPAGE
Lloh11:
	ldr	x22, [x22, _format@GOTPAGEOFF]
Lloh12:
	adrp	x9, _frags@GOTPAGE
Lloh13:
	ldr	x9, [x9, _frags@GOTPAGEOFF]
	mov	w10, #8
Lloh14:
	str	w10, [x9]
	mov	w9, #22051
	mov	w10, #128
	mov	w11, #64
	cmp	w19, w9
	csel	w9, w11, w10, lo
	mov	w10, #1024
	mov	w11, #512
	csel	w10, w11, w10, lo
	mov	w11, #11026
	mov	w12, #32
	cmp	w19, w11
	csel	w9, w12, w9, lt
	mov	w11, #256
	csel	w10, w11, w10, lt
Lloh15:
	adrp	x23, _fragsize@GOTPAGE
Lloh16:
	ldr	x23, [x23, _fragsize@GOTPAGEOFF]
	str	w8, [x22]
	str	w9, [x23]
Lloh17:
	adrp	x20, _fragtotal@GOTPAGE
Lloh18:
	ldr	x20, [x20, _fragtotal@GOTPAGEOFF]
	str	w10, [x20]
	lsl	w0, w10, w8
	bl	_malloc
Lloh19:
	adrp	x8, _WaveBuffer@GOTPAGE
Lloh20:
	ldr	x8, [x8, _WaveBuffer@GOTPAGEOFF]
Lloh21:
	str	w0, [x8]
	ldr	w8, [x22]
	ldr	w2, [x20]
	cbz	w8, LBB0_2
; %bb.1:
	lsl	w2, w2, #1
	mov	w1, #0
	b	LBB0_3
LBB0_2:
	mov	w1, #128
LBB0_3:
	bl	_memset
Lloh22:
	adrp	x8, _ReadPtr@GOTPAGE
Lloh23:
	ldr	x8, [x8, _ReadPtr@GOTPAGEOFF]
Lloh24:
	str	xzr, [x8]
Lloh25:
	adrp	x8, _WritePtr@GOTPAGE
Lloh26:
	ldr	x8, [x8, _WritePtr@GOTPAGEOFF]
Lloh27:
	str	xzr, [x8]
	sub	w8, w19, #16, lsl #12           ; =65536
	mov	w9, #-57345
	cmp	w8, w9
	b.hi	LBB0_5
; %bb.4:
                                        ; kill: def $w19 killed $w19 killed $x19 def $x19
	str	x19, [sp]
Lloh28:
	adrp	x0, l_.str.1@PAGE
Lloh29:
	add	x0, x0, l_.str.1@PAGEOFF
	bl	_printf
	b	LBB0_23
LBB0_5:
	bl	_GetBLASTER
	cbz	w0, LBB0_23
; %bb.6:
Lloh30:
	adrp	x21, _SBIRQ@GOTPAGE
Lloh31:
	ldr	x21, [x21, _SBIRQ@GOTPAGEOFF]
	ldr	w8, [x21]
	cmp	w8, #8
	b.lt	LBB0_8
; %bb.7:
	mov	w20, #161
	mov	w0, #161
	bl	_inportb
Lloh32:
	adrp	x8, _PICMask@GOTPAGE
Lloh33:
	ldr	x8, [x8, _PICMask@GOTPAGEOFF]
Lloh34:
	str	w0, [x8]
	ldr	w8, [x21]
	and	w8, w8, #0x7
	b	LBB0_9
LBB0_8:
	mov	w20, #33
	mov	w0, #33
	bl	_inportb
Lloh35:
	adrp	x8, _PICMask@GOTPAGE
Lloh36:
	ldr	x8, [x8, _PICMask@GOTPAGEOFF]
Lloh37:
	str	w0, [x8]
	ldr	w8, [x21]
LBB0_9:
	mov	w9, #1
	lsl	w8, w9, w8
	orr	w1, w8, w0
	mov	x0, x20
	bl	_outportb
	bl	_ResetDSP
	cbz	w0, LBB0_13
; %bb.10:
	bl	_GetDSPVersion
Lloh38:
	adrp	x20, _DSPV@GOTPAGE
Lloh39:
	ldr	x20, [x20, _DSPV@GOTPAGEOFF]
	str	w0, [x20]
	cbz	w0, LBB0_14
; %bb.11:
	asr	w8, w0, #8
	and	w9, w0, #0xff
	stp	x8, x9, [sp]
Lloh40:
	adrp	x0, l_.str.4@PAGE
Lloh41:
	add	x0, x0, l_.str.4@PAGEOFF
	bl	_printf
	ldr	w8, [x20]
	cmp	w8, #512
	b.gt	LBB0_15
; %bb.12:
Lloh42:
	adrp	x0, l_str@PAGE
Lloh43:
	add	x0, x0, l_str@PAGEOFF
	b	LBB0_22
LBB0_13:
Lloh44:
	adrp	x0, l_.str.2@PAGE
Lloh45:
	add	x0, x0, l_.str.2@PAGEOFF
	b	LBB0_22
LBB0_14:
Lloh46:
	adrp	x0, l_.str.3@PAGE
Lloh47:
	add	x0, x0, l_.str.3@PAGEOFF
	b	LBB0_22
LBB0_15:
	cmp	w8, #1023
	b.hi	LBB0_17
; %bb.16:
	str	wzr, [x22]
LBB0_17:
	bl	_MakeDMABuffer
	cbz	w0, LBB0_21
; %bb.18:
	ldr	w8, [x21]
	mov	w9, #104
	mov	w10, #8
	cmp	w8, #8
	csel	w9, w10, w9, lt
	add	w8, w9, w8
Lloh48:
	adrp	x9, _IVector@GOTPAGE
Lloh49:
	ldr	x9, [x9, _IVector@GOTPAGEOFF]
Lloh50:
	str	w8, [x9]
	bl	_SetVectors
	cbz	w0, LBB0_25
; %bb.19:
	ldr	w8, [x21]
Lloh51:
	adrp	x9, _PICMask@GOTPAGE
Lloh52:
	ldr	x9, [x9, _PICMask@GOTPAGEOFF]
Lloh53:
	ldr	w9, [x9]
	and	w10, w8, #0x7
	cmp	w8, #7
	csel	w8, w10, w8, gt
	mov	w10, #33
	mov	w11, #161
	csel	w0, w11, w10, gt
	mov	w10, #1
	lsl	w8, w10, w8
	bic	w1, w9, w8
	bl	_outportb
	bl	_ProgramDMA
	mov	w0, #209
	bl	_WriteDSP
	ldr	w8, [x20]
	cmp	w8, #1024
	b.lt	LBB0_26
; %bb.20:
	mov	w0, #65
	bl	_WriteDSP
	lsr	w0, w19, #8
	bl	_WriteDSP
	and	w0, w19, #0xff
	bl	_WriteDSP
	ldr	w8, [x22]
	mov	w9, #182
	mov	w10, #198
	cmp	w8, #0
	csel	w0, w10, w9, eq
	cset	w8, ne
	lsl	w20, w8, #4
	bl	_WriteDSP
	mov	x0, x20
	bl	_WriteDSP
	ldr	w8, [x23]
	sub	w8, w8, #1
	and	w0, w8, #0xff
	bl	_WriteDSP
	ldr	w8, [x23]
	sub	w8, w8, #1
	asr	w20, w8, #8
	b	LBB0_30
LBB0_21:
Lloh54:
	adrp	x0, l_.str.6@PAGE
Lloh55:
	add	x0, x0, l_.str.6@PAGEOFF
LBB0_22:
	bl	_puts
LBB0_23:
	mov	w19, #0
LBB0_24:
	mov	x0, x19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #32]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #16]             ; 16-byte Folded Reload
	add	sp, sp, #80
	ret
LBB0_25:
Lloh56:
	adrp	x0, l_.str.7@PAGE
Lloh57:
	add	x0, x0, l_.str.7@PAGEOFF
	bl	_puts
	bl	_KillDMABuffer
	b	LBB0_23
LBB0_26:
	mov	w8, #22051
	cmp	w19, w8
	b.lo	LBB0_28
; %bb.27:
	mov	w8, #16384
	movk	w8, #3906, lsl #16
	udiv	w9, w8, w19
	mov	w10, #65536
	sub	w9, w10, w9
	lsr	w21, w9, #8
	and	w9, w9, #0xffffff00
	sub	w9, w10, w9
	mov	w10, #1
	str	w10, [x24]
	mov	w20, #144
	b	LBB0_29
LBB0_28:
	mov	w8, #16960
	movk	w8, #15, lsl #16
	udiv	w9, w8, w19
	mov	w10, #256
	sub	w21, w10, w9
	mov	w20, #28
LBB0_29:
	udiv	w19, w8, w9
	mov	w0, #64
	bl	_WriteDSP
	mov	x0, x21
	bl	_WriteDSP
	mov	w0, #72
	bl	_WriteDSP
	ldr	w8, [x23]
	sub	w8, w8, #1
	and	w0, w8, #0xff
	bl	_WriteDSP
	ldr	w8, [x23]
	sub	w8, w8, #1
	asr	w0, w8, #8
	bl	_WriteDSP
LBB0_30:
	mov	x0, x20
	bl	_WriteDSP
	ldr	w8, [x22]
	cbz	w8, LBB0_32
; %bb.31:
Lloh58:
	adrp	x8, _SBDMA16@GOTPAGE
Lloh59:
	ldr	x8, [x8, _SBDMA16@GOTPAGEOFF]
Lloh60:
	ldr	w8, [x8]
	and	w1, w8, #0x3
	mov	w0, #212
	b	LBB0_33
LBB0_32:
Lloh61:
	adrp	x8, _SBDMA@GOTPAGE
Lloh62:
	ldr	x8, [x8, _SBDMA@GOTPAGEOFF]
Lloh63:
	ldr	w1, [x8]
	mov	w0, #10
LBB0_33:
	bl	_outportb
	ldr	w8, [x22]
	mov	w9, #8
	lsl	w8, w9, w8
	stp	x19, x8, [sp]
Lloh64:
	adrp	x0, l_.str.8@PAGE
Lloh65:
	add	x0, x0, l_.str.8@PAGEOFF
	bl	_printf
	b	LBB0_24
	.loh AdrpLdrGotStr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGot	Lloh17, Lloh18
	.loh AdrpLdrGot	Lloh15, Lloh16
	.loh AdrpLdrGotStr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGot	Lloh10, Lloh11
	.loh AdrpAdd	Lloh8, Lloh9
	.loh AdrpLdrGotStr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpLdrGotStr	Lloh0, Lloh1, Lloh4
	.loh AdrpLdrGotStr	Lloh25, Lloh26, Lloh27
	.loh AdrpLdrGotStr	Lloh22, Lloh23, Lloh24
	.loh AdrpAdd	Lloh28, Lloh29
	.loh AdrpLdrGot	Lloh30, Lloh31
	.loh AdrpLdrGotStr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGotStr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGot	Lloh38, Lloh39
	.loh AdrpAdd	Lloh40, Lloh41
	.loh AdrpAdd	Lloh42, Lloh43
	.loh AdrpAdd	Lloh44, Lloh45
	.loh AdrpAdd	Lloh46, Lloh47
	.loh AdrpLdrGotStr	Lloh48, Lloh49, Lloh50
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpAdd	Lloh54, Lloh55
	.loh AdrpAdd	Lloh56, Lloh57
	.loh AdrpLdrGotLdr	Lloh58, Lloh59, Lloh60
	.loh AdrpLdrGotLdr	Lloh61, Lloh62, Lloh63
	.loh AdrpAdd	Lloh64, Lloh65
	.cfi_endproc
                                        ; -- End function
	.comm	_hbusy,4,2                      ; @hbusy
	.comm	_hsmode,4,2                     ; @hsmode
	.comm	_whichbuf,4,2                   ; @whichbuf
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Initializing Sound Blaster..."

	.comm	_format,4,2                     ; @format
	.comm	_frags,4,2                      ; @frags
	.comm	_fragsize,4,2                   ; @fragsize
	.comm	_fragtotal,4,2                  ; @fragtotal
	.comm	_WaveBuffer,4,2                 ; @WaveBuffer
	.comm	_ReadPtr,8,3                    ; @ReadPtr
	.comm	_WritePtr,8,3                   ; @WritePtr
l_.str.1:                               ; @.str.1
	.asciz	" Unsupported playback rate: %d samples per second\n"

	.comm	_SBIRQ,4,2                      ; @SBIRQ
	.comm	_PICMask,4,2                    ; @PICMask
l_.str.2:                               ; @.str.2
	.asciz	" Error resetting the DSP."

	.comm	_DSPV,4,2                       ; @DSPV
l_.str.3:                               ; @.str.3
	.asciz	" Error getting the DSP version."

l_.str.4:                               ; @.str.4
	.asciz	" DSP Version: %d.%d\n"

l_.str.6:                               ; @.str.6
	.asciz	" Error creating low-memory DMA buffer."

	.comm	_IVector,4,2                    ; @IVector
l_.str.7:                               ; @.str.7
	.asciz	" Error setting interrupt vectors."

	.comm	_SBDMA16,4,2                    ; @SBDMA16
	.comm	_SBDMA,4,2                      ; @SBDMA
l_.str.8:                               ; @.str.8
	.asciz	" %d hz, %d-bit\n"

l_str:                                  ; @str
	.asciz	" DSP version number is too low."

.subsections_via_symbols
