summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author mooglyguy <therealmogminer@gmail.com>2018-08-09 09:23:08 +0200
committer mooglyguy <therealmogminer@gmail.com>2018-08-09 09:23:20 +0200
commit9025271d3e36490b48448b1ccec46ea1ecf94570 (patch)
tree0c9ed7bf5ae81a3ee8e9fe41a0892e2e646eaeee
parentf3db8dc68f59989c4f1759be79536858578352a7 (diff)
-chexx, concept: MCFG removals, nw
-rw-r--r--src/mame/drivers/chexx.cpp172
-rw-r--r--src/mame/drivers/concept.cpp100
-rw-r--r--src/mame/includes/concept.h2
-rw-r--r--src/mame/machine/concept.cpp14
4 files changed, 163 insertions, 125 deletions
diff --git a/src/mame/drivers/chexx.cpp b/src/mame/drivers/chexx.cpp
index 091b2e6b44a..e263087927f 100644
--- a/src/mame/drivers/chexx.cpp
+++ b/src/mame/drivers/chexx.cpp
@@ -36,16 +36,15 @@ public:
, m_maincpu(*this, "maincpu")
, m_via(*this, "via6522")
, m_digitalker(*this, "digitalker")
- , m_aysnd(*this, "aysnd")
, m_digits(*this, "digit%u", 0U)
, m_leds(*this, "led%u", 0U)
, m_lamps(*this, "lamp%u", 0U)
+ , m_dsw(*this, "DSW")
+ , m_input(*this, "INPUT")
+ , m_coin(*this, "COIN")
{
}
- // callbacks
- TIMER_DEVICE_CALLBACK_MEMBER(update);
-
// handlers
DECLARE_READ8_MEMBER(via_a_in);
DECLARE_READ8_MEMBER(via_b_in);
@@ -60,21 +59,20 @@ public:
DECLARE_READ8_MEMBER(input_r);
- DECLARE_WRITE8_MEMBER(ay_w);
DECLARE_WRITE8_MEMBER(lamp_w);
- void faceoffh(machine_config &config);
- void chexx83(machine_config &config);
- void chexx83_map(address_map &map);
- void faceoffh_map(address_map &map);
+ void chexx(machine_config &config);
+ void mem(address_map &map);
-private:
- // vars
- uint8_t m_port_a, m_port_b;
- uint8_t m_bank;
- uint32_t m_shift;
- uint8_t m_lamp;
- uint8_t m_ay_cmd, m_ay_data;
+protected:
+ enum
+ {
+ TIMER_UPDATE
+ };
+
+ void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
+ void update();
// digitalker
void digitalker_set_bank(uint8_t bank);
@@ -87,10 +85,42 @@ private:
required_device<cpu_device> m_maincpu;
required_device<via6522_device> m_via;
required_device<digitalker_device> m_digitalker;
- optional_device<ay8910_device> m_aysnd; // only faceoffh
output_finder<4> m_digits;
output_finder<3> m_leds;
output_finder<2> m_lamps;
+
+ required_ioport m_dsw;
+ required_ioport m_input;
+ required_ioport m_coin;
+
+ // vars
+ emu_timer *m_update_timer;
+ uint8_t m_port_a;
+ uint8_t m_port_b;
+ uint8_t m_bank;
+ uint32_t m_shift;
+ uint8_t m_lamp;
+};
+
+class faceoffh_state : public chexx_state
+{
+public:
+ faceoffh_state(const machine_config &mconfig, device_type type, const char *tag)
+ : chexx_state(mconfig, type, tag)
+ , m_aysnd(*this, "aysnd")
+ {
+ }
+
+ void faceoffh(machine_config &config);
+
+protected:
+ DECLARE_WRITE8_MEMBER(ay_w);
+
+ void mem(address_map &map);
+
+ required_device<ay8910_device> m_aysnd; // only faceoffh
+ uint8_t m_ay_cmd;
+ uint8_t m_ay_data;
};
@@ -102,6 +132,7 @@ READ8_MEMBER(chexx_state::via_a_in)
logerror("%s: VIA read A: %02X\n", machine().describe_context(), ret);
return ret;
}
+
READ8_MEMBER(chexx_state::via_b_in)
{
uint8_t ret = 0;
@@ -112,11 +143,10 @@ READ8_MEMBER(chexx_state::via_b_in)
WRITE8_MEMBER(chexx_state::via_a_out)
{
m_port_a = data; // multiplexer
-
m_digitalker->digitalker_data_w(space, 0, data, 0);
-
// logerror("%s: VIA write A = %02X\n", machine().describe_context(), data);
}
+
WRITE8_MEMBER(chexx_state::via_b_out)
{
m_port_b = data;
@@ -138,10 +168,12 @@ WRITE_LINE_MEMBER(chexx_state::via_ca2_out)
// logerror("%s: VIA write CA2 = %02X\n", machine().describe_context(), state);
}
+
WRITE_LINE_MEMBER(chexx_state::via_cb1_out)
{
// logerror("%s: VIA write CB1 = %02X\n", machine().describe_context(), state);
}
+
WRITE_LINE_MEMBER(chexx_state::via_cb2_out)
{
m_shift = ((m_shift << 1) & 0xffffff) | state;
@@ -161,6 +193,7 @@ WRITE_LINE_MEMBER(chexx_state::via_cb2_out)
// logerror("%s: VIA write CB2 = %02X\n", machine().describe_context(), state);
}
+
WRITE_LINE_MEMBER(chexx_state::via_irq_out)
{
m_maincpu->set_input_line(INPUT_LINE_IRQ0, state ? ASSERT_LINE : CLEAR_LINE);
@@ -169,11 +202,11 @@ WRITE_LINE_MEMBER(chexx_state::via_irq_out)
READ8_MEMBER(chexx_state::input_r)
{
- uint8_t ret = ioport("DSW")->read(); // bits 0-3
- uint8_t inp = ioport("INPUT")->read(); // bit 7 (multiplexed)
+ uint8_t ret = m_dsw->read(); // bits 0-3
+ uint8_t inp = m_input->read(); // bit 7 (multiplexed)
for (int i = 0; i < 8; ++i)
- if ( ((~m_port_a) & (1 << i)) && ((~inp) & (1 << i)) )
+ if (BIT(~m_port_a, i) && BIT(~inp, i))
ret &= 0x7f;
return ret;
@@ -181,7 +214,7 @@ READ8_MEMBER(chexx_state::input_r)
// Chexx Memory Map
-void chexx_state::chexx83_map(address_map &map)
+void chexx_state::mem(address_map &map)
{
map(0x0000, 0x007f).ram().mirror(0x100); // 6810 - 128 x 8 static RAM
map(0x4000, 0x400f).rw(m_via, FUNC(via6522_device::read), FUNC(via6522_device::write));
@@ -189,7 +222,15 @@ void chexx_state::chexx83_map(address_map &map)
map(0xf800, 0xffff).rom().region("maincpu", 0);
}
-// Face-Off Memory Map
+void chexx_state::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
+{
+ switch (id)
+ {
+ case TIMER_UPDATE:
+ update();
+ break;
+ }
+}
WRITE8_MEMBER(chexx_state::lamp_w)
{
@@ -198,7 +239,19 @@ WRITE8_MEMBER(chexx_state::lamp_w)
m_lamps[1] = BIT(m_lamp,1);
}
-WRITE8_MEMBER(chexx_state::ay_w)
+// Face-Off Memory Map
+
+void faceoffh_state::mem(address_map &map)
+{
+ map(0x0000, 0x007f).ram().mirror(0x100); // M58725P - 2KB
+ map(0x4000, 0x400f).rw(m_via, FUNC(via6522_device::read), FUNC(via6522_device::write));
+ map(0x8000, 0x8000).r(FUNC(faceoffh_state::input_r));
+ map(0xa000, 0xa001).w(FUNC(faceoffh_state::ay_w));
+ map(0xc000, 0xc000).w(FUNC(faceoffh_state::lamp_w));
+ map(0xf000, 0xffff).rom().region("maincpu", 0);
+}
+
+WRITE8_MEMBER(faceoffh_state::ay_w)
{
if (offset)
{
@@ -219,16 +272,6 @@ WRITE8_MEMBER(chexx_state::ay_w)
m_ay_cmd = data;
}
-void chexx_state::faceoffh_map(address_map &map)
-{
- map(0x0000, 0x007f).ram().mirror(0x100); // M58725P - 2KB
- map(0x4000, 0x400f).rw(m_via, FUNC(via6522_device::read), FUNC(via6522_device::write));
- map(0x8000, 0x8000).r(FUNC(chexx_state::input_r));
- map(0xa000, 0xa001).w(FUNC(chexx_state::ay_w));
- map(0xc000, 0xc000).w(FUNC(chexx_state::lamp_w));
- map(0xf000, 0xffff).rom().region("maincpu", 0);
-}
-
// Inputs
static INPUT_PORTS_START( chexx83 )
@@ -268,6 +311,8 @@ void chexx_state::machine_start()
m_digits.resolve();
m_leds.resolve();
m_lamps.resolve();
+
+ m_update_timer = timer_alloc(TIMER_UPDATE);
}
void chexx_state::digitalker_set_bank(uint8_t bank)
@@ -287,12 +332,13 @@ void chexx_state::machine_reset()
{
m_bank = -1;
digitalker_set_bank(0);
+ m_update_timer->adjust(attotime::from_hz(60), 0, attotime::from_hz(60));
}
-TIMER_DEVICE_CALLBACK_MEMBER(chexx_state::update)
+void chexx_state::update()
{
// NMI on coin-in
- uint8_t coin = (~ioport("COIN")->read()) & 0x03;
+ uint8_t coin = (~m_coin->read()) & 0x03;
m_maincpu->set_input_line(INPUT_LINE_NMI, coin ? ASSERT_LINE : CLEAR_LINE);
// VIA CA1 connected to Digitalker INTR line
@@ -329,44 +375,42 @@ TIMER_DEVICE_CALLBACK_MEMBER(chexx_state::update)
#endif
}
-MACHINE_CONFIG_START(chexx_state::chexx83)
-
- // basic machine hardware
- MCFG_DEVICE_ADD("maincpu", M6502, MAIN_CLOCK/2)
- MCFG_DEVICE_PROGRAM_MAP(chexx83_map)
- MCFG_TIMER_DRIVER_ADD_PERIODIC("update", chexx_state, update, attotime::from_hz(60))
+void chexx_state::chexx(machine_config &config)
+{
+ M6502(config, m_maincpu, MAIN_CLOCK/2);
+ m_maincpu->set_addrmap(AS_PROGRAM, &chexx_state::mem);
// via
- MCFG_DEVICE_ADD("via6522", VIA6522, MAIN_CLOCK/4)
+ VIA6522(config, m_via, MAIN_CLOCK/4);
- MCFG_VIA6522_READPA_HANDLER(READ8(*this, chexx_state, via_a_in))
- MCFG_VIA6522_READPB_HANDLER(READ8(*this, chexx_state, via_b_in))
+ m_via->readpa_handler().set(FUNC(chexx_state::via_a_in));
+ m_via->readpb_handler().set(FUNC(chexx_state::via_b_in));
- MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(*this, chexx_state, via_a_out))
- MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(*this, chexx_state, via_b_out))
+ m_via->writepa_handler().set(FUNC(chexx_state::via_a_out));
+ m_via->writepb_handler().set(FUNC(chexx_state::via_b_out));
- MCFG_VIA6522_CA2_HANDLER(WRITELINE(*this, chexx_state, via_ca2_out))
- MCFG_VIA6522_CB1_HANDLER(WRITELINE(*this, chexx_state, via_cb1_out))
- MCFG_VIA6522_CB2_HANDLER(WRITELINE(*this, chexx_state, via_cb2_out))
- MCFG_VIA6522_IRQ_HANDLER(WRITELINE(*this, chexx_state, via_irq_out))
+ m_via->ca2_handler().set(FUNC(chexx_state::via_ca2_out));
+ m_via->cb1_handler().set(FUNC(chexx_state::via_cb1_out));
+ m_via->cb2_handler().set(FUNC(chexx_state::via_cb2_out));
+ m_via->irq_handler().set(FUNC(chexx_state::via_irq_out));
// Layout
config.set_default_layout(layout_chexx);
// sound hardware
SPEAKER(config, "mono").front_center();
- MCFG_DIGITALKER_ADD("digitalker", MAIN_CLOCK)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.16)
-MACHINE_CONFIG_END
+ DIGITALKER(config, m_digitalker, MAIN_CLOCK);
+ m_digitalker->add_route(ALL_OUTPUTS, "mono", 0.16);
+}
-MACHINE_CONFIG_START(chexx_state::faceoffh)
- chexx83(config);
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(faceoffh_map)
+void faceoffh_state::faceoffh(machine_config &config)
+{
+ chexx(config);
+ m_maincpu->set_addrmap(AS_PROGRAM, &faceoffh_state::mem);
- MCFG_DEVICE_ADD("aysnd", AY8910, MAIN_CLOCK/2)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
-MACHINE_CONFIG_END
+ AY8910(config, m_aysnd, MAIN_CLOCK/2);
+ m_aysnd->add_route(ALL_OUTPUTS, "mono", 0.30);
+}
// ROMs
@@ -437,5 +481,5 @@ ROM_START( faceoffh )
ROM_FILL( 0xe000, 0x2000, 0xff ) // unpopulated
ROM_END
-GAME( 1983, chexx83, 0, chexx83, chexx83, chexx_state, empty_init, ROT270, "ICE", "Chexx (EM Bubble Hockey, 1983 1.1)", MACHINE_NOT_WORKING | MACHINE_MECHANICAL | MACHINE_NO_SOUND )
-GAME( 1983, faceoffh, chexx83, faceoffh, chexx83, chexx_state, empty_init, ROT270, "SoftLogic (Entertainment Enterprises, Ltd. license)", "Face-Off (EM Bubble Hockey)", MACHINE_NOT_WORKING | MACHINE_MECHANICAL | MACHINE_IMPERFECT_SOUND )
+GAME( 1983, chexx83, 0, chexx, chexx83, chexx_state, empty_init, ROT270, "ICE", "Chexx (EM Bubble Hockey, 1983 1.1)", MACHINE_NOT_WORKING | MACHINE_MECHANICAL | MACHINE_NO_SOUND )
+GAME( 1983, faceoffh, chexx83, faceoffh, chexx83, faceoffh_state, empty_init, ROT270, "SoftLogic (Entertainment Enterprises, Ltd. license)", "Face-Off (EM Bubble Hockey)", MACHINE_NOT_WORKING | MACHINE_MECHANICAL | MACHINE_IMPERFECT_SOUND )
diff --git a/src/mame/drivers/concept.cpp b/src/mame/drivers/concept.cpp
index 44ce8d2e8b5..68a168b01d6 100644
--- a/src/mame/drivers/concept.cpp
+++ b/src/mame/drivers/concept.cpp
@@ -198,10 +198,6 @@ static INPUT_PORTS_START( concept )
INPUT_PORTS_END
-
-/* init with simple, fixed, B/W palette */
-/* Is the palette black on white or white on black??? */
-
void concept_a2_cards(device_slot_interface &device)
{
device.option_add("fchdd", A2BUS_CORVUS); // Corvus flat-cable HDD interface (see notes in a2corvus.c)
@@ -210,56 +206,58 @@ void concept_a2_cards(device_slot_interface &device)
}
-
-MACHINE_CONFIG_START(concept_state::concept)
+void concept_state::concept(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD(m_maincpu, M68000, 8182000) /* 16.364 MHz / 2 */
- MCFG_DEVICE_PROGRAM_MAP(concept_memmap)
+ M68000(config, m_maincpu, 8182000); /* 16.364 MHz / 2 */
+ m_maincpu->set_addrmap(AS_PROGRAM, &concept_state::concept_memmap);
- MCFG_QUANTUM_TIME(attotime::from_hz(60))
+ config.m_minimum_quantum = attotime::from_hz(60);
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
- MCFG_SCREEN_REFRESH_RATE(60) /* 50 or 60, jumper-selectable */
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
- MCFG_SCREEN_SIZE(720, 560)
- MCFG_SCREEN_VISIBLE_AREA(0, 720-1, 0, 560-1)
- MCFG_SCREEN_UPDATE_DRIVER(concept_state, screen_update_concept)
- MCFG_SCREEN_PALETTE("palette")
-
- MCFG_PALETTE_ADD_MONOCHROME("palette")
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
+ screen.set_video_attributes(VIDEO_UPDATE_BEFORE_VBLANK);
+ screen.set_refresh_hz(60); /* 50 or 60, jumper-selectable */
+ screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
+ screen.set_size(720, 560);
+ screen.set_visarea(0, 720-1, 0, 560-1);
+ screen.set_screen_update(FUNC(concept_state::screen_update));
+ screen.set_palette("palette");
+
+ /* Is the palette black on white or white on black??? */
+ palette_device &palette(PALETTE(config, "palette", 2));
+ palette.set_init("palette", FUNC(palette_device::palette_init_monochrome));
/* sound */
SPEAKER(config, "mono").front_center();
- MCFG_DEVICE_ADD(SPEAKER_TAG, SPEAKER_SOUND)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
+ SPEAKER_SOUND(config, m_speaker);
+ m_speaker->add_route(ALL_OUTPUTS, "mono", 1.00);
/* rtc */
- MCFG_DEVICE_ADD("mm58274c", MM58274C, 0)
- MCFG_MM58274C_MODE24(0) // 12 hour
- MCFG_MM58274C_DAY1(1) // monday
+ MM58274C(config, m_mm58274, 0);
+ m_mm58274->set_mode24(0); // 12 hour
+ m_mm58274->set_day1(1); // monday
/* via */
- MCFG_DEVICE_ADD(m_via0, VIA6522, 1022750)
- MCFG_VIA6522_READPA_HANDLER(READ8(*this, concept_state, via_in_a))
- MCFG_VIA6522_READPB_HANDLER(READ8(*this, concept_state, via_in_b))
- MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(*this, concept_state, via_out_a))
- MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(*this, concept_state, via_out_b))
- MCFG_VIA6522_CB2_HANDLER(WRITELINE(*this, concept_state, via_out_cb2))
- MCFG_VIA6522_IRQ_HANDLER(WRITELINE(*this, concept_state, via_irq_func))
+ VIA6522(config, m_via0, 1022750);
+ m_via0->readpa_handler().set(FUNC(concept_state::via_in_a));
+ m_via0->readpb_handler().set(FUNC(concept_state::via_in_b));
+ m_via0->writepa_handler().set(FUNC(concept_state::via_out_a));
+ m_via0->writepb_handler().set(FUNC(concept_state::via_out_b));
+ m_via0->cb2_handler().set(FUNC(concept_state::via_out_cb2));
+ m_via0->irq_handler().set(FUNC(concept_state::via_irq_func));
/* ACIAs */
- MCFG_DEVICE_ADD(m_acia0, MOS6551, 0)
- MCFG_MOS6551_XTAL(XTAL(1'843'200))
- MCFG_MOS6551_TXD_HANDLER(WRITELINE("rs232a", rs232_port_device, write_txd))
+ MOS6551(config, m_acia0, 0);
+ m_acia0->set_xtal(XTAL(1'843'200));
+ m_acia0->txd_handler().set("rs232a", FUNC(rs232_port_device::write_txd));
- MCFG_DEVICE_ADD(m_acia1, MOS6551, 0)
- MCFG_MOS6551_XTAL(XTAL(1'843'200))
- MCFG_MOS6551_TXD_HANDLER(WRITELINE("rs232b", rs232_port_device, write_txd))
+ MOS6551(config, m_acia1, 0);
+ m_acia1->set_xtal(XTAL(1'843'200));
+ m_acia1->txd_handler().set("rs232b", FUNC(rs232_port_device::write_txd));
- MCFG_DEVICE_ADD(m_kbdacia, MOS6551, 0)
- MCFG_MOS6551_XTAL(XTAL(1'843'200))
+ MOS6551(config, m_kbdacia, 0);
+ m_kbdacia->set_xtal(XTAL(1'843'200));
/* Apple II bus */
A2BUS(config, m_a2bus, 0).set_cputag(m_maincpu);
@@ -269,18 +267,18 @@ MACHINE_CONFIG_START(concept_state::concept)
A2BUS_SLOT(config, "sl4", m_a2bus, concept_a2_cards, "fdc01");
/* 2x RS232 ports */
- MCFG_DEVICE_ADD("rs232a", RS232_PORT, default_rs232_devices, nullptr)
- MCFG_RS232_RXD_HANDLER(WRITELINE(ACIA_0_TAG, mos6551_device, write_rxd))
- MCFG_RS232_DCD_HANDLER(WRITELINE(ACIA_0_TAG, mos6551_device, write_dcd))
- MCFG_RS232_DSR_HANDLER(WRITELINE(ACIA_0_TAG, mos6551_device, write_dsr))
- MCFG_RS232_CTS_HANDLER(WRITELINE(ACIA_0_TAG, mos6551_device, write_cts))
-
- MCFG_DEVICE_ADD("rs232b", RS232_PORT, default_rs232_devices, nullptr)
- MCFG_RS232_RXD_HANDLER(WRITELINE(ACIA_1_TAG, mos6551_device, write_rxd))
- MCFG_RS232_DCD_HANDLER(WRITELINE(ACIA_1_TAG, mos6551_device, write_dcd))
- MCFG_RS232_DSR_HANDLER(WRITELINE(ACIA_1_TAG, mos6551_device, write_dsr))
- MCFG_RS232_CTS_HANDLER(WRITELINE(ACIA_1_TAG, mos6551_device, write_cts))
-MACHINE_CONFIG_END
+ rs232_port_device &rs232a(RS232_PORT(config, "rs232a", default_rs232_devices, nullptr));
+ rs232a.rxd_handler().set(m_acia0, FUNC(mos6551_device::write_rxd));
+ rs232a.dcd_handler().set(m_acia0, FUNC(mos6551_device::write_dcd));
+ rs232a.dsr_handler().set(m_acia0, FUNC(mos6551_device::write_dsr));
+ rs232a.cts_handler().set(m_acia0, FUNC(mos6551_device::write_cts));
+
+ rs232_port_device &rs232b(RS232_PORT(config, "rs232b", default_rs232_devices, nullptr));
+ rs232b.rxd_handler().set(m_acia1, FUNC(mos6551_device::write_rxd));
+ rs232b.dcd_handler().set(m_acia1, FUNC(mos6551_device::write_dcd));
+ rs232b.dsr_handler().set(m_acia1, FUNC(mos6551_device::write_dsr));
+ rs232b.cts_handler().set(m_acia1, FUNC(mos6551_device::write_cts));
+}
ROM_START( concept )
diff --git a/src/mame/includes/concept.h b/src/mame/includes/concept.h
index 9134df453e4..f9020299822 100644
--- a/src/mame/includes/concept.h
+++ b/src/mame/includes/concept.h
@@ -59,7 +59,7 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
virtual void video_start() override;
- uint32_t screen_update_concept(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_READ8_MEMBER(via_in_a);
DECLARE_WRITE8_MEMBER(via_out_a);
diff --git a/src/mame/machine/concept.cpp b/src/mame/machine/concept.cpp
index c405f96d7a0..655d98dd03d 100644
--- a/src/mame/machine/concept.cpp
+++ b/src/mame/machine/concept.cpp
@@ -61,18 +61,14 @@ void concept_state::video_start()
{
}
-uint32_t concept_state::screen_update_concept(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
+uint32_t concept_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
{
/* resolution is 720*560 */
- uint16_t *videoram = m_videoram;
- int x, y;
- uint16_t *line;
-
- for (y = 0; y < 560; y++)
+ for (int y = 0; y < 560; y++)
{
- line = &bitmap.pix16(560-1-y);
- for (x = 0; x < 720; x++)
- line[720-1-x] = (videoram[(x+48+y*768)>>4] & (0x8000 >> ((x+48+y*768) & 0xf))) ? 1 : 0;
+ uint16_t *line = &bitmap.pix16(560-1-y);
+ for (int x = 0; x < 720; x++)
+ line[720-1-x] = (m_videoram[(x+48+y*768)>>4] & (0x8000 >> ((x+48+y*768) & 0xf))) ? 1 : 0;
}
return 0;
}