N-SPC Engine: Difference between revisions
KungFuFurby (talk | contribs) (Initial creation. Currently a quick description along with some references: there's way more to be done here, including core VCMD documentation) |
KungFuFurby (talk | contribs) (Adding pure source code games and offsets for each one, as well as notes. Note that I'm using "relative to" references, due to the code itself deliberately leaving an offset in to the array reference) |
||
Line 1: | Line 1: | ||
''WIP: currently a stub'' | ''WIP: currently a stub'' | ||
'''Nintendo SPC Sound Engine''', abbreviated N-SPC and officially known as Kankichi-kun [http://vgmpf.com/Wiki/index.php?title=Kankichi-kun], is the most common sound engine used in all of the SNES/SFC games. Only the music portion was initially provided in the source code included in the IS-Sound [https://www.retroreversing.com/super-famicom-snes-development-kit/#intelligent-systems-shvc-development-system]: usually it was modified by developers on an individual basis, resulting in many different variants, some of them more heavily modifying the sound driver than others. Usually what was added on was sound effect support, but sometimes the music VCMDs were modified as well. | '''Nintendo SPC Sound Engine''', abbreviated N-SPC and officially known as Kankichi-kun [http://vgmpf.com/Wiki/index.php?title=Kankichi-kun], is the most common sound engine used in all of the SNES/SFC games. Only the music portion was initially provided in the source code included in the IS-Sound unit along with some templating for a protocol for music and sound effects [https://www.retroreversing.com/super-famicom-snes-development-kit/#intelligent-systems-shvc-development-system]: usually it was modified by developers on an individual basis, resulting in many different variants, some of them more heavily modifying the sound driver than others. Usually what was added on was sound effect support, but sometimes the music VCMDs were modified as well. | ||
The following games are purely based off of the source code provided with the IS-Sound unit, and are either unmodified or barely modified, if at all: | |||
{| class="wikitable sortable" | |||
|- | |||
! Game Name !! VCMD Table Location (usually $E0 and up) !! ROM Offset | |||
|- | |||
| Hong Kong '97 || <tt>0x0DEC</tt>, relative to <tt>0x0D2C</tt> || <tt>0x0F800A</tt> (both versions) | |||
|- | |||
| SM Choukyoushi Hitomi - Bangai Hen || <tt>0x0DEC</tt>, relative to <tt>0x0D2C</tt> || <tt>0x01801C</tt> | |||
|- | |||
| SM Choukyoushi Hitomi Vol. 2 Trial Version || <tt>0x0DEC</tt>, relative to <tt>0x0D2C</tt> || <tt>0x01801C</tt> | |||
|- | |||
| SM Choukyoushi Hitomi Vol. 2 || <tt>0x0DEC</tt>, relative to <tt>0x0D2C</tt> || <tt>0x03801C</tt> | |||
|- | |||
| SM Choukyoushi Hitomi Vol. 2 Remix || <tt>0x0DEC</tt>, relative to <tt>0x0D2C</tt> || <tt>0x01801C</tt> | |||
|- | |||
| SM Choukyoushi Hitomi Vol. 3 Trial Version || <tt>0x0DEC</tt>, relative to <tt>0x0D2C</tt> || <tt>0x018058</tt> | |||
|- | |||
| SM Choukyoushi Hitomi Vol. 3 (Alt 1) || <tt>0x0DF0</tt>, relative to <tt>0x0D30</tt> || <tt>0x018076</tt> | |||
|- | |||
| Wheel of Fortune - Deluxe Edition || <tt>0x0DEC</tt>, relative to <tt>0x0D2C</tt> || <tt>0x01D842</tt> | |||
|} | |||
Of the games listed here, two of them are very minor edits... | |||
* Wheel of Fortune - Deluxe Edition's build is unused and is missing an opcode near the *Ver S1.20* string. | |||
* SM Choukyoushi Hitomi Vol. 3 (Alt 1)'s program starts with a JMP opcode, and contains a NOP between the first and second opcodes of the actual program. | |||
''TODO: References to be utilized:'' | ''TODO: References to be utilized:'' |
Revision as of 23:38, 5 October 2020
WIP: currently a stub
Nintendo SPC Sound Engine, abbreviated N-SPC and officially known as Kankichi-kun [1], is the most common sound engine used in all of the SNES/SFC games. Only the music portion was initially provided in the source code included in the IS-Sound unit along with some templating for a protocol for music and sound effects [2]: usually it was modified by developers on an individual basis, resulting in many different variants, some of them more heavily modifying the sound driver than others. Usually what was added on was sound effect support, but sometimes the music VCMDs were modified as well.
The following games are purely based off of the source code provided with the IS-Sound unit, and are either unmodified or barely modified, if at all:
Game Name | VCMD Table Location (usually $E0 and up) | ROM Offset |
---|---|---|
Hong Kong '97 | 0x0DEC, relative to 0x0D2C | 0x0F800A (both versions) |
SM Choukyoushi Hitomi - Bangai Hen | 0x0DEC, relative to 0x0D2C | 0x01801C |
SM Choukyoushi Hitomi Vol. 2 Trial Version | 0x0DEC, relative to 0x0D2C | 0x01801C |
SM Choukyoushi Hitomi Vol. 2 | 0x0DEC, relative to 0x0D2C | 0x03801C |
SM Choukyoushi Hitomi Vol. 2 Remix | 0x0DEC, relative to 0x0D2C | 0x01801C |
SM Choukyoushi Hitomi Vol. 3 Trial Version | 0x0DEC, relative to 0x0D2C | 0x018058 |
SM Choukyoushi Hitomi Vol. 3 (Alt 1) | 0x0DF0, relative to 0x0D30 | 0x018076 |
Wheel of Fortune - Deluxe Edition | 0x0DEC, relative to 0x0D2C | 0x01D842 |
Of the games listed here, two of them are very minor edits...
- Wheel of Fortune - Deluxe Edition's build is unused and is missing an opcode near the *Ver S1.20* string.
- SM Choukyoushi Hitomi Vol. 3 (Alt 1)'s program starts with a JMP opcode, and contains a NOP between the first and second opcodes of the actual program.
TODO: References to be utilized:
- Super Famicom Wiki - N-SPC
- GDRI - Super Famicom/Super NES Sound Driver List
- N-SPC VCMD $FB-$FE identifications
TODO: There are a lot of variants... these will be split into sub-pages depending on the modifications made