mirror of
https://github.com/holub/mame
synced 2025-07-03 00:56:03 +03:00
m6809/konami: cpu has internal /4 divider
This commit is contained in:
parent
1074e40578
commit
96dd95a11b
@ -85,7 +85,7 @@ DEFINE_DEVICE_TYPE(KONAMI, konami_cpu_device, "konami_cpu", "KONAMI CPU")
|
||||
//-------------------------------------------------
|
||||
|
||||
konami_cpu_device::konami_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||
: m6809_base_device(mconfig, tag, owner, clock, KONAMI, 1)
|
||||
: m6809_base_device(mconfig, tag, owner, clock, KONAMI, 4)
|
||||
, m_set_lines(*this)
|
||||
{
|
||||
}
|
||||
|
@ -298,7 +298,7 @@ void _88games_state::machine_reset()
|
||||
void _88games_state::_88games(machine_config &config)
|
||||
{
|
||||
/* basic machine hardware */
|
||||
KONAMI(config, m_maincpu, 3000000); /* ? */
|
||||
KONAMI(config, m_maincpu, 12000000); /* ? */
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &_88games_state::main_map);
|
||||
m_maincpu->line().set(FUNC(_88games_state::banking_callback));
|
||||
|
||||
|
@ -554,7 +554,7 @@ void ajax_state::volume_callback1(uint8_t data)
|
||||
void ajax_state::ajax(machine_config &config)
|
||||
{
|
||||
// basic machine hardware
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000) / 2 / 4); // 052001 12/4 MHz
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000) / 2); // 052001 12/4 MHz
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &ajax_state::main_map);
|
||||
|
||||
HD6309E(config, m_subcpu, 3000000); // ?
|
||||
|
@ -296,7 +296,7 @@ void aliens_state::machine_start()
|
||||
void aliens_state::aliens(machine_config &config)
|
||||
{
|
||||
// basic machine hardware
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000) / 2 / 4); // 052001 (verified on PCB)
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000) / 2); // 052001 (verified on PCB)
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &aliens_state::main_map);
|
||||
m_maincpu->line().set_membank(m_rombank).mask(0x1f);
|
||||
|
||||
|
@ -282,7 +282,7 @@ INPUT_PORTS_END
|
||||
void blockhl_state::blockhl(machine_config &config)
|
||||
{
|
||||
// basic machine hardware
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/8); // Konami 052526
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/2); // Konami 052526
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &blockhl_state::main_map);
|
||||
m_maincpu->line().set(FUNC(blockhl_state::banking_callback));
|
||||
|
||||
|
@ -315,7 +315,7 @@ inline void chqflag_state::update_background_shadows(uint8_t data)
|
||||
void chqflag_state::chqflag(machine_config &config)
|
||||
{
|
||||
/* basic machine hardware */
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/2/4); /* 052001 (verified on pcb) */
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/2); /* 052001 (verified on pcb) */
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &chqflag_state::chqflag_map);
|
||||
|
||||
Z80(config, m_audiocpu, XTAL(3'579'545)); /* verified on pcb */
|
||||
|
@ -302,7 +302,7 @@ CUSTOM_INPUT_MEMBER( crimfght_state::system_r )
|
||||
void crimfght_state::crimfght(machine_config &config)
|
||||
{
|
||||
/* basic machine hardware */
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/8); /* 052001 (verified on pcb) */
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/2); /* 052001 (verified on pcb) */
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &crimfght_state::crimfght_map);
|
||||
m_maincpu->line().set(FUNC(crimfght_state::banking_callback));
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "cpu/m6809/konami.h" /* for the callback and the firq irq definition */
|
||||
#include "cpu/m6809/konami.h"
|
||||
#include "machine/bankdev.h"
|
||||
#include "machine/gen_latch.h"
|
||||
#include "sound/k007232.h"
|
||||
|
@ -448,7 +448,7 @@ void hcastle_state::machine_reset()
|
||||
void hcastle_state::hcastle(machine_config &config)
|
||||
{
|
||||
// basic machine hardware
|
||||
KONAMI(config, m_maincpu, 3000000); // Derived from 24 MHz clock
|
||||
KONAMI(config, m_maincpu, 12000000); // Derived from 24 MHz clock
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &hcastle_state::main_map);
|
||||
m_maincpu->set_vblank_int("screen", FUNC(hcastle_state::irq0_line_hold));
|
||||
|
||||
|
@ -355,7 +355,7 @@ void parodius_state::banking_callback(uint8_t data)
|
||||
void parodius_state::parodius(machine_config &config)
|
||||
{
|
||||
// basic machine hardware
|
||||
KONAMI(config, m_maincpu, 3000000); // 053248
|
||||
KONAMI(config, m_maincpu, 12000000); // 053248
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &parodius_state::main_map);
|
||||
m_maincpu->line().set(FUNC(parodius_state::banking_callback));
|
||||
|
||||
|
@ -351,7 +351,7 @@ void rollerg_state::machine_reset()
|
||||
void rollerg_state::rollerg(machine_config &config)
|
||||
{
|
||||
// basic machine hardware
|
||||
KONAMI(config, m_maincpu, 24_MHz_XTAL / 8); // divider not verified
|
||||
KONAMI(config, m_maincpu, 24_MHz_XTAL / 2); // divider not verified
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &rollerg_state::main_map);
|
||||
m_maincpu->set_vblank_int("screen", FUNC(rollerg_state::irq0_line_assert));
|
||||
m_maincpu->line().set_membank(m_mainbank).mask(0x07);
|
||||
|
@ -313,7 +313,7 @@ INTERRUPT_GEN_MEMBER(simpsons_state::periodic_irq)
|
||||
void simpsons_state::simpsons(machine_config &config)
|
||||
{
|
||||
/* basic machine hardware */
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/2/4); /* 053248, the clock input is 12MHz, and internal CPU divider of 4 */
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/2); /* 053248, the clock input is 12MHz, and internal CPU divider of 4 */
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &simpsons_state::main_map);
|
||||
m_maincpu->set_vblank_int("screen", FUNC(simpsons_state::periodic_irq)); /* IRQ triggered by the 052109, FIRQ by the sprite hardware */
|
||||
m_maincpu->line().set(FUNC(simpsons_state::banking_callback));
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "cpu/m6809/konami.h" // for the callback and the firq irq definition
|
||||
#include "cpu/m6809/konami.h"
|
||||
#include "k052109.h"
|
||||
#include "k053251.h"
|
||||
#include "k053246_k053247_k055673.h"
|
||||
|
@ -300,7 +300,7 @@ void surpratk_state::banking_callback(uint8_t data)
|
||||
void surpratk_state::surpratk(machine_config &config)
|
||||
{
|
||||
// basic machine hardware
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000) / 2 / 4); // 053248, the clock input is 12MHz, and internal CPU divider of 4
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000) / 2); // 053248, the clock input is 12MHz, and internal CPU divider of 4
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &surpratk_state::main_map);
|
||||
m_maincpu->line().set(FUNC(surpratk_state::banking_callback));
|
||||
|
||||
|
@ -48,7 +48,7 @@
|
||||
|
||||
TIMER_CALLBACK_MEMBER(thunderx_state::thunderx_firq_cb)
|
||||
{
|
||||
m_maincpu->set_input_line(KONAMI_FIRQ_LINE, HOLD_LINE);
|
||||
m_maincpu->set_input_line(KONAMI_FIRQ_LINE, HOLD_LINE);
|
||||
}
|
||||
|
||||
#define PMC_BK (m_1f98_latch & 0x02)
|
||||
@ -628,7 +628,7 @@ void thunderx_state::machine_reset()
|
||||
void thunderx_state::scontra(machine_config &config)
|
||||
{
|
||||
/* basic machine hardware */
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/2/4); /* 052001 (verified on pcb) */
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000)/2); /* 052001 (verified on pcb) */
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &thunderx_state::scontra_map);
|
||||
|
||||
Z80(config, m_audiocpu, XTAL(3'579'545)); /* verified on pcb */
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "cpu/m6809/konami.h" // for the callback and the firq irq definition
|
||||
#include "cpu/m6809/konami.h"
|
||||
#include "machine/bankdev.h"
|
||||
#include "sound/k007232.h"
|
||||
#include "k051960.h"
|
||||
|
@ -606,7 +606,7 @@ void vendetta_state::banking_callback(uint8_t data)
|
||||
void vendetta_state::vendetta(machine_config &config)
|
||||
{
|
||||
// basic machine hardware
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000) / 8); // 052001 (verified on PCB)
|
||||
KONAMI(config, m_maincpu, XTAL(24'000'000) / 2); // 052001 (verified on PCB)
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &vendetta_state::main_map);
|
||||
m_maincpu->line().set(FUNC(vendetta_state::banking_callback));
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user