comparison z80_to_x86.c @ 1116:fe8c79f82c22

More cleanup in preparation for SMS/Mark III support
author Michael Pavone <pavone@retrodev.com>
date Thu, 22 Dec 2016 10:51:33 -0800
parents d1eed3b1121c
children 928a65750345
comparison
equal deleted inserted replaced
1115:c1e78a101912 1116:fe8c79f82c22
3118 dprintf("defferred address: %X\n", address); 3118 dprintf("defferred address: %X\n", address);
3119 } 3119 }
3120 } while (opts->gen.deferred); 3120 } while (opts->gen.deferred);
3121 } 3121 }
3122 3122
3123 void init_z80_opts(z80_options * options, memmap_chunk const * chunks, uint32_t num_chunks, memmap_chunk const * io_chunks, uint32_t num_io_chunks, uint32_t clock_divider) 3123 void init_z80_opts(z80_options * options, memmap_chunk const * chunks, uint32_t num_chunks, memmap_chunk const * io_chunks, uint32_t num_io_chunks, uint32_t clock_divider, uint32_t io_address_mask)
3124 { 3124 {
3125 memset(options, 0, sizeof(*options)); 3125 memset(options, 0, sizeof(*options));
3126 3126
3127 options->gen.memmap = chunks; 3127 options->gen.memmap = chunks;
3128 options->gen.memmap_chunks = num_chunks; 3128 options->gen.memmap_chunks = num_chunks;
3384 retn(code); 3384 retn(code);
3385 code->stack_off = tmp_stack_off; 3385 code->stack_off = tmp_stack_off;
3386 3386
3387 //HACK 3387 //HACK
3388 options->gen.address_size = SZ_D; 3388 options->gen.address_size = SZ_D;
3389 options->gen.address_mask = 0xFF; 3389 options->gen.address_mask = io_address_mask;
3390 options->read_io = gen_mem_fun(&options->gen, io_chunks, num_io_chunks, READ_8, NULL); 3390 options->read_io = gen_mem_fun(&options->gen, io_chunks, num_io_chunks, READ_8, NULL);
3391 options->write_io = gen_mem_fun(&options->gen, io_chunks, num_io_chunks, WRITE_8, NULL); 3391 options->write_io = gen_mem_fun(&options->gen, io_chunks, num_io_chunks, WRITE_8, NULL);
3392 options->gen.address_size = SZ_W; 3392 options->gen.address_size = SZ_W;
3393 options->gen.address_mask = 0xFFFF; 3393 options->gen.address_mask = 0xFFFF;
3394 3394