Well, I finally got out my E revision CPU from that Famicombox and popped it into a CopyNES I was building so that I could test it. The results weren't very surprising.
I could not find any difference between the E CPU and the G CPU. DPCM works fine, raw PCM works fine, and more importantly, looped noise works fine.
I also ran my CPU tester program over this CPU and all the "invalid" opcode tests pass.
So, the E revision CPU not supporting looped noise is false. It supports exactly like the G revision.
Whoops, glad Quietust reminded me... I had some OTHER CPU's to test. I got this large bag of Nintendo arcade chips off of ebay a couple weeks ago mainly for the EPROMs and Vs. PPU's.
Anyways, in the bag were some RP2A03 CPUs... yes, RP2A03 without any revision code. Unfortunately, I do not know how old they are. They are rather uselessly marked "4C3 14" instead of a date code. the "4" *might* be the year (1984). The game this came out of is I believe Super Punch Out or regular Punch Out (arcade).
Anyways, this is important because the chip has no looped noise! So it *is* confirmed- early CPU revisions do not support looped noise... just revisions before E.
CPU tests (invalid opcodes, etc) pass with flying colours, and DPCM/PCM both work as well.
kevtris wrote:
Anyways, this is important because the chip has no looped noise! So it *is* confirmed- early CPU revisions do not support looped noise... just revisions before E.
Hmm, you mean $400c bit 5 just has no function on those cpu revisions? I thought the difference was the lack of the 2nd feedback tap select for the 15-bit shift register?
Good info to have!
baisoku wrote:
kevtris wrote:
Anyways, this is important because the chip has no looped noise! So it *is* confirmed- early CPU revisions do not support looped noise... just revisions before E.
Hmm, you mean $400c bit 5 just has no function on those cpu revisions? I thought the difference was the lack of the 2nd feedback tap select for the 15-bit shift register?
Good info to have!
Correct. It just does not function. The result is on i.e. the Megaman 2 Quickman stage, you get regular ol' noise instead of the periodic noise you'd expect. It sounds kinda odd. Also, solstice produces white noise instead of that "tink" you'd expect. I was thinking about recording the audio from it for kicks. Anyone want to hear it?
This is excellent news! Hopefully then the issue should be isolated to custom arcade hardware that would not have a need for the non-working feature and not to any home console or device that plays home console games or versions of them (Famicombox, M82 Selection System, Playchoice 10). This should limit these CPUs to VS Arcade Systems and maybe some very early Famicoms (many of which were recalled for a hardware defect.)
Does anyone know exactly what said hardware defect was technically? The reports I read just talk about "rampant freezing".
Maybe this quote from Wikipedia.org helps;
...during its first year, many criticized the system as unreliable, prone to programming errors and rampant freezing. Following a product recall and a reissue with a new motherboard...
baisoku wrote:
kevtris wrote:
Hmm, you mean $400c bit 5 just has no function on those cpu revisions? I thought the difference was the lack of the 2nd feedback tap select for the 15-bit shift register?
Ya mean $400e bit 7, huh ?
There may a little information in David Sheff's book "Game Over" about this issue, but I misplaced my copy.
Bregalad wrote:
Ya mean $400e bit 7, huh ?
That's what i was trying to figure out, whether or not kevtris was talking about the envelope looping bit (400c:d5) or the feeback select bit (400e:d7). Sounds like the latter.
baisoku wrote:
That's what i was trying to figure out, whether or not kevtris was talking about the envelope looping bit (400c:d5) or the feeback select bit (400e:d7). Sounds like the latter.
Given that "looped noise" is the term that NT2 uses to refer to the feedback select bit, that's what I guessed too.
baisoku wrote:
Bregalad wrote:
Ya mean $400e bit 7, huh ?
That's what i was trying to figure out, whether or not kevtris was talking about the envelope looping bit (400c:d5) or the feeback select bit (400e:d7). Sounds like the latter.
Feedback select. It only produces "white" noise, and it cannot produce the "periodic" noise as found on the Solstice title screen, Quickman stage (MM2), or anything like that. On the Quickman stage, it plays it with just the white noise and it sounds pretty odd.
As far as I know, the enveloping is the same. I played A Boy and his Blob and it sounded OK... that thing abuses the triangle channel something awful. Namely with respect to the triangle's length counters. That is why emulators couldn't accurately emulate the music from this game until relatively recently.