A Sega Model 3 Arcade Emulator
Basic usage information and tips are provided here. For more information, please consult the README.txt bundled with Supermodel. This information applies only to the most recent version.
Emulator functions are fixed and cannot be reconfigured.
Function | Assignment |
Exit | Escape |
Pause | Alt-P |
Reset | Alt-R |
Clear NVRAM | Alt-N |
Crosshairs (for light gun games) | Alt-I |
Toggle 60 FPS Frame Rate Limiting | Alt-T |
Save State | F5 |
Load State | F7 |
Change Save Slot | F6 |
Decrease Music Volume | F9 |
Increase Music Volume | F10 |
Decrease Sound Volume | F11 |
Increase Sound Volume | F12 |
Inputs are reconfigurable. To learn the current configuration, use the -print-inputs option.
supermodel -print-inputs
For an out-of-the-box installation of Supermodel, where inputs have not been changed from their default settings, you will see the output below.
Supermodel: A Sega Model 3 Arcade Emulator (Version 0.2a)
Copyright (C) 2011 by Bart Trzynadlowski and Nik Henson
Input Assignments
-----------------
Common Controls:
P1 Start = KEY_1,JOY1_BUTTON9
P2 Start = KEY_2,JOY2_BUTTON9
P1 Coin = KEY_3,JOY1_BUTTON10
P2 Coin = KEY_4,JOY2_BUTTON10
Service A = KEY_5
Service B = KEY_7
Test A = KEY_6
Test B = KEY_8
4-Way Joysticks:
P1 Joystick Up = KEY_UP,JOY1_UP
P1 Joystick Down = KEY_DOWN,JOY1_DOWN
P1 Joystick Left = KEY_LEFT,JOY1_LEFT
P1 Joystick Right = KEY_RIGHT,JOY1_RIGHT
P2 Joystick Up = JOY2_UP
P2 Joystick Down = JOY2_DOWN
P2 Joystick Left = JOY2_LEFT
P2 Joystick Right = JOY2_RIGHT
Fighting Game Buttons:
P1 Punch = KEY_A,JOY1_BUTTON1
P1 Kick = KEY_S,JOY1_BUTTON2
P1 Guard = KEY_D,JOY1_BUTTON3
P1 Escape = KEY_F,JOY1_BUTTON4
P2 Punch = JOY2_BUTTON1
P2 Kick = JOY2_BUTTON2
P2 Guard = JOY2_BUTTON3
P2 Escape = JOY2_BUTTON4
Spikeout Buttons:
Shift = KEY_A,JOY1_BUTTON1
Beat = KEY_S,JOY1_BUTTON2
Charge = KEY_D,JOY1_BUTTON3
Jump = KEY_F,JOY1_BUTTON4
Virtua Striker Buttons:
P1 Short Pass = KEY_A,JOY1_BUTTON1
P1 Long Pass = KEY_S,JOY1_BUTTON2
P1 Shoot = KEY_D,JOY1_BUTTON3
P2 Short Pass = JOY2_BUTTON1
P2 Long Pass = JOY2_BUTTON2
P2 Shoot = JOY2_BUTTON3
Racing Game Steering Controls:
Steer Left = KEY_LEFT
Steer Right = KEY_RIGHT
Full Steering = JOY1_XAXIS
Accelerator Pedal = KEY_UP,JOY1_UP
Brake Pedal = KEY_DOWN,JOY1_DOWN
Racing Game Gear Shift:
Shift 1/Up = KEY_Q,JOY1_BUTTON5
Shift 2/Down = KEY_W,JOY1_BUTTON6
Shift 3 = KEY_E,JOY1_BUTTON7
Shift 4 = KEY_R,JOY1_BUTTON8
Shift Neutral = KEY_T
Shift Up = NONE
Shift Down = NONE
Racing Game VR View Buttons:
VR1 = KEY_A,JOY1_BUTTON1
VR2 = KEY_S,JOY1_BUTTON2
VR3 = KEY_D,JOY1_BUTTON3
VR4 = KEY_F,JOY1_BUTTON4
Miscellaneous Driving Game Buttons:
View Change = KEY_A,JOY1_BUTTON1
Hand Brake = KEY_S,JOY1_BUTTON2
Virtual On Controls:
Macro Turn Left = KEY_Q,JOY1_RXAXIS_NEG
Macro Turn Right = KEY_W,JOY1_RXAXIS_POS
Macro Forward = KEY_UP,JOY1_YAXIS_NEG
Macro Reverse = KEY_DOWN,JOY1_YAXIS_POS
Macro Strafe Left = KEY_LEFT,JOY1_XAXIS_NEG
Macro Strafe Right = KEY_RIGHT,JOY1_XAXIS_POS
Macro Jump = KEY_E,JOY1_BUTTON1
Macro Crouch = KEY_R,JOY1_BUTTON2
Left Joystick Left = NONE
Right Joystick Left = NONE
Left Joystick Right = NONE
Right Joystick Right = NONE
Left Joystick Up = NONE
Right Joystick Up = NONE
Left Joystick Down = NONE
Right Joystick Down = NONE
Left Shot Trigger = KEY_A,JOY1_BUTTON5
Right Shot Trigger = KEY_S,JOY1_BUTTON6
Left Turbo = KEY_Z,JOY1_BUTTON7
Right Turbo = KEY_X,JOY1_BUTTON8
Analog Joystick:
Analog Left = KEY_LEFT
Analog Right = KEY_RIGHT
Analog Up = KEY_UP
Analog Down = KEY_DOWN
Analog X-Axis = JOY_XAXIS,MOUSE_XAXIS
Analog Y-Axis = JOY_YAXIS,MOUSE_YAXIS
Trigger Button = KEY_A,JOY_BUTTON1,MOUSE_LEFT_BUTTON
Event Button = KEY_S,JOY_BUTTON2,MOUSE_RIGHT_BUTTON
Lightguns:
P1 Gun Left = KEY_LEFT
P1 Gun Right = KEY_RIGHT
P1 Gun Up = KEY_UP
P1 Gun Down = KEY_DOWN
P1 Gun X-Axis = MOUSE_XAXIS,JOY1_XAXIS
P1 Gun Y-Axis = MOUSE_YAXIS,JOY1_YAXIS
P1 Trigger = KEY_A,JOY1_BUTTON1,MOUSE_LEFT_BUTTON
P1 Point Off-screen = KEY_S,JOY1_BUTTON2,MOUSE_RIGHT_BUTTON
P2 Gun Left = NONE
P2 Gun Right = NONE
P2 Gun Up = NONE
P2 Gun Down = NONE
P2 Gun X-Axis = JOY2_XAXIS
P2 Gun Y-Axis = JOY2_YAXIS
P2 Trigger = JOY2_BUTTON1
P2 Point Off-screen = JOY2_BUTTON2
Input System Settings
---------------------
Input System: DirectInput
Keyboards:
System Keyboard
Mice:
System Mouse
Joysticks:
None
Common Keyboard Settings:
Sensitivity = 25 %
Decay Speed = 50 %
Common Mouse Settings:
X-Axis Dead Zone = 0 %
Y-Axis Dead Zone = 0 %
Z-Axis Dead Zone = 0 %
Error: No ROM set specified.
To reconfigure inputs, use the -config-inputs command line option. This will open up a blank window while printing instructions to the command prompt window. Make sure that the blank Supermodel window is selected while following the prompts, otherwise your key strokes and inputs will not be captured. Supermodel has full support for joysticks, gamepads, and wheels.
To support manual transmissions in racing games, two methods for shifting gears are provided: individual gear selection (the default behavior) and sequential shifting. Individual gear selection simply maps each of the gears (1 through 4, or just Up and Down, depending on the game) to separate buttons. Shifting to a different gear is performed by pressing its button. Selecting the current gear while it is already engaged will shift to the neutral position; that is, no gear engaged. Games start out in neutral gear, so you will need to shift at the beginning of a race.
Sequential shifting shifts the gear up or down by one automatically. The special Shift Up and Shift Down inputs accomplish these functions but are not mapped to anything by default. Use -config-inputs to set them.
Virtual On Oratorio Tangram uses a unique twin joystick configuration. To emulate this, two sets of inputs are provided: normal and macro. The normal inputs map each individual joystick. By default, Supermodel assigns them to two analog joysticks. For users of PlayStation-style dual stick controllers, this is the most convenient, and the most natural overall, configuration.
If you do not have two analog joysticks, macro inputs are provided to replicate the essential movements that are possible with the twin joystick, tank-style controls. Turning, strafing, forward and backwards motion, jumping, and crouching can all be mapped individually. By default, they are not mapped to anything. Use -config-inputs to set them.
The video mode cannot be changed during run-time. Specify resolution on the command line using the -res parameter and use -fullscreen to enter full screen mode. Unfortunately, because Supermodel is still in an alpha state of development, it lacks a user interface and error or status messages will not be visible in full screen mode. All messages are printed to the command prompt. The default mode is a window at the Model 3's native 496x384 resolution. To run at 1024x768 in full screen, type:
supermodel scud.zip -res=1024,768 -fullscreen
Video settings can also be defined in the configuration file.
The most important audio settings are the music and sound volume levels. All Model 3 games have a sound board and some have an additional MPEG music board. Because the relative signal levels of the audio outputs are not known, Supermodel mixes both at full volume. This is incorrect for some games. In Scud Race and Daytona USA 2, for example, the sound effects will overpower the music. The opposite is true for Star Wars Trilogy.
The -sound-volume and -music-volume options can be used to adjust the volume levels. They take a percentage value between 0 (mute) and 200. Scud Race, for example, sounds much better with a sound volume setting of 50% and music volume at 200%.
supermodel scud.zip -sound-volume=50 -music-volume=200
Sound and music volume can be adjusted during run-time using the F9-F12 keys. Volume settings can be specified in the configuration file as well, globally for all games or tailored on a game-by-game basis.
If the overall volume is too high, the audio will clip, which can introduce distortion or other artifacts (such as a crackling noise).
Save states are fully supported. Up to 10 different slots can be selected with F6. To save and restore states, press F5 and F7. State files are saved in the Saves folder, which must exist in order for save operations to succeed. Non-volatile memory (NVRAM) consists of battery-backed backup RAM (typically used for high score data) and an EEPROM (machine settings). It is saved to the NVRAM folder each time Supermodel exits and is re-loaded at start-up.
Save states will also save and overwrite NVRAM data. If you alter any machine settings, loading an earlier state will return them to their former configuration.