	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_gx_video_Start                 ## -- Begin function gx_video_Start
	.p2align	4, 0x90
_gx_video_Start:                        ## @gx_video_Start
	.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
	movq	_config@GOTPCREL(%rip), %r8
	movl	8(%r8), %eax
	cmpl	$1, %eax
	jne	LBB0_2
## %bb.1:
	movq	_vdp_pal@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	$1, %ecx
	jmp	LBB0_3
LBB0_2:
	cmpl	$2, %eax
	sete	%cl
	movq	_vdp_pal@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	testl	%eax, %eax
	setne	%dl
	andb	%cl, %dl
	movzbl	%dl, %ecx
LBB0_3:
	movq	_gc_pal@GOTPCREL(%rip), %rdx
	movl	%ecx, (%rdx)
	cmpq	$0, 56(%r8)
	je	LBB0_6
## %bb.4:
	cmpl	%eax, %ecx
	jne	LBB0_6
## %bb.5:
	movq	_vi_callback@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_VIDEO_SetPostRetraceCallback
	xorl	%eax, %eax
	callq	_VIDEO_Flush
	movq	_config@GOTPCREL(%rip), %r8
LBB0_6:
	movl	12(%r8), %eax
	cmpl	$1, %eax
	je	LBB0_9
## %bb.7:
	cmpl	$2, %eax
	jne	LBB0_11
## %bb.8:
	movq	_VI_TVMODE_NTSC_PROG@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_tvmodes@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	movq	_VI_XFBMODE_SF@GOTPCREL(%rip), %rdx
	jmp	LBB0_10
LBB0_9:
	movq	_tvmodes@GOTPCREL(%rip), %rax
	movq	(%rax), %rcx
	movq	(%rcx), %rax
	movl	(%rax), %eax
	andl	$-4, %eax
	movq	_VI_XFBMODE_DF@GOTPCREL(%rip), %rdx
LBB0_10:
	movq	16(%rcx), %rcx
	movl	%eax, (%rcx)
	movl	(%rdx), %eax
	movl	%eax, 4(%rcx)
LBB0_11:
	movq	_system_hw@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	_SYSTEM_GG@GOTPCREL(%rip), %rcx
	movl	16(%r8), %edx
	andl	$2, %edx
	movl	$-48, %esi
	movl	$14, %edi
	cmovel	%esi, %edi
	leal	(,%rdx,8), %esi
	subl	%edx, %esi
	cmpl	$0, 48(%r8)
	cmovnel	%esi, %edi
	cmpq	(%rcx), %rax
	cmovnel	%esi, %edi
	movq	_bitmap@GOTPCREL(%rip), %rax
	movl	%edi, (%rax)
	movl	$3, 4(%rax)
	cmpl	$0, 20(%r8)
	je	LBB0_18
## %bb.12:
	movq	_sms_ntsc@GOTPCREL(%rip), %r15
	cmpq	$0, (%r15)
	jne	LBB0_14
## %bb.13:
	movl	$32, %edi
	movl	$4, %esi
	callq	_memalign
	movq	_config@GOTPCREL(%rip), %r8
	movq	%rax, (%r15)
LBB0_14:
	movq	_md_ntsc@GOTPCREL(%rip), %rbx
	cmpq	$0, (%rbx)
	jne	LBB0_16
## %bb.15:
	movl	$32, %edi
	movl	$4, %esi
	callq	_memalign
	movq	_config@GOTPCREL(%rip), %r8
	movq	%rax, (%rbx)
LBB0_16:
	movl	20(%r8), %eax
	decl	%eax
	cmpl	$2, %eax
	ja	LBB0_18
## %bb.17:
	cltq
	leaq	l_switch.table.gx_video_Start(%rip), %rcx
	movq	(%rcx,%rax,8), %rsi
	leaq	l_switch.table.gx_video_Start.1(%rip), %rcx
	movq	(%rcx,%rax,8), %r14
	movq	(%r15), %rdi
	callq	_sms_ntsc_init
	movq	(%rbx), %rdi
	movq	%r14, %rsi
	callq	_md_ntsc_init
	movq	_config@GOTPCREL(%rip), %r8
LBB0_18:
	movq	_MAX_DEVICES@GOTPCREL(%rip), %rsi
	cmpl	$0, (%rsi)
	jle	LBB0_30
