srcclean and cleanup.
This commit is contained in:
parent
aa32b6e89b
commit
f55e7d697c
@ -1052,7 +1052,7 @@ RAND USR 16530
|
|||||||
<publisher>JRS Software</publisher>
|
<publisher>JRS Software</publisher>
|
||||||
<part name="cass1" interface="zx81_cass">
|
<part name="cass1" interface="zx81_cass">
|
||||||
<dataarea name="cass" size="12944">
|
<dataarea name="cass" size="12944">
|
||||||
<rom name="Battleships (JRS).tzx" size="12944" crc="37f693fb " sha1="1a0df19df7562be4cdb36f92d066af2fc32d01b8"/>
|
<rom name="Battleships (JRS).tzx" size="12944" crc="37f693fb" sha1="1a0df19df7562be4cdb36f92d066af2fc32d01b8"/>
|
||||||
</dataarea>
|
</dataarea>
|
||||||
</part>
|
</part>
|
||||||
</software>
|
</software>
|
||||||
|
@ -34,7 +34,7 @@ protected:
|
|||||||
private:
|
private:
|
||||||
required_device_array<vcs_control_port_device, 2> m_joy;
|
required_device_array<vcs_control_port_device, 2> m_joy;
|
||||||
|
|
||||||
u8 m_ddr;
|
u8 m_ddr;
|
||||||
};
|
};
|
||||||
|
|
||||||
// device type definition
|
// device type definition
|
||||||
|
@ -183,14 +183,14 @@ void zr36057_device::asr_map(address_map &map)
|
|||||||
LOG("\tVSPOL %d VSTART %d VEND %d\n", m_vfe.vspol, m_vfe.vstart, m_vfe.vend);
|
LOG("\tVSPOL %d VSTART %d VEND %d\n", m_vfe.vspol, m_vfe.vstart, m_vfe.vend);
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
// map(0x008, 0x00b) VFE Config, Video Scaler and Pixel Format
|
// map(0x008, 0x00b) VFE Config, Video Scaler and Pixel Format
|
||||||
// map(0x00c, 0x00f) Video Display Top
|
// map(0x00c, 0x00f) Video Display Top
|
||||||
// map(0x010, 0x013) Video Display Bottom
|
// map(0x010, 0x013) Video Display Bottom
|
||||||
// map(0x014, 0x017) Video Display Stride, Status and Frame Grab
|
// map(0x014, 0x017) Video Display Stride, Status and Frame Grab
|
||||||
// map(0x018, 0x01b) Video Display Configuration
|
// map(0x018, 0x01b) Video Display Configuration
|
||||||
// map(0x01c, 0x01f) Masking Map Top
|
// map(0x01c, 0x01f) Masking Map Top
|
||||||
// map(0x020, 0x023) Masking Map Bottom
|
// map(0x020, 0x023) Masking Map Bottom
|
||||||
// map(0x024, 0x027) Overlay Control
|
// map(0x024, 0x027) Overlay Control
|
||||||
map(0x028, 0x02b).lrw32(
|
map(0x028, 0x02b).lrw32(
|
||||||
NAME([this] (offs_t offset) {
|
NAME([this] (offs_t offset) {
|
||||||
return (m_softreset << 24) | (m_pci_waitstate_control << 16) | m_gpio_ddr;
|
return (m_softreset << 24) | (m_pci_waitstate_control << 16) | m_gpio_ddr;
|
||||||
@ -243,11 +243,11 @@ void zr36057_device::asr_map(address_map &map)
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
// map(0x030, 0x033) MPEG Code Source Address
|
// map(0x030, 0x033) MPEG Code Source Address
|
||||||
// map(0x034, 0x037) MPEG Code Transfer Control
|
// map(0x034, 0x037) MPEG Code Transfer Control
|
||||||
// map(0x038, 0x03b) MPEG Code Memory Pointer
|
// map(0x038, 0x03b) MPEG Code Memory Pointer
|
||||||
// map(0x03c, 0x03f) Interrupt Status
|
// map(0x03c, 0x03f) Interrupt Status
|
||||||
// map(0x040, 0x043) Interrupt Control
|
// map(0x040, 0x043) Interrupt Control
|
||||||
map(0x044, 0x047).lrw32(
|
map(0x044, 0x047).lrw32(
|
||||||
NAME([this] (offs_t offset) {
|
NAME([this] (offs_t offset) {
|
||||||
LOG("I2C R\n");
|
LOG("I2C R\n");
|
||||||
@ -264,15 +264,15 @@ void zr36057_device::asr_map(address_map &map)
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
// map(0x100, 0x103) JPEG Mode and Control
|
// map(0x100, 0x103) JPEG Mode and Control
|
||||||
// map(0x104, 0x107) JPEG Process Control
|
// map(0x104, 0x107) JPEG Process Control
|
||||||
// map(0x108, 0x10b) Vertical Sync Parameters (as sync master)
|
// map(0x108, 0x10b) Vertical Sync Parameters (as sync master)
|
||||||
// map(0x10c, 0x10f) Horizontal Sync Parameters (as sync master)
|
// map(0x10c, 0x10f) Horizontal Sync Parameters (as sync master)
|
||||||
// map(0x110, 0x113) Field Horizontal Active Portion
|
// map(0x110, 0x113) Field Horizontal Active Portion
|
||||||
// map(0x114, 0x117) Field Vertical Active Portion
|
// map(0x114, 0x117) Field Vertical Active Portion
|
||||||
// map(0x118, 0x11b) Field Process Parameters
|
// map(0x118, 0x11b) Field Process Parameters
|
||||||
// map(0x11c, 0x11f) JPEG Code Base Address
|
// map(0x11c, 0x11f) JPEG Code Base Address
|
||||||
// map(0x120, 0x123) JPEG Code FIFO Threshold
|
// map(0x120, 0x123) JPEG Code FIFO Threshold
|
||||||
map(0x124, 0x124).lrw8(
|
map(0x124, 0x124).lrw8(
|
||||||
NAME([this] (offs_t offset) {
|
NAME([this] (offs_t offset) {
|
||||||
LOG("JPEG Codec Guest ID R\n");
|
LOG("JPEG Codec Guest ID R\n");
|
||||||
@ -308,7 +308,7 @@ void zr36057_device::asr_map(address_map &map)
|
|||||||
);
|
);
|
||||||
|
|
||||||
map(0x200, 0x2ff).rw(FUNC(zr36057_device::postoffice_r), FUNC(zr36057_device::postoffice_w));
|
map(0x200, 0x2ff).rw(FUNC(zr36057_device::postoffice_r), FUNC(zr36057_device::postoffice_w));
|
||||||
// map(0x300, 0x303) Still Transfer
|
// map(0x300, 0x303) Still Transfer
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: PostOffice accesses thru GuestBus are dictated with PCI clock cycles, asynchronous
|
// TODO: PostOffice accesses thru GuestBus are dictated with PCI clock cycles, asynchronous
|
||||||
@ -317,10 +317,10 @@ void zr36057_device::asr_map(address_map &map)
|
|||||||
// This should eventually be expressed in a osd_work_queue, with guestbus address_space roughly as:
|
// This should eventually be expressed in a osd_work_queue, with guestbus address_space roughly as:
|
||||||
// for (int i = 0; i < 8; i++)
|
// for (int i = 0; i < 8; i++)
|
||||||
// {
|
// {
|
||||||
// if (<is_device_installed>)
|
// if (<is_device_installed>)
|
||||||
// map(0 | (i << 2), 3 | (i << 2)).flags(<fn>).m(m_guest[i], map);
|
// map(0 | (i << 2), 3 | (i << 2)).flags(<fn>).m(m_guest[i], map);
|
||||||
// else
|
// else
|
||||||
// map(0 | (i << 2), 3 | (i << 2)).flags(<abort_fn>);
|
// map(0 | (i << 2), 3 | (i << 2)).flags(<abort_fn>);
|
||||||
// }
|
// }
|
||||||
u32 zr36057_device::postoffice_r(offs_t offset)
|
u32 zr36057_device::postoffice_r(offs_t offset)
|
||||||
{
|
{
|
||||||
|
@ -1104,8 +1104,8 @@ void tmp94c241_device::tlcs900_handle_timers()
|
|||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
/* Not yet implemented.
|
/* Not yet implemented.
|
||||||
- For the 8 bit timers: TIO, TO0TRG, invalid and TO2TRG
|
- For the 8 bit timers: TIO, TO0TRG, invalid and TO2TRG
|
||||||
- For all 16 bit timers: TIA
|
- For all 16 bit timers: TIA
|
||||||
*/
|
*/
|
||||||
break;
|
break;
|
||||||
case 1: m_timer_change[timer_index] += ((m_timer_pre >> s1) - (old_pre >> s1)); break;
|
case 1: m_timer_change[timer_index] += ((m_timer_pre >> s1) - (old_pre >> s1)); break;
|
||||||
@ -1167,10 +1167,10 @@ void tmp94c241_device::tlcs900_handle_timers()
|
|||||||
uint8_t interrupt)
|
uint8_t interrupt)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
timer_id 4 => m_timer_16[0] m_timer_change[4]
|
timer_id 4 => m_timer_16[0] m_timer_change[4]
|
||||||
timer_id 6 => m_timer_16[1] m_timer_change[5]
|
timer_id 6 => m_timer_16[1] m_timer_change[5]
|
||||||
timer_id 8 => m_timer_16[2] m_timer_change[6]
|
timer_id 8 => m_timer_16[2] m_timer_change[6]
|
||||||
timer_id A => m_timer_16[3] m_timer_change[7]
|
timer_id A => m_timer_16[3] m_timer_change[7]
|
||||||
*/
|
*/
|
||||||
uint8_t timer_index = (timer_id - 4)/2;
|
uint8_t timer_index = (timer_id - 4)/2;
|
||||||
|
|
||||||
|
@ -3,15 +3,15 @@
|
|||||||
|
|
||||||
/***************************************************************************
|
/***************************************************************************
|
||||||
|
|
||||||
Casio GT155 (HG51B155FD)
|
Casio GT155 (HG51B155FD)
|
||||||
|
|
||||||
This is the sound generator and DSP used in various higher-end
|
This is the sound generator and DSP used in various higher-end
|
||||||
"A-Squared Sound Source" keyboards and pianos between roughly 1994-2001.
|
"A-Squared Sound Source" keyboards and pianos between roughly 1994-2001.
|
||||||
|
|
||||||
TODO:
|
TODO:
|
||||||
- verify per-voice lowpass filter behavior
|
- verify per-voice lowpass filter behavior
|
||||||
- DSP (architecture/instruction set seems to be the same as the standalone
|
- DSP (architecture/instruction set seems to be the same as the standalone
|
||||||
"GD277" DSP used in other contemporary keyboards)
|
"GD277" DSP used in other contemporary keyboards)
|
||||||
|
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
@ -35,33 +35,33 @@ void zr36060_device::device_reset()
|
|||||||
|
|
||||||
void zr36060_device::regs_map(address_map &map)
|
void zr36060_device::regs_map(address_map &map)
|
||||||
{
|
{
|
||||||
// map(0x000, 0x000) LOAD Parameters
|
// map(0x000, 0x000) LOAD Parameters
|
||||||
// map(0x001, 0x001) Code FIFO Status (r/o)
|
// map(0x001, 0x001) Code FIFO Status (r/o)
|
||||||
// map(0x002, 0x002) Code Interface
|
// map(0x002, 0x002) Code Interface
|
||||||
// map(0x003, 0x003) Codec Mode
|
// map(0x003, 0x003) Codec Mode
|
||||||
|
|
||||||
// map(0x005, 0x005) Maximum Block Code
|
// map(0x005, 0x005) Maximum Block Code
|
||||||
// map(0x006, 0x006) Markers Enable
|
// map(0x006, 0x006) Markers Enable
|
||||||
// map(0x007, 0x007) Interrupt Mask
|
// map(0x007, 0x007) Interrupt Mask
|
||||||
// map(0x008, 0x008) Interrupt Status (r/o)
|
// map(0x008, 0x008) Interrupt Status (r/o)
|
||||||
// map(0x009, 0x00c) Target Net Code Volume
|
// map(0x009, 0x00c) Target Net Code Volume
|
||||||
// map(0x00d, 0x010) Target Data Code Volume
|
// map(0x00d, 0x010) Target Data Code Volume
|
||||||
// map(0x011, 0x012) Scale Factor
|
// map(0x011, 0x012) Scale Factor
|
||||||
// map(0x013, 0x015) Allocation Factor
|
// map(0x013, 0x015) Allocation Factor
|
||||||
// map(0x016, 0x019) Accumulated Code Volume
|
// map(0x016, 0x019) Accumulated Code Volume
|
||||||
// map(0x01a, 0x01d) Accumulated Total Activity
|
// map(0x01a, 0x01d) Accumulated Total Activity
|
||||||
// map(0x01e, 0x021) Accumulated Truncated Bits
|
// map(0x01e, 0x021) Accumulated Truncated Bits
|
||||||
map(0x022, 0x022).lr8(NAME([this] (offs_t offset) { LOG("Read Device ID\n"); return 0x33; }));
|
map(0x022, 0x022).lr8(NAME([this] (offs_t offset) { LOG("Read Device ID\n"); return 0x33; }));
|
||||||
map(0x023, 0x023).lr8(NAME([this] (offs_t offset) { LOG("Read Revision ID\n"); return 0x01; }));
|
map(0x023, 0x023).lr8(NAME([this] (offs_t offset) { LOG("Read Revision ID\n"); return 0x01; }));
|
||||||
// map(0x024, 0x025) Test Control
|
// map(0x024, 0x025) Test Control
|
||||||
|
|
||||||
// map(0x030, 0x030) Video Control
|
// map(0x030, 0x030) Video Control
|
||||||
// map(0x031, 0x031) Video Polarity
|
// map(0x031, 0x031) Video Polarity
|
||||||
// map(0x032, 0x032) Scaling
|
// map(0x032, 0x032) Scaling
|
||||||
// map(0x033, 0x035) Background Color
|
// map(0x033, 0x035) Background Color
|
||||||
// map(0x036, 0x041) Sync Generator
|
// map(0x036, 0x041) Sync Generator
|
||||||
// map(0x042, 0x049) Active Area
|
// map(0x042, 0x049) Active Area
|
||||||
// map(0x04a, 0x051) SUBIMG Window
|
// map(0x04a, 0x051) SUBIMG Window
|
||||||
|
|
||||||
map(0x060, 0x3ff).ram(); // JPEG Markers Array
|
map(0x060, 0x3ff).ram(); // JPEG Markers Array
|
||||||
}
|
}
|
||||||
|
@ -887,8 +887,8 @@ cassette_image::error cassette_image::legacy_construct(const LegacyWaveFiller *l
|
|||||||
without knowing how much data available in the image. Having wrong header with size bigger than image couses illegal
|
without knowing how much data available in the image. Having wrong header with size bigger than image couses illegal
|
||||||
access beyond image data.
|
access beyond image data.
|
||||||
Desired state is:
|
Desired state is:
|
||||||
length = args.fill_wave(&samples[pos], args.chunk_size, chunk.get());
|
length = args.fill_wave(&samples[pos], args.chunk_size, chunk.get());
|
||||||
aslo the fix for tap is commented out in 'tap_cas_fill_wave'
|
aslo the fix for tap is commented out in 'tap_cas_fill_wave'
|
||||||
*/
|
*/
|
||||||
length = args.fill_wave(&samples[pos], sample_count - pos, chunk.get());
|
length = args.fill_wave(&samples[pos], sample_count - pos, chunk.get());
|
||||||
if (length < 0)
|
if (length < 0)
|
||||||
|
@ -870,7 +870,7 @@ static int tap_cas_fill_wave(int16_t *buffer, int length, const uint8_t *bytes)
|
|||||||
length -= data_size;
|
length -= data_size;
|
||||||
if (length < 0)
|
if (length < 0)
|
||||||
{
|
{
|
||||||
data_size += length; // Take as much as we can.
|
data_size += length; // Take as much as we can.
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
size += tzx_cas_handle_block(&p, bytes, 1000, data_size, 2168, pilot_length, 667, 735, 855, 1710, 8);
|
size += tzx_cas_handle_block(&p, bytes, 1000, data_size, 2168, pilot_length, 667, 735, 855, 1710, 8);
|
||||||
|
@ -1580,7 +1580,7 @@ static INPUT_PORTS_START( aristmk5 )
|
|||||||
PORT_BIT(0x00200000, IP_ACTIVE_HIGH, IPT_GAMBLE_DOOR) PORT_CODE(KEYCODE_B) PORT_TOGGLE PORT_NAME("Bill acceptor door")
|
PORT_BIT(0x00200000, IP_ACTIVE_HIGH, IPT_GAMBLE_DOOR) PORT_CODE(KEYCODE_B) PORT_TOGGLE PORT_NAME("Bill acceptor door")
|
||||||
PORT_BIT(0x00c00000, IP_ACTIVE_HIGH, IPT_UNUSED) // Unused mechanical security switch
|
PORT_BIT(0x00c00000, IP_ACTIVE_HIGH, IPT_UNUSED) // Unused mechanical security switch
|
||||||
|
|
||||||
PORT_START("P3")
|
PORT_START("P3")
|
||||||
PORT_BIT(0x00000002, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_READ_LINE_MEMBER(FUNC(aristmk5_state::hopper_r))
|
PORT_BIT(0x00000002, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_READ_LINE_MEMBER(FUNC(aristmk5_state::hopper_r))
|
||||||
PORT_BIT(0x000000f8, IP_ACTIVE_HIGH, IPT_CUSTOM) PORT_CUSTOM_MEMBER(FUNC(aristmk5_state::coin_r))
|
PORT_BIT(0x000000f8, IP_ACTIVE_HIGH, IPT_CUSTOM) PORT_CUSTOM_MEMBER(FUNC(aristmk5_state::coin_r))
|
||||||
|
|
||||||
|
@ -244,8 +244,8 @@ void midiverb_dsp_device::sound_stream_update(sound_stream &stream, const std::v
|
|||||||
}
|
}
|
||||||
|
|
||||||
LOG_DSP("%04X %02x - DSP OP: %d %s (%04x), A: %6d, R: %6d, bus: %6d, ram: %6d @ %04x",
|
LOG_DSP("%04X %02x - DSP OP: %d %s (%04x), A: %6d, R: %6d, bus: %6d, ram: %6d @ %04x",
|
||||||
rom_address, pc, op, OP_NAME[op], ram_offset_delta, m_accum,
|
rom_address, pc, op, OP_NAME[op], ram_offset_delta, m_accum,
|
||||||
m_reg, bus_value, m_ram[m_ram_offset], m_ram_offset);
|
m_reg, bus_value, m_ram[m_ram_offset], m_ram_offset);
|
||||||
if (mode_rc0)
|
if (mode_rc0)
|
||||||
LOG_DSP(" [ADC]");
|
LOG_DSP(" [ADC]");
|
||||||
if (ld_dac)
|
if (ld_dac)
|
||||||
|
@ -2,29 +2,29 @@
|
|||||||
// copyright-holders:Devin Acker
|
// copyright-holders:Devin Acker
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Casio WK-1600/1800 series keyboards
|
Casio WK-1600/1800 series keyboards
|
||||||
|
|
||||||
Models on this hardware:
|
Models on this hardware:
|
||||||
- CTK-711EX (1998)
|
- CTK-711EX (1998)
|
||||||
61 keys, 5MB wave ROM
|
61 keys, 5MB wave ROM
|
||||||
- CTK-811EX (1998), CTK-731 (1999)
|
- CTK-811EX (1998), CTK-731 (1999)
|
||||||
61 keys, 5MB wave ROM, floppy drive
|
61 keys, 5MB wave ROM, floppy drive
|
||||||
- WK-1600, WK-1630 (2000)
|
- WK-1600, WK-1630 (2000)
|
||||||
73 keys, 8MB wave ROM
|
73 keys, 8MB wave ROM
|
||||||
- WK-1800 (2000)
|
- WK-1800 (2000)
|
||||||
73 keys, 8MB wave ROM, floppy drive
|
73 keys, 8MB wave ROM, floppy drive
|
||||||
- AP-60R (1999), AP-65R (2001)
|
- AP-60R (1999), AP-65R (2001)
|
||||||
88 keys, 8MB wave ROM, floppy drive
|
88 keys, 8MB wave ROM, floppy drive
|
||||||
|
|
||||||
TODO:
|
TODO:
|
||||||
- fix floppy controller hookup for wk1800. current issues:
|
- fix floppy controller hookup for wk1800. current issues:
|
||||||
- pressing the Disk button with the drive empty starts the drive motor,
|
- pressing the Disk button with the drive empty starts the drive motor,
|
||||||
then the firmware waits forever on some status bit that is never set
|
then the firmware waits forever on some status bit that is never set
|
||||||
- pressing the Disk button with a disk inserted results in several 'forced abort'
|
- pressing the Disk button with a disk inserted results in several 'forced abort'
|
||||||
errors from the H8 DMA controller
|
errors from the H8 DMA controller
|
||||||
- wk1800 firmware seems to rely on different TS bit behavior from the HD63266
|
- wk1800 firmware seems to rely on different TS bit behavior from the HD63266
|
||||||
compared to a standard uPD765
|
compared to a standard uPD765
|
||||||
- add software list for style/program disks
|
- add software list for style/program disks
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
@ -244,8 +244,8 @@ void wk1600_state::wk1600_map(address_map &map)
|
|||||||
void wk1800_state::wk1800_map(address_map &map)
|
void wk1800_state::wk1800_map(address_map &map)
|
||||||
{
|
{
|
||||||
common_map(map);
|
common_map(map);
|
||||||
// map(0x40000, 0x40003).mirror(0x1fffc).m(m_fdc, FUNC(hd63266f_device::map));
|
// map(0x40000, 0x40003).mirror(0x1fffc).m(m_fdc, FUNC(hd63266f_device::map));
|
||||||
// map(0x60000, 0x7ffff).rw(m_fdc, FUNC(hd63266f_device::dma_r), FUNC(hd63266f_device::dma_w));
|
// map(0x60000, 0x7ffff).rw(m_fdc, FUNC(hd63266f_device::dma_r), FUNC(hd63266f_device::dma_w));
|
||||||
map(0x80000, 0xbffff).mirror(0x40000).ram().share("nvram");
|
map(0x80000, 0xbffff).mirror(0x40000).ram().share("nvram");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -118,11 +118,11 @@
|
|||||||
|
|
||||||
The same Baby platform which replaces the I8039 main cpu uP daugther board with:
|
The same Baby platform which replaces the I8039 main cpu uP daugther board with:
|
||||||
|
|
||||||
1x INTEL I8051 CPU Main CPU.
|
1x INTEL I8051 CPU Main CPU.
|
||||||
1x 27C256 Program ROM.
|
1x 27C256 Program ROM.
|
||||||
1x NEC D4364 SRAM Data RAM.
|
1x NEC D4364 SRAM Data RAM.
|
||||||
1x Dallas DS1216 Battery + Timekeeper SRAM Socket.
|
1x Dallas DS1216 Battery + Timekeeper SRAM Socket.
|
||||||
1x Dallas DS12321 Watchdog.
|
1x Dallas DS12321 Watchdog.
|
||||||
1x AM8255APC PPI.
|
1x AM8255APC PPI.
|
||||||
1x SN74HCT373 Octal D-type transparent latch with 3-state outputs.
|
1x SN74HCT373 Octal D-type transparent latch with 3-state outputs.
|
||||||
1x SN74HCT138 3-line to 8-line Inverting Decoder/demultiplexer.
|
1x SN74HCT138 3-line to 8-line Inverting Decoder/demultiplexer.
|
||||||
@ -1471,7 +1471,7 @@ static INPUT_PORTS_START( bpoker )
|
|||||||
PORT_START("PPI_PA")
|
PORT_START("PPI_PA")
|
||||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("SET") PORT_CODE(KEYCODE_A) // Change field value / Last Operations
|
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("SET") PORT_CODE(KEYCODE_A) // Change field value / Last Operations
|
||||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("NEXT") PORT_CODE(KEYCODE_S) // Select next field / Paper Cut (Ticket printer)
|
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("NEXT") PORT_CODE(KEYCODE_S) // Select next field / Paper Cut (Ticket printer)
|
||||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("INIT") PORT_CODE(KEYCODE_D) // Set NVRAM data / Set Time / Set Machine Number & Series
|
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("INIT") PORT_CODE(KEYCODE_D) // Set NVRAM data / Set Time / Set Machine Number & Series
|
||||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("BOOK") PORT_CODE(KEYCODE_F) // Bookeeping / Enter / Exit
|
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("BOOK") PORT_CODE(KEYCODE_F) // Bookeeping / Enter / Exit
|
||||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("PERIOD") PORT_CODE(KEYCODE_G) // Operator Key / NVRAM Clear / Close and Report period
|
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("PERIOD") PORT_CODE(KEYCODE_G) // Operator Key / NVRAM Clear / Close and Report period
|
||||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("pa-5") PORT_CODE(KEYCODE_J)
|
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_NAME("pa-5") PORT_CODE(KEYCODE_J)
|
||||||
|
@ -198,25 +198,25 @@ copyright-holders: Roberto Fresca, Grull Osgo.
|
|||||||
|
|
||||||
<!--
|
<!--
|
||||||
|
|
||||||
// define diverter pulse
|
// define diverter pulse
|
||||||
<element name="lamp7" ref="DSKV">
|
<element name="lamp7" ref="DSKV">
|
||||||
<bounds x="0.02" y="3.02" width="0.08" height="0.08" />
|
<bounds x="0.02" y="3.02" width="0.08" height="0.08" />
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
// define hopper signal 1
|
// define hopper signal 1
|
||||||
<element name="lamp5" ref="DSKR">
|
<element name="lamp5" ref="DSKR">
|
||||||
<bounds x="0.12" y="3.02" width="0.08" height="0.08" />
|
<bounds x="0.12" y="3.02" width="0.08" height="0.08" />
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
// define hopper signal 2
|
// define hopper signal 2
|
||||||
<element name="lamp6" ref="DSKR">
|
<element name="lamp6" ref="DSKR">
|
||||||
<bounds x="0.22" y="3.02" width="0.08" height="0.08" />
|
<bounds x="0.22" y="3.02" width="0.08" height="0.08" />
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
// define coin accepted pulse
|
// define coin accepted pulse
|
||||||
<element name="lamp13" ref="DSKA">
|
<element name="lamp13" ref="DSKA">
|
||||||
<bounds x="0.32" y="3.02" width="0.08" height="0.08" />
|
<bounds x="0.32" y="3.02" width="0.08" height="0.08" />
|
||||||
</element>
|
</element>
|
||||||
|
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
@ -169,8 +169,8 @@ u8 linndrum_state::keyboard_r(offs_t offset)
|
|||||||
if (selected != 0x3f || d7 == 0)
|
if (selected != 0x3f || d7 == 0)
|
||||||
{
|
{
|
||||||
LOGMASKED(LOG_KEYBOARD,
|
LOGMASKED(LOG_KEYBOARD,
|
||||||
"Offset: %02x, keys: %02x, debounce: %d, play: %d\n",
|
"Offset: %02x, keys: %02x, debounce: %d, play: %d\n",
|
||||||
offset, selected, d6, d7);
|
offset, selected, d6, d7);
|
||||||
}
|
}
|
||||||
|
|
||||||
return (d7 << 7) | (d6 << 6) | selected;
|
return (d7 << 7) | (d6 << 6) | selected;
|
||||||
@ -267,14 +267,14 @@ void linndrum_state::trigger_w(offs_t offset, u8 data)
|
|||||||
{
|
{
|
||||||
assert(offset >= 0 && offset < NUM_VOICE_TRIGGERS);
|
assert(offset >= 0 && offset < NUM_VOICE_TRIGGERS);
|
||||||
LOGMASKED(LOG_TRIGGERS, "Trigger %s (%02x), data: %02x, data enabled: %d\n",
|
LOGMASKED(LOG_TRIGGERS, "Trigger %s (%02x), data: %02x, data enabled: %d\n",
|
||||||
VOICE_TRIGGER_NAMES[offset], offset, data, m_data_out_enabled);
|
VOICE_TRIGGER_NAMES[offset], offset, data, m_data_out_enabled);
|
||||||
// TODO: Implement.
|
// TODO: Implement.
|
||||||
}
|
}
|
||||||
|
|
||||||
void linndrum_state::trigger_beep_w(int state)
|
void linndrum_state::trigger_beep_w(int state)
|
||||||
{
|
{
|
||||||
LOGMASKED(LOG_TRIGGERS, "Trigger BEEP: %d, data enabled: %d\n",
|
LOGMASKED(LOG_TRIGGERS, "Trigger BEEP: %d, data enabled: %d\n",
|
||||||
state, m_data_out_enabled);
|
state, m_data_out_enabled);
|
||||||
// TODO: Implement.
|
// TODO: Implement.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -201,28 +201,28 @@ static INPUT_PORTS_START(kn5000)
|
|||||||
PORT_DIPSETTING( 0x06, "Other")
|
PORT_DIPSETTING( 0x06, "Other")
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Actual full list of regions (but it is unclear if there's any
|
Actual full list of regions (but it is unclear if there's any
|
||||||
other hardware difference among them):
|
other hardware difference among them):
|
||||||
|
|
||||||
PORT_DIPSETTING( 0x04, "(M): U.S.A.")
|
PORT_DIPSETTING( 0x04, "(M): U.S.A.")
|
||||||
PORT_DIPSETTING( 0x06, "(MC): Canada")
|
PORT_DIPSETTING( 0x06, "(MC): Canada")
|
||||||
PORT_DIPSETTING( 0x04, "(XM): Mexico")
|
PORT_DIPSETTING( 0x04, "(XM): Mexico")
|
||||||
PORT_DIPSETTING( 0x06, "(EN): Norway, Sweden, Denmark, Finland")
|
PORT_DIPSETTING( 0x06, "(EN): Norway, Sweden, Denmark, Finland")
|
||||||
PORT_DIPSETTING( 0x06, "(EH): Holland, Belgium")
|
PORT_DIPSETTING( 0x06, "(EH): Holland, Belgium")
|
||||||
PORT_DIPSETTING( 0x06, "(EF): France, Italy")
|
PORT_DIPSETTING( 0x06, "(EF): France, Italy")
|
||||||
PORT_DIPSETTING( 0x06, "(EZ): Germany")
|
PORT_DIPSETTING( 0x06, "(EZ): Germany")
|
||||||
PORT_DIPSETTING( 0x06, "(EW): Switzerland")
|
PORT_DIPSETTING( 0x06, "(EW): Switzerland")
|
||||||
PORT_DIPSETTING( 0x06, "(EA): Austria")
|
PORT_DIPSETTING( 0x06, "(EA): Austria")
|
||||||
PORT_DIPSETTING( 0x06, "(EP): Spain, Portugal, Greece, South Africa")
|
PORT_DIPSETTING( 0x06, "(EP): Spain, Portugal, Greece, South Africa")
|
||||||
PORT_DIPSETTING( 0x06, "(EK): United Kingdom")
|
PORT_DIPSETTING( 0x06, "(EK): United Kingdom")
|
||||||
PORT_DIPSETTING( 0x06, "(XL): New Zealand")
|
PORT_DIPSETTING( 0x06, "(XL): New Zealand")
|
||||||
PORT_DIPSETTING( 0x06, "(XR): Australia")
|
PORT_DIPSETTING( 0x06, "(XR): Australia")
|
||||||
PORT_DIPSETTING( 0x06, "(XS): Malaysia")
|
PORT_DIPSETTING( 0x06, "(XS): Malaysia")
|
||||||
PORT_DIPSETTING( 0x06, "(MD): Saudi Arabia, Hong Kong, Kuwait")
|
PORT_DIPSETTING( 0x06, "(MD): Saudi Arabia, Hong Kong, Kuwait")
|
||||||
PORT_DIPSETTING( 0x06, "(XT): Taiwan")
|
PORT_DIPSETTING( 0x06, "(XT): Taiwan")
|
||||||
PORT_DIPSETTING( 0x02, "(X): Thailand, Indonesia, Iran, U.A.E., Panama, Argentina, Peru, Brazil")
|
PORT_DIPSETTING( 0x02, "(X): Thailand, Indonesia, Iran, U.A.E., Panama, Argentina, Peru, Brazil")
|
||||||
PORT_DIPSETTING( 0x06, "(XP): Philippines")
|
PORT_DIPSETTING( 0x06, "(XP): Philippines")
|
||||||
PORT_DIPSETTING( 0x06, "(XW): Singapore")
|
PORT_DIPSETTING( 0x06, "(XW): Singapore")
|
||||||
*/
|
*/
|
||||||
|
|
||||||
PORT_START("CPR_SEG0")
|
PORT_START("CPR_SEG0")
|
||||||
|
@ -365,8 +365,8 @@ private:
|
|||||||
|
|
||||||
void pia_ca2_w(int state);
|
void pia_ca2_w(int state);
|
||||||
void portb_w(uint8_t data);
|
void portb_w(uint8_t data);
|
||||||
uint8_t pia_ca1_r();
|
uint8_t pia_ca1_r();
|
||||||
uint8_t pia_cb1_r();
|
uint8_t pia_cb1_r();
|
||||||
|
|
||||||
void palette(palette_device &palette) const;
|
void palette(palette_device &palette) const;
|
||||||
|
|
||||||
@ -424,12 +424,12 @@ uint32_t truco_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap,
|
|||||||
* Read/Write Handlers *
|
* Read/Write Handlers *
|
||||||
*******************************************/
|
*******************************************/
|
||||||
|
|
||||||
uint8_t truco_state::pia_ca1_r()
|
uint8_t truco_state::pia_ca1_r()
|
||||||
{
|
{
|
||||||
return m_coin->read() & 1;
|
return m_coin->read() & 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t truco_state::pia_cb1_r()
|
uint8_t truco_state::pia_cb1_r()
|
||||||
{
|
{
|
||||||
return m_coin->read() & 1;
|
return m_coin->read() & 1;
|
||||||
}
|
}
|
||||||
@ -449,10 +449,10 @@ void truco_state::pia_ca2_w(int state)
|
|||||||
|
|
||||||
/* Game harcoded switches:
|
/* Game harcoded switches:
|
||||||
|
|
||||||
9Eh: 1 = No timeout / 0 = Game Timeout
|
9Eh: 1 = No timeout / 0 = Game Timeout
|
||||||
ACh: 1 = Gamble Mode / 2 = Arcade Mode
|
ACh: 1 = Gamble Mode / 2 = Arcade Mode
|
||||||
88h: 0 = Normal / 1 = Choose Cards
|
88h: 0 = Normal / 1 = Choose Cards
|
||||||
ABh: 0 = Input P0 No Masked / 1 = Masked (Default)
|
ABh: 0 = Input P0 No Masked / 1 = Masked (Default)
|
||||||
*/
|
*/
|
||||||
m_ram->write(0x88, BIT(m_settings->read(), 1) & 1);
|
m_ram->write(0x88, BIT(m_settings->read(), 1) & 1);
|
||||||
m_ram->write(0x9e, BIT(m_settings->read(), 2) & 1);
|
m_ram->write(0x9e, BIT(m_settings->read(), 2) & 1);
|
||||||
|
@ -248,7 +248,7 @@ void dmx_voice_card_vca_device::start(int trigger_mode)
|
|||||||
m_selected_rc_inv = 1;
|
m_selected_rc_inv = 1;
|
||||||
|
|
||||||
LOGMASKED(LOG_VOLUME, "Selected gain: %f, 1/RC: %f\n",
|
LOGMASKED(LOG_VOLUME, "Selected gain: %f, 1/RC: %f\n",
|
||||||
m_selected_gain, m_selected_rc_inv);
|
m_selected_gain, m_selected_rc_inv);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dmx_voice_card_vca_device::decay()
|
void dmx_voice_card_vca_device::decay()
|
||||||
@ -296,7 +296,7 @@ void dmx_voice_card_vca_device::sound_stream_update(sound_stream &stream, const
|
|||||||
out.put(i, m_selected_gain * in.get(i));
|
out.put(i, m_selected_gain * in.get(i));
|
||||||
|
|
||||||
LOGMASKED(LOG_SAMPLES, "%s VCA - just gain: %f. Samples: %f, %f.\n",
|
LOGMASKED(LOG_SAMPLES, "%s VCA - just gain: %f. Samples: %f, %f.\n",
|
||||||
tag(), m_selected_gain, in.get(0), in.get(n - 1));
|
tag(), m_selected_gain, in.get(0), in.get(n - 1));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -322,7 +322,7 @@ void dmx_voice_card_vca_device::sound_stream_update(sound_stream &stream, const
|
|||||||
m_decay_done = true;
|
m_decay_done = true;
|
||||||
|
|
||||||
LOGMASKED(LOG_SAMPLES_DECAY, "%s VCA - in decay: %f. Samples: %f, %f.\n",
|
LOGMASKED(LOG_SAMPLES_DECAY, "%s VCA - in decay: %f. Samples: %f, %f.\n",
|
||||||
tag(), gain, in.get(0), in.get(n - 1));
|
tag(), gain, in.get(0), in.get(n - 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
void dmx_voice_card_vca_device::init_gain_and_decay_variations(const dmx_voice_card_config &config)
|
void dmx_voice_card_vca_device::init_gain_and_decay_variations(const dmx_voice_card_config &config)
|
||||||
@ -355,7 +355,7 @@ void dmx_voice_card_vca_device::init_gain_and_decay_variations(const dmx_voice_c
|
|||||||
for (int i = 0; i < m_gain.size(); ++i)
|
for (int i = 0; i < m_gain.size(); ++i)
|
||||||
{
|
{
|
||||||
LOGMASKED(LOG_VOLUME, "%s: Gain variation %d: %f uA, %f\n",
|
LOGMASKED(LOG_VOLUME, "%s: Gain variation %d: %f uA, %f\n",
|
||||||
tag(), i, m_gain[i] * 1e6F, m_gain[i] / MAX_IREF);
|
tag(), i, m_gain[i] * 1e6F, m_gain[i] / MAX_IREF);
|
||||||
m_gain[i] /= MAX_IREF; // Normalize.
|
m_gain[i] /= MAX_IREF; // Normalize.
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -375,7 +375,7 @@ void dmx_voice_card_vca_device::init_gain_and_decay_variations(const dmx_voice_c
|
|||||||
{
|
{
|
||||||
m_decay_rc_inv.push_back(1.0F / ((R8 + r) * c3));
|
m_decay_rc_inv.push_back(1.0F / ((R8 + r) * c3));
|
||||||
LOGMASKED(LOG_VOLUME, "%s: Decay 1/RC variation %d: %f\n",
|
LOGMASKED(LOG_VOLUME, "%s: Decay 1/RC variation %d: %f\n",
|
||||||
tag(), m_decay_rc_inv.size() - 1, m_decay_rc_inv.back());
|
tag(), m_decay_rc_inv.size() - 1, m_decay_rc_inv.back());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -637,7 +637,7 @@ void dmx_voice_card_device::compute_pitch_variations()
|
|||||||
|
|
||||||
m_sample_t[i] = attotime::from_double(t_high + t_low);
|
m_sample_t[i] = attotime::from_double(t_high + t_low);
|
||||||
LOGMASKED(LOG_PITCH, "%s Pitch variation %d: %f (%f, %f)\n",
|
LOGMASKED(LOG_PITCH, "%s Pitch variation %d: %f (%f, %f)\n",
|
||||||
tag(), i, 1.0 / m_sample_t[i].as_double(), t_high, t_low);
|
tag(), i, 1.0 / m_sample_t[i].as_double(), t_high, t_low);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_config.pitch_control)
|
if (m_config.pitch_control)
|
||||||
@ -659,7 +659,7 @@ void dmx_voice_card_device::select_pitch()
|
|||||||
|
|
||||||
m_timer->adjust(sampling_t, 0, sampling_t);
|
m_timer->adjust(sampling_t, 0, sampling_t);
|
||||||
LOGMASKED(LOG_PITCH, "Setting sampling frequency: %f\n",
|
LOGMASKED(LOG_PITCH, "Setting sampling frequency: %f\n",
|
||||||
1.0 / sampling_t.as_double());
|
1.0 / sampling_t.as_double());
|
||||||
}
|
}
|
||||||
|
|
||||||
bool dmx_voice_card_device::is_decay_enabled() const
|
bool dmx_voice_card_device::is_decay_enabled() const
|
||||||
@ -1044,7 +1044,7 @@ private:
|
|||||||
{ RES_K(100), RES_K(6.8) }, // R24, R23 - VC_PERC2
|
{ RES_K(100), RES_K(6.8) }, // R24, R23 - VC_PERC2
|
||||||
{ RES_K(8.2), RES_K(20) }, // R20, R19 - VC_CYMBAL
|
{ RES_K(8.2), RES_K(20) }, // R20, R19 - VC_CYMBAL
|
||||||
{ RES_K(10), RES_K(10) }, // R26, R25 - METRONOME_INDEX
|
{ RES_K(10), RES_K(10) }, // R26, R25 - METRONOME_INDEX
|
||||||
// ECO 304 values (see update_metronome()).
|
// ECO 304 values (see update_metronome()).
|
||||||
};
|
};
|
||||||
|
|
||||||
static constexpr const int VOICE_TO_FADER_MAP[NUM_MIXED_VOICES] =
|
static constexpr const int VOICE_TO_FADER_MAP[NUM_MIXED_VOICES] =
|
||||||
@ -1165,7 +1165,7 @@ void dmx_state::update_metronome()
|
|||||||
m_metronome->level_w(level);
|
m_metronome->level_w(level);
|
||||||
|
|
||||||
LOGMASKED(LOG_METRONOME, "Metronome update - on:%d, mix:%d, level:%d\n",
|
LOGMASKED(LOG_METRONOME, "Metronome update - on:%d, mix:%d, level:%d\n",
|
||||||
m_metronome_on, m_metronome_mix, level);
|
m_metronome_on, m_metronome_mix, level);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dmx_state::metronome_mix_w(u8 data)
|
void dmx_state::metronome_mix_w(u8 data)
|
||||||
@ -1351,7 +1351,7 @@ void dmx_state::update_mix_level(int voice)
|
|||||||
m_right_mixer->set_input_gain(voice, gain_right);
|
m_right_mixer->set_input_gain(voice, gain_right);
|
||||||
|
|
||||||
LOGMASKED(LOG_FADERS, "Voice %d volume changed to: %d (gain L:%f, R:%f), HPF cutoff: %.2f Hz\n",
|
LOGMASKED(LOG_FADERS, "Voice %d volume changed to: %d (gain L:%f, R:%f), HPF cutoff: %.2f Hz\n",
|
||||||
voice, pot_percent, gain_left, gain_right, 1.0F / (2 * float(M_PI) * r_gnd * rc_c));
|
voice, pot_percent, gain_left, gain_right, 1.0F / (2 * float(M_PI) * r_gnd * rc_c));
|
||||||
}
|
}
|
||||||
|
|
||||||
void dmx_state::memory_map(address_map &map)
|
void dmx_state::memory_map(address_map &map)
|
||||||
|
@ -601,7 +601,7 @@ void xpander_state::voice_update_cv(u8 voice, u8 cv_index, float cv, bool fast)
|
|||||||
m_cv[voice][cv_index] = cv;
|
m_cv[voice][cv_index] = cv;
|
||||||
m_fast[voice][cv_index] = fast;
|
m_fast[voice][cv_index] = fast;
|
||||||
LOGMASKED(LOG_DAC, "Voice %d - CV %s: %f, fast: %d\n",
|
LOGMASKED(LOG_DAC, "Voice %d - CV %s: %f, fast: %d\n",
|
||||||
voice, CV_NAMES[cv_index], cv, fast);
|
voice, CV_NAMES[cv_index], cv, fast);
|
||||||
}
|
}
|
||||||
|
|
||||||
void xpander_state::voice_update_resonance_cv(u8 voice, float cv)
|
void xpander_state::voice_update_resonance_cv(u8 voice, float cv)
|
||||||
@ -613,7 +613,7 @@ void xpander_state::voice_update_resonance_cv(u8 voice, float cv)
|
|||||||
|
|
||||||
m_cv[voice][RES_CV_INDEX] = cv;
|
m_cv[voice][RES_CV_INDEX] = cv;
|
||||||
LOGMASKED(LOG_DAC, "Voice %d - CV %s: %f\n",
|
LOGMASKED(LOG_DAC, "Voice %d - CV %s: %f\n",
|
||||||
voice, CV_NAMES[RES_CV_INDEX], cv);
|
voice, CV_NAMES[RES_CV_INDEX], cv);
|
||||||
}
|
}
|
||||||
|
|
||||||
void xpander_state::voice_dac_enable_w(offs_t offset, u8 data)
|
void xpander_state::voice_dac_enable_w(offs_t offset, u8 data)
|
||||||
@ -680,7 +680,7 @@ void xpander_state::voice_dac_enable_w(offs_t offset, u8 data)
|
|||||||
if (is_hres) // Turns on U814.
|
if (is_hres) // Turns on U814.
|
||||||
{
|
{
|
||||||
dac_v += -RES_K(10) / RES_K(30.1) * m_dac_fine_v
|
dac_v += -RES_K(10) / RES_K(30.1) * m_dac_fine_v
|
||||||
-RES_K(10) / RES_K(17.4) * m_dac_vref;
|
-RES_K(10) / RES_K(17.4) * m_dac_vref;
|
||||||
}
|
}
|
||||||
|
|
||||||
const u8 sh_address = (offset >> 1) & 0x07; // A1-A3.
|
const u8 sh_address = (offset >> 1) & 0x07; // A1-A3.
|
||||||
@ -723,7 +723,7 @@ void xpander_state::voice_dac_clear_w(u8 data)
|
|||||||
m_dac_data = ((data & LOW7_MASK) << 7) | (m_dac_data & LOW7_MASK);
|
m_dac_data = ((data & LOW7_MASK) << 7) | (m_dac_data & LOW7_MASK);
|
||||||
m_allow_fast = BIT(data, 7);
|
m_allow_fast = BIT(data, 7);
|
||||||
LOGMASKED(LOG_DAC_VERBOSE, "DAC clear %02x: %04x - %d\n",
|
LOGMASKED(LOG_DAC_VERBOSE, "DAC clear %02x: %04x - %d\n",
|
||||||
data, m_dac_data, m_allow_fast);
|
data, m_dac_data, m_allow_fast);
|
||||||
}
|
}
|
||||||
|
|
||||||
void xpander_state::voice_dac_w(offs_t offset, u8 data)
|
void xpander_state::voice_dac_w(offs_t offset, u8 data)
|
||||||
@ -945,13 +945,13 @@ DECLARE_INPUT_CHANGED_MEMBER(xpander_state::encoder_moved)
|
|||||||
|
|
||||||
static constexpr const int WRAP_BUFFER = 3;
|
static constexpr const int WRAP_BUFFER = 3;
|
||||||
const bool overflowed = newval <= WRAP_BUFFER &&
|
const bool overflowed = newval <= WRAP_BUFFER &&
|
||||||
oldval >= NUM_ENCODER_POSITIONS - WRAP_BUFFER;
|
oldval >= NUM_ENCODER_POSITIONS - WRAP_BUFFER;
|
||||||
const bool underflowed = newval >= NUM_ENCODER_POSITIONS - WRAP_BUFFER &&
|
const bool underflowed = newval >= NUM_ENCODER_POSITIONS - WRAP_BUFFER &&
|
||||||
oldval <= WRAP_BUFFER;
|
oldval <= WRAP_BUFFER;
|
||||||
m_encoder_dir[encoder] = ((newval > oldval) || overflowed) && !underflowed;
|
m_encoder_dir[encoder] = ((newval > oldval) || overflowed) && !underflowed;
|
||||||
|
|
||||||
LOGMASKED(LOG_ENCODERS, "Encoder %d changed from: %d to: %d (o: %d, u: %d), dir: %d\n",
|
LOGMASKED(LOG_ENCODERS, "Encoder %d changed from: %d to: %d (o: %d, u: %d), dir: %d\n",
|
||||||
encoder, oldval, newval, overflowed, underflowed, bool(m_encoder_dir[encoder]));
|
encoder, oldval, newval, overflowed, underflowed, bool(m_encoder_dir[encoder]));
|
||||||
}
|
}
|
||||||
|
|
||||||
DECLARE_INPUT_CHANGED_MEMBER(xpander_state::memory_protect_changed)
|
DECLARE_INPUT_CHANGED_MEMBER(xpander_state::memory_protect_changed)
|
||||||
|
@ -179,8 +179,8 @@ void midi2cv8_state::update_active_cv()
|
|||||||
m_cv_display_fractional[physical_output] = cv_millis % 1000;
|
m_cv_display_fractional[physical_output] = cv_millis % 1000;
|
||||||
|
|
||||||
LOGMASKED(LOG_CVS, "CV %d - %d: %f - %d @ %f\n",
|
LOGMASKED(LOG_CVS, "CV %d - %d: %f - %d @ %f\n",
|
||||||
physical_output + 1, m_selected_output_mux, cv, cv_millis,
|
physical_output + 1, m_selected_output_mux, cv, cv_millis,
|
||||||
machine().time().as_double());
|
machine().time().as_double());
|
||||||
}
|
}
|
||||||
|
|
||||||
bool midi2cv8_state::compute_cv(float *cv) const
|
bool midi2cv8_state::compute_cv(float *cv) const
|
||||||
|
@ -55,14 +55,14 @@
|
|||||||
2005 Let's!TVプレイ ドラゴンボ-ルZ バトル体感かめはめ波~ おめぇとフュージョン / バンダイ / 日本 Let's! TV Play Dragon Ball Z Battle Taikan Kamehameha~ Omee to Fusion / Bandai / Japan
|
2005 Let's!TVプレイ ドラゴンボ-ルZ バトル体感かめはめ波~ おめぇとフュージョン / バンダイ / 日本 Let's! TV Play Dragon Ball Z Battle Taikan Kamehameha~ Omee to Fusion / Bandai / Japan
|
||||||
|
|
||||||
dumped: either here, xavix_2000.cpp, or xavix_2002.cpp
|
dumped: either here, xavix_2000.cpp, or xavix_2002.cpp
|
||||||
Let's!TVプレイ なりきりファイト ウルトラマン 撃て!必殺光線!! / タカラトミー / 日本 Let's!TV Play Narikiri Fight Ultraman Shoot! Deadly ray! ! / Takara Tomy / Japan
|
Let's!TVプレイ なりきりファイト ウルトラマン 撃て!必殺光線!! / タカラトミー / 日本 Let's!TV Play Narikiri Fight Ultraman Shoot! Deadly ray! ! / Takara Tomy / Japan
|
||||||
Hello Kitty TV computer /EPOCH/Japan - - - - - - -
|
Hello Kitty TV computer /EPOCH/Japan - - - - - - -
|
||||||
Popira Korea version /SONOKONG/Korea - - - - - - -
|
Popira Korea version /SONOKONG/Korea - - - - - - -
|
||||||
I singer: e-kara Korean version /SONOKONG/Korea - - - - - - -
|
I singer: e-kara Korean version /SONOKONG/Korea - - - - - - -
|
||||||
Accessory memory mascot for TV mail Pc mail cot 2 characters (Putchi, Petchi) /EPOCH/Japan (no unique ROM, just I2C memory storage)
|
Accessory memory mascot for TV mail Pc mail cot 2 characters (Putchi, Petchi) /EPOCH/Japan (no unique ROM, just I2C memory storage)
|
||||||
Accessory memory mascot for TV mail Pc mail cot 2 characters (Charuru, Kurau) /EPOCH/Japan (no unique ROM, just I2C memory storage)
|
Accessory memory mascot for TV mail Pc mail cot 2 characters (Charuru, Kurau) /EPOCH/Japan (no unique ROM, just I2C memory storage)
|
||||||
TV mail PC "Mercot /EPOCH/Japan - - - - - - -
|
TV mail PC "Mercot /EPOCH/Japan - - - - - - -
|
||||||
Let's!TVプレイ 体感キャストオフ 仮面ライダーカブト クロックアップ&ライダーキック / バンダイ / 日本 Let's! TV Play Taikan Cast Off Kamen Rider Kabuto Clock Up & Rider Kick / Bandai / Japan
|
Let's!TVプレイ 体感キャストオフ 仮面ライダーカブト クロックアップ&ライダーキック / バンダイ / 日本 Let's! TV Play Taikan Cast Off Kamen Rider Kabuto Clock Up & Rider Kick / Bandai / Japan
|
||||||
Let's!TVプレイ なりきり体感 ボウケンジャー 走れ!撃て!ミッションスタート!! / バンダイ / 日本 Let's! TV Play Narikiri Taikan Boukenger Hashire! Ute! Mission Start!! / Bandai / Japan
|
Let's!TVプレイ なりきり体感 ボウケンジャー 走れ!撃て!ミッションスタート!! / バンダイ / 日本 Let's! TV Play Narikiri Taikan Boukenger Hashire! Ute! Mission Start!! / Bandai / Japan
|
||||||
Webdiver Gradion /TAKARA/Japan - - - - - - -
|
Webdiver Gradion /TAKARA/Japan - - - - - - -
|
||||||
Let's!TVプレイ 魔法戦隊マジレンジャー マジマットでダンス&バトル / バンダイ / 日本 Let's! TV Play Mahou Taiketsu Magiranger - Magimat de Dance & Battle / Bandai / Japan
|
Let's!TVプレイ 魔法戦隊マジレンジャー マジマットでダンス&バトル / バンダイ / 日本 Let's! TV Play Mahou Taiketsu Magiranger - Magimat de Dance & Battle / Bandai / Japan
|
||||||
|
Loading…
Reference in New Issue
Block a user