From 621ac620ae1ca743a66bb52aaf5478da01c3bac6 Mon Sep 17 00:00:00 2001 From: Aaron Giles Date: Wed, 19 Sep 2012 19:48:09 +0000 Subject: Since nobody checks for NULLs anyway, make device_memory_interface::space() assert against NULL and return a reference, and pushed references throughout all address space usage in the system. Added a has_space() method to check for those rare case when it is ambiguous. [Aaron Giles] Also reinstated the generic space and added fatal error handlers if anyone tries to actually read/write from it. --- src/mess/machine/mtx.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'src/mess/machine/mtx.c') diff --git a/src/mess/machine/mtx.c b/src/mess/machine/mtx.c index 0973f55ad14..6060067535b 100644 --- a/src/mess/machine/mtx.c +++ b/src/mess/machine/mtx.c @@ -74,7 +74,7 @@ static void bankswitch(running_machine &machine, UINT8 data) */ mtx_state *state = machine.driver_data(); - address_space *program = machine.device(Z80_TAG)->memory().space(AS_PROGRAM); + address_space &program = machine.device(Z80_TAG)->memory().space(AS_PROGRAM); ram_device *messram = machine.device(RAM_TAG); // UINT8 cbm_mode = data >> 7 & 0x01; @@ -87,19 +87,19 @@ static void bankswitch(running_machine &machine, UINT8 data) /* set ram bank, for invalid pages a nop-handler will be installed */ if (ram_page >= messram->size()/0x8000) { - program->nop_readwrite(0x4000, 0x7fff); - program->nop_readwrite(0x8000, 0xbfff); + program.nop_readwrite(0x4000, 0x7fff); + program.nop_readwrite(0x8000, 0xbfff); } else if (ram_page + 1 == messram->size()/0x8000) { - program->nop_readwrite(0x4000, 0x7fff); - program->install_readwrite_bank(0x8000, 0xbfff, "bank4"); + program.nop_readwrite(0x4000, 0x7fff); + program.install_readwrite_bank(0x8000, 0xbfff, "bank4"); state->membank("bank4")->set_entry(ram_page); } else { - program->install_readwrite_bank(0x4000, 0x7fff, "bank3"); - program->install_readwrite_bank(0x8000, 0xbfff, "bank4"); + program.install_readwrite_bank(0x4000, 0x7fff, "bank3"); + program.install_readwrite_bank(0x8000, 0xbfff, "bank4"); state->membank("bank3")->set_entry(ram_page); state->membank("bank4")->set_entry(ram_page); } @@ -333,7 +333,7 @@ WRITE8_MEMBER(mtx_state::hrx_attr_w) SNAPSHOT_LOAD( mtx ) { - address_space *program = image.device().machine().device(Z80_TAG)->memory().space(AS_PROGRAM); + address_space &program = image.device().machine().device(Z80_TAG)->memory().space(AS_PROGRAM); UINT8 header[18]; UINT16 addr; @@ -345,9 +345,9 @@ SNAPSHOT_LOAD( mtx ) { /* long header */ addr = pick_integer_le(header, 16, 2); - void *ptr = program->get_write_ptr(addr); + void *ptr = program.get_write_ptr(addr); image.fread( ptr, 599); - ptr = program->get_write_ptr(0xc000); + ptr = program.get_write_ptr(0xc000); image.fread( ptr, snapshot_size - 599 - 18); } else @@ -355,9 +355,9 @@ SNAPSHOT_LOAD( mtx ) /* short header */ addr = pick_integer_le(header, 0, 2); image.fseek(4, SEEK_SET); - void *ptr = program->get_write_ptr(addr); + void *ptr = program.get_write_ptr(addr); image.fread( ptr, 599); - ptr = program->get_write_ptr(0xc000); + ptr = program.get_write_ptr(0xc000); image.fread( ptr, snapshot_size - 599 - 4); } -- cgit v1.2.3-70-g09d2