gauntleg: correct button labels

This commit is contained in:
hap 2025-01-27 12:54:31 +01:00
parent 748bef667b
commit a76393c8d2
4 changed files with 51 additions and 57 deletions

View File

@ -217,4 +217,4 @@ ROM_END
*******************************************************************************/ *******************************************************************************/
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS // YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS
SYST( 1986, cpchess, 0, 0, pchess, pchess, pchess_state, empty_init, "CXG Systems / Newcrest Technology / Intelligent Software", "Pocketchess (CXG)", MACHINE_SUPPORTS_SAVE ) SYST( 1986, cpchess, 0, 0, pchess, pchess, pchess_state, empty_init, "CXG Systems / Newcrest Technology / Intelligent Chess Software", "Pocketchess (CXG)", MACHINE_SUPPORTS_SAVE )

View File

@ -75,8 +75,8 @@ ESB II/6000 chessboard:
ESB 3000 hardware is probably same as ESB 6000. ESB 3000 hardware is probably same as ESB 6000.
There are no other known external port peripherals. There are no other known external port peripherals.
The Brikett (sans PCB) was also used in the 1983 Mephisto Excalibur, but the The Brikett (sans main PCB) was also used in the 1983 Mephisto Excalibur, but
hardware is completely different, based on a 68000 (see excalibur.cpp). the hardware is completely different, based on a 68000 (see excalibur.cpp).
BTANB: BTANB:
- bad bug in mephistoj opening library: e4 e6 / d4 d5 / Nd2 c5 / exd5 Qd1xd5, - bad bug in mephistoj opening library: e4 e6 / d4 d5 / Nd2 c5 / exd5 Qd1xd5,

View File

@ -6,7 +6,7 @@
Mephisto Excalibur Mephisto Excalibur
It's a very rare chess computer, the chess engine was programmed by the same guys It's a very rare chess computer, the chess engine was programmed by the same guys
that did Mephisto III and Mephisto III-S Glasgow. that did Mephisto I/II/III and Mephisto III-S Glasgow.
Hardware notes: Hardware notes:

View File

