mirror of
https://github.com/holub/mame
synced 2025-06-05 20:33:45 +03:00
- galaxian/galaxold.cpp: corrected GFX ROM loading for superbikg, gives confirmed correct (even if strange looking) colors
- misc/belatra.cpp: tried to give the driver some flesh - various drivers: removed some now unneeded trampolines for flipscreen related functions
This commit is contained in:
parent
b5205c7d40
commit
f95fa332ca
@ -2335,8 +2335,8 @@ ROM_START( superbikg )
|
||||
ROM_LOAD( "moto6-2532.bin", 0x6000, 0x1000, CRC(f5b7627a) SHA1(02dfa62b0bf5962ad56d922084888f2216eca497) )
|
||||
|
||||
ROM_REGION( 0x1000, "gfx1", 0 ) // these are the same as sbdk in nintendo/dkong.cpp
|
||||
ROM_LOAD( "m0kl-2716.bin", 0x0000, 0x0800, CRC(ea5f9f88) SHA1(5742d3554d967ed1e90f7c6f73dafbd302f0f244) )
|
||||
ROM_LOAD( "m0hj-2716.bin", 0x0800, 0x0800, CRC(b1d76b59) SHA1(aed57ec67d80abdff1a4bfc3a713fa01c0dd15a2) )
|
||||
ROM_LOAD( "m0hj-2716.bin", 0x0000, 0x0800, CRC(b1d76b59) SHA1(aed57ec67d80abdff1a4bfc3a713fa01c0dd15a2) )
|
||||
ROM_LOAD( "m0kl-2716.bin", 0x0800, 0x0800, CRC(ea5f9f88) SHA1(5742d3554d967ed1e90f7c6f73dafbd302f0f244) )
|
||||
|
||||
ROM_REGION( 0x0020, "proms", 0 )
|
||||
ROM_LOAD( "mmi6331.6l", 0x0000, 0x0020, CRC(c5f12bc3) SHA1(b746ba06b596d4227fdc730a23bdf495f84e6a72) ) // same as amidarc, bongoa and froggervd in galaxian/galaxian.cpp
|
||||
@ -2652,7 +2652,7 @@ GAME( 1981, froggerv, frogger, videotron, froggerv, galaxold_state, empty_ini
|
||||
GAME( 1983, hunchbkg, hunchbak, hunchbkg, hunchbkg, galaxold_state, empty_init, ROT90, "Century Electronics", "Hunchback (Galaxian hardware)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1983, hunchbgb, hunchbak, hunchbkg, hunchbkg, galaxold_state, empty_init, ROT90, "bootleg (FAR S.A.)", "Hunchback (FAR S.A. bootleg on Galaxian hardware)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1983, spcwarp, 0, spcwarp, hunchbkg, galaxold_state, empty_init, ROT90, "Century Electronics", "Space Warp? (Cosmos conversion on Galaxian hardware)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE | MACHINE_WRONG_COLORS ) // bad dump
|
||||
GAME( 1983, superbikg, superbik, superbikg, superbikg, galaxold_state, init_superbikg, ROT90, "bootleg", "Superbike (bootleg on Galaxian hardware)", MACHINE_IMPERFECT_SOUND | MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) // needs real hw references for correcting colors
|
||||
GAME( 1983, superbikg, superbik, superbikg, superbikg, galaxold_state, init_superbikg, ROT90, "bootleg", "Superbike (bootleg on Galaxian hardware)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) // colors look strange but match real hw video
|
||||
GAME( 1984, drivfrcg, drivfrcp, drivfrcg, drivfrcg, galaxold_state, empty_init, ROT90, "Shinkai Inc. (Magic Electronics USA license)", "Driving Force (Galaxian conversion)", MACHINE_SUPPORTS_SAVE )
|
||||
GAME( 1984, drivfrct, drivfrcp, drivfrcg, drivfrcg, galaxold_state, empty_init, ROT90, "bootleg (EMT Germany)", "Top Racer (bootleg of Driving Force)", MACHINE_SUPPORTS_SAVE ) // Video Klein PCB
|
||||
GAME( 1985, drivfrcb, drivfrcp, drivfrcg, drivfrcg, galaxold_state, empty_init, ROT90, "bootleg (Elsys Software)", "Driving Force (Galaxian conversion bootleg)", MACHINE_SUPPORTS_SAVE )
|
||||
|
@ -1,12 +1,14 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:David Haywood
|
||||
/* Belatra Russian Fruit Machines (Video?) */
|
||||
// copyright-holders: David Haywood
|
||||
|
||||
// Belatra Russian Fruit Machines (Video?)
|
||||
|
||||
/*
|
||||
|
||||
These appear to run on Acorn Archimedes-compatible hardware, similar to ertictac.c.
|
||||
That would make the SoC an ARM7500 or similar.
|
||||
SoC is suspected to be an ARM7500 or similar.
|
||||
|
||||
TODO:
|
||||
- just a skeleton and everything is complete guesswork.
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -36,14 +38,19 @@ Merry Joiner
|
||||
Piggy Bank
|
||||
The Scrooge
|
||||
Spirit of Prairies
|
||||
Viking?s Fun Mill
|
||||
Viking's Fun Mill
|
||||
|
||||
*/
|
||||
|
||||
|
||||
#include "emu.h"
|
||||
|
||||
#include "cpu/arm7/arm7.h"
|
||||
#include "cpu/arm7/arm7core.h"
|
||||
#include "machine/acorn_vidc.h"
|
||||
#include "machine/arm_iomd.h"
|
||||
|
||||
#include "screen.h"
|
||||
#include "speaker.h"
|
||||
|
||||
|
||||
@ -54,20 +61,31 @@ class belatra_state : public driver_device
|
||||
public:
|
||||
belatra_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu")
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_vidc(*this, "vidc"),
|
||||
m_iomd(*this, "iomd")
|
||||
{ }
|
||||
|
||||
void belatra(machine_config &config);
|
||||
void belatra_map(address_map &map);
|
||||
protected:
|
||||
|
||||
// devices
|
||||
private:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<arm_vidc20_device> m_vidc;
|
||||
required_device<arm7500fe_iomd_device> m_iomd;
|
||||
|
||||
void program_map(address_map &map);
|
||||
};
|
||||
|
||||
void belatra_state::belatra_map(address_map &map)
|
||||
void belatra_state::program_map(address_map &map)
|
||||
{
|
||||
map(0x00000000, 0x003fffff).rom();
|
||||
map(0x00000000, 0x001fffff).rom().region("maincpu", 0x000000); // TODO: implement this as proper flash ROM device
|
||||
map(0x00800000, 0x009fffff).rom().region("maincpu", 0x200000); // "
|
||||
map(0x03200000, 0x032001ff).m(m_iomd, FUNC(arm7500fe_iomd_device::map)); // TODO: writes to some unimplemented registers
|
||||
//map(0x03340000, 0x03340003).r;
|
||||
//map(0x03400000, 0x037fffff).w(m_vidc, FUNC(arm_vidc20_device::write));
|
||||
//map(0x08000000, 0x0800000f).r;
|
||||
map(0x10000000, 0x13ffffff).ram();
|
||||
map(0x14000000, 0x17ffffff).ram();
|
||||
}
|
||||
|
||||
static INPUT_PORTS_START( belatra )
|
||||
@ -75,12 +93,33 @@ INPUT_PORTS_END
|
||||
|
||||
void belatra_state::belatra(machine_config &config)
|
||||
{
|
||||
ARM7(config, m_maincpu, 54000000); // guess...
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &belatra_state::belatra_map);
|
||||
ARM7500(config, m_maincpu, 54'000'000); // CPU type and clock guessed
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &belatra_state::program_map);
|
||||
|
||||
SCREEN(config, "screen", SCREEN_TYPE_RASTER);
|
||||
|
||||
ARM_VIDC20(config, m_vidc, 24'000'000); // chip type and clock guessed
|
||||
m_vidc->set_screen("screen");
|
||||
m_vidc->vblank().set(m_iomd, FUNC(arm_iomd_device::vblank_irq));
|
||||
m_vidc->sound_drq().set(m_iomd, FUNC(arm_iomd_device::sound_drq));
|
||||
|
||||
ARM7500FE_IOMD(config, m_iomd, 54'000'000); // CPU type and clock guessed
|
||||
m_iomd->set_host_cpu_tag(m_maincpu);
|
||||
m_iomd->set_vidc_tag(m_vidc);
|
||||
m_iomd->iocr_read_od<0>().set([this] () { logerror("%s: IOCR read OD 0\n", machine().describe_context()); return 0; });
|
||||
m_iomd->iocr_read_od<1>().set([this] () { logerror("%s: IOCR read OD 1\n", machine().describe_context()); return 0; });
|
||||
m_iomd->iocr_read_id().set([this] () { logerror("%s: IOCR read ID\n", machine().describe_context()); return 0; });
|
||||
m_iomd->iocr_write_od<0>().set([this] (int state) { logerror("%s: IOCR write OD 0 %d\n", machine().describe_context(), state); });
|
||||
m_iomd->iocr_write_od<1>().set([this] (int state) { logerror("%s: IOCR write OD 1 %d\n", machine().describe_context(), state); });
|
||||
m_iomd->iocr_write_id().set([this] (int state) { logerror("%s: IOCR write ID %d\n", machine().describe_context(), state); });
|
||||
m_iomd->iolines_read().set([this] () { logerror("%s: IO lines read\n", machine().describe_context()); return uint8_t(0); });
|
||||
m_iomd->iolines_write().set([this] (uint8_t data) { logerror("%s: IO lines write %02x\n", machine().describe_context(), data); });
|
||||
|
||||
// AT90S2313(config, "mcu", xxxx); // TODO: AVR 8-bit core, only the fairyl2 set has a dump
|
||||
|
||||
SPEAKER(config, "lspeaker").front_left();
|
||||
SPEAKER(config, "rspeaker").front_right();
|
||||
/* unknown sound */
|
||||
// unknown sound
|
||||
}
|
||||
|
||||
|
||||
@ -94,6 +133,7 @@ ROM_START( fairyl2 )
|
||||
ROM_REGION( 0x400000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "zfl2-1belatra.bin", 0x000000, 0x200000, CRC(cb0f3eba) SHA1(a7776810cfe037c25c196bbe900e5e17a2005d2d) )
|
||||
ROM_LOAD( "zfl2-2belatra.bin", 0x200000, 0x200000, CRC(755fad4b) SHA1(12243fdf95fcdd9012d1bbde6a18abb00918f560) )
|
||||
|
||||
ROM_REGION( 0x400000, "others", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "at90s2313_fl2.bin", 0x0000, 0x000800, CRC(38e2d37e) SHA1(78178cb3ea219a71d1f15ffde722f9c03ad64dda) )
|
||||
ROM_END
|
||||
@ -131,12 +171,12 @@ ROM_END
|
||||
} // anonymous namespace
|
||||
|
||||
|
||||
GAME( 2004, fairyl2, 0, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra","Fairy Land 2 (set 1)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, fairyl2a, fairyl2, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra","Fairy Land 2 (set 2)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, fairyl2b, fairyl2, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra","Fairy Land 2 (set 3)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, fairyl2bl, fairyl2, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra","Fairy Land 2 (bootleg)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, fairyl2, 0, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra", "Fairy Land 2 (set 1)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, fairyl2a, fairyl2, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra", "Fairy Land 2 (set 2)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, fairyl2b, fairyl2, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra", "Fairy Land 2 (set 3)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, fairyl2bl, fairyl2, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra", "Fairy Land 2 (bootleg)", MACHINE_IS_SKELETON )
|
||||
|
||||
GAME( 2004, ldrink, 0, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra","Lucky Drink (set 1)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, ldrinka, ldrink, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra","Lucky Drink (set 2)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, ldrink, 0, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra", "Lucky Drink (set 1)", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, ldrinka, ldrink, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra", "Lucky Drink (set 2)", MACHINE_IS_SKELETON )
|
||||
|
||||
GAME( 2004, merryjn, 0, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra","Merry Joiner", MACHINE_IS_SKELETON )
|
||||
GAME( 2004, merryjn, 0, belatra, belatra, belatra_state, empty_init, ROT0, "Belatra", "Merry Joiner", MACHINE_IS_SKELETON )
|
||||
|
@ -69,8 +69,6 @@ private:
|
||||
tilemap_t* m_tilemap = nullptr;
|
||||
int m_nmi = 0;
|
||||
|
||||
void flip_screen_x_w(int state);
|
||||
void flip_screen_y_w(int state);
|
||||
void videoram_w(offs_t offset, uint8_t data);
|
||||
void colorram_w(offs_t offset, uint8_t data);
|
||||
void coin_counter_w(int state);
|
||||
@ -92,16 +90,6 @@ void skyarmy_state::machine_start()
|
||||
save_item(NAME(m_nmi));
|
||||
}
|
||||
|
||||
void skyarmy_state::flip_screen_x_w(int state)
|
||||
{
|
||||
flip_screen_x_set(state);
|
||||
}
|
||||
|
||||
void skyarmy_state::flip_screen_y_w(int state)
|
||||
{
|
||||
flip_screen_y_set(state);
|
||||
}
|
||||
|
||||
TILE_GET_INFO_MEMBER(skyarmy_state::get_tile_info)
|
||||
{
|
||||
int code = m_videoram[tile_index];
|
||||
@ -334,8 +322,8 @@ void skyarmy_state::skyarmy(machine_config &config)
|
||||
ls259_device &latch(LS259(config, "latch")); // 11C
|
||||
latch.q_out_cb<0>().set(FUNC(skyarmy_state::coin_counter_w));
|
||||
latch.q_out_cb<4>().set(FUNC(skyarmy_state::nmi_enable_w)); // ???
|
||||
latch.q_out_cb<5>().set(FUNC(skyarmy_state::flip_screen_x_w));
|
||||
latch.q_out_cb<6>().set(FUNC(skyarmy_state::flip_screen_y_w));
|
||||
latch.q_out_cb<5>().set(FUNC(skyarmy_state::flip_screen_x_set));
|
||||
latch.q_out_cb<6>().set(FUNC(skyarmy_state::flip_screen_y_set));
|
||||
latch.q_out_cb<7>().set_nop(); // video RAM buffering?
|
||||
|
||||
/* video hardware */
|
||||
|
@ -436,8 +436,8 @@ void mermaid_state::mermaid(machine_config &config)
|
||||
m_latch[0]->q_out_cb<2>().set([this](int state){ logerror("02 = %d\n", state); }); // plays sample
|
||||
m_latch[0]->q_out_cb<3>().set([this](int state){ logerror("03 = %d\n", state); }); // ???
|
||||
m_latch[0]->q_out_cb<4>().set([this](int state){ logerror("04 = %d\n", state); }); // ???
|
||||
m_latch[0]->q_out_cb<5>().set(FUNC(mermaid_state::flip_screen_x_w));
|
||||
m_latch[0]->q_out_cb<6>().set(FUNC(mermaid_state::flip_screen_y_w));
|
||||
m_latch[0]->q_out_cb<5>().set(FUNC(mermaid_state::flip_screen_x_set));
|
||||
m_latch[0]->q_out_cb<6>().set(FUNC(mermaid_state::flip_screen_y_set));
|
||||
m_latch[0]->q_out_cb<7>().set(FUNC(mermaid_state::nmi_mask_w));
|
||||
|
||||
LS259(config, m_latch[1]);
|
||||
|
@ -100,8 +100,6 @@ private:
|
||||
void mermaid_videoram2_w(offs_t offset, uint8_t data);
|
||||
void mermaid_videoram_w(offs_t offset, uint8_t data);
|
||||
void mermaid_colorram_w(offs_t offset, uint8_t data);
|
||||
void flip_screen_x_w(int state);
|
||||
void flip_screen_y_w(int state);
|
||||
void mermaid_bg_scroll_w(offs_t offset, uint8_t data);
|
||||
void mermaid_fg_scroll_w(offs_t offset, uint8_t data);
|
||||
void bg_mask_w(int state);
|
||||
|
@ -72,16 +72,6 @@ void mermaid_state::mermaid_colorram_w(offs_t offset, uint8_t data)
|
||||
m_fg_tilemap->mark_tile_dirty(offset);
|
||||
}
|
||||
|
||||
void mermaid_state::flip_screen_x_w(int state)
|
||||
{
|
||||
flip_screen_x_set(state);
|
||||
}
|
||||
|
||||
void mermaid_state::flip_screen_y_w(int state)
|
||||
{
|
||||
flip_screen_y_set(state);
|
||||
}
|
||||
|
||||
void mermaid_state::mermaid_bg_scroll_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_bg_scrollram[offset] = data;
|
||||
|
@ -137,8 +137,6 @@ private:
|
||||
tilemap_t *m_fg = nullptr;
|
||||
|
||||
void nmi_enable_w(int state);
|
||||
void hflip_w(int state);
|
||||
void vflip_w(int state);
|
||||
uint8_t inputs_watchdog_r();
|
||||
template <uint8_t Which> void videoram_w(offs_t offset, uint8_t data);
|
||||
void char_bank_select_w(int state);
|
||||
@ -654,16 +652,6 @@ void pitnrun_state::nmi_enable_w(int state)
|
||||
m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE);
|
||||
}
|
||||
|
||||
void pitnrun_state::hflip_w(int state)
|
||||
{
|
||||
flip_screen_x_set(state);
|
||||
}
|
||||
|
||||
void pitnrun_state::vflip_w(int state)
|
||||
{
|
||||
flip_screen_y_set(state);
|
||||
}
|
||||
|
||||
uint8_t pitnrun_state::inputs_r()
|
||||
{
|
||||
return ~m_inputmux->output_r();
|
||||
@ -850,9 +838,9 @@ void pitnrun_state::pitnrun(machine_config &config)
|
||||
mainlatch.q_out_cb<1>().set(FUNC(pitnrun_state::color_select_w));
|
||||
mainlatch.q_out_cb<4>().set_nop(); // COLOR SEL 2 - not used ?
|
||||
mainlatch.q_out_cb<5>().set(FUNC(pitnrun_state::char_bank_select_w));
|
||||
mainlatch.q_out_cb<6>().set(FUNC(pitnrun_state::hflip_w)); // HFLIP
|
||||
mainlatch.q_out_cb<6>().set(FUNC(pitnrun_state::flip_screen_x_set)); // HFLIP
|
||||
mainlatch.q_out_cb<6>().append(m_inputmux, FUNC(ls157_x2_device::select_w));
|
||||
mainlatch.q_out_cb<7>().set(FUNC(pitnrun_state::vflip_w)); // VFLIP
|
||||
mainlatch.q_out_cb<7>().set(FUNC(pitnrun_state::flip_screen_y_set)); // VFLIP
|
||||
|
||||
LS157_X2(config, m_inputmux); // 2F (0-3) & 2H (4-7)
|
||||
m_inputmux->a_in_callback().set_ioport("INPUTS");
|
||||
|
@ -70,8 +70,6 @@ protected:
|
||||
void colorram_w(offs_t offset, uint8_t data);
|
||||
void pal_offs_w(uint8_t data);
|
||||
void scroll_w(uint8_t data);
|
||||
void flipscreen_x_w(int state);
|
||||
void flipscreen_y_w(int state);
|
||||
|
||||
void io_map(address_map &map);
|
||||
};
|
||||
@ -200,16 +198,6 @@ void base_state::scroll_w(uint8_t data)
|
||||
m_bg_tilemap->set_scrollx(0, data);
|
||||
}
|
||||
|
||||
void base_state::flipscreen_x_w(int state)
|
||||
{
|
||||
flip_screen_x_set(state);
|
||||
}
|
||||
|
||||
void base_state::flipscreen_y_w(int state)
|
||||
{
|
||||
flip_screen_y_set(state);
|
||||
}
|
||||
|
||||
|
||||
void holeland_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect)
|
||||
{
|
||||
@ -560,8 +548,8 @@ void holeland_state::holeland(machine_config &config)
|
||||
LS259(config, m_latch); // 3J
|
||||
m_latch->parallel_out_cb().set(FUNC(holeland_state::pal_offs_w)).mask(0x03);
|
||||
m_latch->q_out_cb<5>().set(FUNC(holeland_state::coin_counter_w));
|
||||
m_latch->q_out_cb<6>().set(FUNC(holeland_state::flipscreen_x_w));
|
||||
m_latch->q_out_cb<7>().set(FUNC(holeland_state::flipscreen_y_w));
|
||||
m_latch->q_out_cb<6>().set(FUNC(holeland_state::flip_screen_x_set));
|
||||
m_latch->q_out_cb<7>().set(FUNC(holeland_state::flip_screen_y_set));
|
||||
|
||||
WATCHDOG_TIMER(config, "watchdog");
|
||||
|
||||
|
@ -479,8 +479,8 @@ void bagman_state::bagman_base(machine_config &config)
|
||||
|
||||
LS259(config, m_mainlatch); // 8H
|
||||
m_mainlatch->q_out_cb<0>().set(FUNC(bagman_state::irq_mask_w));
|
||||
m_mainlatch->q_out_cb<1>().set(FUNC(bagman_state::flipscreen_x_w));
|
||||
m_mainlatch->q_out_cb<2>().set(FUNC(bagman_state::flipscreen_y_w));
|
||||
m_mainlatch->q_out_cb<1>().set(FUNC(bagman_state::flip_screen_x_set));
|
||||
m_mainlatch->q_out_cb<2>().set(FUNC(bagman_state::flip_screen_y_set));
|
||||
// video enable register not available on earlier hardware revision(s)
|
||||
// Bagman is supposed to have glitches during screen transitions
|
||||
m_mainlatch->q_out_cb<4>().set(FUNC(bagman_state::coin_counter_w));
|
||||
@ -558,8 +558,8 @@ void pickin_state::pickin(machine_config &config)
|
||||
|
||||
LS259(config, m_mainlatch);
|
||||
m_mainlatch->q_out_cb<0>().set(FUNC(pickin_state::irq_mask_w));
|
||||
m_mainlatch->q_out_cb<1>().set(FUNC(pickin_state::flipscreen_x_w));
|
||||
m_mainlatch->q_out_cb<2>().set(FUNC(pickin_state::flipscreen_y_w));
|
||||
m_mainlatch->q_out_cb<1>().set(FUNC(pickin_state::flip_screen_x_set));
|
||||
m_mainlatch->q_out_cb<2>().set(FUNC(pickin_state::flip_screen_y_set));
|
||||
m_mainlatch->q_out_cb<3>().set(FUNC(pickin_state::video_enable_w));
|
||||
m_mainlatch->q_out_cb<4>().set(FUNC(pickin_state::coin_counter_w));
|
||||
m_mainlatch->q_out_cb<5>().set_nop(); // ????
|
||||
@ -620,8 +620,8 @@ void pickin_state::botanic(machine_config &config)
|
||||
|
||||
LS259(config, m_mainlatch);
|
||||
m_mainlatch->q_out_cb<0>().set(FUNC(pickin_state::irq_mask_w));
|
||||
m_mainlatch->q_out_cb<1>().set(FUNC(pickin_state::flipscreen_x_w));
|
||||
m_mainlatch->q_out_cb<2>().set(FUNC(pickin_state::flipscreen_y_w));
|
||||
m_mainlatch->q_out_cb<1>().set(FUNC(pickin_state::flip_screen_x_set));
|
||||
m_mainlatch->q_out_cb<2>().set(FUNC(pickin_state::flip_screen_y_set));
|
||||
m_mainlatch->q_out_cb<3>().set(FUNC(pickin_state::video_enable_w));
|
||||
m_mainlatch->q_out_cb<4>().set(FUNC(pickin_state::coin_counter_w));
|
||||
m_mainlatch->q_out_cb<5>().set_nop(); // ????
|
||||
|
@ -40,8 +40,6 @@ protected:
|
||||
void irq_mask_w(int state);
|
||||
void videoram_w(offs_t offset, uint8_t data);
|
||||
void colorram_w(offs_t offset, uint8_t data);
|
||||
void flipscreen_x_w(int state);
|
||||
void flipscreen_y_w(int state);
|
||||
void video_enable_w(int state);
|
||||
|
||||
// bagman
|
||||
|
@ -81,16 +81,6 @@ void bagman_state::bagman_palette(palette_device &palette) const
|
||||
}
|
||||
}
|
||||
|
||||
void bagman_state::flipscreen_x_w(int state)
|
||||
{
|
||||
flip_screen_x_set(state);
|
||||
}
|
||||
|
||||
void bagman_state::flipscreen_y_w(int state)
|
||||
{
|
||||
flip_screen_y_set(state);
|
||||
}
|
||||
|
||||
void bagman_state::video_enable_w(int state)
|
||||
{
|
||||
m_video_enable = state;
|
||||
|
@ -346,7 +346,7 @@ void zaccaria_state::zaccaria(machine_config &config)
|
||||
|
||||
ls259_device &mainlatch(LS259(config, "mainlatch")); // 3G on 1B1141 I/O (Z80) board
|
||||
mainlatch.q_out_cb<0>().set(FUNC(zaccaria_state::flip_screen_x_w)); // VCMA
|
||||
mainlatch.q_out_cb<1>().set(FUNC(zaccaria_state::flip_screen_y_w)); // HCMA
|
||||
mainlatch.q_out_cb<1>().set(FUNC(zaccaria_state::flip_screen_y_set)); // HCMA
|
||||
mainlatch.q_out_cb<2>().set("audiopcb", FUNC(zac1b11142_audio_device::ressound_w)); // RESSOUND
|
||||
mainlatch.q_out_cb<6>().set(FUNC(zaccaria_state::coin_w)); // COUNT
|
||||
mainlatch.q_out_cb<7>().set(FUNC(zaccaria_state::nmi_mask_w)); // INTST
|
||||
|
@ -43,7 +43,6 @@ private:
|
||||
uint8_t read_attr(offs_t offset, int which);
|
||||
void update_colscroll();
|
||||
void flip_screen_x_w(int state);
|
||||
void flip_screen_y_w(int state);
|
||||
void dsw_sel_w(uint8_t data);
|
||||
TILE_GET_INFO_MEMBER(get_tile_info);
|
||||
void palette(palette_device &palette) const;
|
||||
|
@ -183,11 +183,6 @@ void zaccaria_state::flip_screen_x_w(int state)
|
||||
update_colscroll();
|
||||
}
|
||||
|
||||
void zaccaria_state::flip_screen_y_w(int state)
|
||||
{
|
||||
flip_screen_y_set(state);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
|
Loading…
Reference in New Issue
Block a user