metro.cpp: VDP clock is not so standard on some PCBs

This commit is contained in:
AJR 2021-01-10 17:38:56 -05:00
parent 81e5960881
commit 3a9a71ccb7
2 changed files with 5 additions and 26 deletions

View File

@ -345,7 +345,7 @@ const double XTAL::known_xtals[] = {
26'590'906, /* 26.590906_MHz_XTAL Atari Jaguar NTSC */
26'593'900, /* 26.5939_MHz_XTAL Atari Jaguar PAL */
26'601'712, /* 26.601712_MHz_XTAL Astro Corp.'s Show Hand, PAL Vtech/Yeno Socrates (6x PAL subcarrier) */
26'666'000, /* 26.666_MHz_XTAL Imagetek I4100/I4220/I4300 */
26'666'000, /* 26.666_MHz_XTAL Imagetek I4220/I4300 */
26'666'666, /* 26.666666_MHz_XTAL Irem M92 but most use 27MHz */
26'686'000, /* 26.686_MHz_XTAL Typically used on 90's Taito PCBs to drive the custom chips */
26'880'000, /* 26.88_MHz_XTAL Roland RF5C36/SA-16 clock (30000 * 896) */

View File

@ -2802,7 +2802,7 @@ void metro_state::machine_start()
void metro_state::i4100_config(machine_config &config)
{
I4100(config, m_vdp, 26.666_MHz_XTAL);
I4100(config, m_vdp, 24_MHz_XTAL);
m_vdp->set_vblank_irq_level(0);
m_vdp->set_blit_irq_level(2);
@ -2870,6 +2870,7 @@ void metro_state::i4220_config_304x224(machine_config &config)
void metro_state::i4300_config_384x224(machine_config &config)
{
i4300_config(config);
m_vdp3->set_clock(32_MHz_XTAL);
m_screen->set_size(384, 240);
m_screen->set_visarea(0, 384-1, 0, 224-1);
@ -3196,7 +3197,7 @@ void metro_state::dokyusp(machine_config &config)
void metro_state::gakusai(machine_config &config)
{
/* basic machine hardware */
M68000(config, m_maincpu, 16000000); /* 26.6660MHz/2?, OSCs listed are 26.6660MHz & 3.579545MHz */
M68000(config, m_maincpu, 26.666_MHz_XTAL/2); // OSCs are 26.6660MHz & 3.579545MHz
m_maincpu->set_addrmap(AS_PROGRAM, &metro_state::gakusai_map);
m_maincpu->set_addrmap(m68000_device::AS_CPU_SPACE, &metro_state::cpu_space_map);
@ -3223,30 +3224,8 @@ void metro_state::gakusai(machine_config &config)
void metro_state::gakusai2(machine_config &config)
{
/* basic machine hardware */
M68000(config, m_maincpu, 16000000); /* 26.6660MHz/2?, OSCs listed are 26.6660MHz & 3.579545MHz */
gakusai(config);
m_maincpu->set_addrmap(AS_PROGRAM, &metro_state::gakusai2_map);
m_maincpu->set_addrmap(m68000_device::AS_CPU_SPACE, &metro_state::cpu_space_map);
EEPROM_93C46_16BIT(config, "eeprom");
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
i4300_config_320x240(config);
m_vdp3->irq_cb().set(FUNC(metro_state::ipl_w));
m_vdp3->set_blit_irq_level(3);
m_screen->screen_vblank().set(FUNC(metro_state::vblank_irq));
/* sound hardware */
SPEAKER(config, "mono").front_center();
OKIM6295(config, m_oki, 2112000, okim6295_device::PIN7_HIGH); // clock frequency & pin 7 not verified
m_oki->add_route(ALL_OUTPUTS, "mono", 0.25);
ym2413_device &ymsnd(YM2413(config, m_ymsnd, 3.579545_MHz_XTAL));
ymsnd.add_route(ALL_OUTPUTS, "mono", 2.00);
}
void metro_state::pangpoms(machine_config &config)