mirror of
https://github.com/holub/mame
synced 2025-07-05 09:57:47 +03:00
Merge branch 'release0187'
Conflicts: src/mame/drivers/accomm.cpp
This commit is contained in:
commit
41e1555242
@ -80938,7 +80938,7 @@ that the real dumps might surface -->
|
||||
|
||||
<!-- ONE BUS based systems are famiclones (of plug-and-play type) which are based on the famicom hw but with a slightly more powerful PPU.
|
||||
As they are standalone machines they're contained in nes_vt.cpp rather than the software lists. The notes below relate to ROMs
|
||||
extracted from those sets -->
|
||||
extracted from those sets -->
|
||||
|
||||
<!-- The following iNES roms are ripped from mc_dgear, so we don't include them (crc is from headerless file):
|
||||
* Deformable [b0716cc2]
|
||||
|
@ -2,12 +2,12 @@
|
||||
// copyright-holders:Nathan Woods
|
||||
/***************************************************************************
|
||||
|
||||
coco_dcmodem.cpp
|
||||
coco_dcmodem.cpp
|
||||
|
||||
Code for emulating the CoCo Direct Connect Modem PAK
|
||||
Code for emulating the CoCo Direct Connect Modem PAK
|
||||
|
||||
This is just a "skeleton device"; the UART is emulated but pretty much
|
||||
nothing else
|
||||
This is just a "skeleton device"; the UART is emulated but pretty much
|
||||
nothing else
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -17,7 +17,7 @@
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
CONSTANTS
|
||||
CONSTANTS
|
||||
***************************************************************************/
|
||||
|
||||
#define UART_TAG "uart"
|
||||
@ -78,7 +78,7 @@ namespace
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
IMPLEMENTATION
|
||||
IMPLEMENTATION
|
||||
***************************************************************************/
|
||||
|
||||
MACHINE_CONFIG_MEMBER(coco_dc_modem_device::device_add_mconfig)
|
||||
|
@ -139,7 +139,7 @@ static SLOT_INTERFACE_START(coco_cart_slot1_3)
|
||||
SLOT_INTERFACE("rs232", COCO_RS232)
|
||||
SLOT_INTERFACE("dcmodem", COCO_DCMODEM)
|
||||
SLOT_INTERFACE("orch90", COCO_ORCH90)
|
||||
SLOT_INTERFACE("ssc", COCO_SSC) MCFG_SLOT_OPTION_CLOCK("ssc", DERIVED_CLOCK(1, 1))
|
||||
SLOT_INTERFACE("ssc", COCO_SSC) MCFG_SLOT_OPTION_CLOCK("ssc", DERIVED_CLOCK(1, 1))
|
||||
SLOT_INTERFACE("games_master", COCO_PAK_GMC)
|
||||
SLOT_INTERFACE("banked_16k", COCO_PAK_BANKED)
|
||||
SLOT_INTERFACE("pak", COCO_PAK)
|
||||
@ -150,7 +150,7 @@ static SLOT_INTERFACE_START(coco_cart_slot4)
|
||||
SLOT_INTERFACE("rs232", COCO_RS232)
|
||||
SLOT_INTERFACE("dcmodem", COCO_DCMODEM)
|
||||
SLOT_INTERFACE("orch90", COCO_ORCH90)
|
||||
SLOT_INTERFACE("ssc", COCO_SSC) MCFG_SLOT_OPTION_CLOCK("ssc", DERIVED_CLOCK(1, 1))
|
||||
SLOT_INTERFACE("ssc", COCO_SSC) MCFG_SLOT_OPTION_CLOCK("ssc", DERIVED_CLOCK(1, 1))
|
||||
SLOT_INTERFACE("games_master", COCO_PAK_GMC)
|
||||
SLOT_INTERFACE("banked_16k", COCO_PAK_BANKED)
|
||||
SLOT_INTERFACE("pak", COCO_PAK)
|
||||
|
@ -79,8 +79,8 @@ namespace
|
||||
}
|
||||
|
||||
private:
|
||||
WRITE8_MEMBER(write_left) { m_ldac->write(data); }
|
||||
WRITE8_MEMBER(write_right) { m_rdac->write(data); }
|
||||
WRITE8_MEMBER(write_left) { m_ldac->write(data); }
|
||||
WRITE8_MEMBER(write_right) { m_rdac->write(data); }
|
||||
|
||||
// internal state
|
||||
required_device<dac_byte_interface> m_ldac;
|
||||
|
@ -1,4 +1,4 @@
|
||||
// license:BSD-3-Clause
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:tim lindner
|
||||
/***************************************************************************
|
||||
|
||||
@ -249,7 +249,7 @@ void coco_ssc_device::device_timer(emu_timer &timer, device_timer_id id, int par
|
||||
{
|
||||
case BUSY_TIMER_ID:
|
||||
m_tms7000_busy = false;
|
||||
m_tms7000_busy_timer->adjust(attotime::never);
|
||||
m_tms7000_busy_timer->adjust(attotime::never);
|
||||
break;
|
||||
|
||||
default:
|
||||
@ -453,7 +453,7 @@ WRITE8_MEMBER(coco_ssc_device::ssc_port_c_w)
|
||||
m_spo->ald_w(space, 0, m_tms7000_portd);
|
||||
}
|
||||
|
||||
if( ((m_tms7000_portc & C_BSY) == 0) && ((data & C_BSY) == C_BSY) )
|
||||
if( ((m_tms7000_portc & C_BSY) == 0) && ((data & C_BSY) == C_BSY) )
|
||||
{
|
||||
m_tms7000_busy_timer->adjust(attotime::from_usec(1800));
|
||||
}
|
||||
|
@ -31,9 +31,9 @@
|
||||
19 A0 39 A15
|
||||
20 A1 40 SLENB
|
||||
|
||||
Notes:
|
||||
CTS - ROM read $C000-$FEFF ($FDFF on CoCo 3)
|
||||
SCS - Spare Chip Select: IO space between $FF40-5F
|
||||
Notes:
|
||||
CTS - ROM read $C000-$FEFF ($FDFF on CoCo 3)
|
||||
SCS - Spare Chip Select: IO space between $FF40-5F
|
||||
|
||||
*********************************************************************/
|
||||
|
||||
@ -49,7 +49,7 @@
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
CONSTANTS
|
||||
CONSTANTS
|
||||
***************************************************************************/
|
||||
|
||||
enum
|
||||
@ -484,7 +484,7 @@ void device_cococart_interface::interface_pre_start()
|
||||
|
||||
//-------------------------------------------------
|
||||
// scs_read - Signifies a read where the SCS pin
|
||||
// on the cartridge slot was asserted ($FF40-5F)
|
||||
// on the cartridge slot was asserted ($FF40-5F)
|
||||
//-------------------------------------------------
|
||||
|
||||
READ8_MEMBER(device_cococart_interface::scs_read)
|
||||
@ -495,7 +495,7 @@ READ8_MEMBER(device_cococart_interface::scs_read)
|
||||
|
||||
//-------------------------------------------------
|
||||
// scs_write - Signifies a write where the SCS pin
|
||||
// on the cartridge slot was asserted ($FF40-5F)
|
||||
// on the cartridge slot was asserted ($FF40-5F)
|
||||
//-------------------------------------------------
|
||||
|
||||
WRITE8_MEMBER(device_cococart_interface::scs_write)
|
||||
@ -544,7 +544,7 @@ void device_cococart_interface::cart_base_changed(void)
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// cartridge_space
|
||||
// cartridge_space
|
||||
//-------------------------------------------------
|
||||
|
||||
address_space &device_cococart_interface::cartridge_space()
|
||||
@ -554,7 +554,7 @@ address_space &device_cococart_interface::cartridge_space()
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// install_read_handler
|
||||
// install_read_handler
|
||||
//-------------------------------------------------
|
||||
|
||||
void device_cococart_interface::install_read_handler(uint16_t addrstart, uint16_t addrend, read8_delegate rhandler)
|
||||
@ -565,7 +565,7 @@ void device_cococart_interface::install_read_handler(uint16_t addrstart, uint16_
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// install_write_handler
|
||||
// install_write_handler
|
||||
//-------------------------------------------------
|
||||
|
||||
void device_cococart_interface::install_write_handler(uint16_t addrstart, uint16_t addrend, write8_delegate whandler)
|
||||
@ -576,7 +576,7 @@ void device_cococart_interface::install_write_handler(uint16_t addrstart, uint16
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// install_readwrite_handler
|
||||
// install_readwrite_handler
|
||||
//-------------------------------------------------
|
||||
|
||||
void device_cococart_interface::install_readwrite_handler(uint16_t addrstart, uint16_t addrend, read8_delegate rhandler, write8_delegate whandler)
|
||||
@ -588,7 +588,7 @@ void device_cococart_interface::install_readwrite_handler(uint16_t addrstart, ui
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// set_line_value
|
||||
// set_line_value
|
||||
//-------------------------------------------------
|
||||
|
||||
void device_cococart_interface::set_line_value(cococart_slot_device::line line, cococart_slot_device::line_value value)
|
||||
|
@ -195,8 +195,8 @@ protected:
|
||||
void cart_base_changed(void);
|
||||
|
||||
// accessors for containers
|
||||
cococart_slot_device &owning_slot() { assert(m_owning_slot); return *m_owning_slot; }
|
||||
device_cococart_host_interface &host() { assert(m_host); return *m_host; }
|
||||
cococart_slot_device &owning_slot() { assert(m_owning_slot); return *m_owning_slot; }
|
||||
device_cococart_host_interface &host() { assert(m_host); return *m_host; }
|
||||
|
||||
// CoCo cartridges can read directly from the address bus. This is used by a number of
|
||||
// cartridges (e.g. - Orch-90, Multi-Pak interface) for their control registers, independently
|
||||
@ -233,7 +233,7 @@ private:
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
COCO CARTRIDGE DEVICES
|
||||
COCO CARTRIDGE DEVICES
|
||||
***************************************************************************/
|
||||
|
||||
// device type definitions - CoCo FDC
|
||||
|
@ -4,11 +4,11 @@
|
||||
|
||||
HP DIO and DIO-II bus devices
|
||||
|
||||
DIO is 16-bit, essentially the MC68000 bus
|
||||
DIO-II extends to 32-bit for 68020/030/040 machines
|
||||
DIO is 16-bit, essentially the MC68000 bus
|
||||
DIO-II extends to 32-bit for 68020/030/040 machines
|
||||
|
||||
16-bit DIO cards fit and work in either 16 or 32 bit systems, much like 8-bit ISA.
|
||||
32-bit DIO-II cards only work in 32 bit DIO-II systems.
|
||||
16-bit DIO cards fit and work in either 16 or 32 bit systems, much like 8-bit ISA.
|
||||
32-bit DIO-II cards only work in 32 bit DIO-II systems.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -23,7 +23,7 @@ MACHINE_CONFIG_MEMBER( x68k_midi_device::device_add_mconfig )
|
||||
MCFG_YM3802_IRQ_HANDLER(WRITELINE(x68k_midi_device,irq_w))
|
||||
MCFG_MIDI_PORT_ADD("mdin", midiin_slot, "midiin")
|
||||
MCFG_MIDI_PORT_ADD("mdout", midiout_slot, "midiout")
|
||||
// MCFG_MIDI_PORT_ADD("mdthru", midiout_slot, "midiout")
|
||||
// MCFG_MIDI_PORT_ADD("mdthru", midiout_slot, "midiout")
|
||||
// TODO: Add serial data handlers
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -2,26 +2,26 @@
|
||||
// copyright-holders:Sergey Svishchev
|
||||
/**********************************************************************
|
||||
|
||||
Intel 7220 Bubble Memory Controller emulation
|
||||
Intel 7220 Bubble Memory Controller emulation
|
||||
|
||||
References:
|
||||
- http://www.decadecounter.com/vta/pdf/BPK72UM.pdf
|
||||
- http://www.decadecounter.com/vta/pdf/7220-1.pdf
|
||||
- http://www.decadecounter.com/vta/pdf/7242.pdf
|
||||
- http://www.decadecounter.com/vta/articleview.php?item=359
|
||||
References:
|
||||
- http://www.decadecounter.com/vta/pdf/BPK72UM.pdf
|
||||
- http://www.decadecounter.com/vta/pdf/7220-1.pdf
|
||||
- http://www.decadecounter.com/vta/pdf/7242.pdf
|
||||
- http://www.decadecounter.com/vta/articleview.php?item=359
|
||||
|
||||
Implemented at least partially
|
||||
- commands
|
||||
Read Bubble Data, Write Bubble Data
|
||||
Initialize, Reset FIFO, Abort, Software Reset
|
||||
Read FSA Status, MBM Purge
|
||||
Implemented at least partially
|
||||
- commands
|
||||
Read Bubble Data, Write Bubble Data
|
||||
Initialize, Reset FIFO, Abort, Software Reset
|
||||
Read FSA Status, MBM Purge
|
||||
|
||||
Not implemented
|
||||
- interrupts
|
||||
- DMA
|
||||
- commands
|
||||
Read Seek, Write Seek, Read Corrected Data, all Bootloop-related
|
||||
- access to other than 2 FSA channels at once
|
||||
Not implemented
|
||||
- interrupts
|
||||
- DMA
|
||||
- commands
|
||||
Read Seek, Write Seek, Read Corrected Data, all Bootloop-related
|
||||
- access to other than 2 FSA channels at once
|
||||
|
||||
**********************************************************************/
|
||||
|
||||
|
@ -32,13 +32,13 @@ uint32_t parse_string(const char *s)
|
||||
unsigned multiple;
|
||||
} s_suffixes[] =
|
||||
{
|
||||
{ "", 1 },
|
||||
{ "k", 1024 },
|
||||
{ "kb", 1024 },
|
||||
{ "kib", 1024 },
|
||||
{ "m", 1024 * 1024 },
|
||||
{ "mb", 1024 * 1024 },
|
||||
{ "mib", 1024 * 1024 }
|
||||
{ "", 1 },
|
||||
{ "k", 1024 },
|
||||
{ "kb", 1024 },
|
||||
{ "kib", 1024 },
|
||||
{ "m", 1024 * 1024 },
|
||||
{ "mb", 1024 * 1024 },
|
||||
{ "mib", 1024 * 1024 }
|
||||
};
|
||||
|
||||
// parse the string
|
||||
|
@ -2,13 +2,13 @@
|
||||
// copyright-holders:R. Belmont, O. Galibert
|
||||
/***************************************************************************
|
||||
|
||||
sis85c496.cpp - SiS 85C496/497 PCI chipset
|
||||
by R. Belmont (based on i82439hx.cpp/i82439tx.cpp by O. Galibert)
|
||||
sis85c496.cpp - SiS 85C496/497 PCI chipset
|
||||
by R. Belmont (based on i82439hx.cpp/i82439tx.cpp by O. Galibert)
|
||||
|
||||
Unlike Intel chipsets, the southbridge is not a PCI device;
|
||||
it connects via a proprietary bus to the northbridge, and the two
|
||||
chips appear to software/the BIOS as a single chip. Thus we emulate
|
||||
them in a single file.
|
||||
Unlike Intel chipsets, the southbridge is not a PCI device;
|
||||
it connects via a proprietary bus to the northbridge, and the two
|
||||
chips appear to software/the BIOS as a single chip. Thus we emulate
|
||||
them in a single file.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -124,7 +124,7 @@ sis85c496_host_device::sis85c496_host_device(const machine_config &mconfig, cons
|
||||
m_speaker(*this, "speaker"),
|
||||
m_ds12885(*this, "rtc"),
|
||||
m_pc_kbdc(*this, "pc_kbdc"),
|
||||
m_at_spkrdata(0), m_pit_out2(0), m_dma_channel(0), m_cur_eop(false), m_dma_high_byte(0), m_at_speaker(0), m_refresh(false), m_channel_check(0), m_nmi_enabled(0)
|
||||
m_at_spkrdata(0), m_pit_out2(0), m_dma_channel(0), m_cur_eop(false), m_dma_high_byte(0), m_at_speaker(0), m_refresh(false), m_channel_check(0), m_nmi_enabled(0)
|
||||
{
|
||||
}
|
||||
|
||||
@ -194,7 +194,7 @@ void sis85c496_host_device::map_bios(address_space *memory_space, uint32_t start
|
||||
|
||||
void sis85c496_host_device::map_shadowram(address_space *memory_space, offs_t addrstart, offs_t addrend, void *baseptr)
|
||||
{
|
||||
if (m_shadctrl & 0x100) // write protected?
|
||||
if (m_shadctrl & 0x100) // write protected?
|
||||
{
|
||||
memory_space->install_rom(addrstart, addrend, baseptr);
|
||||
}
|
||||
@ -242,7 +242,7 @@ void sis85c496_host_device::map_extra(uint64_t memory_window_start, uint64_t mem
|
||||
{
|
||||
map_bios(memory_space, 0x000e0000, 0x000effff);
|
||||
}
|
||||
else // at least one 32K block has shadow memory
|
||||
else // at least one 32K block has shadow memory
|
||||
{
|
||||
if (m_shadctrl & 0x20)
|
||||
{
|
||||
@ -267,7 +267,7 @@ void sis85c496_host_device::map_extra(uint64_t memory_window_start, uint64_t mem
|
||||
map_bios(memory_space, 0x000f0000, 0x000fffff);
|
||||
logerror("SiS496: BIOS at Fxxxx\n");
|
||||
}
|
||||
else // at least one 32K block has shadow memory
|
||||
else // at least one 32K block has shadow memory
|
||||
{
|
||||
if (m_shadctrl & 0x80)
|
||||
{
|
||||
|
@ -936,8 +936,8 @@ ROM_END
|
||||
|
||||
ROM_START( 40lovej )
|
||||
ROM_REGION( 0x14000, "maincpu", 0 ) /* Z80 main CPU */
|
||||
ROM_LOAD( "a30_01.70", 0x000000, 0x004000, CRC(1b89829e) SHA1(d875a4e3586fd9fb2e354e4353c9144ad68ce620) )
|
||||
ROM_LOAD( "a30_02.71", 0x004000, 0x004000, CRC(1468e71e) SHA1(e251ddf42ab51e9c391c213f54b709b71a3f1519) )
|
||||
ROM_LOAD( "a30_01.70", 0x000000, 0x004000, CRC(1b89829e) SHA1(d875a4e3586fd9fb2e354e4353c9144ad68ce620) )
|
||||
ROM_LOAD( "a30_02.71", 0x004000, 0x004000, CRC(1468e71e) SHA1(e251ddf42ab51e9c391c213f54b709b71a3f1519) )
|
||||
ROM_LOAD( "a30_03.72", 0x010000, 0x004000, CRC(dbc0049d) SHA1(1fca22ca0794564bbd1f946afb644fef0342acca) )
|
||||
|
||||
ROM_REGION( 0x10000, "audiocpu", ROMREGION_ERASEFF ) /* Z80 sound CPU */
|
||||
@ -954,13 +954,13 @@ ROM_START( 40lovej )
|
||||
ROM_LOAD( "a30-14" , 0x0000, 0x0800, BAD_DUMP CRC(c4690279) SHA1(60bc77e03b9be434bb97a374a2fedeb8d049a660) )
|
||||
// ROM_LOAD( "a30_14", 0x000000, 0x000800, BAD_DUMP CRC(a4f770ce) SHA1(868e98528e8824e7329e9a298603e456bbc1f1f0) )
|
||||
|
||||
ROM_REGION( 0x8000, "gfx1", 0 )
|
||||
ROM_LOAD( "a30_04.18", 0x000000, 0x004000, CRC(529a7489) SHA1(cf3fa83f16e2e62c1a4aa74b00080f1e167865a6) )
|
||||
ROM_LOAD( "a30_05.19", 0x004000, 0x004000, CRC(7017e5f1) SHA1(fc614fd41109a9a6236ed4a331eda74e5d49b946) )
|
||||
ROM_REGION( 0x8000, "gfx1", 0 )
|
||||
ROM_LOAD( "a30_04.18", 0x000000, 0x004000, CRC(529a7489) SHA1(cf3fa83f16e2e62c1a4aa74b00080f1e167865a6) )
|
||||
ROM_LOAD( "a30_05.19", 0x004000, 0x004000, CRC(7017e5f1) SHA1(fc614fd41109a9a6236ed4a331eda74e5d49b946) )
|
||||
|
||||
ROM_REGION( 0x8000, "gfx2", 0 )
|
||||
ROM_LOAD( "a30_06.59", 0x000000, 0x004000, CRC(f744ea8e) SHA1(0bf6deabfac47237347af810332bc3716e3a26f0) )
|
||||
ROM_LOAD( "a30_07.60", 0x004000, 0x004000, CRC(b2af1359) SHA1(6a21e38cfb65d52b7e1209101f0dd497f9a71f46) )
|
||||
ROM_REGION( 0x8000, "gfx2", 0 )
|
||||
ROM_LOAD( "a30_06.59", 0x000000, 0x004000, CRC(f744ea8e) SHA1(0bf6deabfac47237347af810332bc3716e3a26f0) )
|
||||
ROM_LOAD( "a30_07.60", 0x004000, 0x004000, CRC(b2af1359) SHA1(6a21e38cfb65d52b7e1209101f0dd497f9a71f46) )
|
||||
|
||||
ROM_REGION( 0x1000, "proms", 0 )
|
||||
// not provided
|
||||
|
@ -672,7 +672,7 @@ static INPUT_PORTS_START( accomm )
|
||||
|
||||
PORT_START("LINE2.1")
|
||||
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_L) PORT_CHAR('l') PORT_CHAR('L')
|
||||
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_0) PORT_CHAR('0') PORT_CHAR(0xa3)
|
||||
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_0) PORT_CHAR('0') PORT_CHAR(0xa3) // £
|
||||
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_O) PORT_CHAR('o') PORT_CHAR('O')
|
||||
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_K) PORT_CHAR('k') PORT_CHAR('K')
|
||||
|
||||
|
@ -247,11 +247,11 @@ SLOT_INTERFACE_START( coco_cart )
|
||||
SLOT_INTERFACE("rs232", COCO_RS232)
|
||||
SLOT_INTERFACE("dcmodem", COCO_DCMODEM)
|
||||
SLOT_INTERFACE("orch90", COCO_ORCH90)
|
||||
SLOT_INTERFACE("ssc", COCO_SSC) MCFG_SLOT_OPTION_CLOCK("ssc", DERIVED_CLOCK(1, 1))
|
||||
SLOT_INTERFACE("ssc", COCO_SSC) MCFG_SLOT_OPTION_CLOCK("ssc", DERIVED_CLOCK(1, 1))
|
||||
SLOT_INTERFACE("games_master", COCO_PAK_GMC)
|
||||
SLOT_INTERFACE("banked_16k", COCO_PAK_BANKED)
|
||||
SLOT_INTERFACE("pak", COCO_PAK)
|
||||
SLOT_INTERFACE("multi", COCO_MULTIPAK) MCFG_SLOT_OPTION_CLOCK("multi", DERIVED_CLOCK(1, 1))
|
||||
SLOT_INTERFACE("multi", COCO_MULTIPAK) MCFG_SLOT_OPTION_CLOCK("multi", DERIVED_CLOCK(1, 1))
|
||||
SLOT_INTERFACE_END
|
||||
|
||||
//-------------------------------------------------
|
||||
|
@ -18,13 +18,13 @@
|
||||
http://www.pioneerelectronics.com/ephox/StaticFiles/Manuals/Business/Pio%20V5000-RS232%20-%20CPM.pdf
|
||||
After returning a correct status code, tmp68301 sends "FSDVD04.MPG00001<CR>" to serial, probably tries
|
||||
to playback the file ...
|
||||
- h8 board components:
|
||||
H8/3002
|
||||
MN7100 8-bit channel data acquisition system
|
||||
Fujitsu MD0208
|
||||
Heatsinked chip (TBD)
|
||||
IDE and RS232c ports
|
||||
xtal 27 MHz
|
||||
- h8 board components:
|
||||
H8/3002
|
||||
MN7100 8-bit channel data acquisition system
|
||||
Fujitsu MD0208
|
||||
Heatsinked chip (TBD)
|
||||
IDE and RS232c ports
|
||||
xtal 27 MHz
|
||||
|
||||
***********************************************************************************************************/
|
||||
|
||||
@ -158,7 +158,7 @@ static ADDRESS_MAP_START( csplayh5_sub_map, AS_PROGRAM, 16, csplayh5_state )
|
||||
AM_RANGE(0x000000, 0x01ffff) AM_ROM
|
||||
|
||||
AM_RANGE(0x02000a, 0x02000b) AM_READ(test_r)
|
||||
// AM_RANGE(0x020008, 0x02000f) AM_DEVREADWRITE("ide", ide_controller_device, read_cs0, write_cs0)
|
||||
// AM_RANGE(0x020008, 0x02000f) AM_DEVREADWRITE("ide", ide_controller_device, read_cs0, write_cs0)
|
||||
|
||||
AM_RANGE(0x040018, 0x040019) AM_READ(test_r)
|
||||
AM_RANGE(0x040028, 0x04002f) AM_DEVREADWRITE("ide", ide_controller_device, read_cs0, write_cs0) // correct?
|
||||
|
@ -342,7 +342,7 @@ DRIVER_INIT_MEMBER(dbox_state, dbox)
|
||||
|
||||
ROM_START( dbox )
|
||||
ROM_REGION(0x1000000, "maincpu", 0)
|
||||
// ROM_LOAD16_WORD( "dvb2000.bin", 0x000000, 0x8b742, CRC(5b21c455) SHA1(1e7654c37dfa65d1b8ac2469cdda82f91b47b3c7) )
|
||||
// ROM_LOAD16_WORD( "dvb2000.bin", 0x000000, 0x8b742, CRC(5b21c455) SHA1(1e7654c37dfa65d1b8ac2469cdda82f91b47b3c7) )
|
||||
ROM_LOAD16_WORD( "nokboot.bin", 0x000000, 0x20000, CRC(0ff53e1f) SHA1(52002ee22c032775dac383d408c44abe9244724f) )
|
||||
ROM_END
|
||||
|
||||
|
@ -38,14 +38,14 @@ ADDRESS_MAP_END
|
||||
|
||||
/* Dragon keyboard
|
||||
|
||||
PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7
|
||||
PA6: Ent Clr Brk N/c N/c N/c N/c Shift
|
||||
PA5: X Y Z Up Dwn Lft Rgt Space
|
||||
PA4: P Q R S T U V W
|
||||
PA3: H I J K L M N O
|
||||
PA2: @ A B C D E F G
|
||||
PA1: 8 9 : ; , - . /
|
||||
PA0: 0 1 2 3 4 5 6 7
|
||||
PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7
|
||||
PA6: Ent Clr Brk N/c N/c N/c N/c Shift
|
||||
PA5: X Y Z Up Dwn Lft Rgt Space
|
||||
PA4: P Q R S T U V W
|
||||
PA3: H I J K L M N O
|
||||
PA2: @ A B C D E F G
|
||||
PA1: 8 9 : ; , - . /
|
||||
PA0: 0 1 2 3 4 5 6 7
|
||||
*/
|
||||
static INPUT_PORTS_START( dragon_keyboard )
|
||||
PORT_START("row0")
|
||||
|
@ -1,5 +1,5 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:Jean-François DEL NERO
|
||||
// copyright-holders:Jean-François DEL NERO
|
||||
/***************************************************************************
|
||||
|
||||
SMT Goupil G1 & G2 driver
|
||||
@ -17,7 +17,7 @@
|
||||
-> The internal G1 Basic is working (-> 6800 0xC3 illegal opcode emulation needed).
|
||||
|
||||
02/04/2016
|
||||
Jean-François DEL NERO
|
||||
Jean-François DEL NERO
|
||||
|
||||
****************************************************************************/
|
||||
|
||||
|
@ -2,63 +2,63 @@
|
||||
// copyright-holders:Sergey Svishchev
|
||||
/***************************************************************************
|
||||
|
||||
drivers/gridcomp.cpp
|
||||
drivers/gridcomp.cpp
|
||||
|
||||
Driver file for GRiD Compass series
|
||||
Driver file for GRiD Compass series
|
||||
|
||||
US patent 4,571,456 describes model 1101:
|
||||
US patent 4,571,456 describes model 1101:
|
||||
|
||||
- 15 MHz XTAL, produces
|
||||
- 5 MHz system clock for CPU, FPU, OSP
|
||||
- 7.5 MHz pixel clock
|
||||
- Intel 8086 - CPU
|
||||
- Intel 8087 - FPU
|
||||
- Intel 80130 - Operating System Processor, equivalent of:
|
||||
- 8259 PIC
|
||||
- 8254 PIT
|
||||
- Texas Instruments TMS9914 GPIB controller
|
||||
- Intel 7220 Bubble Memory Controller
|
||||
- 7110 Magnetic Bubble Memory modules and support chips
|
||||
- (unknown) - EAROM for machine ID
|
||||
- (unknown) - Real-Time Clock
|
||||
- (custom DMA logic)
|
||||
- Intel 8741 - keyboard MCU
|
||||
- Intel 8274 - UART
|
||||
- Intel 8255 - modem interface
|
||||
- 2x DAC0832LCN - DAC
|
||||
- MK5089N - DTMF generator
|
||||
- ...
|
||||
- 15 MHz XTAL, produces
|
||||
- 5 MHz system clock for CPU, FPU, OSP
|
||||
- 7.5 MHz pixel clock
|
||||
- Intel 8086 - CPU
|
||||
- Intel 8087 - FPU
|
||||
- Intel 80130 - Operating System Processor, equivalent of:
|
||||
- 8259 PIC
|
||||
- 8254 PIT
|
||||
- Texas Instruments TMS9914 GPIB controller
|
||||
- Intel 7220 Bubble Memory Controller
|
||||
- 7110 Magnetic Bubble Memory modules and support chips
|
||||
- (unknown) - EAROM for machine ID
|
||||
- (unknown) - Real-Time Clock
|
||||
- (custom DMA logic)
|
||||
- Intel 8741 - keyboard MCU
|
||||
- Intel 8274 - UART
|
||||
- Intel 8255 - modem interface
|
||||
- 2x DAC0832LCN - DAC
|
||||
- MK5089N - DTMF generator
|
||||
- ...
|
||||
|
||||
to do:
|
||||
to do:
|
||||
|
||||
- confirm differences between models except screen size
|
||||
- Compass 110x do not have GRiDROM slots.
|
||||
- Compass II (112x, 113x) have 4 of them.
|
||||
- keyboard: decode and add the rest of keycodes
|
||||
- EAROM, RTC
|
||||
- serial port, modem (incl. DTMF generator)
|
||||
- TMS9914 chip driver (incl. DMA)
|
||||
- GPIB storage devices (floppy, hard disk)
|
||||
- confirm differences between models except screen size
|
||||
- Compass 110x do not have GRiDROM slots.
|
||||
- Compass II (112x, 113x) have 4 of them.
|
||||
- keyboard: decode and add the rest of keycodes
|
||||
- EAROM, RTC
|
||||
- serial port, modem (incl. DTMF generator)
|
||||
- TMS9914 chip driver (incl. DMA)
|
||||
- GPIB storage devices (floppy, hard disk)
|
||||
|
||||
missing dumps:
|
||||
missing dumps:
|
||||
|
||||
- BIOS from models other than 1139 (CCOS and MS-DOS variants)
|
||||
- GRiDROM's
|
||||
- keyboard MCU
|
||||
- external floppy and hard disk (2101, 2102)
|
||||
- BIOS from models other than 1139 (CCOS and MS-DOS variants)
|
||||
- GRiDROM's
|
||||
- keyboard MCU
|
||||
- external floppy and hard disk (2101, 2102)
|
||||
|
||||
to boot CCOS 3.0.1:
|
||||
- pad binary image (not .imd) to 384K
|
||||
- attach it as -memcard
|
||||
- use grid1129 with 'patched' ROM
|
||||
- start with -debug and add breakpoints:
|
||||
to boot CCOS 3.0.1:
|
||||
- pad binary image (not .imd) to 384K
|
||||
- attach it as -memcard
|
||||
- use grid1129 with 'patched' ROM
|
||||
- start with -debug and add breakpoints:
|
||||
|
||||
# bubble memory driver
|
||||
bp ff27a,1,{ax=ax*2;go}
|
||||
# boot loader
|
||||
bp 20618,1,{temp0=214A8;do w@(temp0+7)=120;do w@(temp0+9)=121;go}
|
||||
# CCOS kernel
|
||||
bp 0661a,1,{temp0=0f964;do w@(temp0+7)=120;do w@(temp0+9)=121;go}
|
||||
# bubble memory driver
|
||||
bp ff27a,1,{ax=ax*2;go}
|
||||
# boot loader
|
||||
bp 20618,1,{temp0=214A8;do w@(temp0+7)=120;do w@(temp0+9)=121;go}
|
||||
# CCOS kernel
|
||||
bp 0661a,1,{temp0=0f964;do w@(temp0+7)=120;do w@(temp0+9)=121;go}
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
@ -309,9 +309,9 @@ IRQ_CALLBACK_MEMBER(gridcomp_state::irq_callback)
|
||||
static ADDRESS_MAP_START( grid1101_map, AS_PROGRAM, 16, gridcomp_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
AM_RANGE(0xdfe80, 0xdfe83) AM_DEVREADWRITE8("i7220", i7220_device, read, write, 0x00ff)
|
||||
AM_RANGE(0xdfea0, 0xdfeaf) AM_UNMAP // ??
|
||||
AM_RANGE(0xdfec0, 0xdfecf) AM_DEVREADWRITE8("modem", i8255_device, read, write, 0x00ff) // incl. DTMF generator
|
||||
AM_RANGE(0xdff40, 0xdff5f) AM_NOP // ?? machine ID EAROM, RTC
|
||||
AM_RANGE(0xdfea0, 0xdfeaf) AM_UNMAP // ??
|
||||
AM_RANGE(0xdfec0, 0xdfecf) AM_DEVREADWRITE8("modem", i8255_device, read, write, 0x00ff) // incl. DTMF generator
|
||||
AM_RANGE(0xdff40, 0xdff5f) AM_NOP // ?? machine ID EAROM, RTC
|
||||
AM_RANGE(0xdff80, 0xdff8f) AM_READWRITE(grid_gpib_r, grid_gpib_w) // TMS9914
|
||||
AM_RANGE(0xdffc0, 0xdffcf) AM_READWRITE(grid_keyb_r, grid_keyb_w) // Intel 8741 MCU
|
||||
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("user1", 0)
|
||||
@ -319,15 +319,15 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( grid1121_map, AS_PROGRAM, 16, gridcomp_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
AM_RANGE(0x90000, 0x97fff) AM_UNMAP // ?? ROM slot
|
||||
AM_RANGE(0x90000, 0x97fff) AM_UNMAP // ?? ROM slot
|
||||
AM_RANGE(0x9ff00, 0x9ff0f) AM_UNMAP // AM_READ(grid_9ff0_r) // ?? ROM?
|
||||
AM_RANGE(0xc0000, 0xcffff) AM_UNMAP // ?? ROM slot -- signature expected: 0x4554, 0x5048
|
||||
AM_RANGE(0xdfe00, 0xdfe1f) AM_UNMAP // AM_DEVREADWRITE8("uart8274", i8274_new_device, ba_cd_r, ba_cd_w, 0x00ff)
|
||||
AM_RANGE(0xdfe40, 0xdfe4f) AM_UNMAP // ?? diagnostic 8274
|
||||
AM_RANGE(0xdfe40, 0xdfe4f) AM_UNMAP // ?? diagnostic 8274
|
||||
AM_RANGE(0xdfe80, 0xdfe83) AM_DEVREADWRITE8("i7220", i7220_device, read, write, 0x00ff)
|
||||
AM_RANGE(0xdfea0, 0xdfeaf) AM_UNMAP // ??
|
||||
AM_RANGE(0xdfec0, 0xdfecf) AM_DEVREADWRITE8("modem", i8255_device, read, write, 0x00ff) // incl. DTMF generator
|
||||
AM_RANGE(0xdff40, 0xdff5f) AM_NOP // ?? machine ID EAROM, RTC
|
||||
AM_RANGE(0xdfea0, 0xdfeaf) AM_UNMAP // ??
|
||||
AM_RANGE(0xdfec0, 0xdfecf) AM_DEVREADWRITE8("modem", i8255_device, read, write, 0x00ff) // incl. DTMF generator
|
||||
AM_RANGE(0xdff40, 0xdff5f) AM_NOP // ?? machine ID EAROM, RTC
|
||||
AM_RANGE(0xdff80, 0xdff8f) AM_READWRITE(grid_gpib_r, grid_gpib_w) // TMS9914
|
||||
AM_RANGE(0xdffc0, 0xdffcf) AM_READWRITE(grid_keyb_r, grid_keyb_w) // Intel 8741 MCU
|
||||
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("user1", 0)
|
||||
@ -341,14 +341,14 @@ static INPUT_PORTS_START( gridcomp )
|
||||
INPUT_PORTS_END
|
||||
|
||||
/*
|
||||
* IRQ0 serial
|
||||
* IRQ1 bubble
|
||||
* IRQ2 modem
|
||||
* IRQ3 system tick || vert sync
|
||||
* IRQ4 keyboard
|
||||
* IRQ5 gpib
|
||||
* IRQ6 8087
|
||||
* IRQ7 ring
|
||||
* IRQ0 serial
|
||||
* IRQ1 bubble
|
||||
* IRQ2 modem
|
||||
* IRQ3 system tick || vert sync
|
||||
* IRQ4 keyboard
|
||||
* IRQ5 gpib
|
||||
* IRQ6 8087
|
||||
* IRQ7 ring
|
||||
*/
|
||||
static MACHINE_CONFIG_START( grid1101 )
|
||||
MCFG_CPU_ADD("maincpu", I8086, XTAL_15MHz / 3)
|
||||
@ -467,12 +467,12 @@ ROM_START( grid1129 )
|
||||
ROM_FILL(0x24,1,0x2)
|
||||
ROM_FILL(0xbc,1,0x98)
|
||||
ROM_FILL(0xbd,1,0x2)
|
||||
ROM_FILL(0x14e,1,0xc1) //
|
||||
ROM_FILL(0x14f,1,0x2) //
|
||||
ROM_FILL(0x15a,1,0xc2) //
|
||||
ROM_FILL(0x15b,1,0x2) //
|
||||
ROM_FILL(0x17b,1,0x45) //
|
||||
ROM_FILL(0x17c,1,0x3) //
|
||||
ROM_FILL(0x14e,1,0xc1) //
|
||||
ROM_FILL(0x14f,1,0x2) //
|
||||
ROM_FILL(0x15a,1,0xc2) //
|
||||
ROM_FILL(0x15b,1,0x2) //
|
||||
ROM_FILL(0x17b,1,0x45) //
|
||||
ROM_FILL(0x17c,1,0x3) //
|
||||
ROM_FILL(0x28c,1,0x98)
|
||||
ROM_FILL(0x28d,1,0x2)
|
||||
ROM_FILL(0x28f,1,0x98)
|
||||
@ -509,18 +509,18 @@ ROM_START( grid1129 )
|
||||
ROM_FILL(0xe51,1,0x2)
|
||||
ROM_FILL(0xfa6,1,0x98)
|
||||
ROM_FILL(0xfa7,1,0x2)
|
||||
ROM_FILL(0x15fe,1,0xce) //
|
||||
ROM_FILL(0x15ff,1,0x2) //
|
||||
ROM_FILL(0x1628,1,0xd0) //
|
||||
ROM_FILL(0x1629,1,0x2) //
|
||||
ROM_FILL(0x15fe,1,0xce) //
|
||||
ROM_FILL(0x15ff,1,0x2) //
|
||||
ROM_FILL(0x1628,1,0xd0) //
|
||||
ROM_FILL(0x1629,1,0x2) //
|
||||
ROM_FILL(0x1700,1,0x98)
|
||||
ROM_FILL(0x1701,1,0x2)
|
||||
ROM_FILL(0x1833,1,0xd6) //
|
||||
ROM_FILL(0x1834,1,0x2) //
|
||||
ROM_FILL(0x184a,1,0xd6) //
|
||||
ROM_FILL(0x184b,1,0x2) //
|
||||
ROM_FILL(0x1a2e,1,0xd6) //
|
||||
ROM_FILL(0x1a2f,1,0x2) //
|
||||
ROM_FILL(0x1833,1,0xd6) //
|
||||
ROM_FILL(0x1834,1,0x2) //
|
||||
ROM_FILL(0x184a,1,0xd6) //
|
||||
ROM_FILL(0x184b,1,0x2) //
|
||||
ROM_FILL(0x1a2e,1,0xd6) //
|
||||
ROM_FILL(0x1a2f,1,0x2) //
|
||||
ROM_FILL(0x19c2,1,0x98)
|
||||
ROM_FILL(0x19c3,1,0x2)
|
||||
ROM_FILL(0x1ee0,1,0x98)
|
||||
@ -545,12 +545,12 @@ ROM_START( grid1129 )
|
||||
ROM_FILL(0x295d,1,0x2)
|
||||
ROM_FILL(0x2a5e,1,0x98)
|
||||
ROM_FILL(0x2a5f,1,0x2)
|
||||
ROM_FILL(0x315c,1,0xc9) //
|
||||
ROM_FILL(0x315d,1,0x2) //
|
||||
ROM_FILL(0x3160,1,0xce) //
|
||||
ROM_FILL(0x3161,1,0x2) //
|
||||
ROM_FILL(0x3164,1,0xcf) //
|
||||
ROM_FILL(0x3165,1,0x2) //
|
||||
ROM_FILL(0x315c,1,0xc9) //
|
||||
ROM_FILL(0x315d,1,0x2) //
|
||||
ROM_FILL(0x3160,1,0xce) //
|
||||
ROM_FILL(0x3161,1,0x2) //
|
||||
ROM_FILL(0x3164,1,0xcf) //
|
||||
ROM_FILL(0x3165,1,0x2) //
|
||||
ROM_END
|
||||
|
||||
ROM_START( grid1131 )
|
||||
|
@ -226,7 +226,7 @@ static INPUT_PORTS_START(hp9845_base)
|
||||
PORT_BIT(BIT_MASK(4) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_DEL_PAD) PORT_CHAR(UCHAR_MAMEKEY(DEL_PAD)) PORT_NAME("Keypad .") // KP .
|
||||
PORT_BIT(BIT_MASK(5) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_0_PAD) PORT_CHAR(UCHAR_MAMEKEY(0_PAD)) PORT_NAME("Keypad 0") // KP 0
|
||||
PORT_BIT(BIT_MASK(6) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_ENTER_PAD) PORT_CHAR(UCHAR_MAMEKEY(ENTER_PAD)) PORT_NAME("Execute") // Execute
|
||||
PORT_BIT(BIT_MASK(7) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_ENTER) PORT_NAME("Cont") PORT_CHAR(13) // Cont
|
||||
PORT_BIT(BIT_MASK(7) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_ENTER) PORT_NAME("Cont") PORT_CHAR(13) // Cont
|
||||
PORT_BIT(BIT_MASK(8) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_RIGHT) PORT_CHAR(UCHAR_MAMEKEY(RIGHT)) // Right
|
||||
PORT_BIT(BIT_MASK(9) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_SPACE) PORT_CHAR(' ') // Space
|
||||
PORT_BIT(BIT_MASK(10) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_SLASH) PORT_CHAR('/') PORT_CHAR('?') // /
|
||||
@ -262,7 +262,7 @@ static INPUT_PORTS_START(hp9845_base)
|
||||
PORT_BIT(BIT_MASK(6) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_NAME("Keypad =") // KP =
|
||||
PORT_BIT(BIT_MASK(7) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_NAME("Pause") // Pause
|
||||
PORT_BIT(BIT_MASK(8) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_UP) PORT_CHAR(UCHAR_MAMEKEY(UP)) // Up
|
||||
PORT_BIT(BIT_MASK(9) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_NAME("Store") // Store
|
||||
PORT_BIT(BIT_MASK(9) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_NAME("Store") // Store
|
||||
PORT_BIT(BIT_MASK(10) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_COLON) PORT_CHAR(';') PORT_CHAR(':') // :
|
||||
PORT_BIT(BIT_MASK(11) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_K) PORT_CHAR('k') PORT_CHAR('K') // K
|
||||
PORT_BIT(BIT_MASK(12) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_H) PORT_CHAR('h') PORT_CHAR('H') // H
|
||||
@ -354,51 +354,51 @@ static INPUT_PORTS_START(hp9845_base)
|
||||
PORT_BIT(BIT_MASK(30) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_3) PORT_CHAR('3') PORT_CHAR('#') // 3
|
||||
PORT_BIT(BIT_MASK(31) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_1) PORT_CHAR('1') PORT_CHAR('!') // 1
|
||||
|
||||
PORT_START("SHIFTLOCK");
|
||||
PORT_BIT(BIT_MASK(0) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_CAPSLOCK) PORT_TOGGLE PORT_NAME("Shift lock") PORT_CHANGED_MEMBER(DEVICE_SELF, hp9845_base_state, togglekey_changed, 0) // Shift lock
|
||||
PORT_START("SHIFTLOCK");
|
||||
PORT_BIT(BIT_MASK(0) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_CAPSLOCK) PORT_TOGGLE PORT_NAME("Shift lock") PORT_CHANGED_MEMBER(DEVICE_SELF, hp9845_base_state, togglekey_changed, 0) // Shift lock
|
||||
|
||||
INPUT_PORTS_END
|
||||
|
||||
/*
|
||||
German keyboard layout
|
||||
German keyboard layout
|
||||
|
||||
Remarks:
|
||||
- Most keys including umlauts map correctly to the German keyboard layout of the 9845 without special configuration,
|
||||
provided that the German keyboard firmware ROM is used on the 9845
|
||||
- '#' maps positionally correct to Shift+3
|
||||
- AltGr modifier on the Germany PC keyboard for 9845 shifted keycodes 23=| and 5=@ need to get assigned dynamically
|
||||
- ~{}\'` are not available on the German 9845 keyboard, ^ is available via keypad only
|
||||
Remarks:
|
||||
- Most keys including umlauts map correctly to the German keyboard layout of the 9845 without special configuration,
|
||||
provided that the German keyboard firmware ROM is used on the 9845
|
||||
- '#' maps positionally correct to Shift+3
|
||||
- AltGr modifier on the Germany PC keyboard for 9845 shifted keycodes 23=| and 5=@ need to get assigned dynamically
|
||||
- ~{}\'` are not available on the German 9845 keyboard, ^ is available via keypad only
|
||||
*/
|
||||
static INPUT_PORTS_START(hp9845_base_de)
|
||||
PORT_INCLUDE(hp9845_base)
|
||||
|
||||
PORT_MODIFY("KEY0")
|
||||
PORT_BIT(BIT_MASK(10) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_SLASH) PORT_CHAR('-') PORT_CHAR('_') // - _
|
||||
PORT_BIT(BIT_MASK(11) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_COMMA) PORT_CHAR(',') PORT_CHAR(';') // , ;
|
||||
PORT_BIT(BIT_MASK(27) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_STOP) PORT_CHAR('.') PORT_CHAR(':') // . :
|
||||
PORT_BIT(BIT_MASK(31) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_Z) PORT_CHAR('y') PORT_CHAR('Y') // Y
|
||||
PORT_BIT(BIT_MASK(10) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_SLASH) PORT_CHAR('-') PORT_CHAR('_') // - _
|
||||
PORT_BIT(BIT_MASK(11) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_COMMA) PORT_CHAR(',') PORT_CHAR(';') // , ;
|
||||
PORT_BIT(BIT_MASK(27) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_STOP) PORT_CHAR('.') PORT_CHAR(':') // . :
|
||||
PORT_BIT(BIT_MASK(31) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_Z) PORT_CHAR('y') PORT_CHAR('Y') // Y
|
||||
|
||||
PORT_MODIFY("KEY1")
|
||||
PORT_BIT(BIT_MASK(10) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_COLON) PORT_CHAR(0x00f6) PORT_CHAR(0x00d6) // Ö
|
||||
PORT_BIT(BIT_MASK(26) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_QUOTE) PORT_CHAR(0x00e4) PORT_CHAR(0x00c4) // Ä
|
||||
PORT_BIT(BIT_MASK(10) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_COLON) PORT_CHAR(0x00f6) PORT_CHAR(0x00d6) // Ö
|
||||
PORT_BIT(BIT_MASK(26) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_QUOTE) PORT_CHAR(0x00e4) PORT_CHAR(0x00c4) // Ä
|
||||
|
||||
PORT_MODIFY("KEY2")
|
||||
PORT_BIT(BIT_MASK(8) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_BACKSLASH2) PORT_CHAR('<') PORT_CHAR('>') // < >
|
||||
PORT_BIT(BIT_MASK(9) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_CLOSEBRACE) PORT_CHAR('+') PORT_CHAR('*') // + *
|
||||
PORT_BIT(BIT_MASK(12) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_Y) PORT_CHAR('z') PORT_CHAR('Z') // Z
|
||||
PORT_BIT(BIT_MASK(23) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_BACKSPACE) PORT_CHAR(8) // Backspace
|
||||
PORT_BIT(BIT_MASK(24) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_TILDE) PORT_CHAR(']') PORT_CHAR('@') // ] @
|
||||
PORT_BIT(BIT_MASK(25) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_EQUALS) PORT_CHAR('[') PORT_CHAR('|') // [ |
|
||||
PORT_BIT(BIT_MASK(26) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_OPENBRACE) PORT_CHAR(0x00fc) PORT_CHAR(0x00dc) // Ü
|
||||
PORT_BIT(BIT_MASK(8) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_BACKSLASH2) PORT_CHAR('<') PORT_CHAR('>') // < >
|
||||
PORT_BIT(BIT_MASK(9) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_CLOSEBRACE) PORT_CHAR('+') PORT_CHAR('*') // + *
|
||||
PORT_BIT(BIT_MASK(12) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_Y) PORT_CHAR('z') PORT_CHAR('Z') // Z
|
||||
PORT_BIT(BIT_MASK(23) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_BACKSPACE) PORT_CHAR(8) // Backspace
|
||||
PORT_BIT(BIT_MASK(24) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_TILDE) PORT_CHAR(']') PORT_CHAR('@') // ] @
|
||||
PORT_BIT(BIT_MASK(25) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_EQUALS) PORT_CHAR('[') PORT_CHAR('|') // [ |
|
||||
PORT_BIT(BIT_MASK(26) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_OPENBRACE) PORT_CHAR(0x00fc) PORT_CHAR(0x00dc) // Ü
|
||||
|
||||
PORT_MODIFY("KEY3")
|
||||
PORT_BIT(BIT_MASK(10) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_0) PORT_CHAR('0') PORT_CHAR('=') // 0 =
|
||||
PORT_BIT(BIT_MASK(11) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_8) PORT_CHAR('8') PORT_CHAR('(') // 8 (
|
||||
PORT_BIT(BIT_MASK(12) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_6) PORT_CHAR('6') PORT_CHAR('&') // 6 &
|
||||
PORT_BIT(BIT_MASK(14) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_2) PORT_CHAR('2') PORT_CHAR('"') // 2 "
|
||||
PORT_BIT(BIT_MASK(26) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_MINUS) PORT_CHAR(0x00df) PORT_CHAR('?') // ß ?
|
||||
PORT_BIT(BIT_MASK(27) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_9) PORT_CHAR('9') PORT_CHAR(')') // 9 )
|
||||
PORT_BIT(BIT_MASK(28) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_7) PORT_CHAR('7') PORT_CHAR('/') // 7 /
|
||||
PORT_BIT(BIT_MASK(10) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_0) PORT_CHAR('0') PORT_CHAR('=') // 0 =
|
||||
PORT_BIT(BIT_MASK(11) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_8) PORT_CHAR('8') PORT_CHAR('(') // 8 (
|
||||
PORT_BIT(BIT_MASK(12) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_6) PORT_CHAR('6') PORT_CHAR('&') // 6 &
|
||||
PORT_BIT(BIT_MASK(14) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_2) PORT_CHAR('2') PORT_CHAR('"') // 2 "
|
||||
PORT_BIT(BIT_MASK(26) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_MINUS) PORT_CHAR(0x00df) PORT_CHAR('?') // ß ?
|
||||
PORT_BIT(BIT_MASK(27) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_9) PORT_CHAR('9') PORT_CHAR(')') // 9 )
|
||||
PORT_BIT(BIT_MASK(28) , IP_ACTIVE_HIGH , IPT_KEYBOARD) PORT_CODE(KEYCODE_7) PORT_CHAR('7') PORT_CHAR('/') // 7 /
|
||||
INPUT_PORTS_END
|
||||
|
||||
// *******************
|
||||
@ -415,7 +415,7 @@ hp9845_base_state::hp9845_base_state(const machine_config &mconfig, device_type
|
||||
m_io_key1(*this , "KEY1"),
|
||||
m_io_key2(*this , "KEY2"),
|
||||
m_io_key3(*this , "KEY3"),
|
||||
m_io_shiftlock(*this, "SHIFTLOCK"),
|
||||
m_io_shiftlock(*this, "SHIFTLOCK"),
|
||||
m_t14(*this , "t14"),
|
||||
m_t15(*this , "t15"),
|
||||
m_beeper(*this , "beeper"),
|
||||
@ -789,21 +789,21 @@ INPUT_CHANGED_MEMBER(hp9845_base_state::togglekey_changed)
|
||||
{
|
||||
uintptr_t togglekey = (uintptr_t)param;
|
||||
switch (togglekey) {
|
||||
case 0: // Shift lock
|
||||
case 0: // Shift lock
|
||||
{
|
||||
bool state = m_io_shiftlock->read();
|
||||
popmessage("SHIFT LOCK %s", state ? "ON" : "OFF");
|
||||
output().set_value("shift_lock_led" , state);
|
||||
}
|
||||
break;
|
||||
case 1: // Prt all
|
||||
case 1: // Prt all
|
||||
{
|
||||
bool state = BIT(m_io_key0->read(), 1);
|
||||
popmessage("PRT ALL %s", state ? "ON" : "OFF");
|
||||
output().set_value("prt_all_led" , state);
|
||||
}
|
||||
break;
|
||||
case 2: // Auto st
|
||||
case 2: // Auto st
|
||||
{
|
||||
bool state = BIT(m_io_key0->read(), 17);
|
||||
popmessage("AUTO ST %s", state ? "ON" : "OFF");
|
||||
@ -4003,7 +4003,7 @@ ROM_START( hp9845t_de )
|
||||
ROM_LOAD("9845-PPU-Color-Enhanced-Graphics-Ger.bin", 0, 0x10000, CRC(a7ef79ee) SHA1(637742ed8fc8201a8e7bac62654f21c5409dfb76))
|
||||
ROM_END
|
||||
|
||||
// YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS
|
||||
// YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS
|
||||
COMP( 1977, hp9845a, 0, 0, hp9845a, hp9845, hp9845_state, 0, "Hewlett-Packard", "9845A", MACHINE_IS_SKELETON | MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP( 1977, hp9845s, hp9845a, 0, hp9845a, hp9845, hp9845_state, 0, "Hewlett-Packard", "9845S", MACHINE_IS_SKELETON | MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
COMP( 1979, hp9835a, 0, 0, hp9835a, hp9845, hp9845_state, 0, "Hewlett-Packard", "9835A", MACHINE_IS_SKELETON | MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
||||
|
@ -28,8 +28,8 @@
|
||||
MC68881 FPU
|
||||
|
||||
370:
|
||||
MC68030 CPU @ 33 MHz w/built-in MMU
|
||||
MC68881 FPU
|
||||
MC68030 CPU @ 33 MHz w/built-in MMU
|
||||
MC68881 FPU
|
||||
|
||||
380:
|
||||
MC68040 CPU @ 25 MHz w/built-in MMU and FPU
|
||||
|
@ -2,11 +2,11 @@
|
||||
// copyright-holders:Angelo Salese
|
||||
/***************************************************************************
|
||||
|
||||
Ron II Mah-Jongg (c) 1981 Sanritsu
|
||||
Ron II Mah-Jongg (c) 1981 Sanritsu
|
||||
|
||||
TODO:
|
||||
- colors;
|
||||
- dip switches;
|
||||
TODO:
|
||||
- colors;
|
||||
- dip switches;
|
||||
|
||||
============================================================================
|
||||
Debug cheats:
|
||||
@ -36,9 +36,9 @@ public:
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_ay(*this, "aysnd"),
|
||||
m_ay(*this, "aysnd"),
|
||||
m_gfxdecode(*this, "gfxdecode"),
|
||||
m_vram(*this, "vram"),
|
||||
m_vram(*this, "vram"),
|
||||
m_cram(*this, "cram"),
|
||||
m_mj_ports1(*this, { "PL1_1", "PL1_2", "PL1_3", "PL1_4","PL1_5", "PL1_6", "PL1_7", "PL1_8" }),
|
||||
m_mj_ports2(*this, { "PL2_1", "PL2_2", "PL2_3", "PL2_4","PL2_5", "PL2_6", "PL2_7", "PL2_8" }),
|
||||
@ -46,7 +46,7 @@ public:
|
||||
m_in1(*this, "IN1"),
|
||||
m_in2(*this, "IN2"),
|
||||
m_in3(*this, "IN3")
|
||||
{
|
||||
{
|
||||
}
|
||||
|
||||
// screen updates
|
||||
@ -458,7 +458,7 @@ WRITE8_MEMBER(ron_state::audio_p2_w)
|
||||
m_prev_p2 = data;
|
||||
|
||||
//printf("p2 %02x\n",data);
|
||||
// machine().debug_break();
|
||||
// machine().debug_break();
|
||||
}
|
||||
|
||||
READ_LINE_MEMBER(ron_state::audio_T1_r )
|
||||
@ -535,15 +535,15 @@ ROM_START( ron2 )
|
||||
ROM_LOAD( "r0_a2.4l", 0x0800, 0x0800, CRC(2fe4a54f) SHA1(bb1d109851677ede58f875eff2588f60f979864e) )
|
||||
|
||||
ROM_REGION( 0x040, "unk_proms", ROMREGION_ERASE00 ) // unknown, near sound roms
|
||||
ROM_LOAD( "82s123_1.6b", 0x000, 0x020, CRC(bd9bb647) SHA1(aad83eb295107cdc7ee96d78e81b0621ac351398) )
|
||||
ROM_LOAD( "82s123_2.6c", 0x020, 0x020, CRC(439109d6) SHA1(f0d79048bb27a63c641296b3b1b81f513df9b33d) )
|
||||
ROM_LOAD( "82s123_1.6b", 0x000, 0x020, CRC(bd9bb647) SHA1(aad83eb295107cdc7ee96d78e81b0621ac351398) )
|
||||
ROM_LOAD( "82s123_2.6c", 0x020, 0x020, CRC(439109d6) SHA1(f0d79048bb27a63c641296b3b1b81f513df9b33d) )
|
||||
|
||||
ROM_REGION( 0x020, "color_prom", ROMREGION_ERASE00 )
|
||||
ROM_LOAD( "82s123_5.1n", 0x000, 0x020, CRC(869784fa) SHA1(4bd0f26961d0bb54edb5eab5708d34468721d4c4) )
|
||||
ROM_LOAD( "82s123_5.1n", 0x000, 0x020, CRC(869784fa) SHA1(4bd0f26961d0bb54edb5eab5708d34468721d4c4) )
|
||||
|
||||
ROM_REGION( 0x200, "clut_proms", ROMREGION_ERASE00 )
|
||||
ROM_LOAD( "82s129_3.2n", 0x000, 0x100, CRC(018ab2a0) SHA1(039c574d8fd3c1a8e9eca6a7c79fe92e8496b157) )
|
||||
ROM_LOAD( "82s129_4.2m", 0x100, 0x100, CRC(f3c05d59) SHA1(bd48963aa9f2bedaa0c1fd031d7c93089161d1d9) )
|
||||
ROM_LOAD( "82s129_3.2n", 0x000, 0x100, CRC(018ab2a0) SHA1(039c574d8fd3c1a8e9eca6a7c79fe92e8496b157) )
|
||||
ROM_LOAD( "82s129_4.2m", 0x100, 0x100, CRC(f3c05d59) SHA1(bd48963aa9f2bedaa0c1fd031d7c93089161d1d9) )
|
||||
ROM_END
|
||||
|
||||
GAME( 1981, ron2, 0, ron, ron, ron_state, 0, ROT270, "Sanritsu", "Ron II Mah-Jongg", MACHINE_NOT_WORKING | MACHINE_WRONG_COLORS )
|
||||
|
@ -578,10 +578,10 @@ logerror("write to i/o 0x60 of %x\n",data);
|
||||
|
||||
/* stuff below belongs in video/socrates.c */
|
||||
/* graphics section:
|
||||
0x20 - W - lsb offset of screen display
|
||||
0x21 - W - msb offset of screen display
|
||||
resulting screen line is one of 512 total offsets on 128-byte boundaries in the whole 64k ram
|
||||
*/
|
||||
0x20 - W - lsb offset of screen display
|
||||
0x21 - W - msb offset of screen display
|
||||
resulting screen line is one of 512 total offsets on 128-byte boundaries in the whole 64k ram
|
||||
*/
|
||||
WRITE8_MEMBER(socrates_state::socrates_scroll_w)
|
||||
{
|
||||
if (offset == 0)
|
||||
|
@ -47,7 +47,7 @@ private:
|
||||
|
||||
static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, spirit76_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
// ADDRESS_MAP_GLOBAL_MASK(0xfff) // this could most likely go in once the memory map is sorted
|
||||
// ADDRESS_MAP_GLOBAL_MASK(0xfff) // this could most likely go in once the memory map is sorted
|
||||
AM_RANGE(0x0000, 0x00ff) AM_RAM // 2x 2112
|
||||
AM_RANGE(0x2200, 0x2203) AM_DEVREADWRITE("pia", pia6821_device, read, write) // 6820
|
||||
AM_RANGE(0x2400, 0x2400) AM_READ(unk_r)
|
||||
@ -130,10 +130,10 @@ static MACHINE_CONFIG_START( spirit76 )
|
||||
MCFG_PIA_WRITEPB_HANDLER(WRITE8(spirit76_state, portb_w))
|
||||
MCFG_PIA_READPA_HANDLER(READ8(spirit76_state, porta_r))
|
||||
MCFG_PIA_READPB_HANDLER(READ8(spirit76_state, portb_r))
|
||||
// MCFG_PIA_CA2_HANDLER(WRITELINE(spirit76_state, pia22_ca2_w))
|
||||
// MCFG_PIA_CB2_HANDLER(WRITELINE(spirit76_state, pia22_cb2_w))
|
||||
// MCFG_PIA_IRQA_HANDLER(INPUTLINE("maincpu", M6800_IRQ_LINE))
|
||||
// MCFG_PIA_IRQB_HANDLER(INPUTLINE("maincpu", M6800_IRQ_LINE))
|
||||
// MCFG_PIA_CA2_HANDLER(WRITELINE(spirit76_state, pia22_ca2_w))
|
||||
// MCFG_PIA_CB2_HANDLER(WRITELINE(spirit76_state, pia22_cb2_w))
|
||||
// MCFG_PIA_IRQA_HANDLER(INPUTLINE("maincpu", M6800_IRQ_LINE))
|
||||
// MCFG_PIA_IRQB_HANDLER(INPUTLINE("maincpu", M6800_IRQ_LINE))
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_FRAGMENT_ADD( genpin_audio )
|
||||
|
@ -799,17 +799,17 @@ WRITE8_MEMBER(hotsmash_state::hotsmash_68705_portC_w)
|
||||
// maybe on the RISING edge of the latch bit, the semaphores are updated, like TaitoSJ?
|
||||
/*if (BIT(changed_m_portC_out, 3) && BIT(m_portC_out, 3))
|
||||
{
|
||||
switch (m_portC_out & 0x07)
|
||||
{
|
||||
case 0x03:
|
||||
m_Z80HasWritten = 0;
|
||||
break;
|
||||
case 0x05:
|
||||
m_MCUHasWritten = 1;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
switch (m_portC_out & 0x07)
|
||||
{
|
||||
case 0x03:
|
||||
m_Z80HasWritten = 0;
|
||||
break;
|
||||
case 0x05:
|
||||
m_MCUHasWritten = 1;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}*/
|
||||
// on the falling edge of the latch bit, update port A and (if applicable) m_portB_out latches
|
||||
if (BIT(changed_m_portC_out, 3) && !BIT(m_portC_out, 3))
|
||||
@ -852,7 +852,7 @@ WRITE8_MEMBER(hotsmash_state::hotsmash_Z80_mcu_w)
|
||||
{
|
||||
m_fromZ80 = data;
|
||||
//if ((m_fromZ80 != 0x04) && (m_fromZ80 != 0x08))
|
||||
// logerror("%04x: z80 write to MCU %02x; Z80HasWritten: %d (and will be 1 after this); MCUHasWritten: %d\n",space.device().safe_pc(),m_fromZ80, m_Z80HasWritten, m_MCUHasWritten);
|
||||
// logerror("%04x: z80 write to MCU %02x; Z80HasWritten: %d (and will be 1 after this); MCUHasWritten: %d\n",space.device().safe_pc(),m_fromZ80, m_Z80HasWritten, m_MCUHasWritten);
|
||||
m_Z80HasWritten = 1; // set the semaphore, and assert interrupt on the mcu
|
||||
machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(250)); //boost the interleave temporarily, or the game will crash.
|
||||
m_mcu->set_input_line(M68705_IRQ_LINE, ASSERT_LINE);
|
||||
@ -863,7 +863,7 @@ READ8_MEMBER(hotsmash_state::hotsmash_Z80_mcu_r)
|
||||
if(!machine().side_effect_disabled())
|
||||
{
|
||||
//if ((m_fromZ80 != 0x04) && (m_fromZ80 != 0x08))
|
||||
// logerror("%04x: z80 read from MCU %02x; Z80HasWritten: %d; MCUHasWritten: %d (and will be 0 after this)\n",space.device().safe_pc(),m_fromMCU, m_Z80HasWritten, m_MCUHasWritten);
|
||||
// logerror("%04x: z80 read from MCU %02x; Z80HasWritten: %d; MCUHasWritten: %d (and will be 0 after this)\n",space.device().safe_pc(),m_fromMCU, m_Z80HasWritten, m_MCUHasWritten);
|
||||
m_MCUHasWritten = 0;
|
||||
}
|
||||
// return the last value the 68705 wrote, but do not mark that we've read it
|
||||
|
@ -2289,7 +2289,7 @@ WRITE_LINE_MEMBER(viper_state::voodoo_vblank)
|
||||
{
|
||||
// FIXME: The driver seems to hang using the voodoo vblank signa
|
||||
//if (state)
|
||||
// mpc8240_interrupt(MPC8240_IRQ0);
|
||||
// mpc8240_interrupt(MPC8240_IRQ0);
|
||||
//mpc8240_interrupt(MPC8240_IRQ3);
|
||||
}
|
||||
|
||||
|
@ -54,7 +54,7 @@ SLOT_INTERFACE_EXTERN( coco_cart );
|
||||
#define DWSOCK_TAG "dwsock"
|
||||
#define VHD0_TAG "vhd0"
|
||||
#define VHD1_TAG "vhd1"
|
||||
#define FLOATING_TAG "floating"
|
||||
#define FLOATING_TAG "floating"
|
||||
|
||||
// inputs
|
||||
#define CTRL_SEL_TAG "ctrl_sel"
|
||||
|
@ -35,8 +35,8 @@ public:
|
||||
/* sound-related */
|
||||
int m_pulse;
|
||||
int m_timer; // kludge for ym3526 in mightguy
|
||||
uint8_t m_prot_command;
|
||||
uint8_t m_prot_reg[6];
|
||||
uint8_t m_prot_command;
|
||||
uint8_t m_prot_reg[6];
|
||||
|
||||
/* devices */
|
||||
required_device<cpu_device> m_maincpu;
|
||||
|
@ -123,7 +123,7 @@ public:
|
||||
|
||||
enum sreg_status_mask
|
||||
{
|
||||
STATUS_YELLOW_ZONE = 0x0001,
|
||||
STATUS_YELLOW_ZONE = 0x0001,
|
||||
STATUS_SRNMI = 0x0002,
|
||||
STATUS_PWRLOSS = 0x0004,
|
||||
STATUS_RED_ZONE = 0x0008,
|
||||
@ -141,7 +141,7 @@ public:
|
||||
CTRL1_ETHDTR = 0x0020,
|
||||
CTRL1_ETHRMOD = 0x0040,
|
||||
CTRL1_CLIPRESET = 0x0040,
|
||||
CTRL1_FIFOACTIVE = 0x0080
|
||||
CTRL1_FIFOACTIVE = 0x0080
|
||||
};
|
||||
DECLARE_READ16_MEMBER(sreg_ctrl1_r) { return m_sreg_ctrl1; }
|
||||
DECLARE_WRITE16_MEMBER(sreg_ctrl1_w);
|
||||
|
@ -18,8 +18,8 @@ should be expanded to handle the monitor(s), system unit power/disk lights, and
|
||||
<bezel name="digit0" element="digit">
|
||||
<bounds x="850" y="0" width="40" height="50" />
|
||||
</bezel>
|
||||
<screen index="0">
|
||||
<bounds x="0" y="0" width="800" height="600" />
|
||||
</screen>
|
||||
<screen index="0">
|
||||
<bounds x="0" y="0" width="800" height="600" />
|
||||
</screen>
|
||||
</view>
|
||||
</mamelayout>
|
||||
|
@ -145,8 +145,8 @@ void coco_state::device_start()
|
||||
|
||||
// cart slot
|
||||
m_cococart->set_cart_base_update(cococart_base_update_delegate(&coco_state::update_cart_base, this));
|
||||
m_cococart->set_line_delay(cococart_slot_device::line::NMI, 12); // 12 allowed one more instruction to finished after the line is pulled
|
||||
m_cococart->set_line_delay(cococart_slot_device::line::HALT, 6); // 6 allowed one more instruction to finished after the line is pulled
|
||||
m_cococart->set_line_delay(cococart_slot_device::line::NMI, 12); // 12 allowed one more instruction to finished after the line is pulled
|
||||
m_cococart->set_line_delay(cococart_slot_device::line::HALT, 6); // 6 allowed one more instruction to finished after the line is pulled
|
||||
|
||||
// save state support
|
||||
save_item(NAME(m_dac_output));
|
||||
|
@ -32,10 +32,10 @@ void coco12_state::configure_sam()
|
||||
uint8_t *rom = memregion(MAINCPU_TAG)->base();
|
||||
uint8_t *cart_rom = cococart().get_cart_base();
|
||||
|
||||
m_sam->configure_bank(0, ram().pointer(), ram().size(), false); // $0000-$7FFF
|
||||
m_sam->configure_bank(1, &rom[0x0000], 0x2000, true); // $8000-$9FFF
|
||||
m_sam->configure_bank(2, &rom[0x2000], 0x2000, true); // $A000-$BFFF
|
||||
m_sam->configure_bank(3, cart_rom, 0x4000, true); // $C000-$FEFF
|
||||
m_sam->configure_bank(0, ram().pointer(), ram().size(), false); // $0000-$7FFF
|
||||
m_sam->configure_bank(1, &rom[0x0000], 0x2000, true); // $8000-$9FFF
|
||||
m_sam->configure_bank(2, &rom[0x2000], 0x2000, true); // $A000-$BFFF
|
||||
m_sam->configure_bank(3, cart_rom, 0x4000, true); // $C000-$FEFF
|
||||
|
||||
// $FF00-$FF1F
|
||||
m_sam->configure_bank(4, read8_delegate(FUNC(coco12_state::ff00_read), this), write8_delegate(FUNC(coco12_state::ff00_write), this));
|
||||
|
@ -4,9 +4,9 @@
|
||||
|
||||
GRiD Compass keyboard HLE, derived from generic_keyboard
|
||||
|
||||
Keycodes from "6 - Interceptor, CCProm, Utils, OS - Sysgen/UTILS/DVLEXEC.PLM"
|
||||
Keycodes from "6 - Interceptor, CCProm, Utils, OS - Sysgen/UTILS/DVLEXEC.PLM"
|
||||
|
||||
Multiple shift key combos not simulated yet.
|
||||
Multiple shift key combos not simulated yet.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
@ -186,14 +186,14 @@ public:
|
||||
|
||||
enum dma_ctrl_mask
|
||||
{
|
||||
DMA_CTRL_TCZERO = 0x00000001, // transfer count zero
|
||||
DMA_CTRL_BERR = 0x00400000, // bus error
|
||||
DMA_CTRL_BUSY = 0x02000000, // set until arbiter grants bus access
|
||||
DMA_CTRL_TCZERO = 0x00000001, // transfer count zero
|
||||
DMA_CTRL_BERR = 0x00400000, // bus error
|
||||
DMA_CTRL_BUSY = 0x02000000, // set until arbiter grants bus access
|
||||
|
||||
DMA_CTRL_WRITE = 0x40000000, // indicates memory to device transfer
|
||||
DMA_CTRL_FORCED = 0x60000000,
|
||||
DMA_CTRL_WRITE = 0x40000000, // indicates memory to device transfer
|
||||
DMA_CTRL_FORCED = 0x60000000,
|
||||
|
||||
DMA_CTRL_WMASK = 0xfd000e00 // writable fields
|
||||
DMA_CTRL_WMASK = 0xfd000e00 // writable fields
|
||||
};
|
||||
DECLARE_READ32_MEMBER(dma_plotter_r) { return dma_r(space, offset, mem_mask, IOGA_DMA_PLOTTER); }
|
||||
DECLARE_WRITE32_MEMBER(dma_plotter_w) { dma_w(space, offset, data, mem_mask, IOGA_DMA_PLOTTER); }
|
||||
|
@ -83,7 +83,7 @@ WRITE16_MEMBER(interpro_mcga_device::control_w)
|
||||
if (data & CONTROL_ENMMBE)
|
||||
m_error |= ERROR_VALID;
|
||||
//else
|
||||
// m_error &= ~ERROR_VALID;
|
||||
// m_error &= ~ERROR_VALID;
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(interpro_fmcc_device::control_w)
|
||||
@ -94,5 +94,5 @@ WRITE16_MEMBER(interpro_fmcc_device::control_w)
|
||||
if (data & CONTROL_ENMMBE)
|
||||
m_error |= ERROR_VALID;
|
||||
//else
|
||||
// m_error &= ~ERROR_VALID;
|
||||
// m_error &= ~ERROR_VALID;
|
||||
}
|
||||
|
@ -953,8 +953,8 @@ MACHINE_CONFIG_START( dcat16_megadriv )
|
||||
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(md_cons_state, screen_vblank_console))
|
||||
|
||||
// has SD card slot instead?
|
||||
// MCFG_MD_CARTRIDGE_ADD("mdslot", md_cart, nullptr)
|
||||
// MCFG_SOFTWARE_LIST_ADD("cart_list","megadriv")
|
||||
// MCFG_MD_CARTRIDGE_ADD("mdslot", md_cart, nullptr)
|
||||
// MCFG_SOFTWARE_LIST_ADD("cart_list","megadriv")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/************ PAL hardware has a different master clock *************/
|
||||
|
@ -81,7 +81,7 @@ casanova //
|
||||
|
||||
@source:40love.cpp
|
||||
40love // A30 (c) 1984 Taito
|
||||
40lovej // A30 (c) 1984 Taito
|
||||
40lovej // A30 (c) 1984 Taito
|
||||
fieldday // A23 (c) 1984 Taito
|
||||
undoukai // A17 (c) 1984 Taito
|
||||
|
||||
@ -10695,7 +10695,7 @@ dblcrown // (c) 1994 Excellent System
|
||||
dblewing // MBE (c) 1993 Mitchell
|
||||
|
||||
@source:dbox.cpp
|
||||
dbox // (c) 1996 Nokia Multimedia
|
||||
dbox // (c) 1996 Nokia Multimedia
|
||||
|
||||
@source:dbz.cpp
|
||||
dbz // (c) 1993 Banpresto
|
||||
@ -11084,7 +11084,7 @@ cbnj // 27 Bump 'n' Jump
|
||||
cbtime // 26 1982.08 Hamburger/Burger Time
|
||||
cburnrub // 27 1982.11 Burnin' Rubber
|
||||
cburnrub2 // 27
|
||||
cburnrubj //
|
||||
cburnrubj //
|
||||
cdiscon1 // 19 1982.04 Disco No.1
|
||||
cdsteljn // 14 1981.06 DS Telejan
|
||||
cexplore // 18 1982.02 Explorer
|
||||
@ -11093,14 +11093,14 @@ cfghtice // 40 1984.04 Fighting Ice Hockey
|
||||
cfishing // 25 1982.10 Fishing
|
||||
cflyball // 35 1983.?? Flying Ball/Bampoline
|
||||
cgraplop // 28 1982.11 Cluster Buster / Graplop
|
||||
cgraplopj //
|
||||
cgraplopj //
|
||||
cgraplop2 // 28
|
||||
chamburger // 26 1982.08 Hamburger (Japan)
|
||||
chwy // 01 1980.12 Highway Chase
|
||||
clapapa // 29 1982.11 La-Pa-Pa
|
||||
clapapa2 // 29 Rootin' Tootin' // this one doesn't display lapapa anywhere
|
||||
clocknch // 11 1981.04 Lock'n'Chase
|
||||
clocknchj //
|
||||
clocknchj //
|
||||
cluckypo // 15 1981.?? Lucky Poker
|
||||
cmanhat // 03 1981.01 Manhattan
|
||||
cmissnx // 21 1982.04 Mission-X/Zoar
|
||||
@ -13097,8 +13097,8 @@ turpins // (c) 1981 bootleg
|
||||
turtles // (c) 1981 Stern
|
||||
uniwars // (c) Irem
|
||||
uniwarsa // (c) Karateco
|
||||
victoryc // (c) Comsoft
|
||||
victorycb // (c) Comsoft (bootleg)
|
||||
victoryc // (c) Comsoft
|
||||
victorycb // (c) Comsoft (bootleg)
|
||||
warofbug // (c) 1981 Armenia
|
||||
warofbugg // German Version
|
||||
warofbugu // (c) 1981 Armenia
|
||||
@ -14806,7 +14806,7 @@ hp9816 //
|
||||
hp9k310 //
|
||||
hp9k320 //
|
||||
hp9k330 //
|
||||
hp9k332 //
|
||||
hp9k332 //
|
||||
hp9k340 //
|
||||
hp9k370 //
|
||||
hp9k380 //
|
||||
@ -20155,7 +20155,7 @@ segacd2 // 1993 Sega Sega CD 2 (USA)
|
||||
wmega // 1992 Sega Wondermega (Japan)
|
||||
wmegam2 // 1993 Victor Wondermega M2 (Japan)
|
||||
xeye // 1993 JVC X'eye (USA)
|
||||
dcat16 //
|
||||
dcat16 //
|
||||
|
||||
@source:megadrvb.cpp
|
||||
aladmdb // MegaDrive-based hack
|
||||
@ -31106,7 +31106,7 @@ pitagjr // Pitagorin Junior
|
||||
@source:pitnrun.cpp
|
||||
pitnrun // PR (c) 1984 Taito Corporation
|
||||
pitnruna // PR (c) 1984 Taito Corporation
|
||||
jumpkun // prototype
|
||||
jumpkun // prototype
|
||||
|
||||
@source:pk8000.cpp
|
||||
hobby //
|
||||
@ -31498,7 +31498,7 @@ powerins // (c) 1993 Atlus (USA)
|
||||
powerinsa // (c) 1993 Atlus (bootleg of USA version)
|
||||
powerinsb // (c) 1993 Atlus (bootleg of USA version)
|
||||
powerinsj // (c) 1993 Atlus (Japan)
|
||||
powerinsp // prototype
|
||||
powerinsp // prototype
|
||||
|
||||
@source:pp01.cpp
|
||||
pp01 //
|
||||
@ -32218,7 +32218,7 @@ rollace2 // (c) 1983 Williams
|
||||
rotaryf //
|
||||
|
||||
@source:ron.cpp
|
||||
ron2 // (c) 1981 Sanritsu
|
||||
ron2 // (c) 1981 Sanritsu
|
||||
|
||||
@source:roul.cpp
|
||||
roul // (c) 1990
|
||||
|
@ -180,7 +180,7 @@ void consolewin_info::update_menu()
|
||||
|
||||
// not working properly, removed for now until investigation can be done
|
||||
//if (get_softlist_info(&img))
|
||||
// AppendMenu(devicesubmenu, MF_STRING, new_item + DEVOPTION_ITEM, TEXT("Mount Item..."));
|
||||
// AppendMenu(devicesubmenu, MF_STRING, new_item + DEVOPTION_ITEM, TEXT("Mount Item..."));
|
||||
|
||||
AppendMenu(devicesubmenu, MF_STRING, new_item + DEVOPTION_OPEN, TEXT("Mount File..."));
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user