mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
h8_timer8: remove unneeded timer_tick function,
mastmind: replace internal artwork hacky V with checkmark icon
This commit is contained in:
parent
4505d5459f
commit
22dc01243f
@ -238,6 +238,7 @@ void h8_timer16_channel_device::update_counter(u64 cur_time)
|
||||
}
|
||||
|
||||
u64 base_time = m_last_clock_update;
|
||||
m_last_clock_update = cur_time;
|
||||
u64 new_time = cur_time;
|
||||
if(m_clock_divider) {
|
||||
base_time = (base_time + m_phase) >> m_clock_divider;
|
||||
@ -289,7 +290,6 @@ void h8_timer16_channel_device::update_counter(u64 cur_time)
|
||||
logerror("decrementing counter\n");
|
||||
exit(1);
|
||||
}
|
||||
m_last_clock_update = cur_time;
|
||||
}
|
||||
|
||||
void h8_timer16_channel_device::recalc_event(u64 cur_time)
|
||||
|
@ -212,21 +212,22 @@ u64 h8_timer8_channel_device::internal_update(u64 current_time)
|
||||
return m_event_time;
|
||||
}
|
||||
|
||||
void h8_timer8_channel_device::update_counter(u64 cur_time)
|
||||
void h8_timer8_channel_device::update_counter(u64 cur_time, u64 delta)
|
||||
{
|
||||
if(m_clock_type != DIV)
|
||||
return;
|
||||
if(m_clock_type == DIV) {
|
||||
if(!cur_time)
|
||||
cur_time = m_cpu->total_cycles();
|
||||
|
||||
if(!cur_time)
|
||||
cur_time = m_cpu->total_cycles();
|
||||
u64 base_time = (m_last_clock_update + m_clock_divider/2) / m_clock_divider;
|
||||
m_last_clock_update = cur_time;
|
||||
u64 new_time = (cur_time + m_clock_divider/2) / m_clock_divider;
|
||||
delta = new_time - base_time;
|
||||
}
|
||||
|
||||
u64 base_time = (m_last_clock_update + m_clock_divider/2) / m_clock_divider;
|
||||
u64 new_time = (cur_time + m_clock_divider/2) / m_clock_divider;
|
||||
if(new_time == base_time)
|
||||
if(!delta)
|
||||
return;
|
||||
|
||||
u8 prev = m_tcnt;
|
||||
u64 delta = new_time - base_time;
|
||||
u64 tt = m_tcnt + delta;
|
||||
|
||||
if(prev >= m_counter_cycle) {
|
||||
@ -264,7 +265,6 @@ void h8_timer8_channel_device::update_counter(u64 cur_time)
|
||||
m_intc->internal_interrupt(m_irq_v);
|
||||
}
|
||||
}
|
||||
m_last_clock_update = cur_time;
|
||||
}
|
||||
|
||||
void h8_timer8_channel_device::recalc_event(u64 cur_time)
|
||||
@ -317,45 +317,13 @@ void h8_timer8_channel_device::recalc_event(u64 cur_time)
|
||||
void h8_timer8_channel_device::chained_timer_overflow()
|
||||
{
|
||||
if(m_clock_type == CHAIN_OVERFLOW)
|
||||
timer_tick();
|
||||
update_counter(0, 1);
|
||||
}
|
||||
|
||||
void h8_timer8_channel_device::chained_timer_tcora()
|
||||
{
|
||||
if(m_clock_type == CHAIN_A)
|
||||
timer_tick();
|
||||
}
|
||||
|
||||
void h8_timer8_channel_device::timer_tick()
|
||||
{
|
||||
m_tcnt++;
|
||||
|
||||
if(m_tcnt == m_tcor[0]) {
|
||||
if(m_chained_timer)
|
||||
m_chained_timer->chained_timer_tcora();
|
||||
|
||||
if(!(m_tcsr & TCSR_CMFA)) {
|
||||
m_tcsr |= TCSR_CMFA;
|
||||
if(m_tcr & TCR_CMIEA)
|
||||
m_intc->internal_interrupt(m_irq_ca);
|
||||
}
|
||||
}
|
||||
|
||||
if(!(m_tcsr & TCSR_CMFB) && m_tcnt == m_tcor[1]) {
|
||||
m_tcsr |= TCSR_CMFB;
|
||||
if(m_tcr & TCR_CMIEB)
|
||||
m_intc->internal_interrupt(m_irq_cb);
|
||||
}
|
||||
|
||||
if(m_tcnt == 0x00) {
|
||||
if(m_chained_timer)
|
||||
m_chained_timer->chained_timer_overflow();
|
||||
if(!(m_tcsr & TCSR_OVF)) {
|
||||
m_tcsr |= TCSR_OVF;
|
||||
if(m_tcr & TCR_OVIE)
|
||||
m_intc->internal_interrupt(m_irq_v);
|
||||
}
|
||||
}
|
||||
update_counter(0, 1);
|
||||
}
|
||||
|
||||
h8h_timer8_channel_device::h8h_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) :
|
||||
|
@ -100,10 +100,9 @@ protected:
|
||||
virtual void device_start() override;
|
||||
virtual void device_reset() override;
|
||||
|
||||
void update_counter(u64 cur_time = 0);
|
||||
void update_counter(u64 cur_time = 0, u64 delta = 0);
|
||||
void recalc_event(u64 cur_time = 0);
|
||||
|
||||
void timer_tick();
|
||||
void update_tcr();
|
||||
};
|
||||
|
||||
|
@ -9,22 +9,20 @@ authors:hap
|
||||
|
||||
<element name="mul"><rect><color red="0.5" green="0.4" blue="0.05" /></rect></element>
|
||||
|
||||
<element name="text_1"><text string="1"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_2"><text string="2"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_3"><text string="3"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_4"><text string="4"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_5"><text string="5"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_x"><text string="X"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_1"><text string="1"></text></element>
|
||||
<element name="text_2"><text string="2"></text></element>
|
||||
<element name="text_3"><text string="3"></text></element>
|
||||
<element name="text_4"><text string="4"></text></element>
|
||||
<element name="text_5"><text string="5"></text></element>
|
||||
<element name="text_x"><text string="X"></text></element>
|
||||
|
||||
<element name="text_v">
|
||||
<text string="V">
|
||||
<bounds x="0" y="0" width="1" height="1" />
|
||||
<color red="1" green="1" blue="1" />
|
||||
</text>
|
||||
<disk>
|
||||
<bounds x="0" y="0" width="0.5" height="0.5" />
|
||||
<color red="0" green="0" blue="0" />
|
||||
</disk>
|
||||
<!-- flat checkmark icon, (C) Icons8, MIT license -->
|
||||
<element name="checkmark">
|
||||
<image><data><![CDATA[
|
||||
<svg xmlns="http://www.w3.org/2000/svg" version="1.0" width="48" height="48" viewBox="0 0 48 48">
|
||||
<polygon fill="#ffffff" points="40.6,12.1 17,35.7 7.4,26.1 4.6,29 17,41.3 43.4,14.9"/>
|
||||
</svg>
|
||||
]]></data></image>
|
||||
</element>
|
||||
|
||||
<element name="digit" defstate="0">
|
||||
@ -43,7 +41,7 @@ authors:hap
|
||||
<element ref="text_3"><bounds x="40" y="0" width="10" height="10" /></element>
|
||||
<element ref="text_4"><bounds x="50" y="0" width="10" height="10" /></element>
|
||||
<element ref="text_5"><bounds x="60" y="0" width="10" height="10" /></element>
|
||||
<element ref="text_v"><bounds x="80" y="0" width="10" height="10" /></element>
|
||||
<element ref="checkmark"><bounds xc="85" y="0.0" width="8.5" height="9.6" /></element>
|
||||
<element ref="text_x"><bounds x="90" y="0" width="10" height="10" /></element>
|
||||
|
||||
<element ref="mul" blend="multiply"><bounds x="8" y="0" width="94" height="28" /></element>
|
||||
|
@ -9,27 +9,25 @@ authors:hap
|
||||
|
||||
<element name="mul"><rect><color red="0.5" green="0.4" blue="0.05" /></rect></element>
|
||||
|
||||
<element name="text_l1"><text string="MIN"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_l2"><text string="SEC"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_l3"><text string="TRY"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_l1"><text string="MIN"></text></element>
|
||||
<element name="text_l2"><text string="SEC"></text></element>
|
||||
<element name="text_l3"><text string="TRY"></text></element>
|
||||
|
||||
<element name="text_1"><text string="1"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_2"><text string="2"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_3"><text string="3"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_4"><text string="4"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_5"><text string="5"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_6"><text string="6"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_x"><text string="X"><color red="1" green="1" blue="1" /></text></element>
|
||||
<element name="text_1"><text string="1"></text></element>
|
||||
<element name="text_2"><text string="2"></text></element>
|
||||
<element name="text_3"><text string="3"></text></element>
|
||||
<element name="text_4"><text string="4"></text></element>
|
||||
<element name="text_5"><text string="5"></text></element>
|
||||
<element name="text_6"><text string="6"></text></element>
|
||||
<element name="text_x"><text string="X"></text></element>
|
||||
|
||||
<element name="text_v">
|
||||
<text string="V">
|
||||
<bounds x="0" y="0" width="1" height="1" />
|
||||
<color red="1" green="1" blue="1" />
|
||||
</text>
|
||||
<disk>
|
||||
<bounds x="0" y="0" width="0.5" height="0.5" />
|
||||
<color red="0" green="0" blue="0" />
|
||||
</disk>
|
||||
<!-- flat checkmark icon, (C) Icons8, MIT license -->
|
||||
<element name="checkmark">
|
||||
<image><data><![CDATA[
|
||||
<svg xmlns="http://www.w3.org/2000/svg" version="1.0" width="48" height="48" viewBox="0 0 48 48">
|
||||
<polygon fill="#ffffff" points="40.6,12.1 17,35.7 7.4,26.1 4.6,29 17,41.3 43.4,14.9"/>
|
||||
</svg>
|
||||
]]></data></image>
|
||||
</element>
|
||||
|
||||
<element name="digit" defstate="0">
|
||||
@ -49,7 +47,7 @@ authors:hap
|
||||
<element ref="text_4"><bounds x="40" y="0" width="10" height="10" /></element>
|
||||
<element ref="text_5"><bounds x="50" y="0" width="10" height="10" /></element>
|
||||
<element ref="text_6"><bounds x="60" y="0" width="10" height="10" /></element>
|
||||
<element ref="text_v"><bounds x="80" y="0" width="10" height="10" /></element>
|
||||
<element ref="checkmark"><bounds xc="85" y="0.0" width="8.5" height="9.6" /></element>
|
||||
<element ref="text_x"><bounds x="90" y="0" width="10" height="10" /></element>
|
||||
|
||||
<element ref="text_l1"><bounds x="10" y="26" width="20" height="5" /></element>
|
||||
|
@ -219,12 +219,14 @@
|
||||
*******************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
|
||||
#include "cpu/h8/h83002.h"
|
||||
//#include "cpu/h8/h83006.h"
|
||||
#include "sound/ymz280b.h"
|
||||
#include "machine/i2cmem.h"
|
||||
#include "machine/msm6242.h"
|
||||
#include "video/ramdac.h"
|
||||
|
||||
#include "emupal.h"
|
||||
#include "screen.h"
|
||||
#include "speaker.h"
|
||||
@ -250,9 +252,6 @@ public:
|
||||
, m_palette(*this, "palette%u", 0U)
|
||||
{ }
|
||||
|
||||
void init_colorama();
|
||||
void init_cmrltv75();
|
||||
|
||||
void coinmvga(machine_config &config);
|
||||
|
||||
protected:
|
||||
@ -938,19 +937,6 @@ ROM_START( cmkenospa )
|
||||
ROM_LOAD( "rwc497ym.sp4", 0x300000, 0x100000, CRC(b5729ae7) SHA1(0e63fbb81ff5f2fef3c653f769db8073dff1214b) )
|
||||
ROM_END
|
||||
|
||||
|
||||
/*************************
|
||||
* Driver Init *
|
||||
*************************/
|
||||
|
||||
void coinmvga_state::init_colorama()
|
||||
{
|
||||
}
|
||||
|
||||
void coinmvga_state::init_cmrltv75()
|
||||
{
|
||||
}
|
||||
|
||||
} // anonymous namespace
|
||||
|
||||
|
||||
@ -958,11 +944,11 @@ void coinmvga_state::init_cmrltv75()
|
||||
* Game Drivers *
|
||||
*************************/
|
||||
|
||||
// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS
|
||||
GAME( 2000, colorama, 0, coinmvga, coinmvga, coinmvga_state, init_colorama, ROT0, "Coinmaster-Gaming, Ltd.", "Colorama (P521, English)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, coloramas, colorama, coinmvga, coinmvga, coinmvga_state, init_colorama, ROT0, "Coinmaster-Gaming, Ltd.", "Colorama (P521 V13, Spanish)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, wof_v16, 0, coinmvga, coinmvga, coinmvga_state, init_colorama, ROT0, "Coinmaster-Gaming, Ltd.", "Wheel of Fortune (P517 V16, English)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, wof_v11, wof_v16, coinmvga, coinmvga, coinmvga_state, init_colorama, ROT0, "Coinmaster-Gaming, Ltd.", "Wheel of Fortune (P517 V11, English)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2001, cmrltv75, 0, coinmvga, coinmvga, coinmvga_state, init_cmrltv75, ROT90, "Coinmaster-Gaming, Ltd.", "Coinmaster Roulette P497 V75 (Y2K, Spanish)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, cmkenosp, 0, coinmvga, coinmvga, coinmvga_state, empty_init, ROT90, "Coinmaster-Gaming, Ltd.", "Coinmaster Keno (Y2K, Spanish, 2000-12-14)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, cmkenospa, cmkenosp, coinmvga, coinmvga, coinmvga_state, empty_init, ROT90, "Coinmaster-Gaming, Ltd.", "Coinmaster Keno (Y2K, Spanish, 2000-12-02)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS
|
||||
GAME( 2000, colorama, 0, coinmvga, coinmvga, coinmvga_state, empty_init, ROT0, "Coinmaster-Gaming, Ltd.", "Colorama (P521, English)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, coloramas, colorama, coinmvga, coinmvga, coinmvga_state, empty_init, ROT0, "Coinmaster-Gaming, Ltd.", "Colorama (P521 V13, Spanish)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, wof_v16, 0, coinmvga, coinmvga, coinmvga_state, empty_init, ROT0, "Coinmaster-Gaming, Ltd.", "Wheel of Fortune (P517 V16, English)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, wof_v11, wof_v16, coinmvga, coinmvga, coinmvga_state, empty_init, ROT0, "Coinmaster-Gaming, Ltd.", "Wheel of Fortune (P517 V11, English)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2001, cmrltv75, 0, coinmvga, coinmvga, coinmvga_state, empty_init, ROT90, "Coinmaster-Gaming, Ltd.", "Coinmaster Roulette P497 V75 (Y2K, Spanish)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, cmkenosp, 0, coinmvga, coinmvga, coinmvga_state, empty_init, ROT90, "Coinmaster-Gaming, Ltd.", "Coinmaster Keno (Y2K, Spanish, 2000-12-14)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
GAME( 2000, cmkenospa, cmkenosp, coinmvga, coinmvga, coinmvga_state, empty_init, ROT90, "Coinmaster-Gaming, Ltd.", "Coinmaster Keno (Y2K, Spanish, 2000-12-02)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
Nazionale Elettronica + others (mostly Italian) Gambling games
|
||||
mostly based on H8/3048 + OKI 6295 or similar.
|
||||
.
|
||||
|
||||
These all use MCUs with internal ROM for their programs,
|
||||
they can't be dumped easily, and thus we can't emulate
|
||||
them at the moment because there is nothing to emulate
|
||||
|
Loading…
Reference in New Issue
Block a user