summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/bartop52.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/bartop52.cpp')
-rw-r--r--src/mame/drivers/bartop52.cpp172
1 files changed, 0 insertions, 172 deletions
diff --git a/src/mame/drivers/bartop52.cpp b/src/mame/drivers/bartop52.cpp
deleted file mode 100644
index 6cfff80a172..00000000000
--- a/src/mame/drivers/bartop52.cpp
+++ /dev/null
@@ -1,172 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Mariusz Wojcieszek
-/*
- Atari Bartop 5200 prototype system
-
- Driver by Mariusz Wojcieszek
- Based on Atari 400/800 MESS Driver by Juergen Buchmueller
-
- Hardware was based on Atari 5200 game console with additional coin and timer hardware.
- System was intented to run in barrooms and taverns. Software was based on Atari 5200
- Realsports cartridges.
-
- Barroom Baseball is modified version of Realsports Baseball.
-
- Coins and timer were handled by Bartop system bios. Since bios dump is not available,
- regular Atari 5200 bios is used and game is marked as not working. Game cart is also
- marked as bad dump as it is done in "console style", i.e. one file for all game data.
-*/
-
-#include "emu.h"
-#include "includes/atari400.h"
-
-#include "cpu/m6502/m6502.h"
-#include "machine/timer.h"
-#include "sound/spkrdev.h"
-#include "sound/pokey.h"
-#include "video/gtia.h"
-
-#include "screen.h"
-#include "speaker.h"
-
-
-class bartop52_state : public atari_common_state
-{
-public:
- bartop52_state(const machine_config &mconfig, device_type type, const char *tag)
- : atari_common_state(mconfig, type, tag)
- { }
-
- void a5200(machine_config &config);
-
-protected:
- TIMER_DEVICE_CALLBACK_MEMBER( bartop_interrupt );
-
- virtual void machine_reset() override;
- void a5200_mem(address_map &map);
-};
-
-
-void bartop52_state::a5200_mem(address_map &map)
-{
- map(0x0000, 0x3fff).ram();
- map(0x4000, 0xbfff).rom();
- map(0xc000, 0xc0ff).rw(m_gtia, FUNC(gtia_device::read), FUNC(gtia_device::write));
- map(0xd400, 0xd5ff).rw(m_antic, FUNC(antic_device::read), FUNC(antic_device::write));
- map(0xe800, 0xe8ff).rw("pokey", FUNC(pokey_device::read), FUNC(pokey_device::write));
- map(0xf800, 0xffff).rom();
-}
-
-#define JOYSTICK_DELTA 10
-#define JOYSTICK_SENSITIVITY 200
-
-static INPUT_PORTS_START(bartop52)
- PORT_START("djoy_b")
- PORT_BIT(0x01, 0x01, IPT_BUTTON1) PORT_CODE(JOYCODE_BUTTON1) PORT_PLAYER(1)
- PORT_BIT(0x02, 0x02, IPT_BUTTON1) PORT_CODE(JOYCODE_BUTTON1) PORT_PLAYER(2)
- PORT_BIT(0x04, 0x04, IPT_UNUSED)
- PORT_BIT(0x08, 0x08, IPT_UNUSED)
- PORT_BIT(0x10, 0x10, IPT_BUTTON2) PORT_CODE(JOYCODE_BUTTON2) PORT_PLAYER(1)
- PORT_BIT(0x20, 0x20, IPT_BUTTON2) PORT_CODE(JOYCODE_BUTTON2) PORT_PLAYER(2)
- PORT_BIT(0x40, 0x40, IPT_UNUSED)
- PORT_BIT(0x80, 0x80, IPT_UNUSED)
-
- PORT_START("keypad.0")
- PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("(Break)") PORT_CODE(KEYCODE_PAUSE) // is this correct?
- PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Wind-Up") PORT_CODE(KEYCODE_ENTER_PAD)
- PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("[0]") PORT_CODE(KEYCODE_0_PAD)
- PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("No Wind-Up") PORT_CODE(KEYCODE_PLUS_PAD)
- PORT_BIT(0xf0, IP_ACTIVE_HIGH, IPT_UNUSED)
-
- PORT_START("keypad.1")
- PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Reset") PORT_CODE(KEYCODE_F3)
- PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Fast Ball Low") PORT_CODE(KEYCODE_9_PAD)
- PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Change-Up Low") PORT_CODE(KEYCODE_8_PAD)
- PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Curve Low") PORT_CODE(KEYCODE_7_PAD)
- PORT_BIT(0xf0, IP_ACTIVE_HIGH, IPT_UNUSED)
-
- PORT_START("keypad.2")
- PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME(DEF_STR(Pause)) PORT_CODE(KEYCODE_F2)
- PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Fast Ball Med.") PORT_CODE(KEYCODE_6_PAD)
- PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Change-Up Med.") PORT_CODE(KEYCODE_5_PAD)
- PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Curve Med") PORT_CODE(KEYCODE_4_PAD)
- PORT_BIT(0xf0, IP_ACTIVE_HIGH, IPT_UNUSED)
-
- PORT_START("keypad.3")
- PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_START1) PORT_NAME("Start")
- PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Fast Ball High") PORT_CODE(KEYCODE_3_PAD)
- PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Change-Up High") PORT_CODE(KEYCODE_2_PAD)
- PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Curve High") PORT_CODE(KEYCODE_1_PAD)
- PORT_BIT(0xf0, IP_ACTIVE_HIGH, IPT_UNUSED)
-
- PORT_START("analog_0")
- PORT_BIT(0xff, 0x72, IPT_AD_STICK_X) PORT_SENSITIVITY(JOYSTICK_SENSITIVITY) PORT_KEYDELTA(JOYSTICK_DELTA) PORT_MINMAX(0x00,0xe4) PORT_PLAYER(1)
-
- PORT_START("analog_1")
- PORT_BIT(0xff, 0x72, IPT_AD_STICK_Y) PORT_SENSITIVITY(JOYSTICK_SENSITIVITY) PORT_KEYDELTA(JOYSTICK_DELTA) PORT_MINMAX(0x00,0xe4) PORT_PLAYER(1)
-
- PORT_START("analog_2")
- PORT_BIT(0xff, 0x72, IPT_AD_STICK_X) PORT_SENSITIVITY(JOYSTICK_SENSITIVITY) PORT_KEYDELTA(JOYSTICK_DELTA) PORT_MINMAX(0x00,0xe4) PORT_PLAYER(2)
-
- PORT_START("analog_3")
- PORT_BIT(0xff, 0x72, IPT_AD_STICK_Y) PORT_SENSITIVITY(JOYSTICK_SENSITIVITY) PORT_KEYDELTA(JOYSTICK_DELTA) PORT_MINMAX(0x00,0xe4) PORT_PLAYER(2)
-
-INPUT_PORTS_END
-
-
-void bartop52_state::machine_reset()
-{
- atari_common_state::machine_reset();
-
- m_pokey->write(15, 0);
-}
-
-TIMER_DEVICE_CALLBACK_MEMBER( bartop52_state::bartop_interrupt )
-{
- m_antic->generic_interrupt(4);
-}
-
-void bartop52_state::a5200(machine_config &config)
-{
- /* basic machine hardware */
- M6502(config, m_maincpu, pokey_device::FREQ_17_EXACT);
- m_maincpu->set_addrmap(AS_PROGRAM, &bartop52_state::a5200_mem);
- TIMER(config, "scantimer").configure_scanline(FUNC(bartop52_state::bartop_interrupt), "screen", 0, 1);
-
- ATARI_GTIA(config, m_gtia, 0);
- m_gtia->set_region(GTIA_NTSC);
-
- ATARI_ANTIC(config, m_antic, 0);
- m_antic->set_gtia_tag(m_gtia);
-
- /* video hardware */
- SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
- m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(1));
- m_screen->set_visarea(antic_device::MIN_X, antic_device::MAX_X, antic_device::MIN_Y, antic_device::MAX_Y);
- m_screen->set_refresh_hz(antic_device::FRAME_RATE_60HZ);
- m_screen->set_size(antic_device::HWIDTH * 8, antic_device::TOTAL_LINES_60HZ);
- m_screen->set_screen_update("antic", FUNC(antic_device::screen_update));
- m_screen->set_palette("palette");
-
- PALETTE(config, "palette", FUNC(bartop52_state::atari_palette), 256);
-
- /* sound hardware */
- SPEAKER(config, "mono").front_center();
-
- POKEY(config, m_pokey, pokey_device::FREQ_17_EXACT);
- m_pokey->pot_r<0>().set_ioport("analog_0");
- m_pokey->pot_r<1>().set_ioport("analog_1");
- m_pokey->pot_r<2>().set_ioport("analog_2");
- m_pokey->pot_r<3>().set_ioport("analog_3");
- m_pokey->set_keyboard_callback(FUNC(bartop52_state::a5200_keypads));
- m_pokey->set_interrupt_callback(FUNC(bartop52_state::interrupt_cb));
- m_pokey->add_route(ALL_OUTPUTS, "mono", 1.00);
-}
-
-ROM_START(barbball)
- ROM_REGION(0x10000, "maincpu", 0)
- ROM_LOAD( "barbball.bin", 0x4000, 0x8000, BAD_DUMP CRC(21d19c8f) SHA1(510ccb20df2ecdbe7f8373de6a9fc11493e8c3f2) )
- ROM_LOAD( "5200.rom", 0xf800, 0x0800, BAD_DUMP CRC(4248d3e3) SHA1(6ad7a1e8c9fad486fbec9498cb48bf5bc3adc530) )
-ROM_END
-
-GAME( 1983, barbball, 0, a5200, bartop52, bartop52_state, empty_init, ROT0, "Atari", "Barroom Baseball (prototype)", MACHINE_NOT_WORKING )