about decrypting "Hyper Neogeo 64"games

Coin-operated games and arcades.
gigagiga44
Posts: 7
Joined: July 24th, 2024, 2:22 am
Location: 日本
eBay: gtbyr

about decrypting "Hyper Neogeo 64"games

Post by gigagiga44 »

I'm currently hacking the game ``Samurai Spirits'' for Hyper Neo Geo 64, so I would like to know how to decrypt this game.
So is there any way to decrypt this game?

Also, a little off topic, but is it by design that the address starts at 0x80000000 when executed with MAME?
Of course, there are games that start at 0x00000000.
Does the used area start from 0x80000000 on the actual Hyper Neo Geo 64 machine?
jimmerd
Posts: 282
Joined: May 15th, 2010, 7:01 pm
Location: Berkshire, England
eBay: jimma-d
Initials: jmd

Re: about decrypting "Hyper Neogeo 64"games

Post by jimmerd »

Yes that's correct MAME is simulating the original hardwares memory layout.

0x80000000 correspond to a kernel mode addresses of the MIPS VR eg where the CPU access ROM or RAM directly without any kind of virtual address translation which applys to all HNG64 games.

Looking at the mame driver, Samurai Spirits cartridge is special in that the IRQ vector is mapped to RAM which stores the function address of the handler. The vector is Initialised on boot from 0x80005DD0.

eg storing interrupt handler addresses in RAM, the system 'could' change which function (ISR) handles an interrupt dynamically without modifying the interrupt vector table.
"Please contact the local attendant"
gigagiga44
Posts: 7
Joined: July 24th, 2024, 2:22 am
Location: 日本
eBay: gtbyr

Re: about decrypting "Hyper Neogeo 64"games

Post by gigagiga44 »

jimmerd wrote: August 3rd, 2024, 1:31 pm Yes that's correct MAME is simulating the original hardwares memory layout.

0x80000000 correspond to a kernel mode addresses of the MIPS VR eg where the CPU access ROM or RAM directly without any kind of virtual address translation which applys to all HNG64 games.

Looking at the mame driver, Samurai Spirits cartridge is special in that the IRQ vector is mapped to RAM which stores the function address of the handler. The vector is Initialised on boot from 0x80005DD0.

eg storing interrupt handler addresses in RAM, the system 'could' change which function (ISR) handles an interrupt dynamically without modifying the interrupt vector table.
Thank you for the detailed information!
I understood that the Hyper Neo Geo 64 program was also special.

It's a bit interesting that the handler is stored in RAM.

So, is this game actually difficult to decrypt?
I often see CPS2 and NEOGEO games being decrypted...