summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Lord-Nightmare <Lord-Nightmare@users.noreply.github.com>2017-06-23 20:01:20 -0400
committer Lord-Nightmare <Lord-Nightmare@users.noreply.github.com>2017-06-23 20:01:20 -0400
commitc7b3741479fc505dd7e3c29e842b6fd5c74a1cab (patch)
treed59c2c2a54ecfca29c21f1455de86ecbd06f189b
parent2af3233101b109a6ebcb1087d2c47ebce3c4c978 (diff)
socrates.cpp: made socrates_pal a derived machine config of socrates (nw)
-rw-r--r--src/mame/drivers/socrates.cpp56
1 files changed, 5 insertions, 51 deletions
diff --git a/src/mame/drivers/socrates.cpp b/src/mame/drivers/socrates.cpp
index bff0533caf3..c80f2708d11 100644
--- a/src/mame/drivers/socrates.cpp
+++ b/src/mame/drivers/socrates.cpp
@@ -1373,70 +1373,24 @@ static MACHINE_CONFIG_START( socrates )
MCFG_SOFTWARE_LIST_ADD("cart_list", "socrates")
MACHINE_CONFIG_END
-static MACHINE_CONFIG_START( socrates_pal )
- /* basic machine hardware */
- MCFG_CPU_ADD("maincpu", Z80, XTAL_26_601712MHz/6) /* Toshiba TMPZ84C00AP @ 4.433 MHz? /6 or 7 or 8? TODO: verify divider!*/
+static MACHINE_CONFIG_DERIVED( socrates_pal, socrates )
+ MCFG_CPU_REPLACE("maincpu", Z80, XTAL_26_601712MHz/8)
MCFG_CPU_PROGRAM_MAP(z80_mem)
MCFG_CPU_IO_MAP(z80_io)
MCFG_QUANTUM_TIME(attotime::from_hz(50))
MCFG_CPU_VBLANK_INT_DRIVER("screen", socrates_state, assert_irq)
- //MCFG_MACHINE_START_OVERRIDE(socrates_state,socrates)
-
- MCFG_DEVICE_ADD("rombank1", ADDRESS_MAP_BANK, 0)
- MCFG_DEVICE_PROGRAM_MAP(socrates_rombank_map)
- MCFG_ADDRESS_MAP_BANK_ENDIANNESS(ENDIANNESS_LITTLE)
- MCFG_ADDRESS_MAP_BANK_DATABUS_WIDTH(8)
- MCFG_ADDRESS_MAP_BANK_STRIDE(0x4000)
-
- MCFG_DEVICE_ADD("rambank1", ADDRESS_MAP_BANK, 0)
- MCFG_DEVICE_PROGRAM_MAP(socrates_rambank_map)
- MCFG_ADDRESS_MAP_BANK_ENDIANNESS(ENDIANNESS_LITTLE)
- MCFG_ADDRESS_MAP_BANK_DATABUS_WIDTH(8)
- MCFG_ADDRESS_MAP_BANK_STRIDE(0x4000)
- MCFG_DEVICE_ADD("rambank2", ADDRESS_MAP_BANK, 0)
- MCFG_DEVICE_PROGRAM_MAP(socrates_rambank_map)
- MCFG_ADDRESS_MAP_BANK_ENDIANNESS(ENDIANNESS_LITTLE)
- MCFG_ADDRESS_MAP_BANK_DATABUS_WIDTH(8)
- MCFG_ADDRESS_MAP_BANK_STRIDE(0x4000)
-
- /* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_MODIFY("screen")
MCFG_SCREEN_REFRESH_RATE(50)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // not accurate
MCFG_SCREEN_SIZE(264, 238) // technically the screen size is 256x228 but super painter abuses what I suspect is a hardware bug to display repeated pixels of the very last pixel beyond this horizontal space, well into hblank
MCFG_SCREEN_VISIBLE_AREA(0, 263, 0, 229) // the last few rows are usually cut off by the screen bottom but are indeed displayed if you mess with v-hold
MCFG_SCREEN_UPDATE_DRIVER(socrates_state, screen_update_socrates)
- MCFG_SCREEN_PALETTE("palette")
- MCFG_PALETTE_ADD("palette", 256)
- MCFG_PALETTE_INIT_OWNER(socrates_state, socrates)
-
- /* sound hardware */
- MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("soc_snd", SOCRATES_SOUND, XTAL_26_601712MHz/(512+256)) // TODO: verify divider for pal mode
+ MCFG_SOUND_REPLACE("soc_snd", SOCRATES_SOUND, XTAL_26_601712MHz/(512+256)) // this is correct, as strange as it sounds.
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-
- MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "socrates_cart")
-
- /* Software lists */
- MCFG_SOFTWARE_LIST_ADD("cart_list", "socrates")
MACHINE_CONFIG_END
-/* This doesn't work for some reason.
-static MACHINE_CONFIG_DERIVED( socrates_pal, socrates )
- MCFG_CPU_REPLACE("maincpu", Z80, XTAL_26_601712MHz/8)
- MCFG_SCREEN_REPLACE("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(50)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
- MCFG_SCREEN_SIZE(264, 256) // technically the screen size is 256x228 but super painter abuses what I suspect is a hardware bug to display repeated pixels of the very last pixel beyond this horizontal space, well into hblank
- MCFG_SCREEN_VISIBLE_AREA(0, 263, 0, 256) // the last few rows are usually cut off by the screen bottom but are indeed displayed if you mess with v-hold
- MCFG_SCREEN_UPDATE_DRIVER(socrates_state, screen_update_socrates)
- MCFG_SOUND_REPLACE("soc_snd", SOCRATES_SOUND, XTAL_26_601712MHz/(512+256)) // this is correct, as strange as it sounds.
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_CONFIG_END
-*/
-
static MACHINE_CONFIG_START( iqunlimz )
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, XTAL_4MHz) /* not accurate */