mirror of
https://github.com/holub/mame
synced 2025-04-29 03:20:50 +03:00
pengadvb: add notes (nw)
This commit is contained in:
parent
24d51f60a4
commit
f98a3b831b
@ -171,4 +171,4 @@ ROM_START( pesadelo )
|
|||||||
ROM_LOAD( "epr2764.15", 0x00000, 0x10000, CRC(1ae2f724) SHA1(12880dd7ad82acf04861843fb9d4f0f926d18f6b) )
|
ROM_LOAD( "epr2764.15", 0x00000, 0x10000, CRC(1ae2f724) SHA1(12880dd7ad82acf04861843fb9d4f0f926d18f6b) )
|
||||||
ROM_END
|
ROM_END
|
||||||
|
|
||||||
GAME( 1989, pesadelo, 0, pesadelo, pesadelo, forte2_state, init_pesadelo, ROT0, "bootleg (Forte II Games) / Konami", "Pesadelo (bootleg of Knightmare on MSX)", MACHINE_SUPPORTS_SAVE )
|
GAME( 1989, pesadelo, 0, pesadelo, pesadelo, forte2_state, init_pesadelo, ROT0, "bootleg (Forte II Games)", "Pesadelo (bootleg of Konami Knightmare)", MACHINE_SUPPORTS_SAVE )
|
||||||
|
@ -22,11 +22,18 @@ AY-3-8910 @ 1.789766MHz [10.7386/6]
|
|||||||
10 position DIPSW
|
10 position DIPSW
|
||||||
NOTE! switches 1, 3 & 5 must be ON or the game will not boot.
|
NOTE! switches 1, 3 & 5 must be ON or the game will not boot.
|
||||||
|
|
||||||
|
== MSX2 hardware version:
|
||||||
|
|
||||||
|
It's on the same PCB as sfkick, but with a small daughterboard for the sound chip, and no epoxy block.
|
||||||
|
Positions originally for YM2203 and extra Z80 are not populated.
|
||||||
|
|
||||||
TODO:
|
TODO:
|
||||||
- A timer apparently expires when beating stage 4 (signalled by a long beeping sound).
|
- pengadvb: add dipswitch
|
||||||
|
- pengadvb: A timer apparently expires when beating stage 4 (signalled by a long beeping sound).
|
||||||
Player needs to insert another credit and press start button (?) in order to continue.
|
Player needs to insert another credit and press start button (?) in order to continue.
|
||||||
Is this timer supposed to be shown on screen or there are additional 7-LEDs not handled?
|
Is this timer supposed to be shown on screen or there are additional 7-LEDs not handled?
|
||||||
- The CBK1029 PCB is also emulated by sfkick.cpp. Merge drivers? The board is differently populated.
|
- pengadvb2: V9938 video chip with 64KB VRAM instead of TMS9128, game works ok though
|
||||||
|
- pengadvb2: The CBK1029 PCB is also emulated by sfkick.cpp. Merge drivers? The board is differently populated.
|
||||||
|
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
@ -55,6 +62,10 @@ public:
|
|||||||
void init_pengadvb();
|
void init_pengadvb();
|
||||||
void init_pengadvb2();
|
void init_pengadvb2();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual void machine_start() override;
|
||||||
|
virtual void machine_reset() override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
uint8_t mem_r(offs_t offset);
|
uint8_t mem_r(offs_t offset);
|
||||||
void mem_w(offs_t offset, uint8_t data);
|
void mem_w(offs_t offset, uint8_t data);
|
||||||
@ -66,8 +77,6 @@ private:
|
|||||||
uint8_t ppi_port_b_r();
|
uint8_t ppi_port_b_r();
|
||||||
void ppi_port_c_w(uint8_t data);
|
void ppi_port_c_w(uint8_t data);
|
||||||
|
|
||||||
virtual void machine_start() override;
|
|
||||||
virtual void machine_reset() override;
|
|
||||||
void pengadvb_decrypt(const char* region);
|
void pengadvb_decrypt(const char* region);
|
||||||
void bank_mem(address_map &map);
|
void bank_mem(address_map &map);
|
||||||
void io_mem(address_map &map);
|
void io_mem(address_map &map);
|
||||||
@ -173,14 +182,14 @@ static INPUT_PORTS_START( pengadvb2 ) // reads are scrambled
|
|||||||
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
|
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
|
||||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT )
|
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT )
|
||||||
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_START1 )
|
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_START1 ) // also used for button 2 (pistol)
|
||||||
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_BUTTON1 )
|
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_BUTTON1 )
|
||||||
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
|
|
||||||
PORT_START("IN2")
|
PORT_START("IN2")
|
||||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) // button2?
|
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_COIN1 )
|
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||||
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
|
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
|
||||||
@ -189,11 +198,11 @@ static INPUT_PORTS_START( pengadvb2 ) // reads are scrambled
|
|||||||
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
|
|
||||||
PORT_START("DSW1")
|
PORT_START("DSW1")
|
||||||
PORT_DIPNAME( 0x03, 0x03, "Lives after the first" ) PORT_DIPLOCATION("SW1:1,2")
|
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:1,2")
|
||||||
PORT_DIPSETTING( 0x03, "0" )
|
PORT_DIPSETTING( 0x03, "1" )
|
||||||
PORT_DIPSETTING( 0x02, "1" )
|
PORT_DIPSETTING( 0x02, "2" )
|
||||||
PORT_DIPSETTING( 0x01, "2" )
|
PORT_DIPSETTING( 0x01, "3" )
|
||||||
PORT_DIPSETTING( 0x00, "4" )
|
PORT_DIPSETTING( 0x00, "5" )
|
||||||
PORT_DIPNAME( 0xa4, 0xa4, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:3,4,5")
|
PORT_DIPNAME( 0xa4, 0xa4, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:3,4,5")
|
||||||
PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) )
|
PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) )
|
||||||
PORT_DIPSETTING( 0x00, DEF_STR( 3C_2C ) )
|
PORT_DIPSETTING( 0x00, DEF_STR( 3C_2C ) )
|
||||||
@ -241,7 +250,6 @@ void pengadvb_state::ppi_port_a_w(uint8_t data)
|
|||||||
|
|
||||||
uint8_t pengadvb_state::ppi_port_b_r()
|
uint8_t pengadvb_state::ppi_port_b_r()
|
||||||
{
|
{
|
||||||
// TODO: dipswitch
|
|
||||||
switch (m_kb_matrix_row)
|
switch (m_kb_matrix_row)
|
||||||
{
|
{
|
||||||
case 0x00:
|
case 0x00:
|
||||||
@ -269,7 +277,8 @@ void pengadvb_state::ppi_port_c_w(uint8_t data)
|
|||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
void pengadvb_state::pengadvb(machine_config &config)
|
void pengadvb_state::pengadvb(machine_config &config)
|
||||||
{ /* basic machine hardware */
|
{
|
||||||
|
/* basic machine hardware */
|
||||||
Z80(config, m_maincpu, XTAL(10'738'635)/3);
|
Z80(config, m_maincpu, XTAL(10'738'635)/3);
|
||||||
m_maincpu->set_addrmap(AS_PROGRAM, &pengadvb_state::program_mem);
|
m_maincpu->set_addrmap(AS_PROGRAM, &pengadvb_state::program_mem);
|
||||||
m_maincpu->set_addrmap(AS_IO, &pengadvb_state::io_mem);
|
m_maincpu->set_addrmap(AS_IO, &pengadvb_state::io_mem);
|
||||||
@ -385,5 +394,5 @@ ROM_START( pengadvb2 ) // CBK1029 PCB
|
|||||||
ROM_LOAD( "7e", 0x18000, 0x8000, CRC(60764899) SHA1(a75e59c2ecf8cebdb99708cb18390157ad7b6993) )
|
ROM_LOAD( "7e", 0x18000, 0x8000, CRC(60764899) SHA1(a75e59c2ecf8cebdb99708cb18390157ad7b6993) )
|
||||||
ROM_END
|
ROM_END
|
||||||
|
|
||||||
GAME( 1988, pengadvb, 0, pengadvb, pengadvb, pengadvb_state, init_pengadvb, ROT0, "bootleg (Screen) / Konami", "Penguin Adventure (bootleg of MSX version, encrypted)", MACHINE_SUPPORTS_SAVE )
|
GAME( 1988, pengadvb, 0, pengadvb, pengadvb, pengadvb_state, init_pengadvb, ROT0, "bootleg (Screen)", "Penguin Adventure (bootleg of MSX version, encrypted)", MACHINE_SUPPORTS_SAVE )
|
||||||
GAME( 1988, pengadvb2, pengadvb, pengadvb, pengadvb2, pengadvb_state, init_pengadvb2, ROT0, "bootleg (Comet)", "Penguin Adventure (bootleg of MSX version, not encrypted)", MACHINE_SUPPORTS_SAVE )
|
GAME( 1988, pengadvb2, pengadvb, pengadvb, pengadvb2, pengadvb_state, init_pengadvb2, ROT0, "bootleg (Comet)", "Penguin Adventure (bootleg of MSX version, not encrypted)", MACHINE_SUPPORTS_SAVE )
|
||||||
|
Loading…
Reference in New Issue
Block a user