Author Topic: Jang Doojin Go - Introduction [hM02]  (Read 6961 times)

SF-Human

  • Jr. Member
  • **
  • Posts: 75
  • Your average humans doing average things.
    • View Profile
    • Personal Website (Chinese)
Jang Doojin Go - Introduction [hM02]
« on: July 18, 2024, 03:54:35 AM »

2024.07.20 Update: Topic updated with correct title. Also, the current version is subject to bus conflicts - The hack was originally made for Bandai Datach Mapper 157 in mind, but I've tested with UxROM mapper only in emulators. I'm currently making a new version of the hack built with UxROM's limitations in mind, stay tuned.

The mapper is pretty similar to UxROM so I converted it.
I've expanded the ROM size to 256KB because the game gave me a black screen when I tried to use the original 144KB file size.

I simply redirected $5xxx register writes to $8008, because I tried to use Datach mapper on this, but the result is surprisingly compatible with UxROM.

For some reason the game writes 5xxx registers to $C2, then writes data to the register wrote at $C2. These instructions are also replaced as well.
Feel free to report errors at this topic.
« Last Edit: July 20, 2024, 03:04:19 AM by SF-Human »

lancuster

  • Jr. Member
  • **
  • Posts: 80
    • View Profile
Re: Korean Igo [hM02]
« Reply #1 on: July 18, 2024, 07:33:29 AM »
Tested on some emulators. Mesen, VirtuaNES, NintendulatorNRS - everything is ok. But on FCEUX, the game runs with broken graphics.

lancuster

  • Jr. Member
  • **
  • Posts: 80
    • View Profile
Re: Korean Igo [hM02]
« Reply #2 on: July 18, 2024, 07:34:51 AM »
SF-Human, can you convert "Fatal Fury 2" by Cony Soft into standard mapper i.e. MMC3?

SF-Human

  • Jr. Member
  • **
  • Posts: 75
  • Your average humans doing average things.
    • View Profile
    • Personal Website (Chinese)
Re: Korean Igo [hM02]
« Reply #3 on: July 18, 2024, 10:38:23 AM »
Tested on some emulators. Mesen, VirtuaNES, NintendulatorNRS - everything is ok. But on FCEUX, the game runs with broken graphics.
I uses NintendulatorNRS and NES.emu for primary testing, which works fine for me. From what I recall FCEUX Y266 works fine too. I will look into that.
« Last Edit: July 18, 2024, 10:47:31 AM by SF-Human »

SF-Human

  • Jr. Member
  • **
  • Posts: 75
  • Your average humans doing average things.
    • View Profile
    • Personal Website (Chinese)
Re: Korean Igo [hM02]
« Reply #4 on: July 18, 2024, 10:46:36 AM »
SF-Human, can you convert "Fatal Fury 2" by Cony Soft into standard mapper i.e. MMC3?
I don't have access to my PC at this time, so I can't check if it's possible.
From what I've read on the NESDev Wiki the game uses Mapper 83 Sub0, which looks like it can be converted to either VRC4 or FME-7 if it doesn't use the 32KB PRG banking mode.
MMC3 might be difficult since it uses 2KB CHR banking for the first two CHR banks, while in Mapper 83 Sub0 all the CHR banks uses 1KB banking.
I'm pretty new to mapper hacking, so don't expect a playable result soon.
« Last Edit: July 18, 2024, 10:48:15 AM by SF-Human »

NewRisingSun

  • Sr. Member
  • ****
  • Posts: 376
    • View Profile
Re: Korean Igo [hM02]
« Reply #5 on: July 19, 2024, 02:48:49 AM »
You are not taking bus conflicts into account, which regular UOROM has. That is why it does not work in FCEUX, because FCEUX always emulates bus conflicts with mapper 2. NintendulatorNRS only emulates bus conflicts when the submapper is 2 as well.

SF-Human

  • Jr. Member
  • **
  • Posts: 75
  • Your average humans doing average things.
    • View Profile
    • Personal Website (Chinese)
Re: Korean Igo [hM02]
« Reply #6 on: July 19, 2024, 03:03:19 AM »
You are not taking bus conflicts into account, which regular UOROM has. That is why it does not work in FCEUX, because FCEUX always emulates bus conflicts with mapper 2. NintendulatorNRS only emulates bus conflicts when the submapper is 2 as well.
I'll look into that.

NewRisingSun

  • Sr. Member
  • ****
  • Posts: 376
    • View Profile
Re: Korean Igo [hM02]
« Reply #7 on: July 19, 2024, 03:07:01 AM »
I also think the $5030 reads/writes are a kind of copy protection. The result is stored in $234, and if $234 is 0 in the game then the lower main menu option is selected, some code parts are skipped.

SF-Human

  • Jr. Member
  • **
  • Posts: 75
  • Your average humans doing average things.
    • View Profile
    • Personal Website (Chinese)
Re: Korean Igo [hM02]
« Reply #8 on: July 19, 2024, 03:13:39 AM »
I also think the $5030 reads/writes are a kind of copy protection. The result is stored in $234, and if $234 is 0 in the game then the lower main menu option is selected, some code parts are skipped.
I'll take that into account in the next revision.

As I mentioned in the topic, my initial target mapper was Bandai Datach Mapper 157 (hence why I replaced all banking registers with $8008), but the game seems to work in standard UOROM, so I simply changed the mapper number to 2. I will redone the hack with UOROM's limitations in mind.

SF-Human

  • Jr. Member
  • **
  • Posts: 75
  • Your average humans doing average things.
    • View Profile
    • Personal Website (Chinese)
Re: Jang Doojin Go - Introduction [hM02]
« Reply #9 on: July 20, 2024, 03:06:32 AM »
Now I'm literally stucked at $5030 read/writes that I have to tackle with in my hack, otherwise selecting the tutorials will either crash or reset the game.