Difference between revisions of "GEMS"

From Sega Retro

 
(36 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{cleanup}}
 
 
{{Bob
 
{{Bob
 
| bobscreen=GEMS Graphical User Interface.png
 
| bobscreen=GEMS Graphical User Interface.png
| imgwidth=
+
| bobscreen2=GEMS Graphical User Interface (alt).png
 +
| tab1=Screenshot (1)
 +
| tab2=Screenshot (2)
 
| title=
 
| title=
| developer=Jonathan Miller, Burt Sloane, Chris Grigg, Mark Miller, [[Recreational Brainware]]
+
| developer=[[Recreational Brainware]]{{ref|https://web.archive.org/web/20221206204931/https://www.sega-16.com/2016/03/behind-the-design-chakan-the-forever-man/}}, [[Technopop]]{{ref|1=https://web.archive.org/web/20231113100224/http://gendev.spritesmind.net/forum/viewtopic.php?f=14&t=1898&start=30}}
 
| system=[[Mega Drive]], [[Sega 32X]]
 
| system=[[Mega Drive]], [[Sega 32X]]
 
}}
 
}}
{{stub}}'''GEMS''' ('''G'''enesis '''E'''ditor for '''M'''usic and '''S'''ound effects) is a sound driver used in [http://gdri.smspower.org/wiki/index.php/Mega_Drive/Genesis_Sound_Engine_List 186 documented games] for the [[Sega Mega Drive]], including ''[[Sonic Spinball]]''. It was developed by Jonathan Miller (drivers and firmware), Burt Sloane (programming), Chris Grigg and Mark Miller (concept and design) of [[Recreational Brainware]] by [[Sega]]'s request, and mainly used by western developers.
+
'''GEMS''' ('''G'''enesis '''E'''ditor for '''M'''usic and '''S'''ound effects) is a [[Sega Mega Drive]] sound driver program developed by [[Recreational Brainware]] and [[Technopop]]. Commissioned by [[Sega of America]] to assist Western developers struggling with the unfamiliar [[YM2612|sound hardware]], it went on to see use in over 200 released games.
  
The software integrates a programming language that can be built into the composition file and is context-sensitive to gameplay events within the game itself.This is acomplished by setting aside shared memory space that will allow the sound driver to comunicate with the game and vice-versa.Using this technique, the music can change to reflect conditions within the game.For instance, it can be used to track the number of enemies onscreen and change pitch or tempo when a certain threshold is reached or it can be timed to play when certain effects, such as flashes of light, are used.
+
==History==
[[File:GEMS Graphical User Interface (alt).png|thumb|right]]
+
{{quote|G.E.M.S. was definitely the best sound driver/editor that was made available to the general public during the first half of the 90's. I absolutely loved it... Before G.E.M.S., we as composers/sound designers had almost nothing.|''[[Tommy Tallarico]]''|ref={{ref|1=https://www.youtube.com/watch?v=WEvnZRCW_qc}}}}
While in games using other drivers, such [[Alien Soldier]] or [[Shinobi 3]] basic behaviour such as playback speed is controlled by a single variable (which can be easly manipulated by an action replay or hex editor), GEMS has to change the data of the whole music track stored on the ROM for the same effect. This can be easily noticed by comparing data in partially PAL optimized games, such as [[Cool Spot]].
 
 
==List of games that use GEMS==
 
===[[Mega Drive]]===
 
{{multicol|
 
{{SoundDriverList|GEMS|MD}}
 
|cols=3}}
 
----
 
{{multicol|
 
===A===
 
*''[[AAAHH!!! Real Monsters]]''
 
*''[[Action 52]]''
 
*''[[The Adventures of Rocky and Bullwinkle and Friends]]''
 
*''[[Aero the Acro-Bat]]''
 
*''[[Aero the Acro-Bat 2]]''
 
*''[[Andre Agassi Tennis]]''
 
*''[[Another World]]''
 
*''[[Arcade Classics]]''
 
*''[[Awesome Possum]]''
 
  
===B===
+
Early Sega Genesis hardware documentation was limited in all areas, but especially in audio capabilities. Unlike Japanese composers, who were more familiar with writing sound drivers and working with FM synthesis, their Western counterparts struggled to produce quality sounds. Seeking to address this, [[Sega of America]] reached out to developer [[Recreational Brainware]] to produce a solution.
*''[[B.O.B.]]'' (Space Funky B.O.B.)
 
*''[[Baby's Day Out]]'' (beta)
 
*''[[Ballz 3D]]''
 
*''[[Barbie Super Model]]''
 
*''[[Bass Masters Classic]]''
 
*''[[Bass Masters Classic Pro Edition]]''
 
*''[[Batman: Revenge of the Joker]]''
 
*''[[Batman Returns (Mega Drive)|Batman Returns]]''
 
*''[[Battletech]]''
 
*''[[The Berenstain Bears' Camping Adventure]]''
 
*''[[Beyond Zero Tolerance]]'' (beta)
 
*''[[Blood Shot]]'' (Battle Frenzy)
 
*''[[Body Count]]''
 
*''[[Bonkers]]''
 
*''[[Boxing Legends of the Ring]]''
 
*''[[Brutal: Paws of Fury]]''
 
  
===C===
+
The team consisted of [[Jonathan Miller]] creating drivers and firmware, [[Burt Sloane]] programming, and [[Chris Grigg]] and [[Mark Miller]] providing the software’s overall design. The result was GEMS, a 16-bit sound driver with a focus on MIDI interactivity. Sega of America was very pleased with GEMS and went on to distribute it to their various developers and publishers. Western composers and musicians now had a more familiar and reliable method for translating their instruments to the [[Sega Genesis]] hardware.
*''[[Caesar's Palace]]''
 
*''[[Cal Ripken Jr. Baseball]]''
 
*''[[Cannon Fodder]]''
 
*''[[Captain Planet and the Planeteers]]''
 
*''[[Chakan: The Forever Man]]''
 
*''[[Champions World Class Soccer]]''
 
*''[[Championship Pool]]''
 
*''[[Chavez II]]''
 
*''[[Clay Fighter]]''
 
*''[[Cliffhanger]]''
 
*''[[Clue]]''
 
*''[[College Football's National Championship]]''
 
*''[[College Football's National Championship II]]''
 
*''[[College Slam]]''
 
*''[[Comix Zone]]''
 
*''[[Cool Spot]]''
 
*''[[Crystal's Pony Tale]]''
 
  
===D===
+
{{quote|GEMS was the first widely used tool for the [[Genesis]] after the [[Sega Music Development System|above mentioned prototype]] and the SOJ tool which was not provided to us. It would take Midi files and also allow streaming directly from a sequencer to the Genesis audio chip. It was not perfect and there were a number of revisions. Midi data had to be scrubbed down to no more than 6 notes at a time, or it would crash the dev system. But it could also play samples and had the [[Master System]] audio chip supported.|''[[David Javelosa]]''|ref={{intref|Interview: David Javelosa (2023-11-12) by Alexander Rojas}}}}
*''[[David Crane's Amazing Tennis]]''
 
*''[[David Robinson's Supreme Court]]''
 
*''[[Daze Before Christmas]]''
 
*''[[The Death and Return of Superman]]''
 
*''[[Demolition Man]]''
 
*''[[Desert Demolition]]''
 
*''[[Dick Vitale's "Awesome Baby!" College Hoops]]''
 
*''[[Dinosaurs for Hire]]''
 
*''[[A Dinosaur's Tale]]''
 
*''[[Aladdin|Disney's Aladdin]]''
 
*''[[Donald in Maui Mallard]]''
 
*''[[Doom Troopers]]''
 
*''[[Double Dragon V: The Shadow Falls]]''
 
*''[[Dragon: The Bruce Lee Story]]''
 
*''[[Dragon's Revenge]]''
 
*''[[Duke Nukem 3D (Mega Drive)|Duke Nukem 3D]]''
 
*''[[Dune: The Battle for Arrakis]]''
 
*''[[Dungeons & Dragons: Warriors of the Eternal Sun]]''
 
  
===E===
+
While GEMS is a very capable driver in the proper hands, it has also grown to absorb much of the ire modern fans have for the “twangy” sounds of certain Western-produced [[Sega Mega Drive]] games. As the driver was both widely distributed to developers of all quality, and largely used by developers unfamiliar with the hardware, much of the system’s shovelware library shares a distinct (and poorly received) sound, often described as sounding like flatulence. As described by [[David Javelosa]], "GEMS was not an easy tool, so a lot of musicians would quit before finishing a project. It all fell back to staff audio, who by that time we were re-orged into the [[Creative Support]] team."{{intref|Interview: David Javelosa (2023-11-12) by Alexander Rojas}}
*''[[Earthworm Jim]]''
 
*''[[Earthworm Jim 2]]''
 
*''[[Ecco Jr.]]''
 
*''[[ESPN Baseball Tonight]]''
 
*''[[ESPN National Hockey Night]]''
 
*''[[ESPN SpeedWorld]]''
 
*''[[ESPN Sunday Night NFL]]''
 
*''[[Eternal Champions]]''
 
*''[[Evander Holyfield's Real Deal Boxing]]''
 
*''[[Ex-Mutants]]''
 
  
===F===
+
==Usage==
*''[[F1 World Championship Edition]]''
+
By setting aside a shared memory space that allows the driver and game to directly communicate, music can be dynamically adjusted to match gameplay and easily integrated with the game’s programming. For example, pitch or tempo can be automatically adjusted per the amount of onscreen enemies or remaining health.
*''[[Ferias Frustradas do Pica-Pau]]''
 
*''[[Flashback: The Quest for Identity]]''
 
*''[[Frank Thomas Big Hurt Baseball]]''
 
*''[[Fun-n-Games]]''
 
  
===G===
+
While most sound drivers control playback speed with a single and easy-to-manipulate variable, unfortunately, GEMS requires the alteration of the entire track as stored in ROM to achieve the same effect.
*''[[Garfield: Caught in the Act]]''
 
*''[[Gargoyles]]''
 
*''[[Generations Lost]]''
 
*''[[Goofy's Hysterical History Tour]]''
 
*''[[The Great Waldo Search]]''
 
*''[[Greatest Heavyweights]]''
 
*''[[Greendog: The Beached Surfer Dude]]''
 
  
===H===
+
Some developers, such as [[Novotrade]], chose to modify the driver, effectively making their own variants. Individual games such as ''[[Wayne's World]]'' also have their own modified drivers.
*''[[Home Alone]]''
 
*''[[Home Alone 2: Lost in New York]]''
 
  
===I===
+
==Source code==
*''[[The Incredible Crash Dummies (Mega Drive)|The Incredible Crash Dummies]]''
+
On September 24, 2007, the source code to GEMS was found and released by [[sonic:drx|drx]]. This version of the driver appears to be [http://www.hidden-palace.org/?news/c/13 GEMS v2.5].
*''[[Izzy's Quest for the Olympic Rings]]''
 
  
===J===
+
{{Download
*''[[Jammit]]''
+
| title=GEMS (v2.5)
*''[[Jelly Boy]]'' (beta)
+
| file=GEMS.zip
*''[[Jeopardy! (GameTek)|Jeopardy!]]''
+
| filesize=328KB
*''[[Jimmy White's Whirlwind Snooker]]''
+
}}
*''[[Joe Montana II Sports Talk Football]]''
+
*''[[The Jungle Book]]''
+
==Games which use GEMS==
*''[[Jurassic Park (Mega Drive)|Jurassic Park]]''
+
===[[Mega Drive]]===
*''[[Jurassic Park: Rampage Edition]]''
+
{{SoundDriverList|GEMS|MD}}
*''[[Justice League Task Force]]''
 
 
 
===K===
 
*''[[Kawasaki Superbike Challenge]]''
 
*''[[Kid Chameleon]]'' (Chameleon Kid)
 
*''[[Krusty's Fun House|Krusty's Super Fun House]]''
 
 
 
===M===
 
*''[[Madden NFL '96]]''
 
*''[[The Magic School Bus]]''
 
*''[[Marko's Magic Football]]''
 
*''[[Marsupilami]]''
 
*''[[Menacer 6-Game Cartridge]]''
 
*''[[Mick & Mack as the Global Gladiators]]''
 
*''[[Mickey's Ultimate Challenge]]''
 
*''[[Monopoly (Mega Drive)|Monopoly]]''
 
*''[[Mortal Kombat 3]]''
 
*''[[Muhammad Ali Heavyweight Boxing]]''
 
 
 
===N===
 
*''[[NBA Action '94]]''
 
*''[[NBA Action '95 Starring David Robinson]]''
 
*''[[NBA Jam]]''
 
*''[[NBA Jam Tournament Edition]]''
 
*''[[NBA Hang Time]]''
 
*''[[NCAA Football]]''
 
*''[[NCAA Final Four Basketball]]''
 
*''[[NFL '95]]''
 
*''[[NFL Football '94]]''
 
*''[[NFL 98]]''
 
*''[[NFL Quarterback Club]]''
 
*''[[NFL Quarterback Club '96]]''
 
*''[[Nightmare Circus]]''
 
*''[[Normy's Beach Babe-O-Rama]]''
 
 
 
===O===
 
*''[[The Ooze]]''
 
 
 
===P===
 
*''[[The Pagemaster]]''
 
*''[[Paperboy II]]''
 
*''[[Phantom 2040]]''
 
*''[[Pink Goes to Hollywood]]''
 
*''[[Pinocchio]]''
 
*''[[The Pirates of Dark Water]]''
 
*''[[Pirates! Gold]]''
 
*''[[Pocahontas]]''
 
*''[[Power Monger]]''
 
*''[[Premier Manager 97]]''
 
*''[[Prince of Persia]]''
 
*''[[Pro Quarterback]]''
 
*''[[The Punisher]]''
 
 
 
===R===
 
*''[[RBI Baseball '94]]''
 
*''[[The Ren & Stimpy Show Presents Stimpy's Invention]]''
 
*''[[Risk]]''
 
*''[[Robocop vs The Terminator]]''
 
*''[[Roger Clemens' MVP Baseball]]''
 
 
 
===S===
 
*''[[Scooby-Doo Mystery]]''
 
*''[[SeaQuest DSV]]''
 
*''[[Sega Channel]]''
 
*''[[Shadowrun (Mega Drive)|Shadowrun]]''
 
*''[[Shanghai II: Dragon's Eye]]''
 
*''[[Shaq-Fu]]''
 
*''[[The Simpsons: Bart's Nightmare]]''
 
*''[[The Smurfs]]''
 
*''[[Sonic Spinball]]''
 
*''[[Spider-Man: The Animated Series]]''
 
*''[[Spirou]]''
 
*''[[Spot Goes to Hollywood]]''
 
*''[[Star Trek: The Next Generation: Echoes from the Past]]''
 
*''[[Garry Kitchen's Super Battletank: War in the Gulf|Super Battle Tank: War in the Gulf]]''
 
*''[[Super Battleship]]''
 
*''[[Super High Impact]]''
 
*''[[Super Mario World 64]]''
 
*''[[Sylvester and Tweety in Cagey Capers]]''
 
 
 
===T===
 
*''[[Tale Spin]]''
 
*''[[Taz-Mania]]''
 
*''[[Taz in Escape From Mars]]''
 
*''[[TechnoClash]]''
 
*''[[Tecmo Super Baseball]]''
 
*''[[Tecmo Super Hockey]]''
 
*''[[Tecmo Super NBA Basketball]]''
 
*''[[Thomas the Tank Engine & Friends]]''
 
*''[[Tintin in Tibet]]''
 
*''[[TNN Bass Tournament of Champions]]''
 
*''[[TNN Outdoors Bass Tournament '96]]''
 
*''[[ToeJam & Earl in Panic on Funkotron]]''
 
*''[[Toxic Crusaders]]''
 
*''[[Toy Story]]''
 
*''[[Toys]]''
 
*''[[Troy Aikman NFL Football]]''
 
 
 
===U===
 
*''[[Ultimate Mortal Kombat 3]]''
 
 
 
===V===
 
*''[[Vectorman]]''
 
*''[[Vectorman 2]]''
 
*''[[Virtual Bart]]''
 
*''[[Virtual Pinball]]''
 
 
 
===W===
 
*''[[Wacky Worlds]]''
 
*''[[Warlock]]''
 
*''[[Wayne Gretzky and the NHLPA All-Stars]]''
 
 
 
*''[[Wild Snake]]'' (beta)
 
*''[[World Series Baseball (Mega Drive)|World Series Baseball]]''
 
*''[[World Series Baseball '95]]''
 
*''[[World Series Baseball '96]]''
 
*''[[World Series Baseball 98 (Mega Drive)|World Series Baseball 98]]''
 
*''[[WWF RAW]]''
 
*''[[WWF Royal Rumble (Acclaim)|WWF Royal Rumble]]''
 
*''[[WWF Super Wrestlemania]]''
 
*''[[WWF WrestleMania: The Arcade Game]]''
 
  
===X===
+
===[[Sega CD]]===
*''[[X-Men]]''
+
{{SoundDriverList|GEMS|MCD}}
*''[[X-Men 2: Clone Wars]]''
 
*''[[X-Perts]]''
 
 
 
===Y===
 
*''[[Young Indiana Jones: Instruments of Chaos]]''
 
 
 
===Z===
 
*''[[Zero the Kamikaze Squirrel]]''
 
*''[[Zero Tolerance]]''
 
*''[[Zombies Ate My Neighbors]]''
 
}}
 
  
 
===[[32X]]===
 
===[[32X]]===
 
{{SoundDriverList|GEMS|32X}}
 
{{SoundDriverList|GEMS|32X}}
----
 
*''[[Brutal: Above the Claw]]''
 
*''[[Doom (32X)|Doom]]''
 
*''[[Golf Magazine: 36 Great Holes Starring Fred Couples]]''
 
*''[[Motocross Championship]]''
 
*''[[NBA Jam Tournament Edition]]''
 
*''[[NFL Quarterback Club]]''
 
*''[[RBI Baseball '95]]''
 
*''[[WWF RAW]]''
 
*''[[WWF WrestleMania: The Arcade Game]]''
 
  
==Development kit==
+
==Production credits==
On September 24, 2007, [[sonic:drx|drx]] released the official [http://www.hidden-palace.org/?news/c/13 GEMS development kit].
+
{{creditstable|
 +
* '''Created by:''' [[Jonathan Miller]], [[Burt Sloane]], [[Chris Grigg]], [[Mark Miller]]
 +
| source=Developer statements
 +
| console=MD
 +
}}
  
{{Download
+
==External links==
| title=GEMS Development Kit
+
*[https://vgmpf.com/Wiki/index.php?title=Mega_Drive/Genesis_Sound_Driver_List A list of the sound engines used on the Mega Drive]
| file=GEMS.zip
+
*''[https://www.youtube.com/watch?v=WEvnZRCW_qc How to make Sega Genesis music (in 1994)]'' video essay by GST Channel at [https://www.youtube.com YouTube] focusing on GEMS
| filesize=328KB
 
}}
 
  
 
==References==
 
==References==

Latest revision as of 06:02, 28 October 2024

n/a

  • Screenshot (1)
  • Screenshot (2)

GEMS Graphical User Interface.png

GEMS Graphical User Interface (alt).png

GEMS
System(s): Mega Drive, Sega 32X
Developer:

GEMS (Genesis Editor for Music and Sound effects) is a Sega Mega Drive sound driver program developed by Recreational Brainware and Technopop. Commissioned by Sega of America to assist Western developers struggling with the unfamiliar sound hardware, it went on to see use in over 200 released games.

History

G.E.M.S. was definitely the best sound driver/editor that was made available to the general public during the first half of the 90's. I absolutely loved it... Before G.E.M.S., we as composers/sound designers had almost nothing.

Tommy Tallarico[3]


Early Sega Genesis hardware documentation was limited in all areas, but especially in audio capabilities. Unlike Japanese composers, who were more familiar with writing sound drivers and working with FM synthesis, their Western counterparts struggled to produce quality sounds. Seeking to address this, Sega of America reached out to developer Recreational Brainware to produce a solution.

The team consisted of Jonathan Miller creating drivers and firmware, Burt Sloane programming, and Chris Grigg and Mark Miller providing the software’s overall design. The result was GEMS, a 16-bit sound driver with a focus on MIDI interactivity. Sega of America was very pleased with GEMS and went on to distribute it to their various developers and publishers. Western composers and musicians now had a more familiar and reliable method for translating their instruments to the Sega Genesis hardware.


GEMS was the first widely used tool for the Genesis after the above mentioned prototype and the SOJ tool which was not provided to us. It would take Midi files and also allow streaming directly from a sequencer to the Genesis audio chip. It was not perfect and there were a number of revisions. Midi data had to be scrubbed down to no more than 6 notes at a time, or it would crash the dev system. But it could also play samples and had the Master System audio chip supported.

David Javelosa[4]


While GEMS is a very capable driver in the proper hands, it has also grown to absorb much of the ire modern fans have for the “twangy” sounds of certain Western-produced Sega Mega Drive games. As the driver was both widely distributed to developers of all quality, and largely used by developers unfamiliar with the hardware, much of the system’s shovelware library shares a distinct (and poorly received) sound, often described as sounding like flatulence. As described by David Javelosa, "GEMS was not an easy tool, so a lot of musicians would quit before finishing a project. It all fell back to staff audio, who by that time we were re-orged into the Creative Support team."[4]

Usage

By setting aside a shared memory space that allows the driver and game to directly communicate, music can be dynamically adjusted to match gameplay and easily integrated with the game’s programming. For example, pitch or tempo can be automatically adjusted per the amount of onscreen enemies or remaining health.

While most sound drivers control playback speed with a single and easy-to-manipulate variable, unfortunately, GEMS requires the alteration of the entire track as stored in ROM to achieve the same effect.

Some developers, such as Novotrade, chose to modify the driver, effectively making their own variants. Individual games such as Wayne's World also have their own modified drivers.

Source code

On September 24, 2007, the source code to GEMS was found and released by drx. This version of the driver appears to be GEMS v2.5.

Download.svg Download GEMS (v2.5)
File: GEMS.zip (324 kB) (info)

Games which use GEMS

Mega Drive

Sega CD

32X

Production credits

Source:
Developer statements


External links

References