Skip to content

Commit 8a1a710

Browse files
committed
New clones marked not working
----------------------------- Bullion Blox (BWB) (BVM_____.1__) (MPU4 Video) [Trol]
1 parent 3110a47 commit 8a1a710

File tree

4 files changed

+53
-15
lines changed

4 files changed

+53
-15
lines changed

src/mame/astrocorp/astropc.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -365,5 +365,5 @@ GAME( 2005, rasce, 0, astropc, astropc, astropc_state, init_astropc, R
365365

366366

367367
// Artemis II games
368-
GAME( 2009, carnivac, 0, astropc, astropc, astropc_state, init_astropc, ROT0, "Astro", "Carnival (Astro Corp., US.004.D)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
369-
GAME( 2009, santacl, 0, astropc, astropc, astropc_state, init_astropc, ROT0, "Astro", "Santa Claus (IN.001.07.A)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
368+
GAME( 2009, carnivac, 0, astropc, astropc, astropc_state, init_astropc, ROT0, "Astro Corp.", "Carnival (Astro Corp., US.004.D)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
369+
GAME( 2009, santacl, 0, astropc, astropc, astropc_state, init_astropc, ROT0, "Astro Corp.", "Santa Claus (IN.001.07.A)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )

src/mame/barcrest/mpu4vid.cpp

+26-5
Original file line numberDiff line numberDiff line change
@@ -3441,7 +3441,7 @@ ROM_START( v4redhtpunk )
34413441
ROM_REGION( 0x10000, "maincpu", 0 )
34423442
ROM_LOAD( "rhp20ac6", 0x0000, 0x010000, CRC(d6a842b4) SHA1(94f6cc6a9e0efa8a2eeee14f981f9d2407dfb092) )
34433443

3444-
ROM_REGION( 0x800000, "video", 0 ) // none of the ROMs are have are commpatible with this?
3444+
ROM_REGION( 0x800000, "video", 0 ) // none of the ROMs we have are compatible with this?
34453445
ROM_LOAD("video_board_roms", 0x0000, 0x10000, NO_DUMP )
34463446

34473447
ROM_REGION( 0x200000, "okicard:msm6376", ROMREGION_ERASE00 )
@@ -5442,6 +5442,26 @@ ROM_START( v4bulblxc )
54425442
/* none present */
54435443
ROM_END
54445444

5445+
ROM_START( v4bulblxd )
5446+
ROM_REGION( 0x10000, "maincpu", 0 ) // main PCB wasn't present
5447+
ROM_LOAD( "program.bin", 0x00000, 0x010000, NO_DUMP )
5448+
5449+
ROM_REGION( 0x800000, "video", 0 ) // on BARCREST VIDEO MEMORY CARD 681868 18185-2 PCB
5450+
ROM_LOAD16_BYTE( "bvm_____.1_1.ic9", 0x000000, 0x010000, CRC(c3868e84) SHA1(991bad401a2853c3ea95adf9861c565fedc22b3a) ) // 1xxxxxxxxxxxxxxx = 0xFF
5451+
ROM_LOAD16_BYTE( "bvm_____.1_2.ic1", 0x000001, 0x010000, CRC(e97ba9ff) SHA1(40afefb7215ef968613b06e2aeb345b0f8bbc2c1) ) // 1xxxxxxxxxxxxxxx = 0xFF
5452+
ROM_LOAD16_BYTE( "bvm_____.1_3.ic10", 0x020000, 0x010000, CRC(4277e41c) SHA1(f2cab567be22714de42aff14755fda05d353a4fa) )
5453+
ROM_LOAD16_BYTE( "bvm_____.1_4.ic2", 0x020001, 0x010000, CRC(d1d8e1f1) SHA1(e875085257782ba97058e637f15dc1d1b7ff63ba) )
5454+
ROM_LOAD16_BYTE( "bvm_____.1_5.ic11", 0x040000, 0x010000, CRC(5aa44716) SHA1(256972701112bfd446d5f5fcdf741c6240ca6b3b) )
5455+
ROM_LOAD16_BYTE( "bvm_____.1_6.ic3", 0x040001, 0x010000, CRC(ff698218) SHA1(f8dcd49ccdb47a6cf0d4012d22f2adf689d7f5e1) )
5456+
// 10 more empty ROM sockets
5457+
5458+
ROM_REGION( 0x200000, "okicard:msm6376", ROMREGION_ERASE00 )
5459+
// none present
5460+
5461+
ROM_REGION( 0x117, "plds", 0 ) // on BARCREST VIDEO MEMORY CARD 681868 18185-2 PCB
5462+
ROM_LOAD( "bvm__.g.ic18", 0x000, 0x117, NO_DUMP ) // GAL16V8
5463+
ROM_END
5464+
54455465

54465466
ROM_START( v4cshinf )
54475467
ROM_REGION( 0x10000, "maincpu", 0 )
@@ -8805,10 +8825,11 @@ GAME( 1994, v4pzteta, v4pztet, bwbvid, v4pztet, mpu4vid_state, init_b
88058825
GAME( 1994, v4pztetb, v4pztet, bwbvid, v4pztet, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Prize Tetris (BWB) (Showcase) (MPU4 Video)",GAME_FLAGS_OK ) // screen telling you to exchange tickets for prizes in the 'showcase' during attract
88068826
GAME( 1994, v4pztetc, v4pztet, bwbvid, v4pztet, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Prize Tetris (BWB) (Showcase) (Datapak) (MPU4 Video)",GAME_FLAGS_OK )
88078827
// this appears to be a version of Prize Tetris without the Tetris license. These don't have proper alarms, eg coin1 stuck is 'undefined'
8808-
GAME( 1994, v4bulblx, 0, bwbvid, v4bulblx, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Bullion Blox (BWB) (set 1) (MPU4 Video)",GAME_FLAGS )
8809-
GAME( 1994, v4bulblxb, v4bulblx, bwbvid, v4bulblx, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Bullion Blox (BWB) (set 2) (MPU4 Video)",GAME_FLAGS )
8810-
GAME( 1994, v4bulblxa, v4bulblx, bwbvid, v4bulblx, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Bullion Blox (BWB) (Datapak) (set 1) (MPU4 Video)",GAME_FLAGS )
8811-
GAME( 1994, v4bulblxc, v4bulblx, bwbvid, v4bulblx, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Bullion Blox (BWB) (Datapak) (set 2) (MPU4 Video)",GAME_FLAGS )
8828+
GAME( 1994, v4bulblx, 0, bwbvid, v4bulblx, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Bullion Blox (BWB) (BV_50___.2__) (MPU4 Video)",GAME_FLAGS )
8829+
GAME( 1994, v4bulblxb, v4bulblx, bwbvid, v4bulblx, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Bullion Blox (BWB) (BV_1P___.2__) (MPU4 Video)",GAME_FLAGS )
8830+
GAME( 1994, v4bulblxd, v4bulblx, bwbvid, v4bulblx, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Bullion Blox (BWB) (BVM_____.1__) (MPU4 Video)",GAME_FLAGS )
8831+
GAME( 1994, v4bulblxa, v4bulblx, bwbvid, v4bulblx, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Bullion Blox (BWB) (Datapak) (BV_50___.2__) (MPU4 Video)",GAME_FLAGS )
8832+
GAME( 1994, v4bulblxc, v4bulblx, bwbvid, v4bulblx, mpu4vid_state, init_bwbhack, ROT0, "BWB", "Bullion Blox (BWB) (Datapak) (BV_1P___.2__) (MPU4 Video)",GAME_FLAGS )
88128833

88138834
// doesn't have payout so no shelf error (no payout on prototype?), runs with door closed
88148835

src/mame/mame.lst

+1
Original file line numberDiff line numberDiff line change
@@ -8212,6 +8212,7 @@ v4bulblx // Bullion Blox
82128212
v4bulblxa
82138213
v4bulblxb
82148214
v4bulblxc
8215+
v4bulblxd
82158216
v4cmaze // The Crystal Maze (v1.3)
82168217
v4cmaze2 // The New Crystal Maze Featuring Ocean Zone
82178218
v4cmaze2_amld //

src/mame/skeleton/bullion2.cpp

+24-8
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@
3030
3131
DIP1 -> |ON |HOPPER| default ON
3232
DIP2 | |OFF|PULSES|
33-
DIP3 |
33+
DIP3 |
3434
DIP4 | |ON |DEMO SOUND | default ON
3535
DIP5 | /->|OFF|NO DEMO SOUND|
36-
DIP6 --/
36+
DIP6 --/
3737
DIP7 --> |OFF |OFF |ON |ON | default ON
3838
DIP8 --> |OFF |ON |OFF |ON | default ON
3939
|LONGER |LONG |SHORT |SHORTER|
@@ -46,14 +46,16 @@
4646
Plug B = 80% default
4747
Plug C = 82%
4848
Plug D = 84%
49-
49+
5050
Complete manual (for both Bullion 2 and Bullion 3) with schematics and dip switches can be downloaded from:
5151
https://www.recreativas.org/manuales/tragaperras
5252
*/
5353

5454
#include "emu.h"
55+
5556
#include "cpu/z80/z80.h"
5657
#include "sound/sn76496.h"
58+
5759
#include "speaker.h"
5860

5961

@@ -64,7 +66,7 @@ class bullion2_state : public driver_device
6466
public:
6567
bullion2_state(const machine_config &mconfig, device_type type, const char *tag) :
6668
driver_device(mconfig, type, tag),
67-
m_maincpu(*this, "maincpu"),
69+
m_maincpu(*this, "maincpu"),
6870
m_sn(*this, "sn76489")
6971
{ }
7072

@@ -74,8 +76,11 @@ class bullion2_state : public driver_device
7476
virtual void machine_start() override;
7577
virtual void machine_reset() override;
7678

79+
private:
7780
required_device<cpu_device> m_maincpu;
7881
required_device<sn76489_device> m_sn;
82+
83+
void program_map(address_map &map);
7984
};
8085

8186
void bullion2_state::machine_start()
@@ -86,6 +91,15 @@ void bullion2_state::machine_reset()
8691
{
8792
}
8893

94+
void bullion2_state::program_map(address_map &map)
95+
{
96+
map(0x0000, 0x2fff).rom();
97+
map(0x4000, 0x43ff).ram();
98+
// map(0x4804, 0x4804).rw // ??
99+
// map(0x4900, 0x4907).w // latch for lamps and reels control?
100+
// map(0x4b00, 0x4b00).w("sn76489", FUNC(sn76489_device::write)); // SN?
101+
}
102+
89103
static INPUT_PORTS_START( bullion2 )
90104
PORT_START("DSW0")
91105
PORT_DIPUNKNOWN_DIPLOC(0x01, 0x01, "SW0:1")
@@ -102,14 +116,16 @@ void bullion2_state::bullion2(machine_config &config)
102116
{
103117
// CPU PCB Inder "60-977"
104118

105-
Z80( config, m_maincpu, 4_MHz_XTAL ); // NEC D780C
119+
Z80(config, m_maincpu, 4_MHz_XTAL); // NEC D780C
120+
m_maincpu->set_addrmap(AS_PROGRAM, &bullion2_state::program_map);
121+
m_maincpu->set_periodic_int(FUNC(bullion2_state::irq0_line_hold), attotime::from_hz(60*4)); // TODO: proper IRQs
106122

107123
// Sound PCB Inder "60-083"
108124

109-
SPEAKER( config, "mono" ).front_center();
125+
SPEAKER(config, "mono").front_center();
110126

111-
SN76489( config, m_sn, 4_MHz_XTAL );
112-
m_sn->add_route( ALL_OUTPUTS, "mono", 1.0 );
127+
SN76489(config, m_sn, 4_MHz_XTAL);
128+
m_sn->add_route(ALL_OUTPUTS, "mono", 1.0);
113129
}
114130

115131
ROM_START( bullion2 )

0 commit comments

Comments
 (0)