@ -342,8 +342,7 @@ public:
m_io_dips(*this, "DIPS"), m_io_dips(*this, "DIPS"),
m_system_led(*this, "system_led"), m_system_led(*this, "system_led"),
m_wheel_driver(*this, "wheel"), m_wheel_driver(*this, "wheel"),
m_lamps(*this, "lamp%u", 0U), m_lamps(*this, "lamp%u", 0U)
m_a2d_shift(0)
{ } { }
void vegascore(machine_config &config); void vegascore(machine_config &config);
@ -391,7 +390,7 @@ protected:
virtual void machine_reset() override ATTR_COLD; virtual void machine_reset() override ATTR_COLD;
private: private:
static constexpr unsigned SYSTEM_CLOCK = 100000000; static constexpr unsigned SYSTEM_CLOCK = 100'000'000;
required_device<mips3_device> m_maincpu; required_device<mips3_device> m_maincpu;
required_device<vrc5074_device> m_nile; required_device<vrc5074_device> m_nile;
@ -418,23 +417,23 @@ private:
static const uint8_t translate49[7]; static const uint8_t translate49[7];
int m_a2d_shift; uint8_t m_a2d_shift = 0;
int8_t m_wheel_force; int8_t m_wheel_force = 0;
int m_wheel_offset; int m_wheel_offset = 0;
bool m_wheel_calibrated; bool m_wheel_calibrated = 0;
uint8_t m_vblank_state; uint8_t m_vblank_state = 0;
uint8_t m_cpuio_data[4]; uint8_t m_cpuio_data[4] = { };
uint8_t m_sio_reset_ctrl; uint8_t m_sio_reset_ctrl = 0;
uint8_t m_sio_irq_enable; uint8_t m_sio_irq_enable = 0;
uint8_t m_sio_irq_state; uint8_t m_sio_irq_state = 0;
uint8_t m_duart_irq_state; uint8_t m_duart_irq_state = 0;
uint8_t m_sio_led_state; uint8_t m_sio_led_state = 0;
uint8_t m_pending_analog_read; uint8_t m_pending_analog_read = 0;
uint8_t m_cmos_unlocked; uint8_t m_cmos_unlocked = 0;
uint8_t m_dcs_idma_cs; uint8_t m_dcs_idma_cs = 0;
uint32_t m_i40_data; uint32_t m_i40_data = 0;
uint32_t m_keypad_select; uint32_t m_keypad_select = 0;
uint32_t m_gear; uint32_t m_gear = 0;
void duart_irq_cb(int state); void duart_irq_cb(int state);
void vblank_assert(int state); void vblank_assert(int state);
@ -585,8 +584,7 @@ void vegas_state::watchdog_reset(int state)
void vegas_state::timekeeper_w(offs_t offset, uint32_t data, uint32_t mem_mask) void vegas_state::timekeeper_w(offs_t offset, uint32_t data, uint32_t mem_mask)
{ {
if (m_cmos_unlocked) if (m_cmos_unlocked) {
{
if (ACCESSING_BITS_0_7) if (ACCESSING_BITS_0_7)
m_timekeeper->write(offset * 4 + 0, data >> 0); m_timekeeper->write(offset * 4 + 0, data >> 0);
if (ACCESSING_BITS_8_15) if (ACCESSING_BITS_8_15)
@ -668,8 +666,7 @@ void vegas_state::vblank_assert(int state)
{ {
LOGMASKED(LOG_SIO, "vblank_assert: m_sio_reset_ctrl: %04x state: %d\n", m_sio_reset_ctrl, state); LOGMASKED(LOG_SIO, "vblank_assert: m_sio_reset_ctrl: %04x state: %d\n", m_sio_reset_ctrl, state);
// latch on the correct polarity transition // latch on the correct polarity transition
if ((m_sio_irq_enable & 0x20) && ((state && !(m_sio_reset_ctrl & 0x10)) || (!state && (m_sio_reset_ctrl & 0x10)))) if ((m_sio_irq_enable & 0x20) && ((state && !(m_sio_reset_ctrl & 0x10)) || (!state && (m_sio_reset_ctrl & 0x10)))) {
{
m_sio_irq_state |= 0x20; m_sio_irq_state |= 0x20;
update_sio_irqs(); update_sio_irqs();
} }
@ -855,8 +852,7 @@ void vegas_state::cpu_io_w(offs_t offset, uint8_t data)
// 3: System Reset Bit 0=>enable sio, Bit 1=>enable ide, Bit 2=>enable PCI // 3: System Reset Bit 0=>enable sio, Bit 1=>enable ide, Bit 2=>enable PCI
m_cpuio_data[offset] = data; m_cpuio_data[offset] = data;
switch (offset) { switch (offset) {
case 0: case 0: {
{
m_system_led = ~data & 0xff; m_system_led = ~data & 0xff;
char digit = 'U'; char digit = 'U';
switch (data & 0xff) { switch (data & 0xff) {
@ -1158,10 +1154,8 @@ void vegas_state::wheel_board_w(uint32_t data)
//logerror("wheel_board_w: data = %08x op: %02x arg: %02x\n", data, op, arg); //logerror("wheel_board_w: data = %08x op: %02x arg: %02x\n", data, op, arg);
if (chip_select && latch_clk) if (chip_select && latch_clk) {
{ switch (op) {
switch (op)
{
case 0x0: case 0x0:
m_wheel_driver[0] = arg; // target wheel angle. signed byte. m_wheel_driver[0] = arg; // target wheel angle. signed byte.
m_wheel_force = int8_t(~arg); m_wheel_force = int8_t(~arg);
@ -1185,8 +1179,7 @@ void vegas_state::wheel_board_w(uint32_t data)
ioport_value vegas_state::keypad_r() ioport_value vegas_state::keypad_r()
{ {
int row_sel; int row_sel;
for (row_sel=0; row_sel<4; row_sel++) for (row_sel=0; row_sel<4; row_sel++) {
{
if (!(m_keypad_select & (1 << row_sel))) if (!(m_keypad_select & (1 << row_sel)))
break; break;
} }
@ -1208,8 +1201,7 @@ ioport_value vegas_state::gearshift_r()
{ {
// Check for gear change and save gear selection // Check for gear change and save gear selection
uint32_t gear = m_io_gearshift->read(); uint32_t gear = m_io_gearshift->read();
for (int i = 0; i < 4; i++) for (int i = 0; i < 4; i++) {
{
if (gear & (1 << i)) if (gear & (1 << i))
m_gear = 1 << i; m_gear = 1 << i;
} }
@ -1408,9 +1400,9 @@ static INPUT_PORTS_START( gauntleg )
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) PORT_8WAY PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) PORT_8WAY
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) PORT_8WAY PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) PORT_8WAY
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) PORT_8WAY PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) PORT_8WAY
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_NAME("P1 Magic") PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_NAME("P1 Fight")
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_NAME("P1 Fight") PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_NAME("P1 Magic")
PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_NAME("P1 Turbo") PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_NAME("P1 Turbo")
PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_MODIFY("8WAY_P2") PORT_MODIFY("8WAY_P2")
@ -1418,9 +1410,9 @@ static INPUT_PORTS_START( gauntleg )
PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) PORT_8WAY PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) PORT_8WAY
PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) PORT_8WAY PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) PORT_8WAY
PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) PORT_8WAY PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) PORT_8WAY
PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_NAME("P2 Magic") PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_NAME("P2 Fight")
PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_NAME("P2 Fight") PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_NAME("P2 Magic")
PORT_BIT( 0x4000, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_NAME("P2 Turbo") PORT_BIT( 0x4000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_NAME("P2 Turbo")
PORT_BIT( 0x8000, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0x8000, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_MODIFY("8WAY_P3") PORT_MODIFY("8WAY_P3")
@ -1428,9 +1420,9 @@ static INPUT_PORTS_START( gauntleg )
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(3) PORT_8WAY PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(3) PORT_8WAY
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(3) PORT_8WAY PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(3) PORT_8WAY
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(3) PORT_8WAY PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(3) PORT_8WAY
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_NAME("P3 Magic") PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_NAME("P3 Fight")
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_NAME("P3 Fight") PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(3) PORT_NAME("P3 Magic")
PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(3) PORT_NAME("P3 Turbo") PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_NAME("P3 Turbo")
PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_MODIFY("8WAY_P4") PORT_MODIFY("8WAY_P4")
@ -1438,9 +1430,9 @@ static INPUT_PORTS_START( gauntleg )
PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(4) PORT_8WAY PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(4) PORT_8WAY
PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(4) PORT_8WAY PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(4) PORT_8WAY
PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(4) PORT_8WAY PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(4) PORT_8WAY
PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(4) PORT_NAME("P4 Magic") PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_NAME("P4 Fight")
PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_NAME("P4 Fight") PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(4) PORT_NAME("P4 Magic")
PORT_BIT( 0x4000, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(4) PORT_NAME("P4 Turbo") PORT_BIT( 0x4000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(4) PORT_NAME("P4 Turbo")
PORT_BIT( 0x8000, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0x8000, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("49WAYX_P1") PORT_START("49WAYX_P1")
@ -1873,14 +1865,14 @@ void vegas_state::vegascore(machine_config &config)
{ {
// basic machine hardware // basic machine hardware
R5000LE(config, m_maincpu, vegas_state::SYSTEM_CLOCK * 2); R5000LE(config, m_maincpu, vegas_state::SYSTEM_CLOCK * 2);
m_maincpu->set_icache_size(16384); m_maincpu->set_icache_size(0x4000);
m_maincpu->set_dcache_size(16384); m_maincpu->set_dcache_size(0x4000);
m_maincpu->set_system_clock(vegas_state::SYSTEM_CLOCK); m_maincpu->set_system_clock(vegas_state::SYSTEM_CLOCK);
// PCI Bus Devices // PCI Bus Devices
PCI_ROOT(config, "pci", 0); PCI_ROOT(config, "pci", 0);
VRC5074(config, m_nile, 100000000, m_maincpu); VRC5074(config, m_nile, SYSTEM_CLOCK, m_maincpu);
m_nile->set_sdram_size(0, 0x00800000); m_nile->set_sdram_size(0, 0x00800000);
m_nile->set_map(2, address_map_constructor(&vegas_state::vegas_cs2_map, "vegas_cs2_map", this), this); m_nile->set_map(2, address_map_constructor(&vegas_state::vegas_cs2_map, "vegas_cs2_map", this), this);
m_nile->set_map(3, address_map_constructor(&vegas_state::vegas_cs3_map, "vegas_cs3_map", this), this); m_nile->set_map(3, address_map_constructor(&vegas_state::vegas_cs3_map, "vegas_cs3_map", this), this);
@ -1950,6 +1942,7 @@ void vegas_state::vegas32m(machine_config &config)
void vegas_state::vegasban(machine_config &config) void vegas_state::vegasban(machine_config &config)
{ {
vegas32m(config); vegas32m(config);
voodoo_banshee_pci_device &voodoo(VOODOO_BANSHEE_PCI(config.replace(), PCI_ID_VIDEO, 0, m_maincpu, "screen")); voodoo_banshee_pci_device &voodoo(VOODOO_BANSHEE_PCI(config.replace(), PCI_ID_VIDEO, 0, m_maincpu, "screen"));
voodoo.set_fbmem(16); voodoo.set_fbmem(16);
voodoo.set_status_cycles(1000); // optimization to consume extra cycles when polling status voodoo.set_status_cycles(1000); // optimization to consume extra cycles when polling status
@ -1960,9 +1953,10 @@ void vegas_state::vegasban(machine_config &config)
void vegas_state::vegasv3(machine_config &config) void vegas_state::vegasv3(machine_config &config)
{ {
vegas32m(config); vegas32m(config);
RM7000LE(config.replace(), m_maincpu, vegas_state::SYSTEM_CLOCK * 2.5); RM7000LE(config.replace(), m_maincpu, vegas_state::SYSTEM_CLOCK * 2.5);
m_maincpu->set_icache_size(16384); m_maincpu->set_icache_size(0x4000);
m_maincpu->set_dcache_size(16384); m_maincpu->set_dcache_size(0x4000);
m_maincpu->set_system_clock(vegas_state::SYSTEM_CLOCK); m_maincpu->set_system_clock(vegas_state::SYSTEM_CLOCK);
voodoo_3_pci_device &voodoo(VOODOO_3_PCI(config.replace(), PCI_ID_VIDEO, 0, m_maincpu, "screen")); voodoo_3_pci_device &voodoo(VOODOO_3_PCI(config.replace(), PCI_ID_VIDEO, 0, m_maincpu, "screen"));
@ -1977,8 +1971,8 @@ void vegas_state::denver(machine_config &config)
vegascore(config); vegascore(config);
RM7000LE(config.replace(), m_maincpu, vegas_state::SYSTEM_CLOCK * 2.5); RM7000LE(config.replace(), m_maincpu, vegas_state::SYSTEM_CLOCK * 2.5);
m_maincpu->set_icache_size(16384); m_maincpu->set_icache_size(0x4000);
m_maincpu->set_dcache_size(16384); m_maincpu->set_dcache_size(0x4000);
m_maincpu->set_system_clock(vegas_state::SYSTEM_CLOCK); m_maincpu->set_system_clock(vegas_state::SYSTEM_CLOCK);
m_nile->set_sdram_size(0, 0x02000000); m_nile->set_sdram_size(0, 0x02000000);
m_nile->set_map(8, address_map_constructor(&vegas_state::vegas_cs8_map, "vegas_cs8_map", this), this); m_nile->set_map(8, address_map_constructor(&vegas_state::vegas_cs8_map, "vegas_cs8_map", this), this);