diff options
Diffstat (limited to 'src/mame/atlus/patapata.cpp')
| -rw-r--r-- | src/mame/atlus/patapata.cpp | 38 |
1 files changed, 28 insertions, 10 deletions
diff --git a/src/mame/atlus/patapata.cpp b/src/mame/atlus/patapata.cpp index ef818a9a073..51aa2b0f5ef 100644 --- a/src/mame/atlus/patapata.cpp +++ b/src/mame/atlus/patapata.cpp @@ -55,6 +55,9 @@ protected: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void main_map(address_map &map) ATTR_COLD; + void nmk112_oki0_map(address_map &map) ATTR_COLD; + void nmk112_oki1_map(address_map &map) ATTR_COLD; + virtual void video_start() override ATTR_COLD; private: @@ -204,6 +207,17 @@ void patapata_state::main_map(address_map &map) map(0x180000, 0x18ffff).ram(); // mainram? } +void patapata_state::nmk112_oki0_map(address_map &map) +{ + map(0x00000, 0x3ffff).m("nmk112", FUNC(nmk112_device::oki0_map)); +} + +void patapata_state::nmk112_oki1_map(address_map &map) +{ + map(0x00000, 0x3ffff).m("nmk112", FUNC(nmk112_device::oki1_map)); +} + + static INPUT_PORTS_START( patapata ) PORT_START("IN0") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) @@ -296,13 +310,17 @@ void patapata_state::patapata(machine_config &config) SPEAKER(config, "mono").front_center(); - OKIM6295(config, "oki1", 16_MHz_XTAL / 4, okim6295_device::PIN7_LOW).add_route(ALL_OUTPUTS, "mono", 0.40); // not verified - - OKIM6295(config, "oki2", 16_MHz_XTAL / 4, okim6295_device::PIN7_LOW).add_route(ALL_OUTPUTS, "mono", 0.40); // not verified - nmk112_device &nmk112(NMK112(config, "nmk112", 0)); // or 212? difficult to read (maybe 212 is 2* 112?) nmk112.set_rom0_tag("oki1"); nmk112.set_rom1_tag("oki2"); + + okim6295_device &oki1(OKIM6295(config, "oki1", 16_MHz_XTAL / 4, okim6295_device::PIN7_LOW)); // not verified + oki1.add_route(ALL_OUTPUTS, "mono", 0.40); + oki1.set_addrmap(0, &patapata_state::nmk112_oki0_map); + + okim6295_device &oki2(OKIM6295(config, "oki2", 16_MHz_XTAL / 4, okim6295_device::PIN7_LOW)); // not verified + oki2.add_route(ALL_OUTPUTS, "mono", 0.40); + oki2.set_addrmap(0, &patapata_state::nmk112_oki1_map); } ROM_START( patapata ) @@ -319,13 +337,13 @@ ROM_START( patapata ) ROM_LOAD16_BYTE( "rw-93085-19.u19", 0x100001, 0x040000, CRC(dfd7bdcf) SHA1(02e46da9a8c938daa180a57f4aca04b2fd655ee0) ) ROM_LOAD16_BYTE( "rw-93085-20.u20", 0x100000, 0x040000, CRC(dd821f74) SHA1(a63e9979db30d130449f689cc6ba8b4c7d25085a) ) - ROM_REGION( 0x100000+0x40000, "oki1", 0 ) /* OKIM6295 samples */ - ROM_LOAD( "rw-93085-5.u22", 0x000000+0x40000, 0x080000, CRC(0c0d2835) SHA1(dc14ebea5f4e0d3f2f8e7bc05e16b8d0f92ce588) ) - ROM_LOAD( "rw-93085-6.u23", 0x080000+0x40000, 0x080000, CRC(882c25d0) SHA1(9cbf21bd5940240440025b4481d96e3db45a676c) ) + ROM_REGION( 0x100000, "oki1", 0 ) /* OKIM6295 samples */ + ROM_LOAD( "rw-93085-5.u22", 0x000000, 0x080000, CRC(0c0d2835) SHA1(dc14ebea5f4e0d3f2f8e7bc05e16b8d0f92ce588) ) + ROM_LOAD( "rw-93085-6.u23", 0x080000, 0x080000, CRC(882c25d0) SHA1(9cbf21bd5940240440025b4481d96e3db45a676c) ) - ROM_REGION( 0x100000+0x40000, "oki2", 0 ) /* OKIM6295 samples */ - ROM_LOAD( "rw-93085-1.u3", 0x000000+0x40000, 0x080000, CRC(d9776d50) SHA1(06e4d2184f687af8380fcb49ce48ce8ec8091050) ) - ROM_LOAD( "rw-93085-2.u4", 0x080000+0x40000, 0x080000, CRC(3698fafa) SHA1(3de54a990478621271285254544f5382d6fd9ca9) ) + ROM_REGION( 0x100000, "oki2", 0 ) /* OKIM6295 samples */ + ROM_LOAD( "rw-93085-1.u3", 0x000000, 0x080000, CRC(d9776d50) SHA1(06e4d2184f687af8380fcb49ce48ce8ec8091050) ) + ROM_LOAD( "rw-93085-2.u4", 0x080000, 0x080000, CRC(3698fafa) SHA1(3de54a990478621271285254544f5382d6fd9ca9) ) ROM_REGION( 0x0200, "proms", 0 ) ROM_LOAD( "n82s131n.u119", 0x000, 0x200, CRC(33f63fc8) SHA1(24c4a1a7c06e546571c77c7dc7bd87c57aa088d7) ) // hotizontal video timing (not used in emulation for now) |
