summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Dirk Best <mail@dirk-best.de>2019-04-18 10:38:58 +0200
committer Dirk Best <mail@dirk-best.de>2019-04-18 10:40:17 +0200
commit1bd7bce0bc8bd8a382ea602784e2ded3e333a4d5 (patch)
tree00ce554c627b438452182f913d908c2c2d2b7248 /src
parentf3963ef41d56729375b38856b1575aa1eeec400f (diff)
akkaarrh: Document more lamps, cleanup (nw)
Diffstat (limited to 'src')
-rwxr-xr-xsrc/mame/drivers/akkaarrh.cpp57
-rw-r--r--src/mame/layout/akkaarrh.lay51
2 files changed, 75 insertions, 33 deletions
diff --git a/src/mame/drivers/akkaarrh.cpp b/src/mame/drivers/akkaarrh.cpp
index 0dde727fc2e..59ec6164b8e 100755
--- a/src/mame/drivers/akkaarrh.cpp
+++ b/src/mame/drivers/akkaarrh.cpp
@@ -70,7 +70,7 @@ private:
required_shared_ptr<uint8_t> m_palette_ram;
required_device<gfxdecode_device> m_gfxdecode;
required_device<screen_device> m_screen;
- output_finder<16> m_lamps;
+ output_finder<26> m_lamps;
tilemap_t * m_tilemap[4];
uint8_t m_video_mirror;
@@ -195,36 +195,59 @@ WRITE8_MEMBER(akkaarrh_state::irq_ack_w)
WRITE8_MEMBER(akkaarrh_state::output0_w)
{
- m_lamps[0] = !BIT(data, 3); // player 2
- m_lamps[1] = !BIT(data, 2); // player 1
+ // 765----- unknown (always 0?)
+ // ---4---- unknown (1 in attract mode, 0 when playing)
+ // ----3--- player 2 lamp
+ // -----2-- player 1 lamp
+ // ------1- coin counter 2
+ // -------0 coin counter 1
+
+ m_lamps[0] = !BIT(data, 3);
+ m_lamps[1] = !BIT(data, 2);
+
machine().bookkeeping().coin_counter_w(1, BIT(data, 1));
machine().bookkeeping().coin_counter_w(0, BIT(data, 0));
}
WRITE8_MEMBER(akkaarrh_state::output1_w)
{
- m_lamps[2] = BIT(data, 7); // left 0
- m_lamps[3] = BIT(data, 6); // left 1
- m_lamps[4] = BIT(data, 0); // bottom
+ // 7------- lamp 1 left bezel (top)
+ // -6------ lamp 2 left bezel
+ // --543--- unknown (1 in attract mode, 0 when playing)
+ // -----2-- unknown (always 0?)
+ // ------1- shooting lamp? toggles when shooting and not zoomed in
+ // -------0 bottom lamp
+
+ for (int i = 0; i < 8; i++)
+ m_lamps[2 + i] = BIT(data, i);
}
WRITE8_MEMBER(akkaarrh_state::output2_w)
{
- m_lamps[5] = BIT(data, 7); // right 2
- m_lamps[6] = BIT(data, 6); // top 0
- m_lamps[7] = BIT(data, 5); // top 1
- m_lamps[8] = BIT(data, 4); // top 2
- m_lamps[9] = BIT(data, 3); // top 3
- m_lamps[10] = BIT(data, 2); // top 4
- m_lamps[11] = BIT(data, 1); // left 2
- m_lamps[12] = BIT(data, 0); // left 3
+ // 7------- lamp 3 right bezel
+ // -6------ lamp 1 top bezel (left)
+ // --5----- lamp 2 top bezel
+ // ---4---- lamp 3 top bezel (middle)
+ // ----3--- lamp 4 top bezel
+ // -----2-- lamp 5 top bezel (right)
+ // ------1- lamp 3 left bezel
+ // -------0 lamp 4 left bezel (bottom)
+
+ for (int i = 0; i < 8; i++)
+ m_lamps[10 + i] = BIT(data, i);
}
WRITE8_MEMBER(akkaarrh_state::output3_w)
{
- m_lamps[13] = BIT(data, 2); // right 1
- m_lamps[14] = BIT(data, 1); // right 0
- m_lamps[15] = BIT(data, 0); // right 3
+ // 7------- lamp zoomed in
+ // -6------ lamp warning
+ // --543--- unknown (1 in attract mode, 0 when playing)
+ // -----2-- lamp 2 right bezel
+ // ------1- lamp 1 right bezel (top)
+ // -------0 lamp 4 right bezel (bottom)
+
+ for (int i = 0; i < 8; i++)
+ m_lamps[18 + i] = BIT(data, i);
}
diff --git a/src/mame/layout/akkaarrh.lay b/src/mame/layout/akkaarrh.lay
index 3dfaaa34d61..c58f7e25fea 100644
--- a/src/mame/layout/akkaarrh.lay
+++ b/src/mame/layout/akkaarrh.lay
@@ -28,58 +28,77 @@ Test layout to show the lamps for Akka Arrh
<view name="Lamps">
<backdrop element="background">
- <bounds x="0" y="0" width="760" height="570" />
+ <bounds x="0" y="0" width="760" height="630" />
</backdrop>
<screen index="0">
<bounds left="60" top="45" right="700" bottom="525" />
</screen>
- <bezel name="lamp6" element="lamp">
+
+ <!-- top lamps -->
+ <bezel name="lamp16" element="lamp">
<bounds x="40" y="5" width="120" height="25" />
</bezel>
- <bezel name="lamp7" element="lamp">
+ <bezel name="lamp15" element="lamp">
<bounds x="180" y="5" width="120" height="25" />
</bezel>
- <bezel name="lamp8" element="lamp">
+ <bezel name="lamp14" element="lamp">
<bounds x="320" y="5" width="120" height="25" />
</bezel>
- <bezel name="lamp9" element="lamp">
+ <bezel name="lamp13" element="lamp">
<bounds x="460" y="5" width="120" height="25" />
</bezel>
- <bezel name="lamp10" element="lamp">
+ <bezel name="lamp12" element="lamp">
<bounds x="600" y="5" width="120" height="25" />
</bezel>
- <bezel name="lamp2" element="lamp">
+
+ <!-- left lamps -->
+ <bezel name="lamp9" element="lamp">
<bounds x="20" y="100" width="20" height="75" />
</bezel>
- <bezel name="lamp3" element="lamp">
+ <bezel name="lamp8" element="lamp">
<bounds x="20" y="200" width="20" height="75" />
</bezel>
<bezel name="lamp11" element="lamp">
<bounds x="20" y="300" width="20" height="75" />
</bezel>
- <bezel name="lamp12" element="lamp">
+ <bezel name="lamp10" element="lamp">
<bounds x="20" y="400" width="20" height="75" />
</bezel>
- <bezel name="lamp14" element="lamp">
+
+ <!-- right lamps -->
+ <bezel name="lamp19" element="lamp">
<bounds x="720" y="100" width="20" height="75" />
</bezel>
- <bezel name="lamp13" element="lamp">
+ <bezel name="lamp20" element="lamp">
<bounds x="720" y="200" width="20" height="75" />
</bezel>
- <bezel name="lamp5" element="lamp">
+ <bezel name="lamp17" element="lamp">
<bounds x="720" y="300" width="20" height="75" />
</bezel>
- <bezel name="lamp15" element="lamp">
+ <bezel name="lamp18" element="lamp">
<bounds x="720" y="400" width="20" height="75" />
</bezel>
- <bezel name="lamp4" element="lamp">
- <bounds x="320" y="545" width="120" height="25" />
- </bezel>
+
+ <!-- bottom lamps -->
<bezel name="lamp1" element="lamp">
<bounds x="40" y="545" width="120" height="25" />
</bezel>
+ <bezel name="lamp25" element="lamp">
+ <bounds x="180" y="545" width="120" height="25" />
+ </bezel>
+ <bezel name="lamp2" element="lamp">
+ <bounds x="320" y="545" width="120" height="25" />
+ </bezel>
+ <bezel name="lamp24" element="lamp">
+ <bounds x="460" y="545" width="120" height="25" />
+ </bezel>
<bezel name="lamp0" element="lamp">
<bounds x="600" y="545" width="120" height="25" />
</bezel>
+
+ <!-- second row bottom -->
+ <bezel name="lamp3" element="lamp">
+ <bounds x="320" y="590" width="120" height="25" />
+ </bezel>
</view>
</mamelayout>