Ok we've seen the people that put a playchoice ppu into their nes right? (for rgb) Only problem with that is that the pallet is not a 100% the same.
I have divised a solution to this:
step 1.) take a playchoice ppu and solder it in place of nes ppu
step 2.) make a sort of game genie like device that takes all pallet writes checks the data if it's one of the "offending" colors.
step 3.) if one of these colors "translate" them
step 4.) play in pixel perfect rgb.
What do you guys think?
While we're wishing for things, why not wish for someone to develop/reverse engineer the NES PPU chip and just add RGB out pins to it? Surely the PPU can be cloned as the NES pirate machines emulate it fairly well. Just make a replacement PPU chip to solder in.
But I wouldn't count on anyone doing anything. Honestly the best solution is to use a good old standard CRT with Composite input. For NES it doesn't make THAT big of a difference.
Ya know my idea is kinda feasible dude. Your idea requires a fpga (expensive) extensive time and knowledge of the entire ppu. Altough my idea might not be super easy, I think it can be pulled off. Btw Kevtris actually made an entire nes in an fpga so ya you can put ppu's on "different' things. Making asics is too expensive as wel as it requires mass production.
I wasn't saying your idea isn't doable. I have no idea if it is or not. I know that a PPU replacement is possible, and yes I imagine it wouldn't be cheap.
That's why in the end I believe the best solution is a good quality CRT display with Composite Video input. I use an RGB monitor that also features composite video and I really think the NES isn't in any need of a better signal quality unless you are playing on a HDTV, Digital TV, or LCD, or something else other than your regular analog tube. Then I could understand wanting RGB or something.
take a guess sherlock
. Also rgb just looks nicer overall.
Your idea is not feasible because you can't disable the CPU's data output (in order for your device to replace the CPU's value with one from a LUT) without modifying the console. Even if you could, it'd be pointless since the RGB PPUs don't just have a mixed up palette, even the correct colors are off.
A PPU clone is the only reasonable way to get NTSC color RGB output. BTW it doesn't need to be an expensive mask ASIC, it can be a couple large CPLD or even in an antifuse FPGA.
Well the whole idea was to modify it. But if even the correct colors are of. Well ya then this project has no reason to even begin.
As tepples has posted elsewhere, the standard NES composite video signal has enough information to fully recover the palette indicies of every pixel, which is enough to create an RGB signal or even capture every frame as perfectly as an emulator could generate. The PPU outputs pixels at a 5.37 MHz rate, which is less than double the color carrier rate, so every pixel has sufficient information to deteremine the phase and low and high levels of the particular color. The carrier is generated from the 21.48 MHz master clock multiplied by 2 (clocked on both transitions) to get 42.96 MHz, then divided by 12. This gives 12 color phases, each a square wave with 6 clocks high and 6 clocks low. 5.37 MHz is 1/8 this 42.96 MHz rate. This gives 8 clocks of the color carrier wave in each pixel, so it will always capture the transition and thus the phase. Decoding this wouldn't require anything expensive like an FPGA, just a small programmable logic chip.
So you could attach/wire to a small logic chip to take the Composite output and convert it back into RGB+Composite Sync? It's be interesting, though I still think the benifit would mainly be for HDTVs/Digital TVs. For my Analog RGB monitor, the difference between the NES in Composite and in RGB would probably not be significant enough to bother. Certainly though if I wanted to hook up to a LCD or something it would rock to connect it via Component or RGB if I had it.
Quote:
So you could attach/wire to a small logic chip to take the Composite output and convert it back into RGB+Composite Sync?
Yes, exactly. It'd be
perfect RGB.
Quote:
For my Analog RGB monitor, the difference between the NES in Composite and in RGB would probably not be significant enough to bother.
It'd be very noticeable even on a component video TV. I imagine the Wii's Virtual Console looks the same as this would.
But that method still requires an extremely fast 42 Msample ADC, a PLL to multiply the 21 MHz clock for the ADC and single edge counters, a CPLD (you'd be lucky if you could get two 4-bit counters into any simple PLD) and an external ROM providing the RGB LUT, or am I missing something?
No PLL, just clock on each edge of the 21 MHz clock. No ADC, just use a few analog comparators to decode to 6 or so video levels. For decoding, I figure a shift register or perhaps a microcontroller could do it. I'm not a hardware wizard so maybe it would be somewhat costly. Perhaps I'll write some C code that shows at least what would have to be accomplished (encodes pixels into a waveform, then decodes them).
Under normal circumstances you can only get something to react on either edge of the clock, for both you need extra finesse. The simplest way I can think of to double pump a flipflop is to phase shift the clock 90 degrees and XOR it against itself. Maybe an RC filter could give the phase shift and a XOR with Schmitt trigger inputs could provide the 42 MHz output, I'm not positive though since I'm not a wizard in anything ;)
6 video levels means either 6 video grade comparators (in 3 chip packages) or just the cheapest fast ADC you can find.
Quote:
Under normal circumstances you can only get something to react on either edge of the clock, for both you need extra finesse. The simplest way I can think of to double pump a flipflop is to phase shift the clock 90 degrees and XOR it against itself.
I figured you could just clock one thing at 21 MHz, and another with the inverted 21 MHz, and combine the things clocked, no analog components. Maybe that's how the PPU's phase generator works: two identical units, each giving six phases, with one clocked with an inverted input. Then the hue selects which of these twelve phases to use.
Quote:
6 video levels means either 6 video grade comparators (in 3 chip packages)
Oh, so regular components aren't fast enough. Figures, since 42 MHz is pretty high. Oh well, maybe it would be somewhat expensive then.
kyuusaku wrote:
Your idea is not feasible because you can't disable the CPU's data output (in order for your device to replace the CPU's value with one from a LUT) without modifying the console. Even if you could, it'd be pointless since the RGB PPUs don't just have a mixed up palette, even the correct colors are off.
A PPU clone is the only reasonable way to get NTSC color RGB output. BTW it doesn't need to be an expensive mask ASIC, it can be a couple large CPLD or even in an antifuse FPGA.
I've heard the blacks are off on Vs. PPUs, but the colors too? This is news to me. All of them? Just how off are they?
-Rob
I saw pictures once and the are in some cases completely different colors and I think some are missing. Someone posted pictures awhile back of their Playchoice PPU running regular NES games.
Well, Tennis and Duck Hunt Vs. PPUs are compatible with NESes without whacked-out colors...I think just some blacks on the pallette are screwy and only on some rare games.
Kyuusaku, were you refering to the PPUs that have completely whacked colors or did you mean the Duck Hunt and Tennis PPUs were off too?
I finally got a hold of a Duck Hunt PPU and am going to have the mod done soon.
-Rob
I meant the ones that are moderately accurate, which I think are in the FC Titler and Playchoice 10 and I guess Duck Hunt and Tennis if those look pretty good too. I don't know but I don't think any of the RGB PPUs do color emphasis right either making some games unplayable. Also Acem77 on Tototek couldn't get his RGB PPU to work with the PowerPak, so don't hold your breath when you do the mod :)
Stil, it's probably pretty nice for the games that do not use emphasis or other incompatibility's. (so do the mod on an "extra" nes)
Veeery strange that the Powerpak doesn't work. That's just weird. Did he try it with a Game Genie? Heh heh.
This is so newb-sounding, but what is color emphasis? Wait, isn't that what makes that one Jaleco game unplayable? Iirc, if this is the same issue, then this is only an issue for one American game. I think someone mentioned long ago that this game used one of those deep blacks that most developers avoided, making it look white. Not sure it was unplayable. Is there a list of artifacts/unplayables?
-Rob
well it makes a color look more "dominant" This worked by lowering the other colors besides the emphasised colors. (emphasise red and blue and green wil be decreased in the pallet)
rbudrick wrote:
Veeery strange that the Powerpak doesn't work. That's just weird. Did he try it with a Game Genie? Heh heh.
This is so newb-sounding, but what is color emphasis?
Oversimplifying:
On the composite PPUs, red emphasis slightly darkens green and blue. (See
NTSC Video on the wiki.) But on RGB PPUs, red emphasis sets red to full scale.
Quote:
Wait, isn't that what makes that one Jaleco game unplayable? Iirc, if this is the same issue, then this is only an issue for one American game.
And Just Breed.
Many European-developed games (like those by Eurocom) have all emphasis bits set, making the graphics disappear on RGB PPUs too. The list includes games like Felix the cat, James Bond Jr, Dropzone, Noah's Ark, etc...
I see. I take it there's no fix for this too, yes?
Anyone wanna design a new PPU?
-Rob
rbudrick wrote:
Anyone wanna design a new PPU? :D
I do eventually but CPU comes first :) Otherwise I'd have to debug it via USB instead of NES programs o_0
If you do such a thing, may I suggest separating the 6502 and APU clocks so I don't need to hear the Alvin and the Chipmunks remix of the game music in question with an appreciable overclock.
Since I now have the vs. Duck Hunt PPU, would anyone offer to mod an NES for me? I'd supply the NES and payment, of course. I hate doing such mods because I mess them up so terribly.
-Rob
I can.........(just cut the pins of the normal ppu, heat up pins, pull out, then take a solder sucker and clear the holes, then solder socket in with bend up pins for rgb.) but I don't really see were the catch is for me........also I stil don't wanna fuckzor this up.
Jeroen wrote:
I can.........(just cut the pins of the normal ppu, heat up pins, pull out, then take a solder sucker and clear the holes, then solder socket in with bend up pins for rgb.) but I don't really see were the catch is for me........also I stil don't wanna fuckzor this up.
Well, the soldering isn't an issue. It's the building of the amplification circuit and a couple other tiny mods that need to be done to get it to work correctly.
-Rob
Thats really really really really easy.
Jeroen wrote:
Thats really really really really easy.
So easy even you worry about fuckzoring it up? That's a bit contradictory.
-Rob
Lemme explain. If it were MY nes I'd have no problem. Just that if it was your nes i'd rather not do it for that little chance i'd fuck it up you understand?