I began to collect information about 3DO programming and graphics rendering. Reading various forums and whatever technical documents I could get my hands on revealed that the 3DO rendered everything at 320x240 resolution and used a curious form of pseudo anti-aliasing (interpolation) to produce its 480i image. The 3DO graphics programming documentation showed how two lines of code could be used to disable the effect:
Code: Select all
int32 DisableHAVG( Item screenItem )
int32 DisableVAVG( Item screenItem )
Since I had an FZ-1 with the BT9101 video encoder, I focused my efforts on finding information about it. After exhaustively searching Google, forums and even patents for tidbits of information, I began emailing suppliers who listed the chip as something they could produce. I asked them if they could send me a datasheet and while I got plenty of replies, none of them were able to provide a datasheet. I had run out of ideas and gave up on the BT9101.
A couple of months went by and my interest in the subject was renewed when I happened upon a reasonably priced Goldstar unit on eBay. I searched Google a bit for information about the Goldstar model and found that it used a different chip for it's video encoder - the VP536A, for which a datasheet was readily available on the internet! I only had to read to the second page of the PDF to find this:
I couldn't believe it - progressive scan was available by manipulating two pins on the chip! But would this actually work in practice? I didn't hestitate - I hit Buy it Now.
When the Goldstar arrived, I verified that it was working properly and sure enough, it was outputting 480i over S-Video into my XRGB Mini. I disassembled the unit and soldered wires to two pins, 52 (CTRLB1) and 55 (VAA):
I held my breath and turned on the unit and saw this (apologies for the poor image quality):
240p! Everything looked so much sharper, even over S-Video, and the interlacing artifacts on fast moving objects were gone!
The only thing left to do was to mod this console to output RGB. Since I already had a console with the Otaku's store RGB board, and cost of it was quite high (~$70 USD with shipping), I wanted to go a different route. I remembered seeing a different 3DO RGB mod on a Japanese website using an off the shelf RGB DAC. After a bit of searching, was able to find it again - the chip they had used was the BU3616K. There were pictures of the mod, but they were small and the textual information was limited and hard to understand with Google Translate. So I mostly relied on the datasheet for the BU3616K, which included an example that made it seemed fairly straightforward:
I ordered the necessary parts on eBay (BU3616K, QFP44 breakout adapter) and after waiting a couple weeks, the packages arrived from China. I soldered the DAC onto the breakout board and started wiring up the pins according to the datasheet, with one exception: I swapped out the resistor connecting pin 2 to pin 1. I had read on one of the Japanese pages that 6.8k Ohms was too dark and 1.8k was a better value:
I then soldered some 30AWG wire to the RGB pins of the VP536A, and took some time to make cutouts for a new AV output connector (3D printed Nintendo AV Multiout) and a switch for going from 240p to 480i:
Here's another shot of the 3D printed Nintendo AV output and 240p/480i switch:
Finally, I hooked everything up to my XRGB Mini and captured some footage (please watch in 720p/60fps):
480i RGB vs 240p RGB
240p S-Video vs 240p RGB
Well I think this is a long enough first post! Please tell me what you guys think and if you have any suggestions/comments. I've probably left a bunch of stuff out so feel free to ask questions.
High res images: 1, 2, 3, 4, 5