mirror of
https://github.com/holub/mame
synced 2025-07-02 16:49:22 +03:00
smartboard: fix problem when playing with leds disabled
This commit is contained in:
parent
0c9791b00f
commit
3da3d50d47
@ -36,7 +36,6 @@ notes:
|
|||||||
TODO:
|
TODO:
|
||||||
- bootrom disable timer shouldn't be needed, real ARM has already fetched the next opcode
|
- bootrom disable timer shouldn't be needed, real ARM has already fetched the next opcode
|
||||||
- sound is too high pitched, same problem as in risc2500
|
- sound is too high pitched, same problem as in risc2500
|
||||||
- "disable leds" setting breaks smartboard controls
|
|
||||||
|
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
|
@ -278,10 +278,10 @@ u8 tasc_sb30_device::read()
|
|||||||
|
|
||||||
void tasc_sb30_device::write(u8 data)
|
void tasc_sb30_device::write(u8 data)
|
||||||
{
|
{
|
||||||
if (BIT(data, 3) && !BIT(m_data, 3))
|
if (!BIT(data, 3) && BIT(m_data, 3))
|
||||||
m_position = 0;
|
m_position = 0;
|
||||||
|
|
||||||
if (BIT(data, 6) && !BIT(m_data, 6))
|
if (!BIT(data, 6) && BIT(m_data, 6))
|
||||||
{
|
{
|
||||||
if (m_position < 0x40)
|
if (m_position < 0x40)
|
||||||
{
|
{
|
||||||
@ -289,17 +289,16 @@ void tasc_sb30_device::write(u8 data)
|
|||||||
int y = m_position % 8;
|
int y = m_position % 8;
|
||||||
m_out_leds[y][x] = BIT(data, 7);
|
m_out_leds[y][x] = BIT(data, 7);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_shift = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!BIT(data, 7) && BIT(m_data, 7))
|
if (!BIT(data, 7) && BIT(m_data, 7))
|
||||||
{
|
{
|
||||||
m_position++;
|
m_position++;
|
||||||
if (m_position >= 0x40)
|
|
||||||
{
|
if (m_position == 0x40)
|
||||||
m_shift++;
|
m_shift++;
|
||||||
if (m_position & 1)
|
|
||||||
m_shift = 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_data = data;
|
m_data = data;
|
||||||
|
Loading…
Reference in New Issue
Block a user