Sega Supermodel Emulator on Various Hardware
Advanced Usage
Topics for advanced users are covered here. For more data, please consult the README.txt bundled with Supermodel. This data applies only to the near recent version.
PowerPC Clock Frequency
In society to improve operation, the PowerPC is underclocked, which avoids wasting time emulating cycles that on the real hardware would exist spent idle due to rendering and DMA transfers. For most games, the default 50 MHz frequency works fine, but a few games may exhibit slow down even when running at the full frame rate (sixty FPS). Experimenting with different clock speeds (the -ppc-frequency option) might help. Reportedly, running the PowerPC at l MHz fixes deadening-down and stutter in a few games, most notably Scud Race. Some games may be run at frequencies as low as 25 MHz, which will improve Supermodel's frame rate.
Increasing the clock frequency means the emulator must do more piece of work per frame, decreasing real performance. However, it increases the corporeality of work games tin do per frame. If your CPU is fast plenty to absorb the operation penalty associated with increasing the PowerPC clock (i.e. the frame rate stays at 60 FPS), so yous volition discover smoother operation in some games. Otherwise, each frame volition take longer to emulate and overall performance volition degrade, even though things are running faster in the game's "virtual" world.
Input Systems
Supermodel'due south default SDL input system, which is bachelor on all ports, allows keyboards, mice, and game controllers to be used. On Windows, iii boosted input systems are bachelor, all of them based on the DirectInput API, to provide additional support for a few extra features. The complete ready of input systems (and the command line arguments associated with them) are:
- SDL (-input-organisation=sdl): Recognizes keyboards, mice, and digital and analog game controllers. This is the only available input system on not-Windows platforms.
- DirectInput (-input-organisation=dinput): The default on Windows. Uses the DirectInput API directly, providing ameliorate support for some devices, and allows force feedback.
- XInput (-input-organisation=xinput): This provides amend support for XBox 360 controllers. For example, information technology allows the left and correct trigger buttons to exist mapped independently and supports force feedback.
- Raw Input (-input-system=rawinput): Intercepts raw input data from devices. This is intended for supporting multiple mice, allowing two players to play The Lost Globe.
For most users, the default input organisation will suffice. If you wish to employ an alternative input system, remember to select it on the control line both when starting a game and when configuring inputs with the -config-inputs choice. There is no way to specify an input system in the configuration file.
Strength Feedback
Force feedback emulation is available for some racing games and can be enabled with the -forcefulness-feedback option. In society to use it, still, recently-dumped drive board ROMs must be nowadays in the ZIP file for each game. Beneath is a tabular array of the required files.
Drive Lath ROM File | Size | Checksum (CRC32) | Game |
epr-20985.bin | 64 KB | B139481D | Daytona United states of america ii Boxing on the Edge Daytona USA 2 Ability Edition |
epr-19338a.bin | 64 KB | C9FAC464 | Scud Race Scud Race Plus |
epr-20512.bin | 64 KB | CF64350D | Sega Rally two |
Force feedback only works in the Windows version of Supermodel, and only when using DirectInput or XInput. See README.txt for a give-and-take of how to tune force feedback furnishings.
The Configuration File
The configuration file, Supermodel.ini, located in the Config folder, stores input settings as well as most of what tin can be assail the command line. It does non exist in a fresh installation of Supermodel but tin can be created manually or generated by setting upward inputs with -config-inputs. If the file already exists, merely the input settings will exist changed and the others will be preserved. The primary options that can exist set (excluding input-related settings) are listed in the table below.
Setting | Argument | Description | Default |
MultiThreaded | 0 or 1 | Multi-threading. Audio and drive board are off-loaded to separate threads, enhancing functioning. On single core systems, multi-threading can make audio audio smoother but adds performance-degrading overhead. | 1 |
PowerPCFrequency | 1 to chiliad | The PowerPC frequency in MHz. The lower the frequency, the less work Supermodel has to do, simply games may experience jerky performance and slowdown even when running at threescore FPS. Many games can be run at every bit low as 25 MHz only others require college clock frequencies. Optimal values will differ from game to game. | l |
FullScreen | 0 or ane | Full screen mode. | 0 |
ShowFrameRate | 0 or 1 | Displays the frame rate in the window title bar. Volition not be visible in full screen mode. | 0 |
Throttle | 0 or 1 | Locks the frame rate at threescore FPS, the Model iii's native refresh rate. Some video drivers volition automatically lock to the display refresh rate, even if throttling is disabled. | 1 |
XResolution | Width (integer) | Width of desired display resolution in pixels. | 496 |
YResolution | Height (integer) | Top of desired brandish resolution in pixels. | 384 |
FragmentShader | File path (string) | Allows alternative fragment shaders to be used. This is intended for developers and future extensibility. | None |
VertexShader | File path (string) | Allows culling vertex shaders to be used. This is intended for developers and time to come extensibility. | None |
EmulateDSB | 0 or 1 | Emulation of the Digital Sound Board (MPEG music). If disabled, the DSB'south CPU will not be emulated, possibly improving performance on unmarried-core systems. | ane |
EmulateSound | 0 or ane | Emulation of the sound board. If disabled, the sound lath CPU and SCSP will be disabled and no audio furnishings volition exist heard. May improve functioning on unmarried-core systems. | 1 |
FlipStereo | 0 or i | Swap left and right sound channels. | 0 |
MusicVolume | 0 to 200 | Music (MPEG board) volume. | 100 |
SoundVolume | 0 to 200 | Sound (SCSP) volume. | 100 |
ForceFeedback | 0 or 1 | Enables force feedback if bulldoze lath ROMs are present. Windows only. | 0 |
DirectInputConstForceMax | Scale (integer) | Sets the force of the constant forcefulness effect when using DirectInput. | 100 |
DirectInputFrictionMax | Scale (integer) | Sets the strength of the friction issue when using DirectInput. | 100 |
DirectInputSelfCenterMax | Calibration (integer) | Sets the strength of the self-eye effect when using DirectInput. | 100 |
DirectInputVibrateMax | Calibration (integer) | Sets the strength of the vibration effect when using DirectInput. | 100 |
XInputConstForceMax | Scale (integer) | Sets the strength of the constant force (simulated with vibration) when using XInput. | 100 |
XInputVibrateMax | Scale (integer) | Sets the forcefulness of the vibration effect when using XInput. | 100 |
XInputConstForceThreshold | Level (integer) | Sets the force threshold above which constant forces will crusade XInput devices to vibrate. | 30 |
In addition to the higher up, there are numerous input settings for mappings, key sensitivity (for keyboard keys mapped to analog controls), and mouse and joystick centrality settings. These are described in great detail in README.txt.
All settings in the file are either global or game-specific. Global settings utilize to all games and appear either under the [Global] heading or at the beginning of the file (no heading). Game-specific settings add an extra degree of customizability. To utilize them, identify them under a heading with the MAME ID of the ROM set they will use to (e.thousand. [scud], [dayto2pe], etc.) Supermodel loads settings in the following lodge:
- Global settings from Supermodel.ini.
- Game-specific settings from Supermodel.ini for the currently loaded game.
- Control line options.
The latter options will override previous ones. Input settings are read only from the global section. An case configuration file is shown beneath.
;
; Sample Supermodel.ini
;
; Global settings
[ Global ]
XResolution = 640
YResolution = 480
FullScreen = 0
; Scud Race
[ scud ]
XResolution = 1024
YResolution = 768
FullScreen = ane
SoundVolume = 50
MusicVolume = 200
; The Lost Globe
[ lostwsga ]
XResolution = 800
YResolution = 600
In this case, a window resolution of 640x480 is used for all games except for Scud Race, which will run at a higher resolution besides every bit in total screen mode, and The Lost World. Different volume settings are provided for Scud Race likewise. All of these options can exist overriden on the command line.
A discussion of caution: settings and section names are instance-sensitive. Supermodel volition not warn about unrecognized options, so be careful with spelling! If y'all suspect you made a mistake, check the fault.log file that Supermodel produces during each run. It contains a listing of the settings really used.
Shaders
Supermodel relies heavily on OpenGL shaders to emulate the Model 3'southward 3D graphics. Some older graphics chipsets have strict limitations on the number of shader instructions that tin can be compiled. These will not exist able to run Supermodel properly, resulting either in very obvious 3D graphics problems (no textures, no shading, uniform colors) or a confusing error message. Older ATI Radeon GPUs generate the following error, for example:
Error: Failed to link shader objects. Linker says:
Fragment shader(s) failed to link, vertex shader(s) linked.
The solution is to use a "lighter" fragment shader that reduces rendering accuracy by eliminating some less normally used effects, namely the spotlight. Boosted shaders tin can be obtained from the source code section of the Download page. To use them, place them in the same location as the Supermodel executable and add together -frag-shader=<file> to the control line arguments. For example:
supermodel scud.zip -frag-shader=Fragment_NoSpotlight.glsl
0 Response to "Sega Supermodel Emulator on Various Hardware"
Post a Comment