diff options
Diffstat (limited to 'src/mame/drivers/comebaby.cpp')
-rw-r--r-- | src/mame/drivers/comebaby.cpp | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/src/mame/drivers/comebaby.cpp b/src/mame/drivers/comebaby.cpp index 9c308fb1e67..8ed15b0e88c 100644 --- a/src/mame/drivers/comebaby.cpp +++ b/src/mame/drivers/comebaby.cpp @@ -5,6 +5,8 @@ TODO: Nearly everything. +- [:maincpu] WRMSR: invalid MSR write 00000250 (0404040404040404) at 0002e3b6 + then jumps to 0? There also appears to be a sequel which may be running on the same hardware, but which does not seem to have been released. Come On Baby - Ballympic Heroes! (c) 2001 @@ -182,15 +184,15 @@ Nearly everything. #include "emu.h" #include "cpu/i386/i386.h" +#include "machine/pcshare.h" #include "screen.h" -class comebaby_state : public driver_device +class comebaby_state : public pcat_base_state { public: comebaby_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), - m_maincpu(*this, "maincpu") + : pcat_base_state(mconfig, type, tag) { } uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); @@ -199,7 +201,6 @@ public: protected: // devices - required_device<cpu_device> m_maincpu; // driver_device overrides virtual void video_start() override; @@ -216,7 +217,14 @@ uint32_t comebaby_state::screen_update(screen_device &screen, bitmap_ind16 &bitm } static ADDRESS_MAP_START( comebaby_map, AS_PROGRAM, 32, comebaby_state ) - AM_RANGE(0x00000000, 0x0001ffff) AM_ROM + AM_RANGE(0x00000000, 0x0009ffff) AM_RAM + AM_RANGE(0x000a0000, 0x000bffff) AM_RAM + AM_RANGE(0x000c0000, 0x000fffff) AM_ROM AM_REGION("bios", 0) + AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) +ADDRESS_MAP_END + +static ADDRESS_MAP_START( comebaby_io, AS_IO, 32, comebaby_state ) + AM_IMPORT_FROM(pcat32_io_common) ADDRESS_MAP_END static INPUT_PORTS_START( comebaby ) @@ -225,8 +233,11 @@ INPUT_PORTS_END MACHINE_CONFIG_START(comebaby_state::comebaby) /* basic machine hardware */ - MCFG_CPU_ADD("maincpu", PENTIUM, 2000000000) /* Probably a Pentium .. ?? Mhz*/ + MCFG_CPU_ADD("maincpu", PENTIUM, (66666666*19)/2) /* Actually a Celeron */ MCFG_CPU_PROGRAM_MAP(comebaby_map) + MCFG_CPU_IO_MAP(comebaby_io) + + MCFG_FRAGMENT_ADD( pcat_common ) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) @@ -242,7 +253,7 @@ MACHINE_CONFIG_END ROM_START(comebaby) - ROM_REGION32_LE(0x80000, "maincpu", 0) /* motherboard bios */ + ROM_REGION32_LE(0x80000, "bios", 0) /* motherboard bios */ ROM_LOAD("b1120iag.bin", 0x000000, 0x40000, CRC(9b6f95f1) SHA1(65d6a2fea9911593f093b2e2a43d1534b54d60b3) ) DISK_REGION( "disks" ) |