diff options
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 |
commit | c7b3741479fc505dd7e3c29e842b6fd5c74a1cab (patch) | |
tree | d59c2c2a54ecfca29c21f1455de86ecbd06f189b | |
parent | 2af3233101b109a6ebcb1087d2c47ebce3c4c978 (diff) |
socrates.cpp: made socrates_pal a derived machine config of socrates (nw)
-rw-r--r-- | src/mame/drivers/socrates.cpp | 56 |
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 */ |