dynduke: take xtals from pcb photo

This commit is contained in:
hap 2024-11-19 15:21:19 +01:00
parent 76e6392092
commit e16d158279
2 changed files with 17 additions and 15 deletions

View File

@ -22,6 +22,9 @@
Emulation by Bryan McPhail, mish@tendril.co.uk
TODO:
- can be moved to raiden.cpp?
SW#1
--------------------------------------------------------------------
@ -248,7 +251,6 @@ void dynduke_state::control_w(offs_t offset, uint16_t data, uint16_t mem_mask)
// bit 0x04 unused? txt disable?
// bit 0x02 is used on the map screen (fore disable?)
// bit 0x01 set when inserting coin.. bg disable?
m_back_enable = BIT(~data, 0);
m_fore_enable = BIT(~data, 1);
m_txt_enable = BIT(~data, 2);
@ -532,9 +534,9 @@ INPUT_PORTS_END
static const gfx_layout charlayout =
{
8,8, // 8*8 characters
8,8, // 8*8 characters
1024,
4, // 4 bits per pixel
4, // 4 bits per pixel
{ 4,0,(0x10000*8)+4,0x10000*8 },
{ 0,1,2,3,8,9,10,11 },
{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16 },
@ -625,13 +627,13 @@ void dynduke_state::vblank_irq(int state)
void dynduke_state::dynduke(machine_config &config)
{
// basic machine hardware
V30(config, m_maincpu, 16'000'000 / 2); // NEC V30-8 CPU
V30(config, m_maincpu, 16_MHz_XTAL / 2); // NEC V30-8 CPU
m_maincpu->set_addrmap(AS_PROGRAM, &dynduke_state::master_map);
V30(config, m_slave, 16'000'000 / 2); // NEC V30-8 CPU
V30(config, m_slave, 16_MHz_XTAL / 2); // NEC V30-8 CPU
m_slave->set_addrmap(AS_PROGRAM, &dynduke_state::slave_map);
z80_device &audiocpu(Z80(config, "audiocpu", 14'318'180 / 4));
z80_device &audiocpu(Z80(config, "audiocpu", 14.318181_MHz_XTAL / 4));
audiocpu.set_addrmap(AS_PROGRAM, &dynduke_state::sound_map);
audiocpu.set_addrmap(AS_OPCODES, &dynduke_state::sound_decrypted_opcodes_map);
audiocpu.set_irq_acknowledge_callback("seibu_sound", FUNC(seibu_sound_device::im0_vector_cb));
@ -660,11 +662,11 @@ void dynduke_state::dynduke(machine_config &config)
// sound hardware
SPEAKER(config, "mono").front_center();
ym3812_device &ymsnd(YM3812(config, "ymsnd", 14'318'180 / 4));
ym3812_device &ymsnd(YM3812(config, "ymsnd", 14.318181_MHz_XTAL / 4));
ymsnd.irq_handler().set("seibu_sound", FUNC(seibu_sound_device::fm_irqhandler));
ymsnd.add_route(ALL_OUTPUTS, "mono", 1.0);
okim6295_device &oki(OKIM6295(config, "oki", 1'320'000, okim6295_device::PIN7_LOW));
okim6295_device &oki(OKIM6295(config, "oki", 12_MHz_XTAL / 12, okim6295_device::PIN7_HIGH));
oki.add_route(ALL_OUTPUTS, "mono", 0.40);
SEIBU_SOUND(config, m_seibu_sound, 0);

View File

@ -713,13 +713,13 @@ void raiden_state::vblank_irq(int state)
void raiden_state::raiden(machine_config &config)
{
// basic machine hardware
V30(config, m_maincpu, XTAL(20'000'000) / 2); // NEC V30 CPU, 20MHz verified on PCB
V30(config, m_maincpu, 20_MHz_XTAL / 2); // NEC V30 CPU, 20MHz verified on PCB
m_maincpu->set_addrmap(AS_PROGRAM, &raiden_state::main_map);
V30(config, m_subcpu, XTAL(20'000'000) / 2); // NEC V30 CPU, 20MHz verified on PCB
V30(config, m_subcpu, 20_MHz_XTAL / 2); // NEC V30 CPU, 20MHz verified on PCB
m_subcpu->set_addrmap(AS_PROGRAM, &raiden_state::sub_map);
z80_device &audiocpu(Z80(config, "audiocpu", XTAL(14'318'181) / 4)); // verified on PCB
z80_device &audiocpu(Z80(config, "audiocpu", 14.318181_MHz_XTAL / 4)); // verified on PCB
audiocpu.set_addrmap(AS_PROGRAM, &raiden_state::seibu_sound_map);
audiocpu.set_irq_acknowledge_callback("seibu_sound", FUNC(seibu_sound_device::im0_vector_cb));
@ -744,11 +744,11 @@ void raiden_state::raiden(machine_config &config)
// sound hardware
SPEAKER(config, "mono").front_center();
ym3812_device &ymsnd(YM3812(config, "ymsnd", XTAL(14'318'181) / 4));
ym3812_device &ymsnd(YM3812(config, "ymsnd", 14.318181_MHz_XTAL / 4));
ymsnd.irq_handler().set("seibu_sound", FUNC(seibu_sound_device::fm_irqhandler));
ymsnd.add_route(ALL_OUTPUTS, "mono", 1.0);
okim6295_device &oki(OKIM6295(config, "oki", XTAL(12'000'000) / 12, okim6295_device::PIN7_HIGH)); // frequency and pin 7 verified
okim6295_device &oki(OKIM6295(config, "oki", 12_MHz_XTAL / 12, okim6295_device::PIN7_HIGH)); // frequency and pin 7 verified
oki.add_route(ALL_OUTPUTS, "mono", 0.75);
SEIBU_SOUND(config, m_seibu_sound, 0);
@ -784,8 +784,8 @@ void raidenb_state::layer_scroll_w(offs_t offset, u16 data, u16 mem_mask)
void raiden_state::raidenkb(machine_config &config)
{
raiden(config);
m_maincpu->set_clock(XTAL(32'000'000) / 4); // Xtal and clock verified
m_subcpu->set_clock(XTAL(32'000'000) / 4); // Xtal and clock verified
m_maincpu->set_clock(32_MHz_XTAL / 4); // Xtal and clock verified
m_subcpu->set_clock(32_MHz_XTAL / 4); // Xtal and clock verified
}
void raidenb_state::raidenb(machine_config &config)