	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_gen_init                       ## -- Begin function gen_init
	.p2align	4, 0x90
_gen_init:                              ## @gen_init
	.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	_z80_irq_callback@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	xorl	%edi, %edi
	callq	_z80_init
	movq	_system_hw@GOTPCREL(%rip), %r14
	movl	$131, %eax
	andl	(%r14), %eax
	movq	_SYSTEM_MD@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	jne	LBB0_12
## %bb.1:
	xorl	%ebx, %ebx
	xorl	%eax, %eax
	callq	_m68k_init
	movq	_config@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_m68k@GOTPCREL(%rip), %rcx
	movl	%eax, 8(%rcx)
	movq	(%rcx), %r8
	leaq	5152(%r8), %rsi
	movq	_work_ram@GOTPCREL(%rip), %r10
	movq	_m68k_lockup_r_8@GOTPCREL(%rip), %r11
	movq	_m68k_lockup_r_16@GOTPCREL(%rip), %r15
	movq	_m68k_lockup_w_8@GOTPCREL(%rip), %r12
	movq	_m68k_lockup_w_16@GOTPCREL(%rip), %r13
	movq	_zbank_lockup_r@GOTPCREL(%rip), %rdi
	movq	_zbank_memory_map@GOTPCREL(%rip), %r9
	movq	_zbank_lockup_w@GOTPCREL(%rip), %rax
	.p2align	4, 0x90
LBB0_2:                                 ## =>This Inner Loop Header: Depth=1
	movq	(%r10), %rcx
	movq	%rcx, (%rsi)
	movq	(%r11), %rcx
	movq	%rcx, -8(%rsi)
	movq	(%r15), %rcx
	movq	%rcx, -16(%rsi)
	movq	(%r12), %rcx
	movq	%rcx, -24(%rsi)
	movq	(%r13), %rcx
	movq	%rcx, -32(%rsi)
	movl	(%rdi), %ecx
	movq	(%r9), %rdx
	movl	%ecx, 2056(%rdx,%rbx)
	movq	(%rax), %rcx
	movq	%rcx, 2048(%rdx,%rbx)
	addq	$40, %rsi
	addq	$16, %rbx
	cmpq	$1536, %rbx                     ## imm = 0x600
	jne	LBB0_2
## %bb.3:
	movq	_vdp_read_byte@GOTPCREL(%rip), %rax
	movq	(%rax), %r11
	movq	%r11, 7704(%r8)
	movq	_vdp_read_word@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	movq	%rcx, 7696(%r8)
	movq	_vdp_write_byte@GOTPCREL(%rip), %rdx
	movq	(%rdx), %rdx
	movq	%rdx, 7688(%r8)
	movq	_vdp_write_word@GOTPCREL(%rip), %rsi
	movq	(%rsi), %rsi
	movq	%rsi, 7680(%r8)
	movq	_zbank_read_vdp@GOTPCREL(%rip), %rdi
	movl	(%rdi), %edi
	movq	(%r9), %rbx
	movl	%edi, 3080(%rbx)
	movq	_zbank_write_vdp@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 3072(%rbx)
	movq	%r11, 8024(%r8)
	movq	%rcx, 8016(%r8)
	movq	%rdx, 8008(%r8)
	movq	%rsi, 8000(%r8)
	movl	%edi, 3208(%rbx)
	movq	%rax, 3200(%rbx)
	movq	%r11, 8344(%r8)
	movq	%rcx, 8336(%r8)
	movq	%rdx, 8328(%r8)
	movq	%rsi, 8320(%r8)
	movl	%edi, 3336(%rbx)
	movq	%rax, 3328(%rbx)
	movq	%r11, 8664(%r8)
	movq	%rcx, 8656(%r8)
	movq	%rdx, 8648(%r8)
	movq	%rsi, 8640(%r8)
	movl	%edi, 3464(%rbx)
	movq	%rax, 3456(%rbx)
	leaq	8992(%r8), %rax
	xorl	%ecx, %ecx
	xorps	%xmm0, %xmm0
	movq	_zbank_unused_r@GOTPCREL(%rip), %rdx
	.p2align	4, 0x90
LBB0_4:                                 ## =>This Inner Loop Header: Depth=1
	movq	(%r10), %rsi
	movq	%rsi, (%rax)
	movups	%xmm0, -32(%rax)
	movups	%xmm0, -16(%rax)
	movl	(%rdx), %esi
	movq	(%r9), %rdi
	movl	%esi, 3592(%rdi,%rcx)
	movq	$0, 3584(%rdi,%rcx)
	addq	$40, %rax
	addq	$16, %rcx
	cmpq	$512, %rcx                      ## imm = 0x200
	jne	LBB0_4
## %bb.5:
	movl	(%r14), %r10d
	movq	_SYSTEM_PICO@GOTPCREL(%rip), %rax
	cmpl	(%rax), %r10d
	jne	LBB0_7
## %bb.6:
	movq	_pico_read_byte@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 5144(%r8)
	movq	_pico_read_word@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 5136(%r8)
	movq	_m68k_unused_8_w@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 5128(%r8)
	movq	_m68k_unused_16_w@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	movq	%rcx, 5120(%r8)
	movq	_m68k_read_bus_8@GOTPCREL(%rip), %rsi
	movq	(%rsi), %rsi
	movq	%rsi, 6464(%r8)
	movq	_m68k_read_bus_16@GOTPCREL(%rip), %rsi
	movq	(%rsi), %rsi
	movq	%rsi, 6456(%r8)
	movq	%rax, 6448(%r8)
	movq	%rcx, 6440(%r8)
	movq	_pico_current@GOTPCREL(%rip), %rax
	movq	$0, (%rax)
	jmp	LBB0_10
LBB0_12:
	xorl	%eax, %eax
	callq	_sms_cart_init
	movl	(%r14), %eax
	addl	$-128, %eax
	cmpl	$6, %eax
	ja	LBB0_20
## %bb.13:
	leaq	LJTI0_0(%rip), %rcx
	movslq	(%rcx,%rax,4), %rax
	addq	%rcx, %rax
	jmpq	*%rax
LBB0_16:
	movq	_z80_ms_port_w@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_z80_writeport@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_z80_ms_port_r@GOTPCREL(%rip), %rax
	jmp	LBB0_19
LBB0_7:
	movq	_ctrl_io_read_byte@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 6464(%r8)
	movq	_ctrl_io_read_word@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 6456(%r8)
	movq	_ctrl_io_write_byte@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 6448(%r8)
	movq	_ctrl_io_write_word@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 6440(%r8)
	movq	_zbank_read_ctrl_io@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	(%r9), %rcx
	movl	%eax, 2584(%rcx)
	movq	_zbank_write_ctrl_io@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 2576(%rcx)
	movl	$1024, %eax                     ## imm = 0x400
	xorl	%ecx, %ecx
	movq	_zram@GOTPCREL(%rip), %rsi
	movq	_z80_readmap@GOTPCREL(%rip), %rdi
	.p2align	4, 0x90
LBB0_8:                                 ## =>This Inner Loop Header: Depth=1
	leal	-1024(%rax), %ebx
	andl	$6144, %ebx                     ## imm = 0x1800
	shlq	$2, %rbx
	addq	(%rsi), %rbx
	movq	(%rdi), %rdx
	movq	%rbx, (%rdx,%rcx,8)
	movl	%eax, %edx
	andl	$7168, %edx                     ## imm = 0x1C00
	shlq	$2, %rdx
	addq	(%rsi), %rdx
	movq	(%rdi), %rbx
	movq	%rdx, 8(%rbx,%rcx,8)
	addq	$2, %rcx
	addq	$2048, %rax                     ## imm = 0x800
	cmpq	$64, %rcx
	jne	LBB0_8
## %bb.9:
	movq	_z80_memory_w@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_z80_writemem@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_z80_memory_r@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_z80_readmem@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_z80_unused_port_w@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_z80_writeport@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_z80_unused_port_r@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_z80_readport@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
LBB0_10:
	movq	_SYSTEM_MCD@GOTPCREL(%rip), %rax
	cmpl	(%rax), %r10d
	jne	LBB0_11
## %bb.21:
	xorl	%eax, %eax
	callq	_s68k_init
	xorl	%eax, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_scd_init                       ## TAILCALL
LBB0_11:
	xorl	%eax, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_md_cart_init                   ## TAILCALL
LBB0_15:
	xorl	%eax, %eax
	callq	_sms_cart_init
	movq	_z80_gg_port_w@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_z80_writeport@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_z80_gg_port_r@GOTPCREL(%rip), %rax
	jmp	LBB0_19
LBB0_18:
	movq	_z80_sg_port_w@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_z80_writeport@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_z80_sg_port_r@GOTPCREL(%rip), %rax
	jmp	LBB0_19
LBB0_14:
	movq	_z80_md_port_w@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_z80_writeport@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_z80_md_port_r@GOTPCREL(%rip), %rax
	jmp	LBB0_19
LBB0_17:
	movq	_z80_m3_port_w@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_z80_writeport@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_z80_m3_port_r@GOTPCREL(%rip), %rax
LBB0_19:
	movl	(%rax), %eax
	movq	_z80_readport@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
LBB0_20:
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_16, LBB0_16-LJTI0_0
.set L0_0_set_18, LBB0_18-LJTI0_0
.set L0_0_set_14, LBB0_14-LJTI0_0
.set L0_0_set_17, LBB0_17-LJTI0_0
.set L0_0_set_15, LBB0_15-LJTI0_0
LJTI0_0:
	.long	L0_0_set_16
	.long	L0_0_set_16
	.long	L0_0_set_18
	.long	L0_0_set_14
	.long	L0_0_set_17
	.long	L0_0_set_15
	.long	L0_0_set_15
	.end_data_region
                                        ## -- End function
	.comm	_z80_irq_callback,4,2           ## @z80_irq_callback
	.comm	_system_hw,4,2                  ## @system_hw
	.comm	_SYSTEM_MD,4,2                  ## @SYSTEM_MD
	.comm	_config,4,2                     ## @config
	.comm	_m68k,16,3                      ## @m68k
	.comm	_work_ram,8,3                   ## @work_ram
	.comm	_m68k_lockup_r_8,8,3            ## @m68k_lockup_r_8
	.comm	_m68k_lockup_r_16,8,3           ## @m68k_lockup_r_16
	.comm	_m68k_lockup_w_8,8,3            ## @m68k_lockup_w_8
	.comm	_m68k_lockup_w_16,8,3           ## @m68k_lockup_w_16
	.comm	_zbank_lockup_r,4,2             ## @zbank_lockup_r
	.comm	_zbank_memory_map,8,3           ## @zbank_memory_map
	.comm	_zbank_lockup_w,8,3             ## @zbank_lockup_w
	.comm	_vdp_read_byte,8,3              ## @vdp_read_byte
	.comm	_vdp_read_word,8,3              ## @vdp_read_word
	.comm	_vdp_write_byte,8,3             ## @vdp_write_byte
	.comm	_vdp_write_word,8,3             ## @vdp_write_word
	.comm	_zbank_read_vdp,4,2             ## @zbank_read_vdp
	.comm	_zbank_write_vdp,8,3            ## @zbank_write_vdp
	.comm	_zbank_unused_r,4,2             ## @zbank_unused_r
	.comm	_SYSTEM_PICO,4,2                ## @SYSTEM_PICO
	.comm	_pico_read_byte,8,3             ## @pico_read_byte
	.comm	_pico_read_word,8,3             ## @pico_read_word
	.comm	_m68k_unused_8_w,8,3            ## @m68k_unused_8_w
	.comm	_m68k_unused_16_w,8,3           ## @m68k_unused_16_w
	.comm	_m68k_read_bus_8,8,3            ## @m68k_read_bus_8
	.comm	_m68k_read_bus_16,8,3           ## @m68k_read_bus_16
	.comm	_pico_current,8,3               ## @pico_current
	.comm	_ctrl_io_read_byte,8,3          ## @ctrl_io_read_byte
	.comm	_ctrl_io_read_word,8,3          ## @ctrl_io_read_word
	.comm	_ctrl_io_write_byte,8,3         ## @ctrl_io_write_byte
	.comm	_ctrl_io_write_word,8,3         ## @ctrl_io_write_word
	.comm	_zbank_read_ctrl_io,4,2         ## @zbank_read_ctrl_io
	.comm	_zbank_write_ctrl_io,8,3        ## @zbank_write_ctrl_io
	.comm	_zram,8,3                       ## @zram
	.comm	_z80_readmap,8,3                ## @z80_readmap
	.comm	_z80_memory_w,4,2               ## @z80_memory_w
	.comm	_z80_writemem,4,2               ## @z80_writemem
	.comm	_z80_memory_r,4,2               ## @z80_memory_r
	.comm	_z80_readmem,4,2                ## @z80_readmem
	.comm	_z80_unused_port_w,4,2          ## @z80_unused_port_w
	.comm	_z80_writeport,4,2              ## @z80_writeport
	.comm	_z80_unused_port_r,4,2          ## @z80_unused_port_r
	.comm	_z80_readport,4,2               ## @z80_readport
	.comm	_SYSTEM_MCD,4,2                 ## @SYSTEM_MCD
	.comm	_z80_md_port_w,4,2              ## @z80_md_port_w
	.comm	_z80_md_port_r,4,2              ## @z80_md_port_r
	.comm	_z80_gg_port_w,4,2              ## @z80_gg_port_w
	.comm	_z80_gg_port_r,4,2              ## @z80_gg_port_r
	.comm	_z80_ms_port_w,4,2              ## @z80_ms_port_w
	.comm	_z80_ms_port_r,4,2              ## @z80_ms_port_r
	.comm	_z80_m3_port_w,4,2              ## @z80_m3_port_w
	.comm	_z80_m3_port_r,4,2              ## @z80_m3_port_r
	.comm	_z80_sg_port_w,4,2              ## @z80_sg_port_w
	.comm	_z80_sg_port_r,4,2              ## @z80_sg_port_r
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_gen_init                       ; -- Begin function gen_init
	.p2align	2
_gen_init:                              ; @gen_init
	.cfi_startproc
