Other uses for the SPC700 besides sound.

Discussion of hardware and software development for Super NES and Super Famicom. See the SNESdev wiki for more information.
Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
psycopathicteen
Posts: 3198
Joined: Wed May 19, 2010 6:12 pm

Other uses for the SPC700 besides sound.

Post by psycopathicteen »

This would be a pretty fun challenge. Try to figure out other purposes for the SPC700 other than sound.
User avatar
MottZilla
Posts: 2837
Joined: Wed Dec 06, 2006 8:18 pm

Post by MottZilla »

Like what? It can only communicate with the SCPU via a slow communication method. Even if you used the SPC to communicate with the SCPU to feed it some sort of calculations it would be faster to do it on the SCPU. The only thing I could think of you might consider is using the SPC to hide some sort of copy protection code where you process encrypted data in the SPC to try to hide it from less involved hackers or something.

The SPC really is just meant for playing music and sound effects. It's clocked too slow and has too slow of communication with the SCPU to be useful for anything else.
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

Post by Shiru »

It could be used as a lazy mathbox, if you prefer it to have sound.
User avatar
Bregalad
Posts: 8181
Joined: Fri Nov 12, 2004 2:49 pm
Location: Divonne-les-bains, France

Post by Bregalad »

I guess the SPC have MUL and DIV instructions the 65816 lacks... so if you're going to do something like large matrix multiply, the SPC might be faster at it even if it's clocked at only 1.024 MHz
However, the problem will be the delay to transfer the order to the SPC to do the calculation and the dalay to transfer result back to the CPU, where BOTH the CPU and SPC have to be busy, which would without a doubt make it slower overall than doing everything in the CPU.
Useless, lumbering half-wits don't scare us.
psycopathicteen
Posts: 3198
Joined: Wed May 19, 2010 6:12 pm

Post by psycopathicteen »

Maybe you can have an algorithm to convert packed pixel to planar format, where you have the SPC700 doing 1 bit-plane, while the 65816 is doing the remaining 3.
mic_
Posts: 922
Joined: Thu Oct 05, 2006 6:29 am

Post by mic_ »

Try it and see? I mean, we can speculate all we want, but you won't know if it's practical to use it until you've tried.
User avatar
tokumaru
Posts: 12668
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Post by tokumaru »

Personally, I don't see the point in doing anything other than sound with it. I suppose that when music is playing, you can't have the SPC700 do anything else or it would screw up the sound, which means that any help it could provide would have to be during loading sequences and such. The SNES is not a console that suffers from long loading sequences, so improving those by a little bit would hardly justify the trouble.
User avatar
Bregalad
Posts: 8181
Joined: Fri Nov 12, 2004 2:49 pm
Location: Divonne-les-bains, France

Post by Bregalad »

I suppose that when music is playing, you can't have the SPC700 do anything else or it would screw up the sound, which means that any help it could provide would have to be during loading sequences and such.
If your code is well written it wouldn;t be hard to interleave sound replaying with something else.
The SNES is not a console that suffers from long loading sequences, so improving those by a little bit would hardly justify the trouble.
In fact some games such as Chrono Trigger DOES have noticeable loading times when the CPU has to transfer data to the SPC.
Useless, lumbering half-wits don't scare us.
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

Post by Shiru »

SNES version of Batman Forever even had 'loading' screen when you move between locations.
User avatar
tokumaru
Posts: 12668
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Post by tokumaru »

Bregalad wrote:In fact some games such as Chrono Trigger DOES have noticeable loading times when the CPU has to transfer data to the SPC.
Ironically enough, if there's one thing the SPC can't help you with, this is it!