Author Topic: TG16/PCE converter  (Read 513 times)

Ninja16608

  • Hero Member
  • *****
  • Posts: 547
Re: TG16/PCE converter
« Reply #15 on: April 19, 2014, 05:21:30 AM »
I've been thinking of something like this for a while:
http://zepsus.com/product/magnetic-switch-7a/

You would still have to do region mod inside, but then you would not have to mod the outside at all. So no cutting the case for a "switch" basically.

You could mount this under the logo for example on your PCE.  Then when you move a magnet above it you switch to Turbo mode, swipe again to move back to PCE.   

You could get pretty fancy too, where you had an led light hooked up inside, so you could see a glow coming out from the HuCard slot or something, red for PCE and another color for Turbo. 

So it's sort of a "No Mod" solution. At least from the outside.


I have thought about similar things like that, but the whole idea was to not have to unsolder pin 29 and ground it (there are a lot of people like me who do not want to mess with it, not that we can't, but for being original un modded hardware sake) and some lazy people too, I won't leave you guys out either lol. I have seen many awesome low profile mods where switches were cleverly hidden and the bread board was inside tucked away nice. I could just do the easy thing and go the way another member (or feebay seller trying to peddle his stuff here, I have not seen him since) just make a switchable converter and still require the internal mod.

Seeing as how I am trying to avoid all that I think I will go with a regular converter with a better safer design where the front of the TG and converter are flush to eliminate the dangers of cracking the converter etc. I will continue to search for the solution. If anyone is up for the challenge and has some/any experience with TG16/PCE please don't be afraid to get on board and help out. Any cost savings from help from the forums translate to a lower over all price, not to mention all forum members who are interested in one will get a nice discount anyhow cuz I love you guys :-) ....no really I do, I come here and get my daily laughs at some of the shit that flies around here.

Ninja16608

  • Hero Member
  • *****
  • Posts: 547
Re: TG16/PCE converter
« Reply #16 on: May 06, 2014, 01:56:50 PM »
UPDATE: For those that are following this thread. I have made some progress on the converter, as of right now it will only convert JP to US until I can figure out a way to inject the region code. After talking with Charles MacDonald, he mentioned that most of the games use a standard method for the region code (Read the e-mail yourself I'm too lazy to type it lol)

(Hi Allen,

The region check works as follows: US games read the I/O port built into the HuC6280 chip (the CPU) and check the value of bit 6. If that bit is zero, the system is a TurboGrafx-16 and the game continues to run. If that bit is one, the system is a PC Engine and the game jumps into a region of unmapped memory and crashes. Japanese games don't do any region check so they don't care about the state of that bit.

The console modification is necessary because bit 6 of the I/O port corresponds to a physical pin on the CPU itself inside the console. On a TurboGrafx-16 that pin is normally tied to ground, and on a PC Engine it's tied to +5V. So a region mod involves desoldering that pin and connect it to a SPDT switch so that the I/O port pin can be connected to +5V or ground as needed.

There really isn't a way to defeat this protection easily, because the I/O port is integrated into the CPU. There's no way to substitute a different value on the data bus when the CPU is reading from the I/O port for example.

I think most (not all) of the US games use the same standardized region code because it was provided to them by NEC. In theory you could use some programmable logic to check for that sequence of instructions being executed, and then at the right time turn off the HuCard output and drive a different opcode on the bus to defeat the protection. But that's a lot of work and a lot of hardware to do one thing.

The system runs fast enough that it isn't feasible to use a microcontroller to do this check. It's important to detect the exact sequence because the I/O port is used all the time for the multitap and controllers, so you only want to interfere with the data read from the HuCard at the "right" time. I think some US games use a different sequence too (the programmers wrote the region check differently, it functions the same but the exact sequence of opcodes are different) so you'd have to check for multiple types of sequences other than the primary one most games use.

In the end, it's just easier to take a ROM, patch out the region check, and run it on a flash cart. I know that's hardly ideal, but it takes less effort. :)

So did you find a connector that fits the HuCard well? People like myself and others have been hunting for a compatible connector for years, it seems like the only alternative is to remove them from used/broken systems. Any idea where I could buy some?

Regards,

Charles)


If anyone has any info on the opcodes sequence they care to share it would speed up the whole process :-)

And yes I am having connectors made :-) just might take some time as I have to do the leg work in my free time.


I have some photos of my progress but they are large, converting them down to add to post.

wolfman

  • Hero Member
  • *****
  • Posts: 546
Re: TG16/PCE converter
« Reply #17 on: May 07, 2014, 05:40:36 AM »

If anyone has any info on the opcodes sequence they care to share it would speed up the whole process :-)

Maybe in the homebrew games development thread?
recent addition: Japanese Language Skills, A1 proficiency level
------------------------------------------------------------------------
CryptoCoin Warrior
My Setup: PC Engine LT, CD-ROMĀ², IFU-30
AKA woolfman on AtariAge, PlanetVB, Circuit-Board.
-----------------------------------------------------------------------

Ninja16608

  • Hero Member
  • *****
  • Posts: 547
Re: TG16/PCE converter
« Reply #18 on: May 07, 2014, 06:25:57 AM »
Good call, I'll make a post there :-)