diff blastem.c @ 590:ea80559c67cb

WIP effort to update z80 core for code gen changes
author Michael Pavone <pavone@retrodev.com>
date Sun, 14 Dec 2014 16:45:23 -0800
parents 76bba9ffe351
children 4ff7bbb3943b
line wrap: on
line diff
--- a/blastem.c	Tue Mar 11 09:44:47 2014 -0700
+++ b/blastem.c	Sun Dec 14 16:45:23 2014 -0800
@@ -1072,6 +1072,15 @@
 		}
 	}
 }
+#ifndef NO_Z80
+const memmap_chunk z80_map[] = {
+	{ 0x0000, 0x4000,  0x1FFF, 0, MMAP_READ | MMAP_WRITE | MMAP_CODE,                     z80_ram, NULL, NULL, NULL,              NULL },
+	{ 0x8000, 0x10000, 0xFFFF, 1, MMAP_READ | MMAP_WRITE | MMAP_PTR_IDX | MMAP_FUNC_NULL, NULL,    NULL, NULL, z80_read_bank,     z80_write_bank},
+	{ 0x4000, 0x6000,  0x0003, 0, MMAP_READ | MMAP_WRITE,                                 NULL,    NULL, NULL, z80_read_ym,       z80_write_ym},
+	{ 0x6000, 0x6100,  0xFFFF, 0, MMAP_WRITE | MMAP_CUSTOM,                               NULL,    NULL, NULL, NULL,              (write_8_fun)z80_gen_bank_write},
+	{ 0x7F00, 0x8000,  0x00FF, 0, MMAP_READ | MMAP_WRITE,                                 NULL,    NULL, NULL, z80_vdp_port_read, z80_vdp_port_write}
+};
+#endif
 
 int main(int argc, char ** argv)
 {
@@ -1237,9 +1246,9 @@
 	psg_init(&p_context, render_sample_rate(), gen.master_clock, MCLKS_PER_PSG, render_audio_buffer());
 
 	z80_context z_context;
-	x86_z80_options z_opts;
 #ifndef NO_Z80
-	init_x86_z80_opts(&z_opts);
+	z80_options z_opts;
+	init_x86_z80_opts(&z_opts, z80_map, 5);
 	init_z80_context(&z_context, &z_opts);
 #endif