summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/igs/goldstar.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/igs/goldstar.cpp')
-rw-r--r--src/mame/igs/goldstar.cpp237
1 files changed, 225 insertions, 12 deletions
diff --git a/src/mame/igs/goldstar.cpp b/src/mame/igs/goldstar.cpp
index d139fb24304..ca8c2920d58 100644
--- a/src/mame/igs/goldstar.cpp
+++ b/src/mame/igs/goldstar.cpp
@@ -478,12 +478,12 @@ public:
void init_cmast91() ATTR_COLD;
void init_cmezspina() ATTR_COLD;
void init_cmpacmanb() ATTR_COLD;
+ void init_cmpap() ATTR_COLD;
void init_cmtetrisc() ATTR_COLD;
void init_cmtetrisd() ATTR_COLD;
void init_cmtetriskr() ATTR_COLD;
void init_cmv4() ATTR_COLD;
void init_cmv823() ATTR_COLD;
- void init_cmpap() ATTR_COLD;
void init_crazybonb() ATTR_COLD;
void init_cutya() ATTR_COLD;
void init_eldoraddoa() ATTR_COLD;
@@ -546,14 +546,16 @@ private:
void pkm_reel_reg_w(uint8_t data);
void anhs_reel_reg_w(uint8_t data);
+ uint32_t screen_update_amaztsk(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
uint32_t screen_update_amcoe1a(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
uint32_t screen_update_cmast91(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void cmast91_palette(palette_device &palette) const ATTR_COLD;
void nfm_palette(palette_device &palette) const ATTR_COLD;
+ DECLARE_VIDEO_START(amaztsk);
+ DECLARE_VIDEO_START(animalhs);
DECLARE_VIDEO_START(jkrmast);
DECLARE_VIDEO_START(pkrmast);
- DECLARE_VIDEO_START(animalhs);
void amcoe1_portmap(address_map &map) ATTR_COLD;
void amcoe2_portmap(address_map &map) ATTR_COLD;
@@ -1425,6 +1427,30 @@ VIDEO_START_MEMBER(cmaster_state, jkrmast)
// save_item(NAME(m_reel_bank));
}
+VIDEO_START_MEMBER(cmaster_state, amaztsk)
+{
+ m_reel_tilemap[2] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(cmaster_state::get_reel_tile_info<2>)), TILEMAP_SCAN_ROWS, 8, 32, 64, 8);
+ m_reel_tilemap[1] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(cmaster_state::get_reel_tile_info<1>)), TILEMAP_SCAN_ROWS, 8, 32, 64, 8);
+ m_reel_tilemap[0] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(cmaster_state::get_reel_tile_info<0>)), TILEMAP_SCAN_ROWS, 8, 32, 64, 8);
+
+ m_reel_tilemap[0]->set_scroll_cols(64);
+ m_reel_tilemap[1]->set_scroll_cols(64);
+ m_reel_tilemap[2]->set_scroll_cols(64);
+
+// m_reel_tilemap[0]->set_transparent_pen(15);
+ m_reel_tilemap[1]->set_transparent_pen(15);
+ m_reel_tilemap[2]->set_transparent_pen(15);
+
+ m_cmaster_girl_num = 0;
+ m_cmaster_girl_pal = 0;
+
+ m_fg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(cmaster_state::get_cherrym_fg_tile_info)), TILEMAP_SCAN_ROWS, 8, 8, 64, 32);
+ m_fg_tilemap->set_transparent_pen(0);
+
+// m_enable_reg = 0x0b;
+
+}
+
VIDEO_START_MEMBER(cmaster_state, animalhs)
{
m_reel_tilemap[0] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(cmaster_state::get_reel_tile_info<0>)), TILEMAP_SCAN_ROWS, 8, 32, 64, 8);
@@ -2153,6 +2179,52 @@ uint32_t unkch_state::screen_update_unkchx(screen_device &screen, bitmap_rgb32 &
return 0;
}
+uint32_t cmaster_state::screen_update_amaztsk(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
+{
+ bitmap.fill(rgb_t::black(), cliprect);
+// popmessage("screen update: %02x", m_enable_reg);
+ if (!(m_enable_reg & 0x01))
+ return 0;
+
+
+ if (m_enable_reg == 0x0b)
+ {
+ for (int i = 0; i < 64; i++)
+ {
+ m_reel_tilemap[0]->set_scrolly(i, m_reel_scroll[0][i]);
+ m_reel_tilemap[1]->set_scrolly(i, m_reel_scroll[1][i]);
+ m_reel_tilemap[2]->set_scrolly(i, m_reel_scroll[2][i]);
+ }
+
+ const rectangle visible1(0*8, (14+36)*8-1, 11*8, (11+6)*8-1);
+
+ m_reel_tilemap[0]->draw(screen, bitmap, visible1, 0, 0);
+ m_reel_tilemap[1]->draw(screen, bitmap, cliprect, 0, 0);
+ m_fg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
+ m_reel_tilemap[2]->draw(screen, bitmap, cliprect, 0, 0);
+
+ }
+
+ if (m_enable_reg == 0xbb)
+ {
+ for (int i = 0; i < 64; i++)
+ {
+ m_reel_tilemap[0]->set_scrolly(i, m_reel_scroll[0][i]);
+ m_reel_tilemap[1]->set_scrolly(i, m_reel_scroll[1][i]);
+ m_reel_tilemap[2]->set_scrolly(i, m_reel_scroll[2][i]);
+ }
+
+ m_reel_tilemap[0]->draw(screen, bitmap, cliprect, 0, 0);
+ m_fg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
+
+ }
+
+// if (m_enable_reg & 0x02)
+// m_fg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
+
+ return 0;
+}
+
/****************************************************
Palette Decode Routines
@@ -3153,7 +3225,7 @@ void cmaster_state::anhs_reel_reg_w(uint8_t data)
{
/*
Video Reels Register
- 7 6 5 4 3 2 1 0
+ 7 6 5 4 3 2 1 0
| | | | | | | |
| | | | | +-+-+----- m_bgcolor
| | | | +----------- reel/girl enable -> to update girls or reels
@@ -4280,6 +4352,7 @@ void cmaster_state::nfm_portmap(address_map &map)
map(0x17, 0x17).rw("oki", FUNC(okim6295_device::read), FUNC(okim6295_device::write));
}
+
void wingco_state::lucky8_map(address_map &map)
{
map(0x0000, 0x7fff).rom();
@@ -5669,7 +5742,7 @@ static INPUT_PORTS_START( eldoradoa )
PORT_DIPNAME( 0x10, 0x00, "Show Girls" ) PORT_DIPLOCATION("DSW5:5")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- // 0xe0 --> skill mode / stops. same as animalhs
+ // 0xe0 --> skill mode / stops. same as animalhs
PORT_MODIFY("DSW6")
PORT_DIPNAME( 0x01, 0x01, "DSW6" ) PORT_DIPLOCATION("DSW6:1")
@@ -12003,6 +12076,135 @@ static INPUT_PORTS_START( nfm )
PORT_DIPSETTING( 0x80, "Short" )
INPUT_PORTS_END
+static INPUT_PORTS_START( amaztsk )
+ PORT_INCLUDE( nfb96bl )
+
+ PORT_MODIFY("IN0")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("4") PORT_CODE(KEYCODE_4_PAD)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("5") PORT_CODE(KEYCODE_5_PAD)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Stop 2 / Bet 2 / Big") // bet 2 big
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) PORT_NAME("Stop 4 / Bet 4 / D-UP") // bet 4 dup
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Stop 1 / Bet 1 / Take") // bet 1 take
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) PORT_NAME("Stop All / Bet All") // bet general
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Stop 3 / Bet 3 / Small") // bet 3 small
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start") PORT_CODE(KEYCODE_N)
+
+ PORT_MODIFY( "IN2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) // tied to hopper somehow? fill/empty switch?
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) // display ticket value?
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Key Out / Attendant")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) // keyin? tied to ticket clear value
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_SERVICE ) PORT_NAME("Settings")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Stats") // DSW4-1 must be on to access account menu
+
+ PORT_MODIFY("DSW1")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:1")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:2")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:3")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:4")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:5")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:7")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:8")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:1")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:2")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:3")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:4")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:5")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:7")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:8")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_MODIFY("DSW3")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:1")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:2")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:3")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:4")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:5")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:7")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:8")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_MODIFY("DSW4")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:1")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:2")
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:3")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:4")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:5")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:7")
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:8")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+INPUT_PORTS_END
+
static INPUT_PORTS_START( unkch_controls )
PORT_START("IN0")
@@ -16159,9 +16361,20 @@ void cmaster_state::nfm(machine_config &config)
void cmaster_state::amaztsk(machine_config &config)
{
- nfm(config);
+ amcoe2(config);
m_maincpu->set_addrmap(AS_PROGRAM, &cmaster_state::cm_map); // expects NVRAM instead of ROM in the 0xd000 - 0xd7ff range
+ m_maincpu->set_addrmap(AS_IO, &cmaster_state::nfm_portmap);
+
+ m_gfxdecode->set_info(gfx_nfm);
+
+ m_palette->set_init(FUNC(cmaster_state::nfm_palette));
+
+ OKIM6295(config, "oki", OKI_CLOCK, okim6295_device::PIN7_HIGH).add_route(ALL_OUTPUTS, "mono", 1.0); // clock frequency & pin 7 not verified
+
+ MCFG_VIDEO_START_OVERRIDE(cmaster_state, amaztsk)
+ subdevice<screen_device>("screen")->set_screen_update(FUNC(cmaster_state::screen_update_amaztsk));
+
}
void unkch_state::vblank_irq(int state)
@@ -16307,7 +16520,7 @@ void cmaster_state::animalhs(machine_config &config)
m_maincpu->set_addrmap(AS_PROGRAM, &cmaster_state::animalhs_map);
m_maincpu->set_addrmap(AS_IO, &cmaster_state::animalhs_portmap);
- NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
+ NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);
// video hardware
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
@@ -30681,8 +30894,8 @@ void cmaster_state::init_animalhs()
// Fix Test Mode bad string pointer - (perhaps bad decryption)
// animalhs & animalhsa
rom[0x5d5d] = 0xeb;
- rom[0x5d5e] = 0x82;
-
+ rom[0x5d5e] = 0x82;
+
// Fix attract mode bad jump & stack crash
// animalhsa (fix compatible with animalhs code)
rom[0x26b7] = 0x4e;
@@ -31020,9 +31233,9 @@ GAME( 1994, chryanglb, ncb3, chryanglb, chryanglb, cmaster_state, init_chr
// cherry master hardware has a rather different mem map, but is basically the same
-GAMEL( 198?, cmv823, 0, cm, cmv801, cmaster_state, init_cmv823, ROT0, "Corsica", "Cherry Master (ED-96, Corsica CM v8.23)", 0, layout_cmv4 ) // encrypted
-GAMEL( 198?, cmv801, cmv823, cm, cmv801, cmaster_state, init_cm, ROT0, "Corsica", "Cherry Master (ED-96, Corsica CM v8.01)", 0, layout_cmv4 ) // says ED-96 where the manufacturer is on some games...
-GAMEL( 198?, cmpap, 0, cm, cmv801, cmaster_state, init_cmpap, ROT0, "Pick-A-Party Brazil", "Cherry Master (ED-98, Pick-A-Party)", MACHINE_NOT_WORKING, layout_cmv4 ) // probably works correctly, needs i/o checking
+GAMEL( 198?, cmv823, 0, cm, cmv801, cmaster_state, init_cmv823, ROT0, "Corsica", "Cherry Master (ED-96, Corsica CM v8.23)", 0, layout_cmv4 ) // encrypted
+GAMEL( 198?, cmv801, cmv823, cm, cmv801, cmaster_state, init_cm, ROT0, "Corsica", "Cherry Master (ED-96, Corsica CM v8.01)", 0, layout_cmv4 ) // says ED-96 where the manufacturer is on some games...
+GAMEL( 198?, cmpap, 0, cm, cmv801, cmaster_state, init_cmpap, ROT0, "Pick-A-Party Brazil", "Cherry Master (ED-98, Pick-A-Party)", MACHINE_NOT_WORKING, layout_cmv4 ) // probably works correctly, needs i/o checking
// most of these are almost certainly bootlegs, with added features, hacked payouts etc. identifying which are
@@ -31289,7 +31502,7 @@ GAME( 2006, noved, nfb96, amcoe2, nfb96bl, cmaster_state, init_nov
GAME( 2003, nfm, 0, nfm, nfm, cmaster_state, empty_init, ROT0, "Ming-Yang Electronic / TSK", "Fruit Bonus 2002 (Ming-Yang Electronic / TSK, vFB02-07A)", MACHINE_NOT_WORKING ) // vFB02-07A "Copyright By Ms. Liu Orchis 2003/03/06", needs correct PROM and USER1 regions decode
GAME( 2003, nfma, nfm, nfm, nfm, cmaster_state, empty_init, ROT0, "Ming-Yang Electronic / TSK", "Fruit Bonus 2002 (Ming-Yang Electronic / TSK, vFB02-01A)", MACHINE_NOT_WORKING ) // vFB02-01A "Copyright By Ms. Liu Orchis 2003/03/06", needs correct PROM and USER1 regions decode
-GAME( 2006, amaztsk, 0, amaztsk, nfm, cmaster_state, init_tsk<0xba>, ROT0, "Ming-Yang Electronic / TSK", "Amazonia (Ming-Yang Electronic / TSK)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // resets when starting reels, reels don't show, inputs need fixing, no sound
+GAME( 2006, amaztsk, 0, amaztsk, amaztsk, cmaster_state, init_tsk<0xba>, ROT0, "Ming-Yang Electronic / TSK", "Amazonia (Ming-Yang Electronic / TSK)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // resets when starting reels, reels don't show, inputs need fixing, no sound
GAME( 2006, halltsk, 0, nfm, nfm, cmaster_state, init_tsk<0x71>, ROT0, "Ming-Yang Electronic / TSK", "Halloween (Ming-Yang Electronic / TSK, version 1.0)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // resets when starting reels, reels don't show, inputs need fixing, no sound