summaryrefslogtreecommitdiffstatshomepage
path: root/src/mess/drivers/astrocde.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mess/drivers/astrocde.c')
-rw-r--r--src/mess/drivers/astrocde.c174
1 files changed, 87 insertions, 87 deletions
diff --git a/src/mess/drivers/astrocde.c b/src/mess/drivers/astrocde.c
index 2c9ffaee101..da7009282ef 100644
--- a/src/mess/drivers/astrocde.c
+++ b/src/mess/drivers/astrocde.c
@@ -105,19 +105,19 @@ INPUT_CHANGED_MEMBER(astrocde_mess_state::set_write_protect) // run when RAM ex
get_ram_expansion_settings(ram_expansion_installed, write_protect_on, expansion_ram_start, expansion_ram_end, shadow_ram_end); // passing by reference
- if (ram_expansion_installed == 1)
- {
- if (write_protect_on == 0) // write protect off, so install memory normally
- {
- space.install_ram(expansion_ram_start, expansion_ram_end, expram);
- if (shadow_ram_end > expansion_ram_end)
- space.install_ram(expansion_ram_end + 1, shadow_ram_end, expram);
- }
- else // write protect on, so make memory read only
- {
- space.nop_write(expansion_ram_start, expansion_ram_end);
- }
- }
+ if (ram_expansion_installed == 1)
+ {
+ if (write_protect_on == 0) // write protect off, so install memory normally
+ {
+ space.install_ram(expansion_ram_start, expansion_ram_end, expram);
+ if (shadow_ram_end > expansion_ram_end)
+ space.install_ram(expansion_ram_end + 1, shadow_ram_end, expram);
+ }
+ else // write protect on, so make memory read only
+ {
+ space.nop_write(expansion_ram_start, expansion_ram_end);
+ }
+ }
}
/*************************************
@@ -224,15 +224,15 @@ static INPUT_PORTS_START( astrocde )
PORT_START("P4_KNOB")
PORT_BIT(0xff, 0x00, IPT_PADDLE) PORT_INVERT PORT_SENSITIVITY(85) PORT_KEYDELTA(10) PORT_CENTERDELTA(0) PORT_MINMAX(0,255) PORT_CODE_DEC(KEYCODE_Y) PORT_CODE_INC(KEYCODE_U) PORT_PLAYER(4)
- PORT_START("CFG") /* machine config */
+ PORT_START("CFG") /* machine config */
PORT_DIPNAME( 0x3f, 0x00, "RAM Expansion")
- PORT_DIPSETTING( 0x00, "No RAM Expansion")
- PORT_DIPSETTING( 0x01, "16KB Viper System 1 RAM Expansion")
- PORT_DIPSETTING( 0x02, "32KB Lil' WHITE RAM Expansion")
- PORT_DIPSETTING( 0x04, "R&L 64K RAM Board (44K installed)")
- PORT_DIPSETTING( 0x08, "4KB Blue RAM Expansion")
- PORT_DIPSETTING( 0x10, "16KB Blue RAM Expansion")
- PORT_DIPSETTING( 0x20, "32KB Blue RAM Expansion")
+ PORT_DIPSETTING( 0x00, "No RAM Expansion")
+ PORT_DIPSETTING( 0x01, "16KB Viper System 1 RAM Expansion")
+ PORT_DIPSETTING( 0x02, "32KB Lil' WHITE RAM Expansion")
+ PORT_DIPSETTING( 0x04, "R&L 64K RAM Board (44K installed)")
+ PORT_DIPSETTING( 0x08, "4KB Blue RAM Expansion")
+ PORT_DIPSETTING( 0x10, "16KB Blue RAM Expansion")
+ PORT_DIPSETTING( 0x20, "32KB Blue RAM Expansion")
PORT_START("PROTECT") /* Write protect RAM */
PORT_DIPNAME( 0x01, 0x00, "Write Protect RAM") PORT_CHANGED_MEMBER(DEVICE_SELF, astrocde_mess_state, set_write_protect, 0)
@@ -268,7 +268,7 @@ static MACHINE_CONFIG_START( astrocde, astrocde_mess_state )
MCFG_SOUND_ADD("astrocade1", ASTROCADE, ASTROCADE_CLOCK/4)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
- /* optional expansion ram (installed in MACHINE_RESET)*/
+ /* optional expansion ram (installed in MACHINE_RESET)*/
MCFG_RAM_ADD("ram_tag")
MCFG_RAM_DEFAULT_SIZE("32k")
@@ -319,75 +319,75 @@ DRIVER_INIT_MEMBER(astrocde_state,astrocde)
MACHINE_RESET_MEMBER(astrocde_mess_state, astrocde)
{
- int ram_expansion_installed = 0, write_protect_on = 0, expansion_ram_start = 0, expansion_ram_end = 0, shadow_ram_end = 0;
- address_space &space = machine().device("maincpu")->memory().space(AS_PROGRAM);
- UINT8 *expram = machine().device<ram_device>("ram_tag")->pointer();
- space.unmap_readwrite(0x5000, 0xffff); // unmap any previously installed expansion RAM
-
- get_ram_expansion_settings(ram_expansion_installed, write_protect_on, expansion_ram_start, expansion_ram_end, shadow_ram_end); // passing by reference
-
- if (ram_expansion_installed == 1)
- {
- if (write_protect_on == 0) // write protect off, so install memory normally
- {
- space.install_ram(expansion_ram_start, expansion_ram_end, expram);
- if (shadow_ram_end > expansion_ram_end)
- space.install_ram(expansion_ram_end + 1, shadow_ram_end, expram);
- }
- else // write protect on, so make memory read only
- {
- space.nop_write(expansion_ram_start, expansion_ram_end);
- }
- }
+ int ram_expansion_installed = 0, write_protect_on = 0, expansion_ram_start = 0, expansion_ram_end = 0, shadow_ram_end = 0;
+ address_space &space = machine().device("maincpu")->memory().space(AS_PROGRAM);
+ UINT8 *expram = machine().device<ram_device>("ram_tag")->pointer();
+ space.unmap_readwrite(0x5000, 0xffff); // unmap any previously installed expansion RAM
+
+ get_ram_expansion_settings(ram_expansion_installed, write_protect_on, expansion_ram_start, expansion_ram_end, shadow_ram_end); // passing by reference
+
+ if (ram_expansion_installed == 1)
+ {
+ if (write_protect_on == 0) // write protect off, so install memory normally
+ {
+ space.install_ram(expansion_ram_start, expansion_ram_end, expram);
+ if (shadow_ram_end > expansion_ram_end)
+ space.install_ram(expansion_ram_end + 1, shadow_ram_end, expram);
+ }
+ else // write protect on, so make memory read only
+ {
+ space.nop_write(expansion_ram_start, expansion_ram_end);
+ }
+ }
}
void astrocde_mess_state::get_ram_expansion_settings(int &ram_expansion_installed, int &write_protect_on, int &expansion_ram_start, int &expansion_ram_end, int &shadow_ram_end)
{
- if (machine().root_device().ioport("PROTECT")->read() == 0x01)
- write_protect_on = 1;
- else
- write_protect_on = 0;
-
- ram_expansion_installed = 1;
-
- switch(machine().root_device().ioport("CFG")->read()) // check RAM expansion configuration and set address ranges
- {
- case 0x00: // No RAM Expansion
- ram_expansion_installed = 0;
- break;
- case 0x01: // 16KB Viper System 1 RAM Expansion
- expansion_ram_start = 0x6000;
- expansion_ram_end = 0x9fff;
- shadow_ram_end = 0;
- break;
- case 0x02: // "32KB Lil' WHITE RAM Expansion
- expansion_ram_start = 0x5000;
- expansion_ram_end = 0xcfff;
- shadow_ram_end = 0xffff;
- break;
- case 0x04: // R&L 64K RAM Board (44KB installed)
- expansion_ram_start = 0x5000;
- expansion_ram_end = 0xffff;
- shadow_ram_end = 0;
- break;
- case 0x08: // 4KB Blue RAM Expansion
- expansion_ram_start = 0x6000;
- expansion_ram_end = 0x6fff;
- shadow_ram_end = 0;
- break;
- case 0x10: // 16KB Blue RAM Expansion
- expansion_ram_start = 0x6000;
- expansion_ram_end = 0x9fff;
- shadow_ram_end = 0;
- break;
- case 0x20: // 32KB Blue RAM Expansion
- expansion_ram_start = 0x6000;
- expansion_ram_end = 0xdfff;
- shadow_ram_end = 0;
- break;
- default:
- break;
- }
+ if (machine().root_device().ioport("PROTECT")->read() == 0x01)
+ write_protect_on = 1;
+ else
+ write_protect_on = 0;
+
+ ram_expansion_installed = 1;
+
+ switch(machine().root_device().ioport("CFG")->read()) // check RAM expansion configuration and set address ranges
+ {
+ case 0x00: // No RAM Expansion
+ ram_expansion_installed = 0;
+ break;
+ case 0x01: // 16KB Viper System 1 RAM Expansion
+ expansion_ram_start = 0x6000;
+ expansion_ram_end = 0x9fff;
+ shadow_ram_end = 0;
+ break;
+ case 0x02: // "32KB Lil' WHITE RAM Expansion
+ expansion_ram_start = 0x5000;
+ expansion_ram_end = 0xcfff;
+ shadow_ram_end = 0xffff;
+ break;
+ case 0x04: // R&L 64K RAM Board (44KB installed)
+ expansion_ram_start = 0x5000;
+ expansion_ram_end = 0xffff;
+ shadow_ram_end = 0;
+ break;
+ case 0x08: // 4KB Blue RAM Expansion
+ expansion_ram_start = 0x6000;
+ expansion_ram_end = 0x6fff;
+ shadow_ram_end = 0;
+ break;
+ case 0x10: // 16KB Blue RAM Expansion
+ expansion_ram_start = 0x6000;
+ expansion_ram_end = 0x9fff;
+ shadow_ram_end = 0;
+ break;
+ case 0x20: // 32KB Blue RAM Expansion
+ expansion_ram_start = 0x6000;
+ expansion_ram_end = 0xdfff;
+ shadow_ram_end = 0;
+ break;
+ default:
+ break;
+ }
}