diff --git a/Arcade_MiST/Jaleco NaughtyBoy/meta/PopF.mra b/Arcade_MiST/Jaleco NaughtyBoy/meta/PopF.mra
index 6f2ea438..f70b1523 100644
--- a/Arcade_MiST/Jaleco NaughtyBoy/meta/PopF.mra
+++ b/Arcade_MiST/Jaleco NaughtyBoy/meta/PopF.mra
@@ -8,7 +8,7 @@
NBoy
-
+
diff --git a/Arcade_MiST/Konami Tutankham/Useful Information/jun.txt b/Arcade_MiST/Konami Tutankham/Useful Information/jun.txt
new file mode 100644
index 00000000..b0665321
--- /dev/null
+++ b/Arcade_MiST/Konami Tutankham/Useful Information/jun.txt
@@ -0,0 +1,60 @@
+void tutankhm_state::main_map(address_map &map)
+{
+ map(0x0000, 0x7fff).ram().share(m_videoram);
+
+ //0x8100 -> Custom 089 D9 Pin 15
+ map(0x8100, 0x8100).mirror(0x000f).ram().share(m_scroll);
+
+ /* a read here produces a 1-0-1 write to line 420 (084).
+ * This most likely resets some sort of timer implemented by the 084 custom chip
+ * which would on line 419 trigger a reset.
+ */
+ //0x8720 -> Custom 084 F3 Pin 20
+ map(0x8120, 0x8120).mirror(0x000f).r("watchdog", FUNC(watchdog_timer_device::reset_r));
+ //0x8740 -> Custom 089 D9 Pin 11 - Unknown, not used
+ map(0x8160, 0x8160).mirror(0x000f).portr("DSW2"); // DSW2 (inverted bits)
+ map(0x8180, 0x8180).mirror(0x000f).portr("IN0"); // IN0 I/O: Coin slots, service, 1P/2P buttons
+ map(0x81a0, 0x81a0).mirror(0x000f).portr("IN1"); // IN1: Player 1 I/O
+ map(0x81c0, 0x81c0).mirror(0x000f).portr("IN2"); // IN2: Player 2 I/O
+ map(0x81e0, 0x81e0).mirror(0x000f).portr("DSW1"); // DSW1 (inverted bits)
+ map(0x8200, 0x8207).mirror(0x00f8).nopr().w("mainlatch", FUNC(ls259_device::write_d0));
+ map(0x8300, 0x8300).mirror(0x00ff).w(FUNC(tutankhm_state::bankselect_w));
+ map(0x8600, 0x8600).mirror(0x00ff).w(FUNC(tutankhm_state::sound_on_w));
+ map(0x8700, 0x8700).mirror(0x00ff).w(m_timeplt_audio, FUNC(timeplt_audio_device::sound_data_w));
+
+ map(0x8800, 0x8fff).ram();
+ map(0x9000, 0x9fff).bankr(m_mainbank);
+ map(0xa000, 0xffff).rom();
+}
+
+void junofrst_state::main_map(address_map &map)
+{
+
+ map(0x8010, 0x8010).portr("DSW2");
+ map(0x801c, 0x801c).r("watchdog", FUNC(watchdog_timer_device::reset_r));
+ map(0x8020, 0x8020).portr("SYSTEM");
+ map(0x8024, 0x8024).portr("P1");
+ map(0x8028, 0x8028).portr("P2");
+ map(0x802c, 0x802c).portr("DSW1");
+ map(0x8030, 0x8037).w("mainlatch", FUNC(ls259_device::write_d0));
+ map(0x8040, 0x8040).w(FUNC(junofrst_state::sh_irqtrigger_w));
+ map(0x8050, 0x8050).w("soundlatch", FUNC(generic_latch_8_device::write));
+ map(0x8060, 0x8060).w(FUNC(junofrst_state::bankselect_w));
+ map(0x8070, 0x8073).w(FUNC(junofrst_state::blitter_w));
+ map(0x8100, 0x8fff).ram();
+ map(0x9000, 0x9fff).bankr(m_mainbank);
+ map(0xa000, 0xffff).rom();
+}
+
+
+void junofrst_state::audio_map(address_map &map)
+{
+ map(0x0000, 0x0fff).rom();
+ map(0x2000, 0x23ff).ram();
+ map(0x3000, 0x3000).r("soundlatch", FUNC(generic_latch_8_device::read));
+ map(0x4000, 0x4000).w("aysnd", FUNC(ay8910_device::address_w));
+ map(0x4001, 0x4001).r("aysnd", FUNC(ay8910_device::data_r));
+ map(0x4002, 0x4002).w("aysnd", FUNC(ay8910_device::data_w));
+ map(0x5000, 0x5000).w("soundlatch2", FUNC(generic_latch_8_device::write));
+ map(0x6000, 0x6000).w(FUNC(junofrst_state::i8039_irq_w));
+}
\ No newline at end of file
diff --git a/common/mra.exe b/common/mra.exe
index e5d51c67..a9b06cc5 100644
Binary files a/common/mra.exe and b/common/mra.exe differ