Genesis Plus Gx Windows

0 views
Skip to first unread message

Nhyiraba Valentin

unread,
Aug 5, 2024, 3:47:58 AM8/5/24
to liopatcasa
GenesisPlus GX is an open-source Sega 8/16 bit emulator developed by Eke-Eke which focuses on accuracy and portability. The source code, originally based on Genesis Plus 1.3 by Charles MacDonald, has been heavily modified & enhanced, with respect to initial goals and design, in order to improve the accuracy of emulation, implementing new features and adding support for extra peripherals, cartridge & systems hardware such as various lightguns, the FM Sound Unit and Lock-On cartridge technology.

Genesis Plus GX has 100% compatibility with Genesis / Mega Drive, Sega/Mega CD, Master System, Game Gear, SG-1000 & Pico released software (including all unlicensed or pirate known dumps), also emulating backwards compatibility modes when available.


BIOS files that are labeled (bootrom) and (lock-on) must have their corresponding core option ('System bootrom' core option or 'Cartridge lock-on' core option) configured correctly in order for them to be loaded.


When loading ISO + WAV or ISO + OGG format games, the core will attempt to load a cue named the same as the iso first. If one is not found, the following audio track naming formats are accepted for a data track of "game.iso":


Comparable to how MSU-1 modifcations can enhance SNES games; Mega Drive Plus / Genesis Plus (MD+) and MSU-MD (Mega SD flash cartridge) patches can be used to add CD quality level of audio to certain Sega Genesis and Mega Drive games via the emulated Sega CD hardware and its CDDA track functionality.


Regarding Genesis Plus GX's implementation of MD+ mode operation, all CD overlay commands (incl. cue loop commands) described in MegaSD dev manual (see referenced PDF at the end of this section) are supported except the ones that deal with opening/reading files from SD card (starting from command 1Ch) but afaik no MD+ hacks use these commands so far.


Since there is no way to auto-detect a MD+ patched ROM, MegaSD add-on emulation needs to be enabled in core options (through the newly added "CD add-on" core option). However, when "CD add-on" core option is set to Auto, if a cue file with same basename as loaded ROM file is found in same directory AND that cue file contains MegaSD specific keywords ("REM LOOP xxx", "REM NOLOOP",...), MegaSD CD overlay emulation will be automatically enabled (instead of full Sega/Mega CD hardware emulation).


And by setting the "CD add-on" option to "None", Sega/Mega CD hardware emulation will be forced disabled, even if a cue file is found in loaded game directory or when the loaded game is known to have Sega/Mega CD support (like Pier Solar, Flux or Wonder Library). This emulates the behavior where there is no Sega/Mega CD unit attached.


Although no known games are using them, MegaSD extended SSF2 mapper and limited ROM write mapper (automatically enabled when respectively "SEGA SSF2" and "SEGA MEGASD" are found in loaded ROM header) are also emulated, according to the description in MegaSD dev manual. Note that MegaSD overlay will also automatically be enabled when these mappers are detected, no matter of the "CD Add-on" core option.


The Genesis Plus GX core has the following options that can be tweaked from your frontend's core options menu or manually changed via core configuration files. Options are listed below in the following format:


To manually change an option, search for that option's key in the core configuration file you want to edit and set it to your desired setting value, enclosed in quotations. For example, if you had set the CD-DA Volume to 50% and wanted to revert it to 100%, you would change genesis_plus_gx_cdda_volume = "50" to genesis_plus_gx_cdda_volume = "100". Manually editing core configuration files is typically unnecessary unless your frontend does not have a method for toggling options.


Use official BIOS/bootloader for emulated hardware, if present in RetroArch's system directory. Displays console-specific start-up sequence/animation, then runs loaded content. Look above at the BIOS section for supported BIOS types/files.


When running Sega CD content, specifies whether to share a single save file between all games from a specific region (Per-BIOS) or to create a separate save file for each game (Per-Game). Note that the Sega CD has limited internal storage, sufficient only for a handful of titles. To avoid running out of space, the 'Per-Game' setting is recommended.


Lock-On Technology is a Mega Drive/Genesis feature that allowed an older game to connect to the pass-through port of a special cartridge for extended or altered gameplay. This option specifies which type of special 'lock-on' cartridge to emulate. Look above at the BIOS section for supported BIOS types/files.


Interlaced Mode 2 allows the Mega Drive/Genesis to output a double height (high resolution) 320x448 image by drawing alternate scanlines each frame (this is used by 'Sonic the Hedgehog 2' and 'Combat Cars' multiplayer modes). 'Single Field' mimics original hardware, producing each field (320x224) alternatively with flickering/interlacing artefacts. 'Double Field' simulates the interlaced display, which stabilises the image but causes mild blurring.


