mirror of
https://github.com/holub/mame
synced 2025-10-04 16:34:53 +03:00
Philips company is 1 L (nw)
This commit is contained in:
parent
7c1999d4ed
commit
4cfc21930e
@ -10618,7 +10618,7 @@
|
|||||||
-->
|
-->
|
||||||
<description>Super Mario's Wacky Worlds (Prototype v0.11, 19930303)</description>
|
<description>Super Mario's Wacky Worlds (Prototype v0.11, 19930303)</description>
|
||||||
<year>1993</year>
|
<year>1993</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cdrom" interface="cdi_cdrom">
|
<part name="cdrom" interface="cdi_cdrom">
|
||||||
<diskarea name="cdrom">
|
<diskarea name="cdrom">
|
||||||
<disk name="super mario wacky worlds (prototype)" sha1="a3178428ed39f7a461e693d9a1a927b4daaa677f"/>
|
<disk name="super mario wacky worlds (prototype)" sha1="a3178428ed39f7a461e693d9a1a927b4daaa677f"/>
|
||||||
|
@ -35,12 +35,12 @@ Interpol (USA)
|
|||||||
|
|
||||||
<softwarelist name="g7400" description="Philips Videopac Plus G7400 cartridges">
|
<softwarelist name="g7400" description="Philips Videopac Plus G7400 cartridges">
|
||||||
|
|
||||||
<!-- Phillips Videopac+ G7400 carts -->
|
<!-- Philips Videopac+ G7400 carts -->
|
||||||
|
|
||||||
<software name="airbattl" supported="no">
|
<software name="airbattl" supported="no">
|
||||||
<description>Air Battle (Euro)</description>
|
<description>Air Battle (Euro)</description>
|
||||||
<year>1983</year>
|
<year>1983</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<info name="serial" value="58"/>
|
<info name="serial" value="58"/>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom12" />
|
<feature name="slot" value="o2_rom12" />
|
||||||
@ -81,7 +81,7 @@ Interpol (USA)
|
|||||||
<software name="billiard" cloneof="billard" supported="no">
|
<software name="billiard" cloneof="billard" supported="no">
|
||||||
<description>Billiard (Euro, Prototype)</description>
|
<description>Billiard (Euro, Prototype)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<info name="programmer" value="Ed Averett"/>
|
<info name="programmer" value="Ed Averett"/>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
@ -118,7 +118,7 @@ Interpol (USA)
|
|||||||
<software name="claypig" supported="no">
|
<software name="claypig" supported="no">
|
||||||
<description>Clay Pigeon (Euro, Prototype)</description>
|
<description>Clay Pigeon (Euro, Prototype)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -130,7 +130,7 @@ Interpol (USA)
|
|||||||
<software name="cosmic" supported="no">
|
<software name="cosmic" supported="no">
|
||||||
<description>Cosmic Conflict (Euro)</description>
|
<description>Cosmic Conflict (Euro)</description>
|
||||||
<year>1983</year>
|
<year>1983</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -179,7 +179,7 @@ Interpol (USA)
|
|||||||
<software name="flashp" supported="no">
|
<software name="flashp" supported="no">
|
||||||
<description>Flashpoint (USA, Prototype, PAL Conversion)</description>
|
<description>Flashpoint (USA, Prototype, PAL Conversion)</description>
|
||||||
<year>2004</year>
|
<year>2004</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -191,7 +191,7 @@ Interpol (USA)
|
|||||||
<software name="freedom" supported="no">
|
<software name="freedom" supported="no">
|
||||||
<description>Freedom Fighters (Euro)</description>
|
<description>Freedom Fighters (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -215,7 +215,7 @@ Interpol (USA)
|
|||||||
<software name="helicopt" supported="no">
|
<software name="helicopt" supported="no">
|
||||||
<description>Helicopter Rescue (Euro)</description>
|
<description>Helicopter Rescue (Euro)</description>
|
||||||
<year>1983</year>
|
<year>1983</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<info name="serial" value="59"/>
|
<info name="serial" value="59"/>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom16" />
|
<feature name="slot" value="o2_rom16" />
|
||||||
@ -239,7 +239,7 @@ Interpol (USA)
|
|||||||
<software name="2bwlbskt" cloneof="2bsktbwl" supported="no">
|
<software name="2bwlbskt" cloneof="2bsktbwl" supported="no">
|
||||||
<description>Tenpin Bowling/Basketball (Euro, Prototype)</description>
|
<description>Tenpin Bowling/Basketball (Euro, Prototype)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -251,7 +251,7 @@ Interpol (USA)
|
|||||||
<software name="bees" supported="no">
|
<software name="bees" supported="no">
|
||||||
<description>Killer Bees (Euro)</description>
|
<description>Killer Bees (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -263,7 +263,7 @@ Interpol (USA)
|
|||||||
<software name="loony" supported="no">
|
<software name="loony" supported="no">
|
||||||
<description>Loony Balloon (Euro)</description>
|
<description>Loony Balloon (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<info name="serial" value="54"/>
|
<info name="serial" value="54"/>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
@ -288,7 +288,7 @@ Interpol (USA)
|
|||||||
<software name="neutron" supported="no">
|
<software name="neutron" supported="no">
|
||||||
<description>Neutron Star (Euro)</description>
|
<description>Neutron Star (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<info name="serial" value="55"/>
|
<info name="serial" value="55"/>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom12" />
|
<feature name="slot" value="o2_rom12" />
|
||||||
@ -301,7 +301,7 @@ Interpol (USA)
|
|||||||
<software name="nightmar" supported="no">
|
<software name="nightmar" supported="no">
|
||||||
<description>Nightmare (Euro)</description>
|
<description>Nightmare (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<info name="serial" value="53"/>
|
<info name="serial" value="53"/>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
@ -328,7 +328,7 @@ Interpol (USA)
|
|||||||
<software name="pickaxe" supported="no">
|
<software name="pickaxe" supported="no">
|
||||||
<description>Pickaxe Pete (Euro)</description>
|
<description>Pickaxe Pete (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -340,7 +340,7 @@ Interpol (USA)
|
|||||||
<software name="3rcsocpt" supported="no">
|
<software name="3rcsocpt" supported="no">
|
||||||
<description>Race/Spin-out/Cryptogram (Euro)</description>
|
<description>Race/Spin-out/Cryptogram (Euro)</description>
|
||||||
<year>1983</year>
|
<year>1983</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -364,7 +364,7 @@ Interpol (USA)
|
|||||||
<software name="satellit" supported="no">
|
<software name="satellit" supported="no">
|
||||||
<description>Satellite Attack (Euro)</description>
|
<description>Satellite Attack (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -376,7 +376,7 @@ Interpol (USA)
|
|||||||
<software name="stone" supported="no">
|
<software name="stone" supported="no">
|
||||||
<description>Stone Sling (Euro)</description>
|
<description>Stone Sling (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -388,7 +388,7 @@ Interpol (USA)
|
|||||||
<software name="hawks" supported="no">
|
<software name="hawks" supported="no">
|
||||||
<description>Terrahawks (Euro)</description>
|
<description>Terrahawks (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom" />
|
<feature name="slot" value="o2_rom" />
|
||||||
<dataarea name="rom" size="8192">
|
<dataarea name="rom" size="8192">
|
||||||
@ -400,7 +400,7 @@ Interpol (USA)
|
|||||||
<software name="rally" supported="no">
|
<software name="rally" supported="no">
|
||||||
<description>Trans American Rally (Euro)</description>
|
<description>Trans American Rally (Euro)</description>
|
||||||
<year>198?</year>
|
<year>198?</year>
|
||||||
<publisher>Phillips</publisher>
|
<publisher>Philips</publisher>
|
||||||
<part name="cart" interface="odyssey_cart">
|
<part name="cart" interface="odyssey_cart">
|
||||||
<feature name="slot" value="o2_rom16" />
|
<feature name="slot" value="o2_rom16" />
|
||||||
<dataarea name="rom" size="16384">
|
<dataarea name="rom" size="16384">
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// copyright-holders:David Haywood
|
// copyright-holders:David Haywood
|
||||||
/***************************************************************************
|
/***************************************************************************
|
||||||
|
|
||||||
NXP (Phillips) LPC2103 series
|
NXP (Philips) LPC2103 series
|
||||||
covering LPC2101, LPC2102, LPC2103*
|
covering LPC2101, LPC2102, LPC2103*
|
||||||
|
|
||||||
*currently only LPC2103
|
*currently only LPC2103
|
||||||
|
@ -17,8 +17,8 @@
|
|||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
// device type definition
|
// device type definition
|
||||||
DEFINE_DEVICE_TYPE(PIONEER_PR7820, pioneer_pr7820_device, "pr7820", "Pioneer PR-7820")
|
DEFINE_DEVICE_TYPE(PIONEER_PR7820, pioneer_pr7820_device, "pr7820", "Pioneer PR-7820")
|
||||||
DEFINE_DEVICE_TYPE(PHILLIPS_22VP932, phillips_22vp932_device, "22vp932", "Phillips 22VP932")
|
DEFINE_DEVICE_TYPE(PHILIPS_22VP932, philips_22vp932_device, "22vp932", "Philips 22VP932")
|
||||||
|
|
||||||
|
|
||||||
pioneer_pr7820_device::pioneer_pr7820_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
pioneer_pr7820_device::pioneer_pr7820_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
@ -27,7 +27,7 @@ pioneer_pr7820_device::pioneer_pr7820_device(const machine_config &mconfig, cons
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
phillips_22vp932_device::phillips_22vp932_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
philips_22vp932_device::philips_22vp932_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: laserdisc_device(mconfig, PHILLIPS_22VP932, tag, owner, clock)
|
: laserdisc_device(mconfig, PHILIPS_22VP932, tag, owner, clock)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -21,8 +21,8 @@
|
|||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
// device type definition
|
// device type definition
|
||||||
DECLARE_DEVICE_TYPE(PIONEER_PR7820, pioneer_pr7820_device)
|
DECLARE_DEVICE_TYPE(PIONEER_PR7820, pioneer_pr7820_device)
|
||||||
DECLARE_DEVICE_TYPE(PHILLIPS_22VP932, phillips_22vp932_device)
|
DECLARE_DEVICE_TYPE(PHILIPS_22VP932, philips_22vp932_device)
|
||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
@ -52,13 +52,13 @@ protected:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
// ======================> phillips_22vp932_device
|
// ======================> philips_22vp932_device
|
||||||
|
|
||||||
class phillips_22vp932_device : public laserdisc_device
|
class philips_22vp932_device : public laserdisc_device
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
// construction/destruction
|
// construction/destruction
|
||||||
phillips_22vp932_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
philips_22vp932_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||||
|
|
||||||
// input/output
|
// input/output
|
||||||
uint8_t data_r() { return 0; }
|
uint8_t data_r() { return 0; }
|
||||||
|
@ -45,7 +45,7 @@
|
|||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
// devices
|
// devices
|
||||||
DEFINE_DEVICE_TYPE(PHILLIPS_22VP931, phillips_22vp931_device, "22vp931", "Phillips 22VP931")
|
DEFINE_DEVICE_TYPE(PHILIPS_22VP931, philips_22vp931_device, "22vp931", "Philips 22VP931")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -53,12 +53,12 @@ DEFINE_DEVICE_TYPE(PHILLIPS_22VP931, phillips_22vp931_device, "22vp931", "Philli
|
|||||||
// 22VP931 ROM AND MACHINE INTERFACES
|
// 22VP931 ROM AND MACHINE INTERFACES
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
void phillips_22vp931_device::vp931_portmap(address_map &map)
|
void philips_22vp931_device::vp931_portmap(address_map &map)
|
||||||
{
|
{
|
||||||
map(0x00, 0x00).mirror(0xcf).rw(FUNC(phillips_22vp931_device::i8049_keypad_r), FUNC(phillips_22vp931_device::i8049_output0_w));
|
map(0x00, 0x00).mirror(0xcf).rw(FUNC(philips_22vp931_device::i8049_keypad_r), FUNC(philips_22vp931_device::i8049_output0_w));
|
||||||
map(0x10, 0x10).mirror(0xcf).rw(FUNC(phillips_22vp931_device::i8049_unknown_r), FUNC(phillips_22vp931_device::i8049_output1_w));
|
map(0x10, 0x10).mirror(0xcf).rw(FUNC(philips_22vp931_device::i8049_unknown_r), FUNC(philips_22vp931_device::i8049_output1_w));
|
||||||
map(0x20, 0x20).mirror(0xcf).rw(FUNC(phillips_22vp931_device::i8049_datic_r), FUNC(phillips_22vp931_device::i8049_lcd_w));
|
map(0x20, 0x20).mirror(0xcf).rw(FUNC(philips_22vp931_device::i8049_datic_r), FUNC(philips_22vp931_device::i8049_lcd_w));
|
||||||
map(0x30, 0x30).mirror(0xcf).rw(FUNC(phillips_22vp931_device::i8049_from_controller_r), FUNC(phillips_22vp931_device::i8049_to_controller_w));
|
map(0x30, 0x30).mirror(0xcf).rw(FUNC(philips_22vp931_device::i8049_from_controller_r), FUNC(philips_22vp931_device::i8049_to_controller_w));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -70,15 +70,15 @@ ROM_END
|
|||||||
|
|
||||||
|
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
// PHILLIPS 22VP931 IMPLEMENTATION
|
// PHILIPS 22VP931 IMPLEMENTATION
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
// phillips_22vp931_device - constructor
|
// philips_22vp931_device - constructor
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
phillips_22vp931_device::phillips_22vp931_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
philips_22vp931_device::philips_22vp931_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
: laserdisc_device(mconfig, PHILLIPS_22VP931, tag, owner, clock),
|
: laserdisc_device(mconfig, PHILIPS_22VP931, tag, owner, clock),
|
||||||
m_i8049_cpu(*this, "vp931"),
|
m_i8049_cpu(*this, "vp931"),
|
||||||
m_tracktimer(nullptr),
|
m_tracktimer(nullptr),
|
||||||
m_i8049_out0(0),
|
m_i8049_out0(0),
|
||||||
@ -103,7 +103,7 @@ phillips_22vp931_device::phillips_22vp931_device(const machine_config &mconfig,
|
|||||||
// reset_w - write to the reset line
|
// reset_w - write to the reset line
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
void phillips_22vp931_device::reset_w(uint8_t data)
|
void philips_22vp931_device::reset_w(uint8_t data)
|
||||||
{
|
{
|
||||||
// control the CPU state
|
// control the CPU state
|
||||||
m_i8049_cpu->set_input_line(INPUT_LINE_RESET, data);
|
m_i8049_cpu->set_input_line(INPUT_LINE_RESET, data);
|
||||||
@ -119,7 +119,7 @@ void phillips_22vp931_device::reset_w(uint8_t data)
|
|||||||
// 22VP931
|
// 22VP931
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
uint8_t phillips_22vp931_device::data_r()
|
uint8_t philips_22vp931_device::data_r()
|
||||||
{
|
{
|
||||||
// if data is pending, clear the pending flag and notify any callbacks
|
// if data is pending, clear the pending flag and notify any callbacks
|
||||||
if (m_tocontroller_pending)
|
if (m_tocontroller_pending)
|
||||||
@ -139,7 +139,7 @@ uint8_t phillips_22vp931_device::data_r()
|
|||||||
// device_start - device initialization
|
// device_start - device initialization
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
void phillips_22vp931_device::device_start()
|
void philips_22vp931_device::device_start()
|
||||||
{
|
{
|
||||||
// pass through to the parent
|
// pass through to the parent
|
||||||
laserdisc_device::device_start();
|
laserdisc_device::device_start();
|
||||||
@ -153,7 +153,7 @@ void phillips_22vp931_device::device_start()
|
|||||||
// device_reset - device reset
|
// device_reset - device reset
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
void phillips_22vp931_device::device_reset()
|
void philips_22vp931_device::device_reset()
|
||||||
{
|
{
|
||||||
// pass through to the parent
|
// pass through to the parent
|
||||||
laserdisc_device::device_reset();
|
laserdisc_device::device_reset();
|
||||||
@ -185,7 +185,7 @@ void phillips_22vp931_device::device_reset()
|
|||||||
// device
|
// device
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
void phillips_22vp931_device::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
|
void philips_22vp931_device::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
|
||||||
{
|
{
|
||||||
switch (id)
|
switch (id)
|
||||||
{
|
{
|
||||||
@ -276,7 +276,7 @@ void phillips_22vp931_device::device_timer(emu_timer &timer, device_timer_id id,
|
|||||||
// ROM region definitions
|
// ROM region definitions
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
const tiny_rom_entry *phillips_22vp931_device::device_rom_region() const
|
const tiny_rom_entry *philips_22vp931_device::device_rom_region() const
|
||||||
{
|
{
|
||||||
return ROM_NAME(vp931);
|
return ROM_NAME(vp931);
|
||||||
}
|
}
|
||||||
@ -286,16 +286,16 @@ const tiny_rom_entry *phillips_22vp931_device::device_rom_region() const
|
|||||||
// device_add_mconfig - add device configuration
|
// device_add_mconfig - add device configuration
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
void phillips_22vp931_device::device_add_mconfig(machine_config &config)
|
void philips_22vp931_device::device_add_mconfig(machine_config &config)
|
||||||
{
|
{
|
||||||
I8049(config, m_i8049_cpu, XTAL(11'000'000));
|
I8049(config, m_i8049_cpu, XTAL(11'000'000));
|
||||||
m_i8049_cpu->set_addrmap(AS_IO, &phillips_22vp931_device::vp931_portmap);
|
m_i8049_cpu->set_addrmap(AS_IO, &philips_22vp931_device::vp931_portmap);
|
||||||
m_i8049_cpu->p1_in_cb().set(FUNC(phillips_22vp931_device::i8049_port1_r));
|
m_i8049_cpu->p1_in_cb().set(FUNC(philips_22vp931_device::i8049_port1_r));
|
||||||
m_i8049_cpu->p1_out_cb().set(FUNC(phillips_22vp931_device::i8049_port1_w));
|
m_i8049_cpu->p1_out_cb().set(FUNC(philips_22vp931_device::i8049_port1_w));
|
||||||
m_i8049_cpu->p2_in_cb().set(FUNC(phillips_22vp931_device::i8049_port2_r));
|
m_i8049_cpu->p2_in_cb().set(FUNC(philips_22vp931_device::i8049_port2_r));
|
||||||
m_i8049_cpu->p2_out_cb().set(FUNC(phillips_22vp931_device::i8049_port2_w));
|
m_i8049_cpu->p2_out_cb().set(FUNC(philips_22vp931_device::i8049_port2_w));
|
||||||
m_i8049_cpu->t0_in_cb().set(FUNC(phillips_22vp931_device::i8049_t0_r));
|
m_i8049_cpu->t0_in_cb().set(FUNC(philips_22vp931_device::i8049_t0_r));
|
||||||
m_i8049_cpu->t1_in_cb().set(FUNC(phillips_22vp931_device::i8049_t1_r));
|
m_i8049_cpu->t1_in_cb().set(FUNC(philips_22vp931_device::i8049_t1_r));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -304,7 +304,7 @@ void phillips_22vp931_device::device_add_mconfig(machine_config &config)
|
|||||||
// start of the blanking period
|
// start of the blanking period
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
void phillips_22vp931_device::player_vsync(const vbi_metadata &vbi, int fieldnum, const attotime &curtime)
|
void philips_22vp931_device::player_vsync(const vbi_metadata &vbi, int fieldnum, const attotime &curtime)
|
||||||
{
|
{
|
||||||
// reset our command counter (debugging only)
|
// reset our command counter (debugging only)
|
||||||
m_cmdcount = 0;
|
m_cmdcount = 0;
|
||||||
@ -320,7 +320,7 @@ void phillips_22vp931_device::player_vsync(const vbi_metadata &vbi, int fieldnum
|
|||||||
// the first visible line of the frame
|
// the first visible line of the frame
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
int32_t phillips_22vp931_device::player_update(const vbi_metadata &vbi, int fieldnum, const attotime &curtime)
|
int32_t philips_22vp931_device::player_update(const vbi_metadata &vbi, int fieldnum, const attotime &curtime)
|
||||||
{
|
{
|
||||||
// set the first VBI timer to go at the start of line 16
|
// set the first VBI timer to go at the start of line 16
|
||||||
timer_set(screen().time_until_pos(16*2), TID_VBI_DATA_FETCH, LASERDISC_CODE_LINE16 << 2);
|
timer_set(screen().time_until_pos(16*2), TID_VBI_DATA_FETCH, LASERDISC_CODE_LINE16 << 2);
|
||||||
@ -335,7 +335,7 @@ int32_t phillips_22vp931_device::player_update(const vbi_metadata &vbi, int fiel
|
|||||||
// and other bits
|
// and other bits
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
WRITE8_MEMBER( phillips_22vp931_device::i8049_output0_w )
|
WRITE8_MEMBER( philips_22vp931_device::i8049_output0_w )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
$80 = n/c
|
$80 = n/c
|
||||||
@ -374,7 +374,7 @@ WRITE8_MEMBER( phillips_22vp931_device::i8049_output0_w )
|
|||||||
// i8049_output1_w - controls scanning behaviors
|
// i8049_output1_w - controls scanning behaviors
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
WRITE8_MEMBER( phillips_22vp931_device::i8049_output1_w )
|
WRITE8_MEMBER( philips_22vp931_device::i8049_output1_w )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
$80 = n/c
|
$80 = n/c
|
||||||
@ -418,7 +418,7 @@ WRITE8_MEMBER( phillips_22vp931_device::i8049_output1_w )
|
|||||||
// i8049_lcd_w - vestigial LCD frame display
|
// i8049_lcd_w - vestigial LCD frame display
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
WRITE8_MEMBER( phillips_22vp931_device::i8049_lcd_w )
|
WRITE8_MEMBER( philips_22vp931_device::i8049_lcd_w )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
Frame number is written as 5 digits here; however, it is not actually
|
Frame number is written as 5 digits here; however, it is not actually
|
||||||
@ -431,7 +431,7 @@ WRITE8_MEMBER( phillips_22vp931_device::i8049_lcd_w )
|
|||||||
// i8049_unknown_r - unknown input port
|
// i8049_unknown_r - unknown input port
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
READ8_MEMBER( phillips_22vp931_device::i8049_unknown_r )
|
READ8_MEMBER( philips_22vp931_device::i8049_unknown_r )
|
||||||
{
|
{
|
||||||
// only bit $80 is checked and its effects are minor
|
// only bit $80 is checked and its effects are minor
|
||||||
return 0x00;
|
return 0x00;
|
||||||
@ -443,7 +443,7 @@ READ8_MEMBER( phillips_22vp931_device::i8049_unknown_r )
|
|||||||
// controls
|
// controls
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
READ8_MEMBER( phillips_22vp931_device::i8049_keypad_r )
|
READ8_MEMBER( philips_22vp931_device::i8049_keypad_r )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
From the code, this is apparently a vestigial keypad with basic controls:
|
From the code, this is apparently a vestigial keypad with basic controls:
|
||||||
@ -465,7 +465,7 @@ READ8_MEMBER( phillips_22vp931_device::i8049_keypad_r )
|
|||||||
// DATIC circuit
|
// DATIC circuit
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
READ8_MEMBER( phillips_22vp931_device::i8049_datic_r )
|
READ8_MEMBER( philips_22vp931_device::i8049_datic_r )
|
||||||
{
|
{
|
||||||
return m_daticval;
|
return m_daticval;
|
||||||
}
|
}
|
||||||
@ -476,7 +476,7 @@ READ8_MEMBER( phillips_22vp931_device::i8049_datic_r )
|
|||||||
// external controller wrote
|
// external controller wrote
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
READ8_MEMBER( phillips_22vp931_device::i8049_from_controller_r )
|
READ8_MEMBER( philips_22vp931_device::i8049_from_controller_r )
|
||||||
{
|
{
|
||||||
// clear the pending flag and return the data
|
// clear the pending flag and return the data
|
||||||
m_fromcontroller_pending = false;
|
m_fromcontroller_pending = false;
|
||||||
@ -489,7 +489,7 @@ READ8_MEMBER( phillips_22vp931_device::i8049_from_controller_r )
|
|||||||
// the external controller
|
// the external controller
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
WRITE8_MEMBER( phillips_22vp931_device::i8049_to_controller_w )
|
WRITE8_MEMBER( philips_22vp931_device::i8049_to_controller_w )
|
||||||
{
|
{
|
||||||
// set the pending flag and stash the data
|
// set the pending flag and stash the data
|
||||||
m_tocontroller_pending = true;
|
m_tocontroller_pending = true;
|
||||||
@ -508,7 +508,7 @@ WRITE8_MEMBER( phillips_22vp931_device::i8049_to_controller_w )
|
|||||||
// i8049_port1_r - read the 8048 I/O port 1
|
// i8049_port1_r - read the 8048 I/O port 1
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
READ8_MEMBER( phillips_22vp931_device::i8049_port1_r )
|
READ8_MEMBER( philips_22vp931_device::i8049_port1_r )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
$80 = P17 = (in) unsure
|
$80 = P17 = (in) unsure
|
||||||
@ -527,7 +527,7 @@ READ8_MEMBER( phillips_22vp931_device::i8049_port1_r )
|
|||||||
// i8049_port1_w - write the 8048 I/O port 1
|
// i8049_port1_w - write the 8048 I/O port 1
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
WRITE8_MEMBER( phillips_22vp931_device::i8049_port1_w )
|
WRITE8_MEMBER( philips_22vp931_device::i8049_port1_w )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
$10 = P14 = (out) D104 -> /SPEED
|
$10 = P14 = (out) D104 -> /SPEED
|
||||||
@ -598,7 +598,7 @@ WRITE8_MEMBER( phillips_22vp931_device::i8049_port1_w )
|
|||||||
// i8049_port2_r - read from the 8048 I/O port 2
|
// i8049_port2_r - read from the 8048 I/O port 2
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
READ8_MEMBER( phillips_22vp931_device::i8049_port2_r )
|
READ8_MEMBER( philips_22vp931_device::i8049_port2_r )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
$80 = P27 = (in) set/reset latch; set by FOC LS, reset by IGR
|
$80 = P27 = (in) set/reset latch; set by FOC LS, reset by IGR
|
||||||
@ -619,7 +619,7 @@ READ8_MEMBER( phillips_22vp931_device::i8049_port2_r )
|
|||||||
// i8049_port2_w - write the 8048 I/O port 2
|
// i8049_port2_w - write the 8048 I/O port 2
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
WRITE8_MEMBER( phillips_22vp931_device::i8049_port2_w )
|
WRITE8_MEMBER( philips_22vp931_device::i8049_port2_w )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
$40 = P26 = (out) cleared while data is sent back & forth; set afterwards
|
$40 = P26 = (out) cleared while data is sent back & forth; set afterwards
|
||||||
@ -633,7 +633,7 @@ WRITE8_MEMBER( phillips_22vp931_device::i8049_port2_w )
|
|||||||
// connected to the DATIC's data strobe line
|
// connected to the DATIC's data strobe line
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
READ_LINE_MEMBER( phillips_22vp931_device::i8049_t0_r )
|
READ_LINE_MEMBER( philips_22vp931_device::i8049_t0_r )
|
||||||
{
|
{
|
||||||
return m_datastrobe;
|
return m_datastrobe;
|
||||||
}
|
}
|
||||||
@ -645,7 +645,7 @@ READ_LINE_MEMBER( phillips_22vp931_device::i8049_t0_r )
|
|||||||
// to count the number of tracks advanced
|
// to count the number of tracks advanced
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
|
|
||||||
READ_LINE_MEMBER( phillips_22vp931_device::i8049_t1_r )
|
READ_LINE_MEMBER( philips_22vp931_device::i8049_t1_r )
|
||||||
{
|
{
|
||||||
return m_trackstate;
|
return m_trackstate;
|
||||||
}
|
}
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
// device type definition
|
// device type definition
|
||||||
DECLARE_DEVICE_TYPE(PHILLIPS_22VP931, phillips_22vp931_device)
|
DECLARE_DEVICE_TYPE(PHILIPS_22VP931, philips_22vp931_device)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -30,17 +30,17 @@ DECLARE_DEVICE_TYPE(PHILLIPS_22VP931, phillips_22vp931_device)
|
|||||||
// TYPE DEFINITIONS
|
// TYPE DEFINITIONS
|
||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
// ======================> phillips_22vp931_device
|
// ======================> philips_22vp931_device
|
||||||
|
|
||||||
// base _22vp931 class
|
// base _22vp931 class
|
||||||
class phillips_22vp931_device : public laserdisc_device
|
class philips_22vp931_device : public laserdisc_device
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
// types
|
// types
|
||||||
typedef delegate<void (phillips_22vp931_device &, int)> data_ready_delegate;
|
typedef delegate<void (philips_22vp931_device &, int)> data_ready_delegate;
|
||||||
|
|
||||||
// construction/destruction
|
// construction/destruction
|
||||||
phillips_22vp931_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
philips_22vp931_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||||
|
|
||||||
// input and output
|
// input and output
|
||||||
void data_w(uint8_t data) { synchronize(TID_DEFERRED_DATA, data); }
|
void data_w(uint8_t data) { synchronize(TID_DEFERRED_DATA, data); }
|
||||||
|
@ -26,15 +26,15 @@ More info on the LD-V1100:
|
|||||||
http://www.laserdiscarchive.co.uk/laserdisc_archive/pioneer/pioneer_ld-1100/pioneer_ld-1100.htm
|
http://www.laserdiscarchive.co.uk/laserdisc_archive/pioneer/pioneer_ld-1100/pioneer_ld-1100.htm
|
||||||
|
|
||||||
Interrupts:
|
Interrupts:
|
||||||
The frame decoder reads in the Phillips code from the composite signal into
|
The frame decoder reads in the Philips code from the composite signal into
|
||||||
3x8 bit flip flops. If bit 7 of the code is set, then an IRQ is generated.
|
3x8 bit flip flops. If bit 7 of the code is set, then an IRQ is generated.
|
||||||
Phillips codes come in scanline 17 and 18 of the composite signal for each
|
Philips codes come in scanline 17 and 18 of the composite signal for each
|
||||||
field, so if we have valid codes, we would have 4 irq's per frame.
|
field, so if we have valid codes, we would have 4 irq's per frame.
|
||||||
NMIs are triggered by the TMS9128NL chip. The TMS9128NL SYNC signal is hooked
|
NMIs are triggered by the TMS9128NL chip. The TMS9128NL SYNC signal is hooked
|
||||||
up to the composite SYNC signal from the frame decoder.
|
up to the composite SYNC signal from the frame decoder.
|
||||||
|
|
||||||
Goal To Go Side detection:
|
Goal To Go Side detection:
|
||||||
The side detection code expects to read a chapter Phillips code of 0x881DDD
|
The side detection code expects to read a chapter Philips code of 0x881DDD
|
||||||
for Side 1, or 0x8F7DDD for Side 2. That would be chapter 1 for Side 1, or
|
for Side 1, or 0x8F7DDD for Side 2. That would be chapter 1 for Side 1, or
|
||||||
chapter number 119 for Side 2.
|
chapter number 119 for Side 2.
|
||||||
|
|
||||||
@ -47,13 +47,13 @@ IO Ports:
|
|||||||
0x44: W TMS9128NL VRAM Port
|
0x44: W TMS9128NL VRAM Port
|
||||||
0x45: R TMS9128NL VRAM Port
|
0x45: R TMS9128NL VRAM Port
|
||||||
0x46: W Sound/Overlay
|
0x46: W Sound/Overlay
|
||||||
0x50: R Reads lower byte of Phillips code
|
0x50: R Reads lower byte of Philips code
|
||||||
0x51: R Reads middle byte of Phillips code
|
0x51: R Reads middle byte of Philips code
|
||||||
0x52: R Reads high byte of Phillips code
|
0x52: R Reads high byte of Philips code
|
||||||
0x53: R Clears the flip flop that generated the IRQ
|
0x53: R Clears the flip flop that generated the IRQ
|
||||||
0x54: W TMS9128NL REG Port
|
0x54: W TMS9128NL REG Port
|
||||||
0x55: R TMS9128NL REG Port
|
0x55: R TMS9128NL REG Port
|
||||||
0x57: W Clears the serial->parallel chips of the Phillips code reader.
|
0x57: W Clears the serial->parallel chips of the Philips code reader.
|
||||||
0x60: W Input Port/Dipswitch selector
|
0x60: W Input Port/Dipswitch selector
|
||||||
0x62: R Input Port/Dipswitch data read
|
0x62: R Input Port/Dipswitch data read
|
||||||
0x64: - Unused in the schematics, but used in the code (maybe as delay?)
|
0x64: - Unused in the schematics, but used in the code (maybe as delay?)
|
||||||
@ -97,7 +97,7 @@ public:
|
|||||||
: driver_device(mconfig, type, tag)
|
: driver_device(mconfig, type, tag)
|
||||||
, m_laserdisc(*this, "laserdisc")
|
, m_laserdisc(*this, "laserdisc")
|
||||||
, m_port_bank(0)
|
, m_port_bank(0)
|
||||||
, m_phillips_code(0)
|
, m_philips_code(0)
|
||||||
, m_maincpu(*this, "maincpu")
|
, m_maincpu(*this, "maincpu")
|
||||||
, m_discrete(*this, "discrete")
|
, m_discrete(*this, "discrete")
|
||||||
, m_screen(*this, "screen")
|
, m_screen(*this, "screen")
|
||||||
@ -107,8 +107,8 @@ public:
|
|||||||
DECLARE_WRITE8_MEMBER(cliff_test_led_w);
|
DECLARE_WRITE8_MEMBER(cliff_test_led_w);
|
||||||
DECLARE_WRITE8_MEMBER(cliff_port_bank_w);
|
DECLARE_WRITE8_MEMBER(cliff_port_bank_w);
|
||||||
DECLARE_READ8_MEMBER(cliff_port_r);
|
DECLARE_READ8_MEMBER(cliff_port_r);
|
||||||
DECLARE_READ8_MEMBER(cliff_phillips_code_r);
|
DECLARE_READ8_MEMBER(cliff_philips_code_r);
|
||||||
DECLARE_WRITE8_MEMBER(cliff_phillips_clear_w);
|
DECLARE_WRITE8_MEMBER(cliff_philips_clear_w);
|
||||||
DECLARE_WRITE8_MEMBER(cliff_coin_counter_w);
|
DECLARE_WRITE8_MEMBER(cliff_coin_counter_w);
|
||||||
DECLARE_READ8_MEMBER(cliff_irq_ack_r);
|
DECLARE_READ8_MEMBER(cliff_irq_ack_r);
|
||||||
DECLARE_WRITE8_MEMBER(cliff_ldwire_w);
|
DECLARE_WRITE8_MEMBER(cliff_ldwire_w);
|
||||||
@ -127,7 +127,7 @@ private:
|
|||||||
required_device<pioneer_pr8210_device> m_laserdisc;
|
required_device<pioneer_pr8210_device> m_laserdisc;
|
||||||
|
|
||||||
int m_port_bank;
|
int m_port_bank;
|
||||||
uint32_t m_phillips_code;
|
uint32_t m_philips_code;
|
||||||
|
|
||||||
emu_timer *m_irq_timer;
|
emu_timer *m_irq_timer;
|
||||||
|
|
||||||
@ -167,12 +167,12 @@ READ8_MEMBER(cliffhgr_state::cliff_port_r)
|
|||||||
return 0xff;
|
return 0xff;
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(cliffhgr_state::cliff_phillips_code_r)
|
READ8_MEMBER(cliffhgr_state::cliff_philips_code_r)
|
||||||
{
|
{
|
||||||
return (m_phillips_code >> (8 * offset)) & 0xff;
|
return (m_philips_code >> (8 * offset)) & 0xff;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(cliffhgr_state::cliff_phillips_clear_w)
|
WRITE8_MEMBER(cliffhgr_state::cliff_philips_clear_w)
|
||||||
{
|
{
|
||||||
/* reset serial to parallel converters */
|
/* reset serial to parallel converters */
|
||||||
}
|
}
|
||||||
@ -209,25 +209,25 @@ WRITE8_MEMBER(cliffhgr_state::cliff_ldwire_w)
|
|||||||
|
|
||||||
TIMER_CALLBACK_MEMBER(cliffhgr_state::cliff_irq_callback)
|
TIMER_CALLBACK_MEMBER(cliffhgr_state::cliff_irq_callback)
|
||||||
{
|
{
|
||||||
m_phillips_code = 0;
|
m_philips_code = 0;
|
||||||
|
|
||||||
switch (param)
|
switch (param)
|
||||||
{
|
{
|
||||||
case 17:
|
case 17:
|
||||||
m_phillips_code = m_laserdisc->get_field_code(LASERDISC_CODE_LINE17, true);
|
m_philips_code = m_laserdisc->get_field_code(LASERDISC_CODE_LINE17, true);
|
||||||
param = 18;
|
param = 18;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 18:
|
case 18:
|
||||||
m_phillips_code = m_laserdisc->get_field_code(LASERDISC_CODE_LINE18, true);
|
m_philips_code = m_laserdisc->get_field_code(LASERDISC_CODE_LINE18, true);
|
||||||
param = 17;
|
param = 17;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* if we have a valid code, trigger an IRQ */
|
/* if we have a valid code, trigger an IRQ */
|
||||||
if (m_phillips_code & 0x800000)
|
if (m_philips_code & 0x800000)
|
||||||
{
|
{
|
||||||
// printf("%2d:code = %06X\n", param, phillips_code);
|
// printf("%2d:code = %06X\n", param, philips_code);
|
||||||
m_maincpu->set_input_line(0, ASSERT_LINE);
|
m_maincpu->set_input_line(0, ASSERT_LINE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -243,7 +243,7 @@ void cliffhgr_state::machine_start()
|
|||||||
void cliffhgr_state::machine_reset()
|
void cliffhgr_state::machine_reset()
|
||||||
{
|
{
|
||||||
m_port_bank = 0;
|
m_port_bank = 0;
|
||||||
m_phillips_code = 0;
|
m_philips_code = 0;
|
||||||
m_irq_timer->adjust(m_screen->time_until_pos(17), 17);
|
m_irq_timer->adjust(m_screen->time_until_pos(17), 17);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -262,11 +262,11 @@ void cliffhgr_state::mainport(address_map &map)
|
|||||||
map(0x44, 0x44).w("tms9928a", FUNC(tms9928a_device::vram_w));
|
map(0x44, 0x44).w("tms9928a", FUNC(tms9928a_device::vram_w));
|
||||||
map(0x45, 0x45).r("tms9928a", FUNC(tms9928a_device::vram_r));
|
map(0x45, 0x45).r("tms9928a", FUNC(tms9928a_device::vram_r));
|
||||||
map(0x46, 0x46).w(FUNC(cliffhgr_state::cliff_sound_overlay_w));
|
map(0x46, 0x46).w(FUNC(cliffhgr_state::cliff_sound_overlay_w));
|
||||||
map(0x50, 0x52).r(FUNC(cliffhgr_state::cliff_phillips_code_r));
|
map(0x50, 0x52).r(FUNC(cliffhgr_state::cliff_philips_code_r));
|
||||||
map(0x53, 0x53).r(FUNC(cliffhgr_state::cliff_irq_ack_r));
|
map(0x53, 0x53).r(FUNC(cliffhgr_state::cliff_irq_ack_r));
|
||||||
map(0x54, 0x54).w("tms9928a", FUNC(tms9928a_device::register_w));
|
map(0x54, 0x54).w("tms9928a", FUNC(tms9928a_device::register_w));
|
||||||
map(0x55, 0x55).r("tms9928a", FUNC(tms9928a_device::register_r));
|
map(0x55, 0x55).r("tms9928a", FUNC(tms9928a_device::register_r));
|
||||||
map(0x57, 0x57).w(FUNC(cliffhgr_state::cliff_phillips_clear_w));
|
map(0x57, 0x57).w(FUNC(cliffhgr_state::cliff_philips_clear_w));
|
||||||
map(0x60, 0x60).w(FUNC(cliffhgr_state::cliff_port_bank_w));
|
map(0x60, 0x60).w(FUNC(cliffhgr_state::cliff_port_bank_w));
|
||||||
map(0x62, 0x62).r(FUNC(cliffhgr_state::cliff_port_r));
|
map(0x62, 0x62).r(FUNC(cliffhgr_state::cliff_port_r));
|
||||||
map(0x64, 0x64).nopw(); /* unused in schematics, may be used as timing delay for IR interface */
|
map(0x64, 0x64).nopw(); /* unused in schematics, may be used as timing delay for IR interface */
|
||||||
|
@ -141,7 +141,7 @@ private:
|
|||||||
optional_device<palette_device> m_palette;
|
optional_device<palette_device> m_palette;
|
||||||
optional_device<pioneer_ldv1000_device> m_ldv1000;
|
optional_device<pioneer_ldv1000_device> m_ldv1000;
|
||||||
optional_device<pioneer_pr7820_device> m_pr7820;
|
optional_device<pioneer_pr7820_device> m_pr7820;
|
||||||
optional_device<phillips_22vp932_device> m_22vp932;
|
optional_device<philips_22vp932_device> m_22vp932;
|
||||||
optional_shared_ptr<uint8_t> m_videoram;
|
optional_shared_ptr<uint8_t> m_videoram;
|
||||||
output_finder<16> m_digits;
|
output_finder<16> m_digits;
|
||||||
|
|
||||||
@ -778,7 +778,7 @@ MACHINE_CONFIG_START(dlair_state::dleuro)
|
|||||||
|
|
||||||
WATCHDOG_TIMER(config, "watchdog").set_time(attotime::from_hz(MASTER_CLOCK_EURO/(16*16*16*16*16*8)));
|
WATCHDOG_TIMER(config, "watchdog").set_time(attotime::from_hz(MASTER_CLOCK_EURO/(16*16*16*16*16*8)));
|
||||||
|
|
||||||
PHILLIPS_22VP932(config, m_22vp932, 0);
|
PHILIPS_22VP932(config, m_22vp932, 0);
|
||||||
m_22vp932->set_overlay(256, 256, FUNC(dlair_state::screen_update_dleuro));
|
m_22vp932->set_overlay(256, 256, FUNC(dlair_state::screen_update_dleuro));
|
||||||
m_22vp932->set_overlay_palette(m_palette);
|
m_22vp932->set_overlay_palette(m_palette);
|
||||||
m_22vp932->add_route(0, "lspeaker", 1.0);
|
m_22vp932->add_route(0, "lspeaker", 1.0);
|
||||||
|
@ -103,14 +103,14 @@ private:
|
|||||||
uint32_t screen_update_firefox(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
uint32_t screen_update_firefox(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
||||||
TIMER_DEVICE_CALLBACK_MEMBER(video_timer_callback);
|
TIMER_DEVICE_CALLBACK_MEMBER(video_timer_callback);
|
||||||
void set_rgba( int start, int index, unsigned char *palette_ram );
|
void set_rgba( int start, int index, unsigned char *palette_ram );
|
||||||
void firq_gen(phillips_22vp931_device &laserdisc, int state);
|
void firq_gen(philips_22vp931_device &laserdisc, int state);
|
||||||
|
|
||||||
virtual void machine_start() override;
|
virtual void machine_start() override;
|
||||||
virtual void video_start() override;
|
virtual void video_start() override;
|
||||||
void audio_map(address_map &map);
|
void audio_map(address_map &map);
|
||||||
void main_map(address_map &map);
|
void main_map(address_map &map);
|
||||||
|
|
||||||
required_device<phillips_22vp931_device> m_laserdisc;
|
required_device<philips_22vp931_device> m_laserdisc;
|
||||||
required_shared_ptr<unsigned char> m_tileram;
|
required_shared_ptr<unsigned char> m_tileram;
|
||||||
required_shared_ptr<uint8_t> m_spriteram;
|
required_shared_ptr<uint8_t> m_spriteram;
|
||||||
required_shared_ptr<unsigned char> m_sprite_palette;
|
required_shared_ptr<unsigned char> m_sprite_palette;
|
||||||
@ -445,7 +445,7 @@ WRITE_LINE_MEMBER(firefox_state::coin_counter_left_w)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void firefox_state::firq_gen(phillips_22vp931_device &laserdisc, int state)
|
void firefox_state::firq_gen(philips_22vp931_device &laserdisc, int state)
|
||||||
{
|
{
|
||||||
if (state)
|
if (state)
|
||||||
m_maincpu->set_input_line(M6809_FIRQ_LINE, ASSERT_LINE );
|
m_maincpu->set_input_line(M6809_FIRQ_LINE, ASSERT_LINE );
|
||||||
@ -456,7 +456,7 @@ void firefox_state::machine_start()
|
|||||||
{
|
{
|
||||||
m_mainbank->configure_entries(0, 32, memregion("maincpu")->base() + 0x10000, 0x1000);
|
m_mainbank->configure_entries(0, 32, memregion("maincpu")->base() + 0x10000, 0x1000);
|
||||||
|
|
||||||
m_laserdisc->set_data_ready_callback(phillips_22vp931_device::data_ready_delegate(&firefox_state::firq_gen, this));
|
m_laserdisc->set_data_ready_callback(philips_22vp931_device::data_ready_delegate(&firefox_state::firq_gen, this));
|
||||||
|
|
||||||
m_sprite_bank = 0;
|
m_sprite_bank = 0;
|
||||||
}
|
}
|
||||||
@ -690,7 +690,7 @@ MACHINE_CONFIG_START(firefox_state::firefox)
|
|||||||
GFXDECODE(config, m_gfxdecode, m_palette, gfx_firefox);
|
GFXDECODE(config, m_gfxdecode, m_palette, gfx_firefox);
|
||||||
PALETTE(config, m_palette).set_entries(512);
|
PALETTE(config, m_palette).set_entries(512);
|
||||||
|
|
||||||
PHILLIPS_22VP931(config, m_laserdisc, 0);
|
PHILIPS_22VP931(config, m_laserdisc, 0);
|
||||||
m_laserdisc->set_overlay(64*8, 525, FUNC(firefox_state::screen_update_firefox));
|
m_laserdisc->set_overlay(64*8, 525, FUNC(firefox_state::screen_update_firefox));
|
||||||
m_laserdisc->set_overlay_clip(7*8, 53*8-1, 44, 480+44);
|
m_laserdisc->set_overlay_clip(7*8, 53*8-1, 44, 480+44);
|
||||||
m_laserdisc->set_overlay_palette(m_palette);
|
m_laserdisc->set_overlay_palette(m_palette);
|
||||||
|
@ -86,7 +86,7 @@ PCB board that connects to 044 boards via J6 & J7
|
|||||||
or 039 EPROM + SIMM software
|
or 039 EPROM + SIMM software
|
||||||
|
|
||||||
More chips (from eBay auction):
|
More chips (from eBay auction):
|
||||||
2x Phillips / NXT 28C94 quad UART (8 serial channels total)
|
2x Philips / NXT 28C94 quad UART (8 serial channels total)
|
||||||
ADV476 256 color RAMDAC
|
ADV476 256 color RAMDAC
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ void tecnbras_state::tecnbras(machine_config &config)
|
|||||||
m_maincpu->set_addrmap(AS_IO, &tecnbras_state::i80c31_io);
|
m_maincpu->set_addrmap(AS_IO, &tecnbras_state::i80c31_io);
|
||||||
m_maincpu->port_out_cb<1>().set_nop(); // buzzer ?
|
m_maincpu->port_out_cb<1>().set_nop(); // buzzer ?
|
||||||
|
|
||||||
/* TODO: Add an I2C RTC (Phillips PCF8583P)
|
/* TODO: Add an I2C RTC (Philips PCF8583P)
|
||||||
pin 6 (SCL): cpu T0/P3.4 (pin 14)
|
pin 6 (SCL): cpu T0/P3.4 (pin 14)
|
||||||
pin 5 (SDA): cpu T1/P3.5 (pin 15)
|
pin 5 (SDA): cpu T1/P3.5 (pin 15)
|
||||||
*/
|
*/
|
||||||
|
@ -42,7 +42,7 @@ The keyboard of the KC is driven by a remote control circuit that is
|
|||||||
originally designed for infrared remote control. This one was named
|
originally designed for infrared remote control. This one was named
|
||||||
U807 and I learned there should be a similar chip called SAB 3021
|
U807 and I learned there should be a similar chip called SAB 3021
|
||||||
available but I never found the specs on the web. The SAB 3021 was
|
available but I never found the specs on the web. The SAB 3021 was
|
||||||
produced by Valvo which doesn't exist anymore (bought by Phillips
|
produced by Valvo which doesn't exist anymore (bought by Philips
|
||||||
if I remember correctly). If you have more luck finding the specs
|
if I remember correctly). If you have more luck finding the specs
|
||||||
I'm still interested.
|
I'm still interested.
|
||||||
There also was a complementary chip for the receiving side but that
|
There also was a complementary chip for the receiving side but that
|
||||||
|
Loading…
Reference in New Issue
Block a user