Well, I got a BIG progress update today!
Blargg and I couldn't wait for the US postal service to deliver him his board. So naturally, we decided to forge ahead anyway. I sent him those high res. pics you can see a few posts ago, and he worked up a wiring diagram, We met on IRC to talk about the project, and he suggested remotely working on the cartridge. Then I set up an SSH tunnel to my home Linux computer so he could remotely control my NES via the special USB cable. After a bit of fiddling with the old NROM board to test the connection and some new code, I built the prototype board and we got it running with the Flash chip instead of EPROMs. Blargg tested some read and write functions, and we called it a day!
So, I have some pics and also some excepts from our IRC session.
First, A giant mess. Yes, that is what happens when you're working on something and don't care about keeping it clean in the process.
The pcb front, now with socket and Flash chip (and some hidden trace cuts):
The pcb back, now with 5 new jumpers and some trace cuts (details coming soon):
And some IRC excepts:
<blargg> If you wanted to keep moving on development, you could do the wiring before I receive my board, then get it in the NES with a loader and hook it to your Linux box and then I could get debugging it remotely.
<arfink> oh, cool
<blargg> Assuming the wiring is good, the only thing I'd need from you is to reset the NES if I crash the loader :)
<arfink> I see
<blargg> I'd try to avoid that, so I could just sit here running tests remotely without any assistance.
<blargg> Since it'll be several days before I get my board at the soonest, I'm open to doing this to speed things up. Would also be pretty cool.
<blargg> You'd obviously create a separate account on your machine for me.
<blargg> Since I know you've got GCC and that test program compiled, I think all the libraries/packages are already there, so nothing to install.
<arfink> i feel like a freakin dentist here with my pick
<arfink> :)
<arfink> and cleaning brush
<arfink> ok, I'm pretty sure #2 is done
<arfink> and cap is back in place
<arfink> just 2 more cuts
. . .
<arfink> ok got one side done
<arfink> other side...
<blargg> And it's got a trace close to it, so you don't want to cut too far over the edge of the trace.
<blargg> ok, the flash id test :)
<arfink> try to ping again
<arfink> first
<arfink> ok
<blargg> yeah
<arfink> I think the cart was not quite seated right
<arfink> i got a beep
<blargg> yeah, writes work!
<blargg> FF FF 01 A4 FF FF
<blargg> first two are ROM, second two are the manufacturer and device code
<blargg> third two are ROM again
<arfink> coooool
<blargg> OK, now to try programming a byte... should work fine though
<blargg> gotta look up the writes
<arfink> yes
<blargg> and let's see how it needs to verify that they byte was written...
<blargg> works!
<blargg> I programmed a byte
<arfink> yup
<arfink> I heard the beep
* arfink does happy dance