## %bb.19:
	movq	_input@GOTPCREL(%rip), %r13
	movq	(%r13), %rax
	xorl	%ebx, %ebx
	movq	_DEVICE_LIGHTGUN@GOTPCREL(%rip), %r15
	movq	_NO_DEVICE@GOTPCREL(%rip), %r12
	xorl	%r14d, %r14d
	jmp	LBB0_20
	.p2align	4, 0x90
LBB0_29:                                ##   in Loop: Header=BB0_20 Depth=1
	movq	(%r13), %rax
	movq	(%rax,%rbx,8), %rcx
	xorl	%edx, %edx
	cmpq	(%r12), %rcx
	setne	%dl
	addl	%edx, %r14d
	incq	%rbx
	movslq	(%rsi), %rcx
	cmpq	%rcx, %rbx
	jge	LBB0_30
LBB0_20:                                ## =>This Inner Loop Header: Depth=1
	movq	(%rax,%rbx,8), %rax
	cmpq	(%r15), %rax
	jne	LBB0_29
## %bb.21:                              ##   in Loop: Header=BB0_20 Depth=1
	movq	40(%r8), %rax
	movl	%r14d, %ecx
	cmpq	$0, (%rax,%rcx,8)
	js	LBB0_29
## %bb.22:                              ##   in Loop: Header=BB0_20 Depth=1
	testl	%ebx, %ebx
	je	LBB0_25
## %bb.23:                              ##   in Loop: Header=BB0_20 Depth=1
	cmpl	$4, %ebx
	jne	LBB0_27
## %bb.24:                              ##   in Loop: Header=BB0_20 Depth=1
	movq	8(%r13), %rax
	movq	8(%rax), %rax
	movq	_SYSTEM_LIGHTPHASER@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_25
LBB0_27:                                ##   in Loop: Header=BB0_20 Depth=1
	movq	32(%r8), %rax
	cmpq	$0, 8(%rax)
	je	LBB0_29
## %bb.28:                              ##   in Loop: Header=BB0_20 Depth=1
	movq	_Crosshair_p2_png@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	xorl	%esi, %esi
	callq	_gxTextureOpenPNG
	movq	_MAX_DEVICES@GOTPCREL(%rip), %rsi
	movq	_config@GOTPCREL(%rip), %r8
	movq	_crosshair@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	movq	%rax, 8(%rcx)
	jmp	LBB0_29
LBB0_25:                                ##   in Loop: Header=BB0_20 Depth=1
	movq	32(%r8), %rax
	cmpq	$0, (%rax)
	je	LBB0_29
## %bb.26:                              ##   in Loop: Header=BB0_20 Depth=1
	movq	_Crosshair_p1_png@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	xorl	%esi, %esi
	callq	_gxTextureOpenPNG
	movq	_MAX_DEVICES@GOTPCREL(%rip), %rsi
	movq	_config@GOTPCREL(%rip), %r8
	movq	_crosshair@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	movq	%rax, (%rcx)
	jmp	LBB0_29
LBB0_30:
	movq	_system_hw@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	_SYSTEM_MCD@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_33
## %bb.31:
	cmpq	$0, 24(%r8)
	je	LBB0_33
## %bb.32:
	movq	_CD_access_off_png@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	xorl	%esi, %esi
	callq	_gxTextureOpenPNG
	movq	_cd_leds@GOTPCREL(%rip), %rbx
	movq	(%rbx), %rcx
	movq	(%rcx), %rcx
	movq	%rax, (%rcx)
	movq	_CD_access_on_png@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	xorl	%esi, %esi
	callq	_gxTextureOpenPNG
	movq	(%rbx), %rcx
	movq	(%rcx), %rcx
	movq	%rax, 8(%rcx)
	movq	_CD_ready_off_png@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	xorl	%esi, %esi
	callq	_gxTextureOpenPNG
	movq	(%rbx), %rcx
	movq	8(%rcx), %rcx
	movq	%rax, (%rcx)
	movq	_CD_ready_on_png@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	xorl	%esi, %esi
	callq	_gxTextureOpenPNG
	movq	(%rbx), %rcx
	movq	8(%rcx), %rcx
	movq	%rax, 8(%rcx)
