Skip to content

Fixing PAL and NTSC-U region issues and updated Touch! Generations#16

Open
Barcia04 wants to merge 7 commits intoWiiLink24:mainfrom
Barcia04:Barcia04-patch-1
Open

Fixing PAL and NTSC-U region issues and updated Touch! Generations#16
Barcia04 wants to merge 7 commits intoWiiLink24:mainfrom
Barcia04:Barcia04-patch-1

Conversation

@Barcia04
Copy link

@Barcia04 Barcia04 commented Feb 17, 2026

INFO:

  • Updated Touch! Generations IDs to include all region exclusive titles
  • Added variable to force wrongly labeled games to be in their correct region (Example: game labeled as PAL in GameTDB while in reality is NTSC-U)
  • Fixed region code issue that made all DSi and DSiWare (Titles end with "V") titles dissapear on PAL regions due to not being ended with 'P', while also Australian (U), Spanish (S), French (F), Italian (I), German(D) and Dutch (H) releases suffering the same issue or releases that have different ID due to publishing or cartdridge limitations (Title IDs that end with X, Y or Z).

…ect region

Added country exclusive title ID code in order to fix DSiWare, and DSi games not appearing, and Wii, WiiWare, 3DS, and DS suffering the same in PAL regions.

Added Special NTSC-U region, these regions are either Special Editiosn such as Walmart or Toys R' Us which they are blacklisted or Canadian releases.

Some games (a small amount of them) are labeled wrong in GameTDB, these games are labeled as PAL instead of NTSC-U, so I added a code to force them to change to NTSC-U
Updated Touch Generations! IDs to include all region exclusive titles.

Added variable to force titleIDs wrongly labeled to their correct region.
Copy link
Member

@noahpistilli noahpistilli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please test your changes before making a pull request. As of right now these changes break everything.

Comment on lines +178 to +181
"YBN", "VAAE", "VAAV", "AYA", "AND", "ANM", "ATD", "ADJ", "BET", "CNVP", "CNVF", "CNVD", "CNVI", "CNVS", "ANH", "ANG", "AUA", "AUB", "AUC", "AUD", "AUE", "AIX", "AIZ",
"YCU", "ATI", "AOS", "AG3", "AWIE", "APLE", "AJQE", "AJQJ","CM7", "BKCE", "ATG", "AVM", "AD5", "AD2", "ADG", "AD7", "AD3", "IMW", "IA8", "C6P", "AXP", "A4VJ", "AJM", "AOI"
"A8NE", "A2Y", "AZI", "ASQ", "AJY", "ATR", "ARJ", "AGFE", "USK", "VET", "YFCE" "YLZP", "YLZX", "YLZJ", "YNU", "SUPP", "SUPJ", "RFN", "RFP", "R64", "RYW", "RHAP", "RHAJ",
"RJT", "RSPP", "RSPJ", "RZTP", "RFBP", "R4EP", "RNOP", "RTYP", "SP2P",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where did you source these IDs from?

Copy link
Author

@Barcia04 Barcia04 Feb 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All these were sourced from different sources:

  • Wikipedia which in itself is a bad source and was only used for reference since it had a huge list compared to other sites.
  • By having some of these games which in the cover they do have the Touch! Generations logo.
  • Nintendo Japan website for Wii and DS which suprisingly is still up.
  • GameFAQs alongside GameTDB and Wikipedia by checking covers and if the list is correct.
  • Old Touch! Generations page through Wayback Machine.
  • Nintendo Europe page.

Comment on lines +104 to +107
var regionToCodeTDB = map[constants.Region][]byte{
constants.NTSC: {'E', 'L', 'X', 'Z'},
constants.PAL: {'P', 'F', 'D', 'S', 'I', 'H', 'U', 'X', 'Y', 'V', 'Z'},
constants.Japan: {'J'},
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You changed the value of the map from byte to an array of byte, therefore you must alter all code that references this map to reflect the change.

Comment on lines +164 to +169
forcedRegion := game.Region
isForced := slices.Contains(constants.CanadaUSAIDs, game.ID[:4])

if isForced {
forcedRegion = "NTSC-U"
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This does literally nothing. forcedRegion is never used anywhere. Furthermore, since you only assign and never access forcedRegion, this won't even compile.

Attempted to fix region code that was badly implemented alongside the CanadaUSA IDs getting the ForceRegion implemented but not getting used.
Added missing commas in the Touch! Generation IDs causing syntax errors.
@noahpistilli noahpistilli self-requested a review February 17, 2026 16:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants