neogeo.cpp: Add notes for AES clock, regional difference (#7369)

* neogeo.cpp: Add notes for AES clock, regional difference
neogeocd.cpp: Move value into driver class, Add notes for hardware region

* neogeo.cpp: Fix spacing
This commit is contained in:
cam900 2021-02-20 14:52:04 +09:00 committed by GitHub
parent 8dd6c849d5
commit 0e62fc43d0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 25 additions and 25 deletions

View File

@ -31,6 +31,8 @@
- Some raster effects are imperfect (off by a couple of lines)
* 68000 waitstates on ROM region access, determined by jumpers on cart
(garou train stage 3 background bug is probably related to this)
* AES Input clock is incorrect (24.167829MHz for NTSC systems, PAL is same?)
* PAL region AES behavior is not verified
Confirmed non-bugs:
@ -726,7 +728,7 @@ public:
{
}
void aes(machine_config &config);
void aes_ntsc(machine_config &config);
protected:
virtual void machine_start() override;
@ -2141,8 +2143,8 @@ void aes_state::device_post_load()
m_bank_cartridge->set_base((uint8_t *)m_slots[m_curr_slot]->get_rom_base() + m_bank_base);
}
void aes_state::aes(machine_config &config)
// NTSC region
void aes_state::aes_ntsc(machine_config &config)
{
neogeo_base(config);
neogeo_stereo(config);
@ -2416,14 +2418,14 @@ ROM_END
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT
CONS( 1990, neogeo, 0, 0, mv6f, neogeo_mvs6, mvs_led_el_state, empty_init, "SNK", "Neo-Geo MV-6F", MACHINE_IS_BIOS_ROOT | MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv4f, neogeo, 0, mv4f, neogeo_mvs, mvs_led_el_state, empty_init, "SNK", "Neo-Geo MV-4F", MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv2f, neogeo, 0, mv2f, neogeo_mvs, mvs_led_el_state, empty_init, "SNK", "Neo-Geo MV-2F", MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv1, neogeo, 0, mv1, neogeo, mvs_led_state, empty_init, "SNK", "Neo-Geo MV-1", MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv1f, ng_mv1, 0, mv1f, neogeo, mvs_led_state, empty_init, "SNK", "Neo-Geo MV-1F", MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv1fz, ng_mv1, 0, mv1fz, neogeo, mvs_state, empty_init, "SNK", "Neo-Geo MV-1FZ", MACHINE_SUPPORTS_SAVE )
CONS( 1990, aes, 0, 0, aes, aes, aes_state, empty_init, "SNK", "Neo-Geo AES", MACHINE_SUPPORTS_SAVE )
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT
CONS( 1990, neogeo, 0, 0, mv6f, neogeo_mvs6, mvs_led_el_state, empty_init, "SNK", "Neo-Geo MV-6F", MACHINE_IS_BIOS_ROOT | MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv4f, neogeo, 0, mv4f, neogeo_mvs, mvs_led_el_state, empty_init, "SNK", "Neo-Geo MV-4F", MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv2f, neogeo, 0, mv2f, neogeo_mvs, mvs_led_el_state, empty_init, "SNK", "Neo-Geo MV-2F", MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv1, neogeo, 0, mv1, neogeo, mvs_led_state, empty_init, "SNK", "Neo-Geo MV-1", MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv1f, ng_mv1, 0, mv1f, neogeo, mvs_led_state, empty_init, "SNK", "Neo-Geo MV-1F", MACHINE_SUPPORTS_SAVE )
CONS( 1990, ng_mv1fz, ng_mv1, 0, mv1fz, neogeo, mvs_state, empty_init, "SNK", "Neo-Geo MV-1FZ", MACHINE_SUPPORTS_SAVE )
CONS( 1990, aes, 0, 0, aes_ntsc, aes, aes_state, empty_init, "SNK", "Neo-Geo AES (NTSC)", MACHINE_SUPPORTS_SAVE )

View File

@ -39,9 +39,6 @@
#define NEOCD_REGION_JAPAN 0
uint8_t NeoSystem = NEOCD_REGION_JAPAN;
class ngcd_state : public aes_base_state
{
public:
@ -83,7 +80,7 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(aes_jp1);
// neoCD
uint8_t m_system_region;
int32_t m_active_transfer_area;
int32_t m_sprite_transfer_bank;
int32_t m_adpcm_transfer_bank;
@ -127,7 +124,7 @@ public:
std::unique_ptr<uint8_t[]> m_sprite_ram;
std::unique_ptr<uint8_t[]> m_fix_ram;
void neocd(machine_config &config);
void neocd_ntsc(machine_config &config);
void neocd_audio_io_map(address_map &map);
void neocd_audio_map(address_map &map);
void neocd_main_map(address_map &map);
@ -193,7 +190,7 @@ uint16_t ngcd_state::control_r(offs_t offset)
return m_tempcdc->neocd_cdd_rx_r();
case 0x011C: // region
return ~((0x10 | (NeoSystem & 3)) << 8);
return ~((0x10 | (m_system_region & 3)) << 8);
}
@ -1035,8 +1032,8 @@ uint32_t ngcd_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap,
return 0;
}
void ngcd_state::neocd(machine_config &config)
// NTSC region
void ngcd_state::neocd_ntsc(machine_config &config)
{
neogeo_base(config);
neogeo_stereo(config);
@ -1110,17 +1107,18 @@ ROM_END
void ngcd_state::init_neocdz()
{
NeoSystem = NEOCD_REGION_US;
m_system_region = NEOCD_REGION_US;
}
void ngcd_state::init_neocdzj()
{
NeoSystem = NEOCD_REGION_JAPAN;
m_system_region = NEOCD_REGION_JAPAN;
}
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
CONS( 1996, neocdz, 0, 0, neocd, neocd, ngcd_state, init_neocdz, "SNK", "Neo-Geo CDZ (US)", 0 ) // the CDZ is the newer model
CONS( 1996, neocdzj, neocdz, 0, neocd, neocd, ngcd_state, init_neocdzj, "SNK", "Neo-Geo CDZ (Japan)", 0 )
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */
CONS( 1996, neocdz, 0, 0, neocd_ntsc, neocd, ngcd_state, init_neocdz, "SNK", "Neo-Geo CDZ (US)", 0 ) // the CDZ is the newer model
CONS( 1996, neocdzj, neocdz, 0, neocd_ntsc, neocd, ngcd_state, init_neocdzj, "SNK", "Neo-Geo CDZ (Japan)", 0 )
CONS( 1994, neocd, neocdz, 0, neocd, neocd, ngcd_state, empty_init, "SNK", "Neo-Geo CD", MACHINE_NOT_WORKING ) // older model, ignores disc protections?
// NTSC region?
CONS( 1994, neocd, neocdz, 0, neocd_ntsc, neocd, ngcd_state, empty_init, "SNK", "Neo-Geo CD (NTSC?)", MACHINE_NOT_WORKING ) // older model, ignores disc protections?