Page 1 of 1
SPC-700 in an FPGA
Posted: Fri Mar 21, 2008 6:16 pm
by kevtris
Well I decided to try dinking around and dropping an SPC-700 into my FPGA for fun, but I cannot find any of those good docs that Blargg talks about. Google and wikipedia return docs from 1997 or so which I know are ancient and all but useless.
Is there some secret document fountain I am missing? Ideally I will be modifying my 6502 core to run the CPU and then some FPGA fun for the DSP portion itself.
Posted: Fri Mar 21, 2008 6:38 pm
by blargg
Posted: Sat Mar 22, 2008 12:42 am
by kevtris
Great, thanks. exactly what I need for my feasability analysis!
Posted: Sat Mar 22, 2008 11:31 am
by dXtr
Posted: Sat Mar 22, 2008 5:11 pm
by Jeroen
Must have............*starts humping the temporarily converted kevtendo*
Posted: Sat Mar 22, 2008 7:30 pm
by tepples
From what I've read of the documents, the SPC700 CPU handles like a 6502. But something struck me as odd about the mnemonics:
Code: Select all
.section "IPL"
MOV X, #$EF
MOV SP, X
It looks like someone with an x86 background took out a red pen and scribbled all over a 6502 manual.
Posted: Mon May 26, 2008 11:54 pm
by caitsith2
Any progress on this FPGA SPC-700 project at all?
Posted: Tue May 27, 2008 3:59 pm
by kevtris
caitsith2 wrote:Any progress on this FPGA SPC-700 project at all?
Yes and no. Since I posted that, I made the hardware, debugged it, got a miniDOS running, and added SID, NSF (NES+N106+VRC6+MMC5+FME7), pokey, and FM (OPL3).
I got about 90% of the SPC-700 CPU done the weekend I asked for the info but then circuit boards and parts came so I was busy putting it together and all that.
It's going to be a chiptune+MIDI synth in the end, but right now it's just a chiptune player. At the moment it is playing SIDs, SAP, NSF, CMF, RAW, IMF, MUS, and some other formats. SPC is still there ready to be finished but I've been working on getting everything else done first.
It is reading those files right off of SD cards now (normal and SD-HC) using some 6502 code and the FPGA stuff.
You can keep track of progress on my blog, though I haven't posted in awhile. I should update it with some mp3s and such but I've been working like hell on it and haven't done the blog updates.
http://blog.kevtris.org/
Posted: Tue May 27, 2008 6:11 pm
by jargon
tepples wrote:From what I've read of the documents, the SPC700 CPU handles like a 6502. But something struck me as odd about the mnemonics:
Code: Select all
.section "IPL"
MOV X, #$EF
MOV SP, X
It looks like someone with an x86 background took out a red pen and scribbled all over a 6502 manual.
i have no idea what you are getting at.
looks like regular old assembler to me.
what byte offset in which document does that start at? (so i can easily see what you are referring to, in order to get a better idea)
only thing i see weird is that it looks like it uses a different syntax standard. (ie: not for NESASM)
-edit-
actually it looks like some sort of ambiguous LADS syntax, as if it were taking advantage of a flaw in the parser.
if it is just for LADS and not NESASM, then i will start work on hand-disassembling LADS in order to figure out how that even works.
-edit-
lol SPC700 not 6502, NEVERMIND
Jeroen wrote:Must have............*starts humping the temporarily converted kevtendo*
(saw that and my brain loopdy-looped into a completely different subject.)
Posted: Tue May 27, 2008 6:49 pm
by B00daW
*sigh*

Posted: Tue May 27, 2008 7:19 pm
by Zepper
B00daW wrote:*sigh*

Where's the second chance?

<drops a bomb>
Posted: Wed May 28, 2008 3:12 am
by dXtr
kevtris > cool, always enjoy your hw projects. Just drop it in a nice box and add a headphone connector and you got a device that kicks iPods ass :D
Posted: Wed May 28, 2008 6:45 am
by tepples
How much battery life would a dedicated NSF/SPC player get? An iPod can play any NSF or SPC file that has been transcoded to m4a. Sure, m4a is storage-inefficient compared to sequenced formats such as NSF, SPC, or S3M, but you can fit a metric feces-ton of m4a files on even an iPod nano. How many game soundtracks does one actually listen to?