; %bb.0:
	stp	x20, x19, [sp, #-32]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 32
	stp	x29, x30, [sp, #16]             ; 16-byte Folded Spill
	add	x29, sp, #16
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
Lloh0:
	adrp	x8, _z80_irq_callback@GOTPAGE
Lloh1:
	ldr	x8, [x8, _z80_irq_callback@GOTPAGEOFF]
Lloh2:
	ldr	w1, [x8]
	mov	w0, #0
	bl	_z80_init
Lloh3:
	adrp	x19, _system_hw@GOTPAGE
Lloh4:
	ldr	x19, [x19, _system_hw@GOTPAGEOFF]
	ldr	w8, [x19]
	mov	w9, #131
	and	w8, w8, w9
Lloh5:
	adrp	x9, _SYSTEM_MD@GOTPAGE
Lloh6:
	ldr	x9, [x9, _SYSTEM_MD@GOTPAGEOFF]
Lloh7:
	ldr	w9, [x9]
	cmp	w8, w9
	b.ne	LBB0_7
; %bb.1:
	bl	_m68k_init
Lloh8:
	adrp	x8, _config@GOTPAGE
Lloh9:
	ldr	x8, [x8, _config@GOTPAGEOFF]
Lloh10:
	ldr	w8, [x8]
Lloh11:
	adrp	x9, _m68k@GOTPAGE
Lloh12:
	ldr	x9, [x9, _m68k@GOTPAGEOFF]
	str	w8, [x9, #8]
	ldr	x8, [x9]
	mov	w9, #5152
	add	x11, x8, x9
	mov	w12, #2048
Lloh13:
	adrp	x10, _work_ram@GOTPAGE
Lloh14:
	ldr	x10, [x10, _work_ram@GOTPAGEOFF]
Lloh15:
	adrp	x13, _m68k_lockup_r_8@GOTPAGE
Lloh16:
	ldr	x13, [x13, _m68k_lockup_r_8@GOTPAGEOFF]
Lloh17:
	adrp	x14, _m68k_lockup_r_16@GOTPAGE
Lloh18:
	ldr	x14, [x14, _m68k_lockup_r_16@GOTPAGEOFF]
Lloh19:
	adrp	x15, _m68k_lockup_w_8@GOTPAGE
Lloh20:
	ldr	x15, [x15, _m68k_lockup_w_8@GOTPAGEOFF]
Lloh21:
	adrp	x16, _m68k_lockup_w_16@GOTPAGE
Lloh22:
	ldr	x16, [x16, _m68k_lockup_w_16@GOTPAGEOFF]
Lloh23:
	adrp	x17, _zbank_lockup_r@GOTPAGE
Lloh24:
	ldr	x17, [x17, _zbank_lockup_r@GOTPAGEOFF]
Lloh25:
	adrp	x9, _zbank_memory_map@GOTPAGE
Lloh26:
	ldr	x9, [x9, _zbank_memory_map@GOTPAGEOFF]
Lloh27:
	adrp	x0, _zbank_lockup_w@GOTPAGE
Lloh28:
	ldr	x0, [x0, _zbank_lockup_w@GOTPAGEOFF]
LBB0_2:                                 ; =>This Inner Loop Header: Depth=1
	ldr	x1, [x10]
	str	x1, [x11]
	ldr	x1, [x13]
	stur	x1, [x11, #-8]
	ldr	x1, [x14]
	stur	x1, [x11, #-16]
	ldr	x1, [x15]
	stur	x1, [x11, #-24]
	ldr	x1, [x16]
	stur	x1, [x11, #-32]
	ldr	w1, [x17]
	ldr	x2, [x9]
	add	x2, x2, x12
	str	w1, [x2, #8]
	ldr	x1, [x0]
	str	x1, [x2]
	add	x11, x11, #40
	add	x12, x12, #16
	cmp	x12, #3584
	b.ne	LBB0_2
; %bb.3:
Lloh29:
	adrp	x11, _vdp_read_byte@GOTPAGE
Lloh30:
	ldr	x11, [x11, _vdp_read_byte@GOTPAGEOFF]
Lloh31:
	ldr	x11, [x11]
	str	x11, [x8, #7704]
Lloh32:
	adrp	x12, _vdp_read_word@GOTPAGE
Lloh33:
	ldr	x12, [x12, _vdp_read_word@GOTPAGEOFF]
Lloh34:
	ldr	x12, [x12]
	str	x12, [x8, #7696]
Lloh35:
	adrp	x13, _vdp_write_byte@GOTPAGE
Lloh36:
	ldr	x13, [x13, _vdp_write_byte@GOTPAGEOFF]
Lloh37:
	ldr	x13, [x13]
Lloh38:
	adrp	x14, _vdp_write_word@GOTPAGE
Lloh39:
	ldr	x14, [x14, _vdp_write_word@GOTPAGEOFF]
	str	x13, [x8, #7688]
Lloh40:
	ldr	x14, [x14]
	str	x14, [x8, #7680]
Lloh41:
	adrp	x15, _zbank_read_vdp@GOTPAGE
Lloh42:
	ldr	x15, [x15, _zbank_read_vdp@GOTPAGEOFF]
Lloh43:
	ldr	w15, [x15]
	ldr	x16, [x9]
	str	w15, [x16, #3080]
Lloh44:
	adrp	x17, _zbank_write_vdp@GOTPAGE
Lloh45:
	ldr	x17, [x17, _zbank_write_vdp@GOTPAGEOFF]
Lloh46:
	ldr	x17, [x17]
	str	x17, [x16, #3072]
	str	x11, [x8, #8024]
	str	x12, [x8, #8016]
	str	x13, [x8, #8008]
	str	x14, [x8, #8000]
	str	w15, [x16, #3208]
	str	x17, [x16, #3200]
	str	x11, [x8, #8344]
	str	x12, [x8, #8336]
	str	x13, [x8, #8328]
	str	x14, [x8, #8320]
	str	w15, [x16, #3336]
	str	x17, [x16, #3328]
	str	x11, [x8, #8664]
	str	x12, [x8, #8656]
	str	x13, [x8, #8648]
	str	x14, [x8, #8640]
	str	w15, [x16, #3464]
	mov	w11, #8992
	str	x17, [x16, #3456]
	add	x11, x8, x11
	mov	w12, #3584
	movi.2d	v0, #0000000000000000
Lloh47:
	adrp	x13, _zbank_unused_r@GOTPAGE
Lloh48:
	ldr	x13, [x13, _zbank_unused_r@GOTPAGEOFF]
LBB0_4:                                 ; =>This Inner Loop Header: Depth=1
	ldr	x14, [x10]
	str	x14, [x11]
	stp	q0, q0, [x11, #-32]
	ldr	w14, [x13]
	ldr	x15, [x9]
	add	x15, x15, x12
	str	w14, [x15, #8]
	str	xzr, [x15]
	add	x11, x11, #40
	add	x12, x12, #16
	cmp	x12, #1, lsl #12                ; =4096
	b.ne	LBB0_4
; %bb.5:
	ldr	w10, [x19]
Lloh49:
	adrp	x11, _SYSTEM_PICO@GOTPAGE
Lloh50:
	ldr	x11, [x11, _SYSTEM_PICO@GOTPAGEOFF]
Lloh51:
	ldr	w11, [x11]
	cmp	w10, w11
	b.ne	LBB0_10
; %bb.6:
Lloh52:
	adrp	x9, _pico_read_byte@GOTPAGE
Lloh53:
	ldr	x9, [x9, _pico_read_byte@GOTPAGEOFF]
Lloh54:
	ldr	x9, [x9]
Lloh55:
	adrp	x11, _pico_read_word@GOTPAGE
Lloh56:
	ldr	x11, [x11, _pico_read_word@GOTPAGEOFF]
	str	x9, [x8, #5144]
Lloh57:
	ldr	x9, [x11]
	str	x9, [x8, #5136]
Lloh58:
	adrp	x9, _m68k_unused_8_w@GOTPAGE
Lloh59:
	ldr	x9, [x9, _m68k_unused_8_w@GOTPAGEOFF]
Lloh60:
	ldr	x9, [x9]
	str	x9, [x8, #5128]
Lloh61:
	adrp	x11, _m68k_unused_16_w@GOTPAGE
Lloh62:
	ldr	x11, [x11, _m68k_unused_16_w@GOTPAGEOFF]
Lloh63:
	ldr	x11, [x11]
Lloh64:
	adrp	x12, _m68k_read_bus_8@GOTPAGE
Lloh65:
	ldr	x12, [x12, _m68k_read_bus_8@GOTPAGEOFF]
	str	x11, [x8, #5120]
Lloh66:
	ldr	x12, [x12]
	str	x12, [x8, #6464]
Lloh67:
	adrp	x12, _m68k_read_bus_16@GOTPAGE
Lloh68:
	ldr	x12, [x12, _m68k_read_bus_16@GOTPAGEOFF]
Lloh69:
	ldr	x12, [x12]
	str	x12, [x8, #6456]
	str	x9, [x8, #6448]
	str	x11, [x8, #6440]
Lloh70:
	adrp	x8, _pico_current@GOTPAGE
Lloh71:
	ldr	x8, [x8, _pico_current@GOTPAGEOFF]
Lloh72:
	str	xzr, [x8]
	b	LBB0_13
LBB0_7:
	bl	_sms_cart_init
	ldr	w8, [x19]
	sub	w8, w8, #128
	cmp	w8, #6
	b.hi	LBB0_21
; %bb.8:
Lloh73:
	adrp	x9, lJTI0_0@PAGE
Lloh74:
	add	x9, x9, lJTI0_0@PAGEOFF
	adr	x10, LBB0_9
	ldrb	w11, [x9, x8]
	add	x10, x10, x11, lsl #2
	br	x10
LBB0_9:
Lloh75:
	adrp	x8, _z80_ms_port_w@GOTPAGE
Lloh76:
	ldr	x8, [x8, _z80_ms_port_w@GOTPAGEOFF]
Lloh77:
	ldr	w8, [x8]
Lloh78:
	adrp	x9, _z80_writeport@GOTPAGE
Lloh79:
	ldr	x9, [x9, _z80_writeport@GOTPAGEOFF]
Lloh80:
	str	w8, [x9]
Lloh81:
	adrp	x8, _z80_ms_port_r@GOTPAGE
Lloh82:
	ldr	x8, [x8, _z80_ms_port_r@GOTPAGEOFF]
	b	LBB0_20
LBB0_10:
	mov	x11, #0
	mov	x12, #0
Lloh83:
	adrp	x13, _ctrl_io_read_byte@GOTPAGE
Lloh84:
	ldr	x13, [x13, _ctrl_io_read_byte@GOTPAGEOFF]
Lloh85:
	ldr	x13, [x13]
Lloh86:
	adrp	x14, _ctrl_io_read_word@GOTPAGE
Lloh87:
	ldr	x14, [x14, _ctrl_io_read_word@GOTPAGEOFF]
	str	x13, [x8, #6464]
Lloh88:
	ldr	x13, [x14]
	str	x13, [x8, #6456]
Lloh89:
	adrp	x13, _ctrl_io_write_byte@GOTPAGE
Lloh90:
	ldr	x13, [x13, _ctrl_io_write_byte@GOTPAGEOFF]
Lloh91:
	ldr	x13, [x13]
	str	x13, [x8, #6448]
Lloh92:
	adrp	x13, _ctrl_io_write_word@GOTPAGE
Lloh93:
	ldr	x13, [x13, _ctrl_io_write_word@GOTPAGEOFF]
Lloh94:
	ldr	x13, [x13]
Lloh95:
	adrp	x14, _zbank_read_ctrl_io@GOTPAGE
Lloh96:
	ldr	x14, [x14, _zbank_read_ctrl_io@GOTPAGEOFF]
	str	x13, [x8, #6440]
Lloh97:
	ldr	w8, [x14]
	ldr	x9, [x9]
	str	w8, [x9, #2584]
Lloh98:
	adrp	x8, _zbank_write_ctrl_io@GOTPAGE
Lloh99:
	ldr	x8, [x8, _zbank_write_ctrl_io@GOTPAGEOFF]
Lloh100:
	ldr	x8, [x8]
	str	x8, [x9, #2576]
Lloh101:
	adrp	x8, _zram@GOTPAGE
Lloh102:
	ldr	x8, [x8, _zram@GOTPAGEOFF]
Lloh103:
	adrp	x9, _z80_readmap@GOTPAGE
Lloh104:
	ldr	x9, [x9, _z80_readmap@GOTPAGEOFF]
LBB0_11:                                ; =>This Inner Loop Header: Depth=1
	ldr	x13, [x8]
	and	x14, x12, #0x1c00
	add	x13, x13, x14, lsl #2
	ldr	x14, [x9]
	str	x13, [x14, x11]
	add	x12, x12, #1024
	add	x11, x11, #8
	cmp	x11, #512
	b.ne	LBB0_11
; %bb.12:
Lloh105:
	adrp	x8, _z80_memory_w@GOTPAGE
Lloh106:
	ldr	x8, [x8, _z80_memory_w@GOTPAGEOFF]
Lloh107:
	ldr	w8, [x8]
Lloh108:
	adrp	x9, _z80_writemem@GOTPAGE
Lloh109:
	ldr	x9, [x9, _z80_writemem@GOTPAGEOFF]
Lloh110:
	str	w8, [x9]
Lloh111:
	adrp	x8, _z80_memory_r@GOTPAGE
Lloh112:
	ldr	x8, [x8, _z80_memory_r@GOTPAGEOFF]
Lloh113:
	ldr	w8, [x8]
Lloh114:
	adrp	x9, _z80_readmem@GOTPAGE
Lloh115:
	ldr	x9, [x9, _z80_readmem@GOTPAGEOFF]
Lloh116:
	str	w8, [x9]
Lloh117:
	adrp	x8, _z80_unused_port_w@GOTPAGE
Lloh118:
	ldr	x8, [x8, _z80_unused_port_w@GOTPAGEOFF]
Lloh119:
	ldr	w8, [x8]
Lloh120:
	adrp	x9, _z80_writeport@GOTPAGE
Lloh121:
	ldr	x9, [x9, _z80_writeport@GOTPAGEOFF]
Lloh122:
	str	w8, [x9]
Lloh123:
	adrp	x8, _z80_unused_port_r@GOTPAGE
Lloh124:
	ldr	x8, [x8, _z80_unused_port_r@GOTPAGEOFF]
Lloh125:
	ldr	w8, [x8]
Lloh126:
	adrp	x9, _z80_readport@GOTPAGE
Lloh127:
	ldr	x9, [x9, _z80_readport@GOTPAGEOFF]
Lloh128:
	str	w8, [x9]
LBB0_13:
Lloh129:
	adrp	x8, _SYSTEM_MCD@GOTPAGE
Lloh130:
	ldr	x8, [x8, _SYSTEM_MCD@GOTPAGEOFF]
Lloh131:
	ldr	w8, [x8]
	cmp	w10, w8
	b.ne	LBB0_15
; %bb.14:
	bl	_s68k_init
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	b	_scd_init
LBB0_15:
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	b	_md_cart_init
LBB0_16:
	bl	_sms_cart_init
Lloh132:
	adrp	x8, _z80_gg_port_w@GOTPAGE
Lloh133:
	ldr	x8, [x8, _z80_gg_port_w@GOTPAGEOFF]
Lloh134:
	ldr	w8, [x8]
Lloh135:
	adrp	x9, _z80_writeport@GOTPAGE
Lloh136:
	ldr	x9, [x9, _z80_writeport@GOTPAGEOFF]
Lloh137:
	str	w8, [x9]
Lloh138:
	adrp	x8, _z80_gg_port_r@GOTPAGE
Lloh139:
	ldr	x8, [x8, _z80_gg_port_r@GOTPAGEOFF]
	b	LBB0_20
LBB0_17:
Lloh140:
	adrp	x8, _z80_sg_port_w@GOTPAGE
Lloh141:
	ldr	x8, [x8, _z80_sg_port_w@GOTPAGEOFF]
Lloh142:
	ldr	w8, [x8]
Lloh143:
	adrp	x9, _z80_writeport@GOTPAGE
Lloh144:
	ldr	x9, [x9, _z80_writeport@GOTPAGEOFF]
Lloh145:
	str	w8, [x9]
Lloh146:
	adrp	x8, _z80_sg_port_r@GOTPAGE
Lloh147:
	ldr	x8, [x8, _z80_sg_port_r@GOTPAGEOFF]
	b	LBB0_20
LBB0_18:
Lloh148:
	adrp	x8, _z80_md_port_w@GOTPAGE
Lloh149:
	ldr	x8, [x8, _z80_md_port_w@GOTPAGEOFF]
Lloh150:
	ldr	w8, [x8]
Lloh151:
	adrp	x9, _z80_writeport@GOTPAGE
Lloh152:
	ldr	x9, [x9, _z80_writeport@GOTPAGEOFF]
Lloh153:
	str	w8, [x9]
Lloh154:
	adrp	x8, _z80_md_port_r@GOTPAGE
Lloh155:
	ldr	x8, [x8, _z80_md_port_r@GOTPAGEOFF]
	b	LBB0_20
LBB0_19:
Lloh156:
	adrp	x8, _z80_m3_port_w@GOTPAGE
Lloh157:
	ldr	x8, [x8, _z80_m3_port_w@GOTPAGEOFF]
Lloh158:
	ldr	w8, [x8]
Lloh159:
	adrp	x9, _z80_writeport@GOTPAGE
Lloh160:
	ldr	x9, [x9, _z80_writeport@GOTPAGEOFF]
Lloh161:
	str	w8, [x9]
Lloh162:
	adrp	x8, _z80_m3_port_r@GOTPAGE
Lloh163:
	ldr	x8, [x8, _z80_m3_port_r@GOTPAGEOFF]
LBB0_20:
	ldr	w8, [x8]
Lloh164:
	adrp	x9, _z80_readport@GOTPAGE
Lloh165:
	ldr	x9, [x9, _z80_readport@GOTPAGEOFF]
Lloh166:
	str	w8, [x9]
LBB0_21:
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh27, Lloh28
	.loh AdrpLdrGot	Lloh25, Lloh26
	.loh AdrpLdrGot	Lloh23, Lloh24
	.loh AdrpLdrGot	Lloh21, Lloh22
	.loh AdrpLdrGot	Lloh19, Lloh20
	.loh AdrpLdrGot	Lloh17, Lloh18
	.loh AdrpLdrGot	Lloh15, Lloh16
	.loh AdrpLdrGot	Lloh13, Lloh14
	.loh AdrpLdrGot	Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGot	Lloh47, Lloh48
	.loh AdrpLdrGotLdr	Lloh44, Lloh45, Lloh46
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh43
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh49, Lloh50, Lloh51
	.loh AdrpLdrGotStr	Lloh70, Lloh71, Lloh72
	.loh AdrpLdrGotLdr	Lloh67, Lloh68, Lloh69
	.loh AdrpLdrGotLdr	Lloh64, Lloh65, Lloh66
	.loh AdrpLdrGotLdr	Lloh61, Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh58, Lloh59, Lloh60
	.loh AdrpLdrGotLdr	Lloh55, Lloh56, Lloh57
	.loh AdrpLdrGotLdr	Lloh52, Lloh53, Lloh54
	.loh AdrpAdd	Lloh73, Lloh74
	.loh AdrpLdrGot	Lloh81, Lloh82
	.loh AdrpLdrGotStr	Lloh78, Lloh79, Lloh80
	.loh AdrpLdrGotLdr	Lloh75, Lloh76, Lloh77
	.loh AdrpLdrGot	Lloh103, Lloh104
	.loh AdrpLdrGot	Lloh101, Lloh102
	.loh AdrpLdrGotLdr	Lloh98, Lloh99, Lloh100
	.loh AdrpLdrGotLdr	Lloh95, Lloh96, Lloh97
	.loh AdrpLdrGotLdr	Lloh92, Lloh93, Lloh94
	.loh AdrpLdrGotLdr	Lloh89, Lloh90, Lloh91
	.loh AdrpLdrGotLdr	Lloh86, Lloh87, Lloh88
	.loh AdrpLdrGotLdr	Lloh83, Lloh84, Lloh85
	.loh AdrpLdrGotStr	Lloh126, Lloh127, Lloh128
	.loh AdrpLdrGotLdr	Lloh123, Lloh124, Lloh125
	.loh AdrpLdrGotStr	Lloh120, Lloh121, Lloh122
	.loh AdrpLdrGotLdr	Lloh117, Lloh118, Lloh119
	.loh AdrpLdrGotStr	Lloh114, Lloh115, Lloh116
	.loh AdrpLdrGotLdr	Lloh111, Lloh112, Lloh113
	.loh AdrpLdrGotStr	Lloh108, Lloh109, Lloh110
	.loh AdrpLdrGotLdr	Lloh105, Lloh106, Lloh107
	.loh AdrpLdrGotLdr	Lloh129, Lloh130, Lloh131
	.loh AdrpLdrGot	Lloh138, Lloh139
	.loh AdrpLdrGotStr	Lloh135, Lloh136, Lloh137
	.loh AdrpLdrGotLdr	Lloh132, Lloh133, Lloh134
	.loh AdrpLdrGot	Lloh146, Lloh147
	.loh AdrpLdrGotStr	Lloh143, Lloh144, Lloh145
	.loh AdrpLdrGotLdr	Lloh140, Lloh141, Lloh142
	.loh AdrpLdrGot	Lloh154, Lloh155
	.loh AdrpLdrGotStr	Lloh151, Lloh152, Lloh153
	.loh AdrpLdrGotLdr	Lloh148, Lloh149, Lloh150
	.loh AdrpLdrGot	Lloh162, Lloh163
	.loh AdrpLdrGotStr	Lloh159, Lloh160, Lloh161
	.loh AdrpLdrGotLdr	Lloh156, Lloh157, Lloh158
	.loh AdrpLdrGotStr	Lloh164, Lloh165, Lloh166
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_9-LBB0_9)>>2
	.byte	(LBB0_9-LBB0_9)>>2
	.byte	(LBB0_17-LBB0_9)>>2
	.byte	(LBB0_18-LBB0_9)>>2
	.byte	(LBB0_19-LBB0_9)>>2
	.byte	(LBB0_16-LBB0_9)>>2
	.byte	(LBB0_16-LBB0_9)>>2
                                        ; -- End function
	.comm	_z80_irq_callback,4,2           ; @z80_irq_callback
	.comm	_system_hw,4,2                  ; @system_hw
	.comm	_SYSTEM_MD,4,2                  ; @SYSTEM_MD
	.comm	_config,4,2                     ; @config
	.comm	_m68k,16,3                      ; @m68k
	.comm	_work_ram,8,3                   ; @work_ram
	.comm	_m68k_lockup_r_8,8,3            ; @m68k_lockup_r_8
	.comm	_m68k_lockup_r_16,8,3           ; @m68k_lockup_r_16
	.comm	_m68k_lockup_w_8,8,3            ; @m68k_lockup_w_8
	.comm	_m68k_lockup_w_16,8,3           ; @m68k_lockup_w_16
	.comm	_zbank_lockup_r,4,2             ; @zbank_lockup_r
	.comm	_zbank_memory_map,8,3           ; @zbank_memory_map
	.comm	_zbank_lockup_w,8,3             ; @zbank_lockup_w
	.comm	_vdp_read_byte,8,3              ; @vdp_read_byte
	.comm	_vdp_read_word,8,3              ; @vdp_read_word
	.comm	_vdp_write_byte,8,3             ; @vdp_write_byte
	.comm	_vdp_write_word,8,3             ; @vdp_write_word
	.comm	_zbank_read_vdp,4,2             ; @zbank_read_vdp
	.comm	_zbank_write_vdp,8,3            ; @zbank_write_vdp
	.comm	_zbank_unused_r,4,2             ; @zbank_unused_r
	.comm	_SYSTEM_PICO,4,2                ; @SYSTEM_PICO
	.comm	_pico_read_byte,8,3             ; @pico_read_byte
	.comm	_pico_read_word,8,3             ; @pico_read_word
	.comm	_m68k_unused_8_w,8,3            ; @m68k_unused_8_w
	.comm	_m68k_unused_16_w,8,3           ; @m68k_unused_16_w
	.comm	_m68k_read_bus_8,8,3            ; @m68k_read_bus_8
	.comm	_m68k_read_bus_16,8,3           ; @m68k_read_bus_16
	.comm	_pico_current,8,3               ; @pico_current
	.comm	_ctrl_io_read_byte,8,3          ; @ctrl_io_read_byte
	.comm	_ctrl_io_read_word,8,3          ; @ctrl_io_read_word
	.comm	_ctrl_io_write_byte,8,3         ; @ctrl_io_write_byte
	.comm	_ctrl_io_write_word,8,3         ; @ctrl_io_write_word
	.comm	_zbank_read_ctrl_io,4,2         ; @zbank_read_ctrl_io
	.comm	_zbank_write_ctrl_io,8,3        ; @zbank_write_ctrl_io
	.comm	_zram,8,3                       ; @zram
	.comm	_z80_readmap,8,3                ; @z80_readmap
	.comm	_z80_memory_w,4,2               ; @z80_memory_w
	.comm	_z80_writemem,4,2               ; @z80_writemem
	.comm	_z80_memory_r,4,2               ; @z80_memory_r
	.comm	_z80_readmem,4,2                ; @z80_readmem
	.comm	_z80_unused_port_w,4,2          ; @z80_unused_port_w
	.comm	_z80_writeport,4,2              ; @z80_writeport
	.comm	_z80_unused_port_r,4,2          ; @z80_unused_port_r
	.comm	_z80_readport,4,2               ; @z80_readport
	.comm	_SYSTEM_MCD,4,2                 ; @SYSTEM_MCD
	.comm	_z80_md_port_w,4,2              ; @z80_md_port_w
	.comm	_z80_md_port_r,4,2              ; @z80_md_port_r
	.comm	_z80_gg_port_w,4,2              ; @z80_gg_port_w
	.comm	_z80_gg_port_r,4,2              ; @z80_gg_port_r
	.comm	_z80_ms_port_w,4,2              ; @z80_ms_port_w
	.comm	_z80_ms_port_r,4,2              ; @z80_ms_port_r
	.comm	_z80_m3_port_w,4,2              ; @z80_m3_port_w
	.comm	_z80_m3_port_r,4,2              ; @z80_m3_port_r
	.comm	_z80_sg_port_w,4,2              ; @z80_sg_port_w
	.comm	_z80_sg_port_r,4,2              ; @z80_sg_port_r
.subsections_via_symbols
