Difference between revisions of "SMPS"

From Sega Retro

(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
The '''Sample Music Playback System''' is a sound engine used in several games for the [[Sega Mega Drive/Genesis]] and the [[Sega 32X]], including all major ''[[sonic:Sonic the Hedgehog|Sonic]]'' games except ''[[Sonic the Hedgehog Spinball]]'', which uses [[GEMS]] instead. The engine's name has not been completely confirmed, as a large group of users have come up with serious doubts about it and no concrete proof has been found.
+
'''Sample Music Playback System''' ('''SMPS''') is the common name of a family of audio playback engines (or "drivers") and storage formats used by various [[Sega]] consoles (including the [[Sega Mega Drive]], [[Sega Mega-CD]], [[Sega 32X]], [[Sega Master System]] and [[Sega Game Gear]]). "SMPS" is thought to be a colloquial term - there is no evidience to suggest this was the naming scheme of any official drivers, but is the most widely accepted name for the system.
  
A few versions of this engine exist; most notably, both a 68K and a Z80 version were developed.
+
Like other sound drivers, SMPS was designed as a means of processing audio information, allowing a console's CPU to communicate with sound chips on the board and create audible sound (i.e. "driving" the sound). It is usually associated with first-party Japanese Mega Drive games (where it was most predominantly used) - analogous to [[Sega of America]]'s use of the [[GEMS]] driver, and began appearing in games from the late 1980s until the aforementioned consoles bowed out of the market.
It is possible to port songs between two games that use the SMPS engine; however, several games use a slightly different revision of the format, and the chance that the ported song will need extensive editing by hand (usually with a hex editor) is very high.
 
  
Many sceners have been working on the SMPS format, doing an extensive work of research. Most credit should be given to [[sonic:User:saxman|saxman]], the man who started it all, but a lot of hackers continued his work up to our days, including [[sonic:User:Puto|Puto]] and [[sonic:User:Tweaker|Tweaker]].
+
By sharing drivers between games, developers could create tools to quickly produce audio, and it allows for music and sound effects to be more easily ported between games.
  
We now have a fairly complete knowledge of this format, and several tools are available to hackers who want to tweak the music in their hacks. In particular, the [[xm4smps]] tool created by [[sonic:User:Puto|Puto]] and [[sonic:User:Oerg866|Oerg866]]'s [[xm3smps/oerg]] (official improved branch of [[sonic:User:nineko|nineko]]'s original [[xm3smps]]) allow music to be imported into the SMPS format with ease, generally having very favorable results.
+
==Variants==
 +
===Mega Drive and 32X===
 +
Mega Drive (and by extension, 32X) developers had a choice of which processor to run SMPS on; the 16-bit [[68000]], or the 8-bit [[Z80]]. The driver variants are known as '''SMPS 68000''' and '''SMPS Z80''' respectively.
  
It should be noted that both [[GYM]] and [[VGM]] files are logs of the data sent to the sound chipset rather than a dump of the sound data itself.
+
Some developers, such as [[Treasure]], chose to modify the driver, effectively making their own variants. Individual games such as ''[[Ristar]]'' also have their own modified drivers.
  
== See also ==
+
====Games which use SMPS 68000====
*[[SCHG:SMPS Hacking]]  
+
=====Mega Drive=====
:A very comprehensive guide detailing the SMPS format and all its variants.
+
{{multicol|
 +
{{SoundDriverList|SMPS 68000|MD}}
 +
|cols=3}}
 +
 
 +
=====32X=====
 +
{{SoundDriverList|SMPS 68000|32X}}
 +
 
 +
====Games which use SMPS Z80====
 +
=====Mega Drive=====
 +
{{multicol|
 +
{{SoundDriverList|SMPS Z80|MD}}
 +
|cols=3}}
 +
 
 +
=====32X=====
 +
{{SoundDriverList|SMPS Z80|32X}}
 +
 
 +
===Mega-CD===
 +
'''SMPS-PCM''' is  variant of SMPS designed to work on the Mega-CD's second 68000 processor, giving it access to the system's [[RF5C164]] PCM chip.
 +
 
 +
===Master System and Game Gear===
 +
SMPS drivers designed to work on the Z80 processors of the Master System and Game Gear were also produced. These tap into the two consoles' [[SN76489]] chip.
 +
 
 +
==Technical details==
 +
*[[SMPS/Headers|Headers]]
 +
*[[SMPS/Voices and samples|Voices and samples]]
 +
*[[SMPS/Song data|Song data]]
 +
 
 +
==Tools==
 +
*[[xm4smps]]
 +
*[[xm3smps/oerg]] (official improved branch of [[xm3smps]])
  
 
== External links ==
 
== External links ==
*[http://gdri.smspower.org/wiki/index.php/Mega_Drive/Genesis_Sound_Engine_List A list of the sound engines used on the Genesis]
+
*[http://gdri.smspower.org/wiki/index.php/Mega_Drive/Genesis_Sound_Engine_List A list of the sound engines used on the Mega Drive]
 +
 
 +
==References==
 +
<references />
 
[[Category:Mega Drive sound drivers]]
 
[[Category:Mega Drive sound drivers]]
 +
[[Category:SMPS]]

Revision as of 16:00, 23 January 2019

Sample Music Playback System (SMPS) is the common name of a family of audio playback engines (or "drivers") and storage formats used by various Sega consoles (including the Sega Mega Drive, Sega Mega-CD, Sega 32X, Sega Master System and Sega Game Gear). "SMPS" is thought to be a colloquial term - there is no evidience to suggest this was the naming scheme of any official drivers, but is the most widely accepted name for the system.

Like other sound drivers, SMPS was designed as a means of processing audio information, allowing a console's CPU to communicate with sound chips on the board and create audible sound (i.e. "driving" the sound). It is usually associated with first-party Japanese Mega Drive games (where it was most predominantly used) - analogous to Sega of America's use of the GEMS driver, and began appearing in games from the late 1980s until the aforementioned consoles bowed out of the market.

By sharing drivers between games, developers could create tools to quickly produce audio, and it allows for music and sound effects to be more easily ported between games.

Variants

Mega Drive and 32X

Mega Drive (and by extension, 32X) developers had a choice of which processor to run SMPS on; the 16-bit 68000, or the 8-bit Z80. The driver variants are known as SMPS 68000 and SMPS Z80 respectively.

Some developers, such as Treasure, chose to modify the driver, effectively making their own variants. Individual games such as Ristar also have their own modified drivers.

Games which use SMPS 68000

Mega Drive
32X

Games which use SMPS Z80

Mega Drive
32X

Mega-CD

SMPS-PCM is variant of SMPS designed to work on the Mega-CD's second 68000 processor, giving it access to the system's RF5C164 PCM chip.

Master System and Game Gear

SMPS drivers designed to work on the Z80 processors of the Master System and Game Gear were also produced. These tap into the two consoles' SN76489 chip.

Technical details

Tools

External links

References