LBB0_33:
	xorl	%edi, %edi
	callq	_gxResetRendering
	movq	_video_sync@GOTPCREL(%rip), %rax
	movq	$0, (%rax)
	xorl	%eax, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_VIDEO_WaitVSync                ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_config,72,3                    ## @config
	.comm	_vdp_pal,4,2                    ## @vdp_pal
	.comm	_gc_pal,4,2                     ## @gc_pal
	.comm	_vi_callback,4,2                ## @vi_callback
	.comm	_VI_TVMODE_NTSC_PROG,4,2        ## @VI_TVMODE_NTSC_PROG
	.comm	_tvmodes,8,3                    ## @tvmodes
	.comm	_VI_XFBMODE_SF,4,2              ## @VI_XFBMODE_SF
	.comm	_VI_XFBMODE_DF,4,2              ## @VI_XFBMODE_DF
	.comm	_system_hw,8,3                  ## @system_hw
	.comm	_SYSTEM_GG,8,3                  ## @SYSTEM_GG
	.comm	_bitmap,8,2                     ## @bitmap
	.comm	_sms_ntsc,8,3                   ## @sms_ntsc
	.comm	_md_ntsc,8,3                    ## @md_ntsc
	.comm	_sms_ntsc_composite,4,2         ## @sms_ntsc_composite
	.comm	_md_ntsc_composite,4,2          ## @md_ntsc_composite
	.comm	_sms_ntsc_svideo,4,2            ## @sms_ntsc_svideo
	.comm	_md_ntsc_svideo,4,2             ## @md_ntsc_svideo
	.comm	_sms_ntsc_rgb,4,2               ## @sms_ntsc_rgb
	.comm	_md_ntsc_rgb,4,2                ## @md_ntsc_rgb
	.comm	_MAX_DEVICES,4,2                ## @MAX_DEVICES
	.comm	_input,16,3                     ## @input
	.comm	_DEVICE_LIGHTGUN,8,3            ## @DEVICE_LIGHTGUN
	.comm	_SYSTEM_LIGHTPHASER,8,3         ## @SYSTEM_LIGHTPHASER
	.comm	_Crosshair_p1_png,4,2           ## @Crosshair_p1_png
	.comm	_crosshair,8,3                  ## @crosshair
	.comm	_Crosshair_p2_png,4,2           ## @Crosshair_p2_png
	.comm	_NO_DEVICE,8,3                  ## @NO_DEVICE
	.comm	_SYSTEM_MCD,8,3                 ## @SYSTEM_MCD
	.comm	_CD_access_off_png,4,2          ## @CD_access_off_png
	.comm	_cd_leds,8,3                    ## @cd_leds
	.comm	_CD_access_on_png,4,2           ## @CD_access_on_png
	.comm	_CD_ready_off_png,4,2           ## @CD_ready_off_png
	.comm	_CD_ready_on_png,4,2            ## @CD_ready_on_png
	.comm	_video_sync,8,3                 ## @video_sync
	.section	__DATA,__const
	.p2align	3                               ## @switch.table.gx_video_Start
l_switch.table.gx_video_Start:
	.quad	_sms_ntsc_composite
	.quad	_sms_ntsc_svideo
	.quad	_sms_ntsc_rgb

	.p2align	3                               ## @switch.table.gx_video_Start.1
l_switch.table.gx_video_Start.1:
	.quad	_md_ntsc_composite
	.quad	_md_ntsc_svideo
	.quad	_md_ntsc_rgb

.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_gx_video_Start                 ; -- Begin function gx_video_Start
	.p2align	2
_gx_video_Start:                        ; @gx_video_Start
	.cfi_startproc
