summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Dirk Best <mail@dirk-best.de>2015-08-16 10:24:21 +0200
committer Dirk Best <mail@dirk-best.de>2015-08-16 10:26:35 +0200
commitdd529f409ecd47602ef5691c6d86485c9c0f67a6 (patch)
treeab5f64b2d864c55c4cc1fcae5d034956e4f30067 /src
parent741dd1e705f9be9257b2b4bb5617413f19c6283a (diff)
blockhl: use new k052109 support, add raw params
Diffstat (limited to 'src')
-rw-r--r--src/mame/drivers/blockhl.c19
1 files changed, 6 insertions, 13 deletions
diff --git a/src/mame/drivers/blockhl.c b/src/mame/drivers/blockhl.c
index 4cc06ead5e1..bd510d8e43a 100644
--- a/src/mame/drivers/blockhl.c
+++ b/src/mame/drivers/blockhl.c
@@ -13,7 +13,7 @@
Todo:
- How is the sound irq cleared (currently using HOLD_LINE)?
- Do bit 2 and 7 of the bankswitch port have any meaning?
- - Use raw screen parameters
+ - Verify raw screen parameters
*******************************************************************************/
@@ -51,7 +51,6 @@ public:
DECLARE_WRITE8_MEMBER(sound_irq_w);
- INTERRUPT_GEN_MEMBER(blockhl_interrupt);
DECLARE_WRITE8_MEMBER(banking_callback);
protected:
@@ -175,12 +174,6 @@ WRITE8_MEMBER( blockhl_state::sound_irq_w )
// MACHINE EMULATION
//**************************************************************************
-INTERRUPT_GEN_MEMBER( blockhl_state::blockhl_interrupt )
-{
- if (m_k052109->is_irq_enabled())
- device.execute().set_input_line(KONAMI_IRQ_LINE, HOLD_LINE);
-}
-
void blockhl_state::machine_start()
{
// the first 0x8000 are banked, the remaining 0x8000 are directly accessible
@@ -276,7 +269,6 @@ static MACHINE_CONFIG_START( blockhl, blockhl_state )
// basic machine hardware
MCFG_CPU_ADD("maincpu", KONAMI, XTAL_24MHz/8) // Konami 052526
MCFG_CPU_PROGRAM_MAP(main_map)
- MCFG_CPU_VBLANK_INT_DRIVER("screen", blockhl_state, blockhl_interrupt)
MCFG_KONAMICPU_LINE_CB(WRITE8(blockhl_state, banking_callback))
MCFG_DEVICE_ADD("bank5800", ADDRESS_MAP_BANK, 0)
@@ -291,10 +283,9 @@ static MACHINE_CONFIG_START( blockhl, blockhl_state )
// video hardware
MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(64*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(14*8, (64-14)*8-1, 2*8, 30*8-1 )
+ MCFG_SCREEN_RAW_PARAMS(XTAL_24MHz/3, 528, 112, 400, 256, 16, 240)
+// 6MHz dotclock is more realistic, however needs drawing updates. replace when ready
+// MCFG_SCREEN_RAW_PARAMS(XTAL_24MHz/4, 396, hbend, hbstart, 256, 16, 240)
MCFG_SCREEN_UPDATE_DRIVER(blockhl_state, screen_update_blockhl)
MCFG_SCREEN_PALETTE("palette")
@@ -304,7 +295,9 @@ static MACHINE_CONFIG_START( blockhl, blockhl_state )
MCFG_DEVICE_ADD("k052109", K052109, 0)
MCFG_GFX_PALETTE("palette")
+ MCFG_K052109_SCREEN_TAG("screen")
MCFG_K052109_CB(blockhl_state, tile_callback)
+ MCFG_K052109_IRQ_HANDLER(INPUTLINE("maincpu", KONAMI_IRQ_LINE))
MCFG_DEVICE_ADD("k051960", K051960, 0)
MCFG_GFX_PALETTE("palette")