mirror of
https://github.com/holub/mame
synced 2025-04-24 09:20:02 +03:00
cvs, galaxian, galaxold, igs017, snes, supracan, taitotz, trs80m3, vectrex, x1: initialized variables that were causing crashes in drvnoclear builds
This commit is contained in:
parent
14a076eb86
commit
cba93eb879
@ -958,6 +958,7 @@ void cvs_state::machine_reset()
|
||||
m_stars_on = 0;
|
||||
m_scroll_reg = 0;
|
||||
m_stars_scroll = 0;
|
||||
m_s2650_flag = 0;
|
||||
}
|
||||
|
||||
void cvs_state::cvs(machine_config &config)
|
||||
|
@ -7199,6 +7199,9 @@ void gmgalax_state::init_gmgalax()
|
||||
{
|
||||
address_space &space = m_maincpu->space(AS_PROGRAM);
|
||||
|
||||
m_stars_enabled = 0;
|
||||
std::fill(std::begin(m_gfxbank), std::end(m_gfxbank), 0);
|
||||
|
||||
/* video extensions */
|
||||
common_init(&galaxian_state::galaxian_draw_bullet, &galaxian_state::galaxian_draw_background, &gmgalax_state::gmgalax_extend_tile_info, &gmgalax_state::gmgalax_extend_sprite_info);
|
||||
|
||||
|
@ -3840,6 +3840,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(igs017_state::iqblocka_interrupt)
|
||||
|
||||
MACHINE_RESET_MEMBER(igs017_state,iqblocka)
|
||||
{
|
||||
machine_reset();
|
||||
m_input_select = 0;
|
||||
}
|
||||
|
||||
|
@ -2297,7 +2297,7 @@ ROM_END
|
||||
game No. 833-8830-02
|
||||
pcb No. 837-8832-02 (171-5873-02b)
|
||||
ROM No. 834-8831-02 (171-5987a)
|
||||
CPU Hiatchi FD1094 317-0196
|
||||
CPU Hitachi FD1094 317-0196
|
||||
*/
|
||||
ROM_START( desertbr )
|
||||
ROM_REGION( 0x200000, "maincpu", 0 ) // 68000 code - custom CPU 317-0196
|
||||
@ -2367,7 +2367,7 @@ ROM_END
|
||||
game No. 833-8830?
|
||||
pcb No. 837-8832? (171-5873B)
|
||||
ROM No. 834-8831 (171-5987A)
|
||||
CPU Hiatchi FD1094 317-0194
|
||||
CPU Hitachi FD1094 317-0194
|
||||
*/
|
||||
ROM_START( desertbrj )
|
||||
ROM_REGION( 0x200000, "maincpu", 0 ) // 68000 code - custom CPU 317-0196
|
||||
@ -2463,7 +2463,7 @@ ROM_START( hamaway )
|
||||
ROM_LOAD16_BYTE( "c18.bin", 0x080001, 0x40000, CRC(0f8fe8bb) SHA1(e6f68442b8d4def29b106458496a47344f70d511) )
|
||||
ROM_LOAD16_BYTE( "11.bin", 0x080000, 0x40000, CRC(2b5eacbc) SHA1(ba3690501588b9c88a31022b44bc3c82b44ae26b) )
|
||||
ROM_LOAD16_BYTE( "c19.bin", 0x100001, 0x40000, CRC(3c616caa) SHA1(d48a6239b7a52ac13971f7513a65a17af492bfdf) ) // 11xxxxxxxxxxxxxxxx = 0xFF
|
||||
ROM_LOAD16_BYTE( "12.bin", 0x100000, 0x40000, CRC(c7bbd579) SHA1(ab87bfdad66ea241cb23c9bbfea05f5a1574d6c9) ) // 1ST AND 2ND HALF IDENTICAL (but ok, because pairing ROM has no data in the 2nd half anyway)
|
||||
ROM_LOAD16_BYTE( "12.bin", 0x100000, 0x40000, CRC(c7bbd579) SHA1(ab87bfdad66ea241cb23c9bbfea05f5a1574d6c9) ) // 1ST AND 2ND HALF IDENTICAL (but ok, because pairing ROM has no data in the 2nd half anyway), also found with the second half filled with 0xff
|
||||
|
||||
ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU
|
||||
ROM_LOAD( "c16.bin", 0x000000, 0x40000, CRC(913cc18c) SHA1(4bf4ec14937586c3ae77fcad57dcb21f6433ef81) )
|
||||
|
@ -85,6 +85,9 @@ DEBUG TRICKS:
|
||||
#include "softlist.h"
|
||||
#include "tilemap.h"
|
||||
|
||||
|
||||
namespace {
|
||||
|
||||
#define DRAW_DEBUG_ROZ (0)
|
||||
|
||||
#define DRAW_DEBUG_UNK_SPRITE (0)
|
||||
@ -131,11 +134,12 @@ public:
|
||||
|
||||
void supracan(machine_config &config);
|
||||
|
||||
private:
|
||||
protected:
|
||||
virtual void machine_start() override;
|
||||
virtual void machine_reset() override;
|
||||
virtual void video_start() override;
|
||||
|
||||
private:
|
||||
void supracan_mem(address_map &map);
|
||||
void supracan_sound_mem(address_map &map);
|
||||
|
||||
@ -1974,6 +1978,10 @@ void supracan_state::machine_reset()
|
||||
|
||||
m_video_timer->adjust(m_screen->time_until_pos(0, 0));
|
||||
m_irq_mask = 0;
|
||||
|
||||
m_roz_base_addr = 0;
|
||||
m_roz_mode = 0;
|
||||
std::fill(std::begin(m_tilemap_base_addr), std::end(m_tilemap_base_addr), 0);
|
||||
}
|
||||
|
||||
/* gfxdecode is retained for reference purposes but not otherwise used by the driver */
|
||||
@ -2094,5 +2102,8 @@ void supracan_state::supracan(machine_config &config)
|
||||
ROM_START( supracan )
|
||||
ROM_END
|
||||
|
||||
} // Anonymous namespace
|
||||
|
||||
|
||||
/* YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS */
|
||||
CONS( 1995, supracan, 0, 0, supracan, supracan, supracan_state, empty_init, "Funtech Entertainment", "Super A'Can", MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS | MACHINE_NOT_WORKING )
|
||||
|
@ -506,6 +506,9 @@ Notes:
|
||||
0x10000105:
|
||||
*/
|
||||
|
||||
|
||||
namespace {
|
||||
|
||||
#define LOG_PPC_TO_TLCS_COMMANDS 1
|
||||
#define LOG_TLCS_TO_PPC_COMMANDS 1
|
||||
|
||||
@ -545,7 +548,9 @@ public:
|
||||
m_iocpu(*this, "iocpu"),
|
||||
m_work_ram(*this, "work_ram"),
|
||||
m_mbox_ram(*this, "mbox_ram"),
|
||||
m_ata(*this, "ata")
|
||||
m_ata(*this, "ata"),
|
||||
m_scr_base(0),
|
||||
m_hdd_serial_number(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
@ -565,6 +570,11 @@ public:
|
||||
|
||||
required_device<screen_device> m_screen;
|
||||
|
||||
protected:
|
||||
virtual void machine_start() override;
|
||||
virtual void machine_reset() override;
|
||||
virtual void video_start() override;
|
||||
|
||||
private:
|
||||
required_device<ppc_device> m_maincpu;
|
||||
required_device<tmp95c063_device> m_iocpu;
|
||||
@ -609,9 +619,6 @@ private:
|
||||
|
||||
std::unique_ptr<taitotz_renderer> m_renderer;
|
||||
|
||||
virtual void machine_start() override;
|
||||
virtual void machine_reset() override;
|
||||
virtual void video_start() override;
|
||||
uint32_t screen_update_taitotz(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
||||
INTERRUPT_GEN_MEMBER(taitotz_vbi);
|
||||
uint16_t tlcs_ide0_r(offs_t offset, uint16_t mem_mask = ~0);
|
||||
@ -781,6 +788,8 @@ void taitotz_state::video_start()
|
||||
m_renderer = std::make_unique<taitotz_renderer>(*this, width, height, m_screen_ram.get(), m_texture_ram.get());
|
||||
|
||||
//machine().add_notifier(MACHINE_NOTIFY_EXIT, machine_notify_delegate(&taitotz_exit, &machine()));
|
||||
|
||||
m_video_reg = 0;
|
||||
}
|
||||
|
||||
static const float dot3_tex_table[32] =
|
||||
@ -2992,6 +3001,9 @@ ROM_START( dendego3 )
|
||||
DISK_IMAGE( "ddg3", 0, SHA1(468d699e02ef0a0242de4e7038613cc5d0545591) )
|
||||
ROM_END
|
||||
|
||||
} // Anonymous namespace
|
||||
|
||||
|
||||
GAME( 1999, taitotz, 0, taitotz, taitotz, taitotz_state, empty_init, ROT0, "Taito", "Type Zero BIOS", MACHINE_NO_SOUND|MACHINE_NOT_WORKING|MACHINE_IS_BIOS_ROOT )
|
||||
GAME( 1998, batlgear, taitotz, taitotz, batlgr2, taitotz_state, init_batlgear, ROT0, "Taito", "Battle Gear (Ver 2.40 A)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_NODEVICE_LAN )
|
||||
GAME( 1999, landhigh, taitotz, landhigh, landhigh, taitotz_state, init_landhigh, ROT0, "Taito", "Landing High Japan (Ver 2.01 OK)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
|
@ -2083,6 +2083,10 @@ MACHINE_RESET_MEMBER(x1_state,x1)
|
||||
m_sub_val[3] = 0;
|
||||
m_sub_val[4] = 0;
|
||||
m_sub_obf = (m_sub_cmd_length) ? 0x00 : 0x20;
|
||||
m_sub_val_ptr = 0;
|
||||
m_key_i = 0;
|
||||
m_scrn_reg.v400_mode = 0;
|
||||
m_scrn_reg.ank_sel = 0;
|
||||
|
||||
m_rtc_timer->adjust(attotime::zero, 0, attotime::from_seconds(1));
|
||||
|
||||
@ -2359,7 +2363,7 @@ void x1_state::init_x1_kanji()
|
||||
|
||||
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
|
||||
COMP( 1982, x1, 0, 0, x1, x1, x1_state, empty_init, "Sharp", "X1 (CZ-800C)", 0 )
|
||||
// x1twin in x1twin.c
|
||||
// x1twin in x1twin.cpp
|
||||
COMP( 1984, x1turbo, x1, 0, x1turbo, x1turbo, x1_state, init_x1_kanji, "Sharp", "X1 Turbo (CZ-850C)", MACHINE_NOT_WORKING ) //model 10
|
||||
COMP( 1985, x1turbo40, x1, 0, x1turbo, x1turbo, x1_state, init_x1_kanji, "Sharp", "X1 Turbo (CZ-862C)", 0 ) //model 40
|
||||
//COMP( 1986, x1turboz, x1, 0, x1turbo, x1turbo, x1_state, init_x1_kanji, "Sharp", "X1 TurboZ", MACHINE_NOT_WORKING )
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
Sharp X1Twin = Sharp X1 + NEC PC Engine All-in-One
|
||||
|
||||
Both systems doesn't interact at all, according to info on the net they just shares the
|
||||
Both systems don't interact at all, according to info on the net they just share the
|
||||
same "house". It doesn't even do super-imposing, not even with the in-built X1 feature apparently
|
||||
|
||||
TODO:
|
||||
@ -24,6 +24,8 @@
|
||||
#include "speaker.h"
|
||||
|
||||
|
||||
namespace {
|
||||
|
||||
class x1twin_state : public x1_state
|
||||
{
|
||||
public:
|
||||
@ -99,7 +101,7 @@ INPUT_CHANGED_MEMBER(x1twin_state::ipl_reset)
|
||||
//anything else?
|
||||
}
|
||||
|
||||
/* Apparently most games doesn't support this (not even the Konami ones!), one that does is...177 :o */
|
||||
/* Apparently most games don't support this (not even the Konami ones!), one that does is...177 :o */
|
||||
INPUT_CHANGED_MEMBER(x1twin_state::nmi_reset)
|
||||
{
|
||||
m_maincpu->set_input_line(INPUT_LINE_NMI, newval ? CLEAR_LINE : ASSERT_LINE);
|
||||
@ -540,11 +542,14 @@ ROM_START( x1twin )
|
||||
|
||||
ROM_REGION(0x20000, "kanji", ROMREGION_ERASEFF)
|
||||
|
||||
ROM_REGION(0x20000, "raw_kanji", ROMREGION_ERASEFF) // these comes from x1 turbo
|
||||
ROM_REGION(0x20000, "raw_kanji", ROMREGION_ERASEFF) // these come from x1 turbo
|
||||
ROM_LOAD("kanji4.rom", 0x00000, 0x8000, BAD_DUMP CRC(3e39de89) SHA1(d3fd24892bb1948c4697dedf5ff065ff3eaf7562) )
|
||||
ROM_LOAD("kanji2.rom", 0x08000, 0x8000, BAD_DUMP CRC(e710628a) SHA1(103bbe459dc8da27a9400aa45b385255c18fcc75) )
|
||||
ROM_LOAD("kanji3.rom", 0x10000, 0x8000, BAD_DUMP CRC(8cae13ae) SHA1(273f3329c70b332f6a49a3a95e906bbfe3e9f0a1) )
|
||||
ROM_LOAD("kanji1.rom", 0x18000, 0x8000, BAD_DUMP CRC(5874f70b) SHA1(dad7ada1b70c45f1e9db11db273ef7b385ef4f17) )
|
||||
ROM_END
|
||||
|
||||
} // Anonymous namespace
|
||||
|
||||
|
||||
COMP( 1986, x1twin, x1, 0, x1twin, x1twin, x1twin_state, init_x1_kanji, "Sharp", "X1 Twin (CZ-830C)", MACHINE_NOT_WORKING )
|
||||
|
@ -168,6 +168,7 @@ protected:
|
||||
virtual void video_start() override;
|
||||
virtual void machine_start() override;
|
||||
|
||||
private:
|
||||
void vectrex_map(address_map &map);
|
||||
};
|
||||
|
||||
@ -182,13 +183,12 @@ public:
|
||||
|
||||
void raaspec(machine_config &config);
|
||||
|
||||
protected:
|
||||
private:
|
||||
void raaspec_led_w(uint8_t data);
|
||||
uint8_t vectrex_s1_via_pb_r();
|
||||
|
||||
void raaspec_map(address_map &map);
|
||||
|
||||
private:
|
||||
required_ioport m_io_coin;
|
||||
};
|
||||
|
||||
|
@ -154,6 +154,8 @@ void galaxold_state::init_4in1()
|
||||
/* games are banked at 0x0000 - 0x3fff */
|
||||
membank("bank1")->configure_entries(0, 4, &RAM[0x10000], 0x4000);
|
||||
|
||||
std::fill(std::begin(m_gfxbank), std::end(m_gfxbank), 0);
|
||||
|
||||
_4in1_bank_w(0); /* set the initial CPU bank */
|
||||
|
||||
save_item(NAME(m__4in1_bank));
|
||||
|
@ -1071,21 +1071,18 @@ void snes_state::machine_start()
|
||||
|
||||
snes_init_timers();
|
||||
|
||||
for (int i = 0; i < 8; i++)
|
||||
{
|
||||
save_item(NAME(m_dma_channel[i].dmap), i);
|
||||
save_item(NAME(m_dma_channel[i].dest_addr), i);
|
||||
save_item(NAME(m_dma_channel[i].src_addr), i);
|
||||
save_item(NAME(m_dma_channel[i].bank), i);
|
||||
save_item(NAME(m_dma_channel[i].trans_size), i);
|
||||
save_item(NAME(m_dma_channel[i].ibank), i);
|
||||
save_item(NAME(m_dma_channel[i].hdma_addr), i);
|
||||
save_item(NAME(m_dma_channel[i].hdma_iaddr), i);
|
||||
save_item(NAME(m_dma_channel[i].hdma_line_counter), i);
|
||||
save_item(NAME(m_dma_channel[i].unk), i);
|
||||
save_item(NAME(m_dma_channel[i].do_transfer), i);
|
||||
save_item(NAME(m_dma_channel[i].dma_disabled), i);
|
||||
}
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, dmap));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, dest_addr));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, src_addr));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, bank));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, trans_size));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, ibank));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, hdma_addr));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, hdma_iaddr));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, hdma_line_counter));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, unk));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, do_transfer));
|
||||
save_item(STRUCT_MEMBER(m_dma_channel, dma_disabled));
|
||||
|
||||
save_item(NAME(m_hblank_offset));
|
||||
save_item(NAME(m_wram_address));
|
||||
@ -1107,6 +1104,7 @@ void snes_state::machine_start()
|
||||
m_input_disabled = 0;
|
||||
m_game_over_flag = 0;
|
||||
m_joy_flag = 1;
|
||||
m_wram_address = 0;
|
||||
}
|
||||
|
||||
void snes_state::machine_reset()
|
||||
|
@ -612,6 +612,8 @@ void trs80m3_state::machine_reset()
|
||||
port_9c_w(1); // 4P - enable rom
|
||||
if (m_model4 & 6)
|
||||
port_84_w(0); // 4 & 4P - switch in devices
|
||||
|
||||
m_floppy = nullptr;
|
||||
}
|
||||
|
||||
|
||||
|
@ -123,8 +123,6 @@ TIMER_CALLBACK_MEMBER(vectrex_base_state::vectrex_refresh)
|
||||
|
||||
uint32_t vectrex_base_state::screen_update_vectrex(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
||||
{
|
||||
int i;
|
||||
|
||||
vectrex_configuration();
|
||||
|
||||
/* start black */
|
||||
@ -133,7 +131,7 @@ uint32_t vectrex_base_state::screen_update_vectrex(screen_device &screen, bitmap
|
||||
m_points[m_display_start].col,
|
||||
0);
|
||||
|
||||
for (i = m_display_start; i != m_display_end; i = (i + 1) % NVECT)
|
||||
for (int i = m_display_start; i != m_display_end; i = (i + 1) % NVECT)
|
||||
{
|
||||
m_vector->add_point(m_points[i].x,
|
||||
m_points[i].y,
|
||||
@ -245,6 +243,14 @@ void vectrex_base_state::video_start()
|
||||
vector_add_point_function = &vectrex_base_state::vectrex_add_point;
|
||||
|
||||
m_refresh = timer_alloc(TIMER_VECTREX_REFRESH);
|
||||
|
||||
m_display_start = 0;
|
||||
m_display_end = 0;
|
||||
m_reset_refresh = 0;
|
||||
m_blank = 0;
|
||||
m_ramp = 0;
|
||||
std::fill(std::begin(m_analog), std::end(m_analog), 0);
|
||||
m_point_index = 0;
|
||||
}
|
||||
|
||||
void vectrex_state::video_start()
|
||||
|
Loading…
Reference in New Issue
Block a user