Skip frames to avoid audio buffer under-run (crackling). Improves performance at the expense of visual smoothness. 'Auto' skips frames when advised by the frontend. 'Manual' utilises the 'Frameskip Threshold (%)' setting.


Select method used to emulate the FM Sound Unit of the Sega Mark III/Master System. 'MAME' option is fast, and runs full speed on most systems. 'Nuked' option is cycle accurate, very high quality, and has substantial CPU requirements.


Select method used to emulate the FM synthesizer (main sound generator) of the Mega Drive/Genesis. 'MAME' options are fast, and run full speed on most systems. 'Nuked' options are cycle accurate, very high quality, and have substantial CPU requirements. The 'YM2612' chip is used by the original Model 1 Mega Drive/Genesis. The 'YM3438' is used in later Mega Drive/Genesis revisions.


Specify the cut-off frequency of the low-pass audio filter. A higher value increases the perceived 'strength' of the filter, since a wider range of the high frequency spectrum is attenuated. This core option requires the 'Audio Filter' core option to be set to 'Low-Pass".


Allows each individual cell to be scrolled vertically, instead of 16px 2-cell, by averaging out with the vscroll value of the neighbouring cell. This hack only applies to few games that use 2-cell vertical scroll mode.


Only is usable when the 'Enhanced per-tile vertical scroll' core option is enabled. Adjusts the limit of the vertical scroll enhancement. When the vscroll difference between neighbouring tiles is bigger than this limit, the enhancement is disabled.


Emulate system lock-ups that occur on real hardware when performing illegal address access. This should only be disabled when playing certain demos, homebrew and ROM hacks that rely on illegal behavior for correct operation.


The Mega Drive/Genesis main CPU (Motorola 68000) generates an Address Error exception (crash) when attempting to perform unaligned memory access. Enabling this will simulate this behavior. It should only be disabled when playing ROM hacks, since these are typically developed using less accurate emulators and may rely on invalid RAM access for correct operation.


Simulate original CD hardware latency when initiating a read or seeking to a specific location on loaded disc. This is required by a few CD games that crash if CD data is available too soon and also fixes CD audio desync issues in some games. Disabling this can be useful with MD+ or MSU-MD games as it makes CD audio tracks loops more seamless.


Retroarch is a commandline program, so it will work via the many "emulator" frontends, such as Mala or Hyperspin. However, the RGUI "frontend" system works better in the Android OS than for Windows and Linux, which have alternative frontend software. The RGUI is designed as a minimal, cross-platform frontend, but it is somewhat recent and a work-in-progress. The use of frontends depend more on which emulators are run, the operating system, and how much you'd like to fiddle with settings.


I actually find I have worse input lag in RetroArch than in standalone emulators. Really the only reasons I use it at this point are for the video filters, the Genesis Plus GX emulation core which doesn't have a recent standalone Windows version, and the fact that it works as a semi-usable frontend for Mednafen.


I use RetroArch for pretty much everything, as it has some of the best and most high-quality cores ported for use with it, has the best audio/video sync I've ever seen, and its shader support is the best, period. It also works amazingly well with a CRT monitor.


For example, Sega CD Snatcher uses a 256 horizontal resolution, but the Sega CD bios uses 320. If I set a proper horizontal resolution for 256, it looks fine. However, then the Sega CD bios has distorted text and Sonic looks crooked while the game loads. The Sega CD bios should be missing 64 pixels horizontally since 320 pixels overscans 256, but it's not; it's clearly stretching (crushing) to 256 pixels. I'm not sure if 256 horizontal pixels are used through the entire Snatcher game, but if not then this is a problem. Same problem happens the other way around (Snatcher gets distorted with 320 horizontal pixels)


EDIT:

Genplus-gx is a true blessing. This is the best Sega CD emulator bar-none! I think the author is EkeEke... Don't know the actual author, but whoever it is, I wouldn't mind giving him $1000.00 if I had it to blow-away ? . Really hope it gets integrated into Mednafen (don't really want to screw around myself hehe), or Mess, or independently with proper resolution support.


Kega Fusion is one of my favorites, but the Sega CD is so so. Its SegaCD emulation still has broken sync after all these years (Heart of the Alien tracks are always out of sync; doesn't matter if you make clonecd, bin-cue, or use real disc). Kega-fusion does have 32X emulation which does make it one of the best IMO. Genplus-gx Sega CD has no problems amazingly, but no 32X IIRC. Gens/gs still has to be ported to 64-bit assembly, but it's very similar to Kega Fusion; and it's open source so that is great.

3a8082e126
Reply all
Reply to author
Forward
0 new messages