; %bb.0:
	stp	x28, x27, [sp, #-96]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 96
	stp	x26, x25, [sp, #16]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #32]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #48]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #64]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #80]             ; 16-byte Folded Spill
	add	x29, sp, #80
	.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
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
Lloh0:
	adrp	x20, _config@GOTPAGE
Lloh1:
	ldr	x20, [x20, _config@GOTPAGEOFF]
	ldr	w8, [x20, #8]
	cmp	w8, #1
	b.ne	LBB0_2
; %bb.1:
Lloh2:
	adrp	x8, _vdp_pal@GOTPAGE
Lloh3:
	ldr	x8, [x8, _vdp_pal@GOTPAGEOFF]
Lloh4:
	ldr	w8, [x8]
	mov	w9, #1
	b	LBB0_3
LBB0_2:
	cmp	w8, #2
Lloh5:
	adrp	x8, _vdp_pal@GOTPAGE
Lloh6:
	ldr	x8, [x8, _vdp_pal@GOTPAGEOFF]
Lloh7:
	ldr	w8, [x8]
	ccmp	w8, #0, #4, eq
	cset	w9, ne
LBB0_3:
Lloh8:
	adrp	x10, _gc_pal@GOTPAGE
Lloh9:
	ldr	x10, [x10, _gc_pal@GOTPAGEOFF]
Lloh10:
	str	w9, [x10]
	ldr	x10, [x20, #56]
	cmp	x10, #0
	ccmp	w9, w8, #0, ne
	b.ne	LBB0_5
; %bb.4:
Lloh11:
	adrp	x8, _vi_callback@GOTPAGE
Lloh12:
	ldr	x8, [x8, _vi_callback@GOTPAGEOFF]
Lloh13:
	ldr	w0, [x8]
	bl	_VIDEO_SetPostRetraceCallback
	bl	_VIDEO_Flush
LBB0_5:
	ldr	w8, [x20, #12]
	cmp	w8, #1
	b.eq	LBB0_8
; %bb.6:
	cmp	w8, #2
	b.ne	LBB0_10
; %bb.7:
Lloh14:
	adrp	x8, _VI_TVMODE_NTSC_PROG@GOTPAGE
Lloh15:
	ldr	x8, [x8, _VI_TVMODE_NTSC_PROG@GOTPAGEOFF]
Lloh16:
	ldr	w9, [x8]
Lloh17:
	adrp	x8, _tvmodes@GOTPAGE
Lloh18:
	ldr	x8, [x8, _tvmodes@GOTPAGEOFF]
Lloh19:
	ldr	x8, [x8]
Lloh20:
	adrp	x10, _VI_XFBMODE_SF@GOTPAGE
Lloh21:
	ldr	x10, [x10, _VI_XFBMODE_SF@GOTPAGEOFF]
	b	LBB0_9
LBB0_8:
Lloh22:
	adrp	x8, _tvmodes@GOTPAGE
Lloh23:
	ldr	x8, [x8, _tvmodes@GOTPAGEOFF]
Lloh24:
	ldr	x8, [x8]
	ldr	x9, [x8]
	ldr	w9, [x9]
	and	w9, w9, #0xfffffffc
Lloh25:
	adrp	x10, _VI_XFBMODE_DF@GOTPAGE
Lloh26:
	ldr	x10, [x10, _VI_XFBMODE_DF@GOTPAGEOFF]
LBB0_9:
	ldr	x8, [x8, #16]
	str	w9, [x8]
	ldr	w9, [x10]
	str	w9, [x8, #4]
LBB0_10:
Lloh27:
	adrp	x8, _system_hw@GOTPAGE
Lloh28:
	ldr	x8, [x8, _system_hw@GOTPAGEOFF]
Lloh29:
	ldr	x8, [x8]
Lloh30:
	adrp	x9, _SYSTEM_GG@GOTPAGE
Lloh31:
	ldr	x9, [x9, _SYSTEM_GG@GOTPAGEOFF]
Lloh32:
	ldr	x9, [x9]
	ldp	w10, w11, [x20, #16]
	ands	w10, w10, #0x2
	mov	w12, #14
	mov	w13, #-48
	csel	w12, w13, w12, eq
	lsl	w13, w10, #3
	sub	w10, w13, w10
	ldr	w13, [x20, #48]
	cmp	w13, #0
	ccmp	x8, x9, #0, eq
	csel	w8, w10, w12, ne
Lloh33:
	adrp	x9, _bitmap@GOTPAGE
Lloh34:
	ldr	x9, [x9, _bitmap@GOTPAGEOFF]
	mov	w10, #3
	stp	w8, w10, [x9]
	cbz	w11, LBB0_17
; %bb.11:
Lloh35:
	adrp	x21, _sms_ntsc@GOTPAGE
Lloh36:
	ldr	x21, [x21, _sms_ntsc@GOTPAGEOFF]
	ldr	x8, [x21]
	cbnz	x8, LBB0_13
; %bb.12:
	mov	w0, #32
	mov	w1, #4
	bl	_memalign
	str	x0, [x21]
LBB0_13:
Lloh37:
	adrp	x22, _md_ntsc@GOTPAGE
Lloh38:
	ldr	x22, [x22, _md_ntsc@GOTPAGEOFF]
	ldr	x8, [x22]
	cbnz	x8, LBB0_15
; %bb.14:
	mov	w0, #32
	mov	w1, #4
	bl	_memalign
	str	x0, [x22]
LBB0_15:
	ldr	w8, [x20, #20]
	sub	w8, w8, #1
	cmp	w8, #2
	b.hi	LBB0_17
; %bb.16:
	sbfiz	x8, x8, #3, #32
Lloh39:
	adrp	x9, l_switch.table.gx_video_Start@PAGE
Lloh40:
	add	x9, x9, l_switch.table.gx_video_Start@PAGEOFF
	ldr	x1, [x9, x8]
Lloh41:
	adrp	x9, l_switch.table.gx_video_Start.1@PAGE
Lloh42:
	add	x9, x9, l_switch.table.gx_video_Start.1@PAGEOFF
	ldr	x19, [x9, x8]
	ldr	x0, [x21]
	bl	_sms_ntsc_init
	ldr	x0, [x22]
	mov	x1, x19
	bl	_md_ntsc_init
LBB0_17:
Lloh43:
	adrp	x19, _MAX_DEVICES@GOTPAGE
Lloh44:
	ldr	x19, [x19, _MAX_DEVICES@GOTPAGEOFF]
	ldr	w8, [x19]
	cmp	w8, #1
	b.lt	LBB0_29
; %bb.18:
	mov	x22, #0
	mov	w23, #0
Lloh45:
	adrp	x24, _input@GOTPAGE
Lloh46:
	ldr	x24, [x24, _input@GOTPAGEOFF]
	ldr	x8, [x24]
Lloh47:
	adrp	x25, _DEVICE_LIGHTGUN@GOTPAGE
Lloh48:
	ldr	x25, [x25, _DEVICE_LIGHTGUN@GOTPAGEOFF]
Lloh49:
	adrp	x27, _crosshair@GOTPAGE
Lloh50:
	ldr	x27, [x27, _crosshair@GOTPAGEOFF]
Lloh51:
	adrp	x28, _SYSTEM_LIGHTPHASER@GOTPAGE
Lloh52:
	ldr	x28, [x28, _SYSTEM_LIGHTPHASER@GOTPAGEOFF]
Lloh53:
	adrp	x21, _Crosshair_p2_png@GOTPAGE
Lloh54:
	ldr	x21, [x21, _Crosshair_p2_png@GOTPAGEOFF]
Lloh55:
	adrp	x26, _NO_DEVICE@GOTPAGE
Lloh56:
	ldr	x26, [x26, _NO_DEVICE@GOTPAGEOFF]
	b	LBB0_20
LBB0_19:                                ;   in Loop: Header=BB0_20 Depth=1
	ldr	x8, [x24]
	ldr	x9, [x8, x22, lsl #3]
	ldr	x10, [x26]
	cmp	x9, x10
	cinc	w23, w23, ne
	add	x22, x22, #1
	ldrsw	x9, [x19]
	cmp	x22, x9
	b.ge	LBB0_29
LBB0_20:                                ; =>This Inner Loop Header: Depth=1
	ldr	x8, [x8, x22, lsl #3]
	ldr	x9, [x25]
	cmp	x8, x9
	b.ne	LBB0_19
; %bb.21:                               ;   in Loop: Header=BB0_20 Depth=1
	ldr	x8, [x20, #40]
	ldr	x8, [x8, w23, uxtw #3]
	tbnz	x8, #63, LBB0_19
; %bb.22:                               ;   in Loop: Header=BB0_20 Depth=1
	cbz	w22, LBB0_27
; %bb.23:                               ;   in Loop: Header=BB0_20 Depth=1
	cmp	w22, #4
	b.ne	LBB0_25
; %bb.24:                               ;   in Loop: Header=BB0_20 Depth=1
	ldr	x8, [x24, #8]
	ldr	x8, [x8, #8]
	ldr	x9, [x28]
	cmp	x8, x9
	b.ne	LBB0_27
LBB0_25:                                ;   in Loop: Header=BB0_20 Depth=1
	ldr	x8, [x20, #32]
	ldr	x8, [x8, #8]
	cbz	x8, LBB0_19
; %bb.26:                               ;   in Loop: Header=BB0_20 Depth=1
	ldr	w0, [x21]
	mov	w1, #0
	bl	_gxTextureOpenPNG
	ldr	x8, [x27]
	str	x0, [x8, #8]
	b	LBB0_19
LBB0_27:                                ;   in Loop: Header=BB0_20 Depth=1
	ldr	x8, [x20, #32]
	ldr	x8, [x8]
	cbz	x8, LBB0_19
; %bb.28:                               ;   in Loop: Header=BB0_20 Depth=1
Lloh57:
	adrp	x8, _Crosshair_p1_png@GOTPAGE
Lloh58:
	ldr	x8, [x8, _Crosshair_p1_png@GOTPAGEOFF]
Lloh59:
	ldr	w0, [x8]
	mov	w1, #0
	bl	_gxTextureOpenPNG
	ldr	x8, [x27]
	str	x0, [x8]
	b	LBB0_19
LBB0_29:
Lloh60:
	adrp	x8, _system_hw@GOTPAGE
Lloh61:
	ldr	x8, [x8, _system_hw@GOTPAGEOFF]
Lloh62:
	ldr	x8, [x8]
Lloh63:
	adrp	x9, _SYSTEM_MCD@GOTPAGE
Lloh64:
	ldr	x9, [x9, _SYSTEM_MCD@GOTPAGEOFF]
Lloh65:
	ldr	x9, [x9]
	ldr	x10, [x20, #24]
	cmp	x8, x9
	ccmp	x10, #0, #4, eq
	b.eq	LBB0_31
; %bb.30:
Lloh66:
	adrp	x8, _CD_access_off_png@GOTPAGE
Lloh67:
	ldr	x8, [x8, _CD_access_off_png@GOTPAGEOFF]
Lloh68:
	ldr	w0, [x8]
	mov	w1, #0
	bl	_gxTextureOpenPNG
Lloh69:
	adrp	x19, _cd_leds@GOTPAGE
Lloh70:
	ldr	x19, [x19, _cd_leds@GOTPAGEOFF]
	ldr	x8, [x19]
	ldr	x8, [x8]
	str	x0, [x8]
Lloh71:
	adrp	x8, _CD_access_on_png@GOTPAGE
Lloh72:
	ldr	x8, [x8, _CD_access_on_png@GOTPAGEOFF]
Lloh73:
	ldr	w0, [x8]
	mov	w1, #0
	bl	_gxTextureOpenPNG
	ldr	x8, [x19]
	ldr	x8, [x8]
	str	x0, [x8, #8]
Lloh74:
	adrp	x8, _CD_ready_off_png@GOTPAGE
Lloh75:
	ldr	x8, [x8, _CD_ready_off_png@GOTPAGEOFF]
Lloh76:
	ldr	w0, [x8]
	mov	w1, #0
	bl	_gxTextureOpenPNG
	ldr	x8, [x19]
	ldr	x8, [x8, #8]
	str	x0, [x8]
Lloh77:
	adrp	x8, _CD_ready_on_png@GOTPAGE
Lloh78:
	ldr	x8, [x8, _CD_ready_on_png@GOTPAGEOFF]
Lloh79:
	ldr	w0, [x8]
	mov	w1, #0
	bl	_gxTextureOpenPNG
	ldr	x8, [x19]
	ldr	x8, [x8, #8]
	str	x0, [x8, #8]
LBB0_31:
	mov	w0, #0
	bl	_gxResetRendering
Lloh80:
	adrp	x8, _video_sync@GOTPAGE
Lloh81:
	ldr	x8, [x8, _video_sync@GOTPAGEOFF]
Lloh82:
	str	xzr, [x8]
	ldp	x29, x30, [sp, #80]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #64]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #48]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #32]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #16]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp], #96             ; 16-byte Folded Reload
	b	_VIDEO_WaitVSync
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGotStr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGot	Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGot	Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGot	Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGot	Lloh35, Lloh36
	.loh AdrpLdrGot	Lloh37, Lloh38
	.loh AdrpAdd	Lloh41, Lloh42
	.loh AdrpAdd	Lloh39, Lloh40
	.loh AdrpLdrGot	Lloh43, Lloh44
	.loh AdrpLdrGot	Lloh55, Lloh56
	.loh AdrpLdrGot	Lloh53, Lloh54
	.loh AdrpLdrGot	Lloh51, Lloh52
	.loh AdrpLdrGot	Lloh49, Lloh50
	.loh AdrpLdrGot	Lloh47, Lloh48
	.loh AdrpLdrGot	Lloh45, Lloh46
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh63, Lloh64, Lloh65
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh77, Lloh78, Lloh79
	.loh AdrpLdrGotLdr	Lloh74, Lloh75, Lloh76
	.loh AdrpLdrGotLdr	Lloh71, Lloh72, Lloh73
	.loh AdrpLdrGot	Lloh69, Lloh70
	.loh AdrpLdrGotLdr	Lloh66, Lloh67, Lloh68
	.loh AdrpLdrGotStr	Lloh80, Lloh81, Lloh82
	.cfi_endproc
                                        ; -- End function
	.comm	_config,72,3                    ; @config
	.comm	_vdp_pal,4,2                    ; @vdp_pal
	.comm	_gc_pal,4,2                     ; @gc_pal
	.comm	_vi_callback,4,2                ; @vi_callback
	.comm	_VI_TVMODE_NTSC_PROG,4,2        ; @VI_TVMODE_NTSC_PROG
	.comm	_tvmodes,8,3                    ; @tvmodes
	.comm	_VI_XFBMODE_SF,4,2              ; @VI_XFBMODE_SF
	.comm	_VI_XFBMODE_DF,4,2              ; @VI_XFBMODE_DF
	.comm	_system_hw,8,3                  ; @system_hw
	.comm	_SYSTEM_GG,8,3                  ; @SYSTEM_GG
	.comm	_bitmap,8,2                     ; @bitmap
	.comm	_sms_ntsc,8,3                   ; @sms_ntsc
	.comm	_md_ntsc,8,3                    ; @md_ntsc
	.comm	_sms_ntsc_composite,4,2         ; @sms_ntsc_composite
	.comm	_md_ntsc_composite,4,2          ; @md_ntsc_composite
	.comm	_sms_ntsc_svideo,4,2            ; @sms_ntsc_svideo
	.comm	_md_ntsc_svideo,4,2             ; @md_ntsc_svideo
	.comm	_sms_ntsc_rgb,4,2               ; @sms_ntsc_rgb
	.comm	_md_ntsc_rgb,4,2                ; @md_ntsc_rgb
	.comm	_MAX_DEVICES,4,2                ; @MAX_DEVICES
	.comm	_input,16,3                     ; @input
	.comm	_DEVICE_LIGHTGUN,8,3            ; @DEVICE_LIGHTGUN
	.comm	_SYSTEM_LIGHTPHASER,8,3         ; @SYSTEM_LIGHTPHASER
	.comm	_Crosshair_p1_png,4,2           ; @Crosshair_p1_png
	.comm	_crosshair,8,3                  ; @crosshair
	.comm	_Crosshair_p2_png,4,2           ; @Crosshair_p2_png
	.comm	_NO_DEVICE,8,3                  ; @NO_DEVICE
	.comm	_SYSTEM_MCD,8,3                 ; @SYSTEM_MCD
	.comm	_CD_access_off_png,4,2          ; @CD_access_off_png
	.comm	_cd_leds,8,3                    ; @cd_leds
	.comm	_CD_access_on_png,4,2           ; @CD_access_on_png
	.comm	_CD_ready_off_png,4,2           ; @CD_ready_off_png
	.comm	_CD_ready_on_png,4,2            ; @CD_ready_on_png
	.comm	_video_sync,8,3                 ; @video_sync
	.section	__DATA,__const
	.p2align	3                               ; @switch.table.gx_video_Start
l_switch.table.gx_video_Start:
	.quad	_sms_ntsc_composite
	.quad	_sms_ntsc_svideo
	.quad	_sms_ntsc_rgb

	.p2align	3                               ; @switch.table.gx_video_Start.1
l_switch.table.gx_video_Start.1:
	.quad	_md_ntsc_composite
	.quad	_md_ntsc_svideo
	.quad	_md_ntsc_rgb

.subsections_via_symbols
