summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author angelosa <lordkale4@gmail.com>2018-06-07 22:12:32 +0200
committer angelosa <lordkale4@gmail.com>2018-06-07 22:15:03 +0200
commit7d87acb1c1bdf415950ed0f5d9d48f641be7a4a2 (patch)
treef440b0c62d33a0241500e872e567cf349776c6bb
parent3ef6b484b18c5e3d80ea43ae8ba36fc92ab9f849 (diff)
ninjakd2.cpp: attempt fixing bullets not shot by enemies in Omega Fighter [Angelo Salese]
-rw-r--r--src/mame/drivers/ninjakd2.cpp10
-rw-r--r--src/mame/includes/ninjakd2.h1
2 files changed, 10 insertions, 1 deletions
diff --git a/src/mame/drivers/ninjakd2.cpp b/src/mame/drivers/ninjakd2.cpp
index 9e2c5148791..b0bc864bb49 100644
--- a/src/mame/drivers/ninjakd2.cpp
+++ b/src/mame/drivers/ninjakd2.cpp
@@ -364,6 +364,14 @@ WRITE8_MEMBER(ninjakd2_state::ninjakd2_soundreset_w)
// other bits unused
}
+// omega fighter compares port $c1e7 with and $e0
+// returning 0 and no small enemies shoot any bullet.
+// returning 0xff seems enough
+// TODO: find a better reference and verify if there are more gameplay quirks, this might really be anything!
+READ8_MEMBER(ninjakd2_state::unk_r)
+{
+ return 0xff;
+}
/*************************************
@@ -452,7 +460,7 @@ void ninjakd2_state::omegaf_main_cpu(address_map &map)
map(0xc004, 0xc006).w(FUNC(ninjakd2_state::omegaf_io_protection_w));
map(0xc100, 0xc104).w(FUNC(ninjakd2_state::robokid_bg0_ctrl_w));
map(0xc105, 0xc105).w(FUNC(ninjakd2_state::robokid_bg0_bank_w));
- map(0xc1e7, 0xc1e7).nopr(); // see notes
+ map(0xc1e7, 0xc1e7).r(FUNC(ninjakd2_state::unk_r)); // see notes
map(0xc200, 0xc204).w(FUNC(ninjakd2_state::robokid_bg1_ctrl_w));
map(0xc205, 0xc205).w(FUNC(ninjakd2_state::robokid_bg1_bank_w));
map(0xc300, 0xc304).w(FUNC(ninjakd2_state::robokid_bg2_ctrl_w));
diff --git a/src/mame/includes/ninjakd2.h b/src/mame/includes/ninjakd2.h
index 6b25338a637..c6835918d94 100644
--- a/src/mame/includes/ninjakd2.h
+++ b/src/mame/includes/ninjakd2.h
@@ -73,6 +73,7 @@ public:
SAMPLES_START_CB_MEMBER(ninjakd2_init_samples);
DECLARE_READ8_MEMBER(omegaf_io_protection_r);
DECLARE_READ8_MEMBER(robokid_motion_error_verbose_r);
+ DECLARE_READ8_MEMBER(unk_r);
DECLARE_WRITE8_MEMBER(omegaf_io_protection_w);
DECLARE_WRITE8_MEMBER(ninjakd2_bgvideoram_w);
DECLARE_WRITE8_MEMBER(ninjakd2_fgvideoram_w);