New working software items (a2600.xml)
-------------------------------------- Tarzan (prototype) [Hidden Palace, AJR]
This commit is contained in:
parent
4ca7063111
commit
dd4991f318
@ -17034,6 +17034,18 @@ MOS Atari-made game NTSC ROMs had a CO16xxx number and PAL ROMs had CO17xxx numb
|
|||||||
</part>
|
</part>
|
||||||
</software>
|
</software>
|
||||||
|
|
||||||
|
<software name="tarzan">
|
||||||
|
<description>Tarzan (prototype)</description>
|
||||||
|
<year>1984</year>
|
||||||
|
<publisher>Coleco</publisher>
|
||||||
|
<part name="cart" interface="a2600_cart">
|
||||||
|
<feature name="slot" value="a26_f0" />
|
||||||
|
<dataarea name="rom" size="16384">
|
||||||
|
<rom name="atari_tarzan_42a3.bin" size="16384" crc="15e22f06" sha1="a6d9a3375f9ca62123353760d0c78d05717de7d2"/>
|
||||||
|
</dataarea>
|
||||||
|
</part>
|
||||||
|
</software>
|
||||||
|
|
||||||
<software name="taskfrce">
|
<software name="taskfrce">
|
||||||
<description>Task Force</description>
|
<description>Task Force</description>
|
||||||
<year>1987</year>
|
<year>1987</year>
|
||||||
|
|||||||
@ -41,6 +41,7 @@ DEFINE_DEVICE_TYPE(A26_ROM_4IN1, a26_rom_4in1_device, "vcs_4in1", "Atari VCS
|
|||||||
DEFINE_DEVICE_TYPE(A26_ROM_8IN1, a26_rom_8in1_device, "vcs_8in1", "Atari VCS 2600 ROM Cart 8 in 1")
|
DEFINE_DEVICE_TYPE(A26_ROM_8IN1, a26_rom_8in1_device, "vcs_8in1", "Atari VCS 2600 ROM Cart 8 in 1")
|
||||||
DEFINE_DEVICE_TYPE(A26_ROM_32IN1, a26_rom_32in1_device, "vcs_32in1", "Atari VCS 2600 ROM Cart 32 in 1")
|
DEFINE_DEVICE_TYPE(A26_ROM_32IN1, a26_rom_32in1_device, "vcs_32in1", "Atari VCS 2600 ROM Cart 32 in 1")
|
||||||
DEFINE_DEVICE_TYPE(A26_ROM_X07, a26_rom_x07_device, "vcs_x07", "Atari VCS 2600 ROM Carts w/X07 bankswitch")
|
DEFINE_DEVICE_TYPE(A26_ROM_X07, a26_rom_x07_device, "vcs_x07", "Atari VCS 2600 ROM Carts w/X07 bankswitch")
|
||||||
|
DEFINE_DEVICE_TYPE(A26_ROM_F0, a26_rom_f0_device, "vcs_f0", "Atari VCS 2600 ROM Carts w/F0 bankswitch")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -883,3 +884,31 @@ void a26_rom_x07_device::change_bank2(offs_t address)
|
|||||||
{
|
{
|
||||||
m_bank->set_entry((address >> 4) & 0x0f);
|
m_bank->set_entry((address >> 4) & 0x0f);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*-------------------------------------------------
|
||||||
|
"F0 Bankswitch" Carts:
|
||||||
|
read/write access to 0x1ff0-0x1ff1 & 0x1ff8-0x1ff9
|
||||||
|
determines the 4K ROM bank to be read
|
||||||
|
|
||||||
|
GAMES: Atari Tarzan (prototype)
|
||||||
|
|
||||||
|
-------------------------------------------------*/
|
||||||
|
|
||||||
|
a26_rom_f0_device::a26_rom_f0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
|
: a26_rom_f6_device(mconfig, A26_ROM_F0, tag, owner, clock)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void a26_rom_f0_device::install_memory_handlers(address_space *space)
|
||||||
|
{
|
||||||
|
m_bank->configure_entries(0, 4, get_rom_base(), 0x1000);
|
||||||
|
space->install_read_bank(0x1000, 0x1fff, m_bank);
|
||||||
|
space->install_write_handler(0x1ff0, 0x1ff1, write8sm_delegate(*this, FUNC(a26_rom_f0_device::switch_bank)));
|
||||||
|
space->install_write_handler(0x1ff8, 0x1ff9, write8sm_delegate(*this, [this] (offs_t offset, u8) { switch_bank(offset + 2, 0); }, "bank"));
|
||||||
|
install_super_chip_handlers(space);
|
||||||
|
space->install_read_tap(0x1ff0, 0x1ff1, "bank",
|
||||||
|
[this] (offs_t address, u8 &, u8) { if (!machine().side_effects_disabled()) switch_bank(address - 0x1ff0, 0); });
|
||||||
|
space->install_read_tap(0x1ff8, 0x1ff9, "bank",
|
||||||
|
[this] (offs_t address, u8 &, u8) { if (!machine().side_effects_disabled()) switch_bank(address - 0x1ff8 + 2, 0); });
|
||||||
|
}
|
||||||
|
|||||||
@ -360,6 +360,17 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// ======================> a26_rom_f0_device
|
||||||
|
|
||||||
|
class a26_rom_f0_device : public a26_rom_f6_device
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
a26_rom_f0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||||
|
|
||||||
|
virtual void install_memory_handlers(address_space *space) override;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// device type definition
|
// device type definition
|
||||||
DECLARE_DEVICE_TYPE(A26_ROM_2K_4K, a26_rom_2k_4k_device)
|
DECLARE_DEVICE_TYPE(A26_ROM_2K_4K, a26_rom_2k_4k_device)
|
||||||
@ -382,6 +393,7 @@ DECLARE_DEVICE_TYPE(A26_ROM_4IN1, a26_rom_4in1_device)
|
|||||||
DECLARE_DEVICE_TYPE(A26_ROM_8IN1, a26_rom_8in1_device)
|
DECLARE_DEVICE_TYPE(A26_ROM_8IN1, a26_rom_8in1_device)
|
||||||
DECLARE_DEVICE_TYPE(A26_ROM_32IN1, a26_rom_32in1_device)
|
DECLARE_DEVICE_TYPE(A26_ROM_32IN1, a26_rom_32in1_device)
|
||||||
DECLARE_DEVICE_TYPE(A26_ROM_X07, a26_rom_x07_device)
|
DECLARE_DEVICE_TYPE(A26_ROM_X07, a26_rom_x07_device)
|
||||||
|
DECLARE_DEVICE_TYPE(A26_ROM_F0, a26_rom_f0_device)
|
||||||
|
|
||||||
|
|
||||||
#endif // MAME_BUS_VCS_ROM_H
|
#endif // MAME_BUS_VCS_ROM_H
|
||||||
|
|||||||
@ -50,6 +50,7 @@ enum
|
|||||||
A26_CM,
|
A26_CM,
|
||||||
A26_X07,
|
A26_X07,
|
||||||
A26_HARMONY,
|
A26_HARMONY,
|
||||||
|
A26_F0,
|
||||||
};
|
};
|
||||||
|
|
||||||
//-------------------------------------------------
|
//-------------------------------------------------
|
||||||
@ -175,6 +176,7 @@ static const vcs_slot slot_list[] =
|
|||||||
{ A26_32IN1, "a26_32in1" },
|
{ A26_32IN1, "a26_32in1" },
|
||||||
{ A26_X07, "a26_x07" },
|
{ A26_X07, "a26_x07" },
|
||||||
{ A26_HARMONY, "a26_harmony" },
|
{ A26_HARMONY, "a26_harmony" },
|
||||||
|
{ A26_F0, "a26_f0" },
|
||||||
};
|
};
|
||||||
|
|
||||||
static int vcs_get_pcb_id(const char *slot)
|
static int vcs_get_pcb_id(const char *slot)
|
||||||
|
|||||||
@ -587,6 +587,7 @@ static void a2600_cart(device_slot_interface &device)
|
|||||||
device.option_add("a26_32in1", A26_ROM_32IN1);
|
device.option_add("a26_32in1", A26_ROM_32IN1);
|
||||||
device.option_add("a26_x07", A26_ROM_X07);
|
device.option_add("a26_x07", A26_ROM_X07);
|
||||||
device.option_add("a26_harmony", A26_ROM_HARMONY);
|
device.option_add("a26_harmony", A26_ROM_HARMONY);
|
||||||
|
device.option_add("a26_f0", A26_ROM_F0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void a2600_cons_state::a2600_cartslot(machine_config &config)
|
void a2600_cons_state::a2600_cartslot(machine_config &config)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user