Genesis Plus

From WiiBrew
Jump to navigation Jump to search
Genesis Plus GX
Genplus console.png
General
Author(s)EkeEke
TypeConsole emulator
Version1.7.5 RC1
Links
Download
Website
Source
Downloadable via the Homebrew Browser
Downloadable via the Open Shop Channel
Peripherals
Wiimote4.svg WiimoteHorizontal.svg SensorBar.svg Nunchuck alternative.svg ClassicController.svg USB Mouse GameCube Controller DVD Loads files from SDHC cards in the Front SD slot USB mass storage device GameCube Memory Card

Genesis Plus GX is a Sega / Mega CD, Genesis / Megadrive, Master System, Game Gear and SG-1000 emulator. This is a port of Charles MacDonald's Genesis Plus to the Wii, with a lot of improvements.

Information

See included README.pdf

Installation

SD Card

The SD card should be formatted to FAT (FAT16 or FAT32). If not found, the emulator automatically creates a directory named “/genplus” at the root of your SD card, as well as subdirectories required by the emulator to store miscellaneous files (cheat, save & screenshot files).

By default, the emulator will look for files in the sd:/genplus/roms directory but you can place them anywhere you want, the menu keeping trace of the last accessed directory for each device.

USB Drive

The USB drive should have at least one partition formatted to FAT (FAT16 or FAT32), other file systems (NTFS, EXT2, etc) are not supported. If no SD card is inserted when the emulator starts, it automatically creates a directory named “/genplus” at the root of your USB drive partition, as well as subdirectories required by the emulator to store miscellaneous files (cheat, save & screenshot files).

By default, the emulator will look for files in the usb:/genplus/roms directory but you can place them anywhere you want, the menu keeping trace of the last accessed directory for each device and for each file types.

To use an USB2 drive, you must have IOS58 installed (it should be automatically installed with System Menu 4.3 update). You should also load the emulator through the Homebrew Channel, using the provided meta.xml file and make sure Homebrew Channel is using IOS58 as default IOS. If not, you might need to reinstall Homebrew Channel after having installed IOS58.

DVD

The DVD should be formatted using ISO9660/Joliet (refer to the user manual of your DVD Burning software for more details).

By default, the emulator will look for files at the root of your DVD but you can place them anywhere you want, the menu keeping trace of the last accessed directory for each device and for each file types.

To use DVD on a non-chipped Wii, you should load the emulator through the Homebrew Channel and use the provided meta.xml file, in order to allow full access to the DVD drive.


Mega CD emulation

1) Original BIOS ROM files are required (one for each region): unzip & rename them to bios_CD_U.bin, bios_CD_E.bin, bios_CD_J.bin in /genplus/bios/ directory

2) When using ISO image files, WAV or OGG files should be provided as AUDIO track files. You can either load a CUE file pointing to a specific ISO file and containing all the needed information about AUDIO tracks files or directly load the ISO file. In the latter case, the emulator will first look for a .CUE file with the same base name, then if no CUE file is found, it will automatically look for .WAV or .OGG files respecting one of the following naming format (“XXX” being the .ISO filename, NN being the track number and “yyy” being either .wav or .ogg extension): “XXXNN.yyy”, “XXX NN.yyy”, “XXX-NN.yyy”, “XXX - NN.yyy” or “XXX_NN.yyy”. Please note that other compressed audio files (such as .mp3, .mpc, .wma, etc) are NOT supported and audio tracks should be using 16-bit stereo 44100Hz format.

3) When using BIN images files, audio tracks are generally stored within the image file. A CUE file is therefore required with all the needed information about audio tracks location. You can either load the CUE file pointing to the specific BIN file or directly load the .BIN file. In the latter case, the emulator will automatically look for a CUE file with the same base name as the BIN file.

Controls

Menu Controls

GameCube Controller WiimoteHorizontal.svg WiimoteHorizontal.svg+Nunchuck alternative.svg ClassicController.svg Action
GameCube Control Stick or Gamecube D-Pad Up / Gamecube D-Pad Down Wiimote D-Pad Up / Wiimote D-Pad Down Wiimote D-Pad Up / Wiimote D-Pad Down or Nunchuck Control Stick Classic D-Pad Up / Classic D-Pad Down or Classic Left Control Stick Move
Gamecube B Button Wiimote B Button or Wiimote 1 Button Wiimote B Button or Wiimote 1 Button Classic b Button Previous menu
Gamecube A Button Wiimote A Button or Wiimote 2 Button Wiimote A Button or Wiimote 2 Button Classic a Button Select

File selector menu

GameCube Controller WiimoteHorizontal.svg WiimoteHorizontal.svg+Nunchuck alternative.svg ClassicController.svg Action
Gamecube D-Pad Left / Gamecube D-Pad Right or GameCube Control Stick Wiimote D-Pad Left / Wiimote D-Pad Right Wiimote D-Pad Left / Wiimote D-Pad Right or Nunchuck Control Stick Classic D-Pad Left / Classic D-Pad Right or Classic Left Control Stick Display the selected entry's full filename
Gamecube D-Pad Up / Gamecube D-Pad Down or GameCube Control Stick Wiimote D-Pad Up / Wiimote D-Pad Down Wiimote D-Pad Up / Wiimote D-Pad Down or Nunchuck Control Stick Classic D-Pad Up / Classic D-Pad Down or Classic Left Control Stick Select previous/next file
GameCube L Trigger / GameCube R Trigger Wiimote - Button / Wiimote + Button Wiimote - Button / Wiimote + Button Classic L Trigger / Classic R Trigger Down/Up one full page
GameCube Z Button Wiimote HOME Button Wiimote HOME Button Classic HOME Button Quit the file selection menu
Gamecube B Button Wiimote B Button or Wiimote 1 Button Wiimote B Button or Wiimote 1 Button Classic b Button Up one directory
Gamecube A Button Wiimote A Button or Wiimote 2 Button Wiimote A Button or Wiimote 2 Button Classic a Button Load the selected file or enter selected directory

Game Controls (default)

The control can be changed in "Emulator Options/Controls Options" menu except directional buttons & Menu key.

You can do a soft reset by pressing the Wii RESET Button.

To play game with Menacer or Justifiers lightgun you have to configure a controller in Port A and Port B for lightgun (2 supported). Wiimote A Button to shoot and Wii Remote Aim to aim.

GameCube Controller WiimoteHorizontal.svg Wiimote.svg+Nunchuck alternative.svg ClassicController.svg Action
GameCube Control Stick or GameCube D-Pad Wiimote D-Pad Wiimote D-Pad or Nunchuck Control Stick Classic D-Pad or Classic Left Control Stick Genesis Dpad
GameCube START Button Wiimote + Button Wiimote + Button Classic + Button START
Gamecube B Button Wiimote A Button Wiimote A Button Classic y Button A
Gamecube A Button Wiimote 1 Button Wiimote B Button Classic b Button B
Gamecube X Button Wiimote 2 Button Nunchuck Z Button Classic a Button C
GameCube L Trigger Classic L Trigger X
Gamecube Y Button Classic x Button Y
GameCube R Trigger Classic R Trigger Z
GameCube Z Button Wiimote - Button Wiimote - Button Classic - Button Mode
GameCube Z Button+Gamecube D-Pad Down or Gamecube D-Pad Up or Gamecube D-Pad Left or Gamecube D-Pad Right Wiimote HOME Button Wiimote HOME Button Classic HOME Button Emulator Menu

Media

v1.4.0




Change Log

Please see included HISTORY.txt for full changelog


Genesis Plus GX 1.7.5 (xx/xx/xxxx) (Eke-Eke)


[Core/General]


  • added optional dynamic allocation of cartridge/CD hardware buffer (for platforms with BSS size limitation)
  • improved frame emulation timing, now starts with vertical blanking to reduce input lag by one more frame
 (!!!warning: this breaks compatibility with previous savestates!!!)
  • various code cleanup

[Core/CD]


  • added CD-AUDIO & CD+G support
  • added optional support for external VORBIS library
  • improved CDC emulation (fixes random freezes during Jeopardy & ESPN Sunday Night NFL intro)
  • improved emulation of mirrored memory areas
  • improved savestate format
  • improved Sub-CPU synchronization with Main-CPU (fixes "Soul Star")
  • improved Main-CPU & Sub-CPU idle loop detection (fixes "Super League CD")
  • disabled 68k and Z80 access to PRG-RAM when SUB-CPU is running (fixes USA version of Dungeon Explorer )
  • disabled CD hardware reset on Soft-Reset (verified on real hardware)
  • fixed DATA track minimal length (fixes BIOS refusing to boot small homebrew demos)
  • fixed CDD "no disc" status code (fixes boot sequence loading time when no disc is loaded)
  • fixed OGG file seeking when using with CUE file
  • fixed PRG-RAM access from MAIN-CPU side on system reset
  • fixed state loading bug when SUB-CPU interrupt is pending
  • fixed incorrect masking of Level 3 (GFX) interrupts (spurious freeze during Japanese BIOS intro)
  • fixed H-INT vector handling when using Mode 1
  • fixed access to "write-only" communication flags (verified on real hardware by Notaz)
  • fixed pending level 1 interrupts when GFX interrupt is disabled (fixes random freezes out of "Batman Returns" option menu)
  • fixed CDD seek command again (Final Fight CD freeze with model 2 BIOS)
  • optimized Sub-CPU / Main-CPU synchronization

[Core/MD]


  • added support for some new unlicensed games with copy protection (Thunderbolt II, Tom Clown, Chaoji Puke / Super Poker)
  • added support for Everdrive extended SSF mapper
  • improved console region auto-detection for a few PAL-only games (The Smurfs Travel the World & Williams Arcade's Greatest Hits)
  • fixed Game Genie / Pro Action Replay lock-on support when Mega CD hardware is enabled
  • fixed SRAM support in Triple Play 96 & Triple Play - Gold Edition
  • fixed automatic CD loading with .md ROM files
  • fixed ROM padding for Sonic & Knuckles
  • fixed SRAM detection for games where it is mapped to work RAM ("Feng Kuang Tao Hua Yuan" crash)
  • fixed 1.7.4 regression with games using SRAM bank-switching

[Core/MS]


  • added support for new SMS Power dump Jang Pung II (KR)
  • added support for Hi-Com X-in-1 mapper (thanks to Bock from SMS Power)
  • improved console hardware auto-detection
  • improved emulation accuracy of SG-1000 & Mark-III hardware
  • improved emulation accuracy of Japanese Master System I/O chip (315-5297)
  • fixed Boot ROM loading when switching system hardware

[Core/GG]


  • added optional LCD ghosting software filter
  • fixed mirrored access to I/O control register (G-LOC Air Battle)

[Core/SG]


  • added support for SG-1000 II clone hardware (2KB RAM + integrated VDP/PSG chip 315-5066)
  • fixed SG-1000 internal RAM size (1KB instead of 2KB)
  • restored SG-1000 Pause button support

[Core/CPU]


  • fixed Z80 SP register initialization on power-on for Master System & Game Gear
(Ace of Aces, Shadow Dancer, Ecco the Dolphin, Evander Holyfield Real Deal Boxing)

[Core/IO]


  • added Sega Graphic Board support (thanks to SMS Power)
  • added Master Tap emulation (multi-player support in Boom homebrew)
  • added gamepad type auto-detection
  • added support for XE-1AP analog controller on both ports
  • improved HVC latch behavior for gun emulation (fixes "Gunfight - 3 in 1" randomization when using Justifier)
  • fixed TeamPlayer emulation (fixes multitap detection in Gauntlet 4)

[Core/VDP]


  • implemented proper FIFO ring-buffer & unused bits behavior on CRAM/VSRAM reads (verified on real hardware by Nemesis)
  • improved accuracy of DMA Copy/Fill & added support for CRAM/VSRAM Fill (verified on real hardware by Nemesis)
  • improved V28/V30 mode switching during active display (verified on real hardware)
  • improved Mode 5 sprites parsing accuracy (verified on real hardware)
  • improved Mode 5 sprites rendering timings (fixes "Overdrive" demo)
  • improved FIFO timings accuracy (fixes "Overdrive" Demo)
  • improved H-Counter accuracy in H32 mode
  • improved accuracy of Master System color palette brightness range (verified against real hardware)
  • fixed misaligned buffer writes in Mode 4 when -DALIGN_LONG option is used
  • fixed alpha channel for 15-bit (RGB555) and 32-bit (RGB888) color support
  • fixed register #10 state on VDP¨reset (fixes GG Terminator 2: Judgment Day)
  • fixed Mode 1 rendering (TMS99xx "text" mode)
  • fixed Game Gear display rendering regression when left/right borders were disabled
  • fixed 68k cycles delay on invalid VRAM writes (fixes "Microcosm" intro loop)
  • optimized tile caching

[Gamecube/Wii]


  • added configurable BIOS & Lock-on ROM files
  • added configurable NTSC filter
  • added configurable FPS display & toggleable fast-forward key combo
 (HOME + MINUS with Wii controllers or R TRIGGER + START with Gamecube controller)
  • added 50hz progressive mode (576p) support for emulation
  • reduced SRAM files size
  • improved A/V Sync: when VSYNC is enabled, audio resampler output rate is now adjusted (+/-0,1 %)
 to always keep audio & video synchronized and input lag is reduced by one frame.
  • improved GX video rendering (fixes screen tearing when VSYNC is disabled)
  • improved ROM browser scrolling speed and added support for Classic Controller +/- buttons for page scrolling
  • improved Cheats Menu
  • fixed bug with PICO pointer
  • fixed lightgun crosshair & CD leds positionning when using NTSC filter
  • fixed low-pass filter menu setting
  • various code cleanup & optimizations

[Gamecube]


  • improved progressive mode switch request on startup when component cable is detected
  • disabled simultaneous multiple .ogg files opening (fixes crashes caused to RAM size limitation)
  • fixed broken DVD support

[Wii]


  • added support for Wii U Pro Controller
  • added Wiimote pointer calibration in Menu settings
  • added configurable Wiimote timeout
  • added game auto-load support through DOL args (compatible with "Wiiflow" plugin arguments)
  • fixed support for 3rd-party classic controllers with invalid calibration settings

[GCW0]


  • added GCW Zero port by Shin-NiL & David Knight (based on SDL port)

[libretro]


  • added optional bootrom support for Master System, Game Gear & Mega Drive / Genesis
  • added support for all emulated devices (except Activator)
  • added support for in-game resolution changes through RETRO_ENVIRONMENT_SET_SYSTEM_AV_INFO
  • added support for .mdx ROM files
  • added missing core settings (system hardware, region, lock-on, multitap, master system FM,...)
  • fixed incorrect SRAM file saving
  • fixed framebuffer size for PAL interlaced mode
  • fixed viewport width when NTSC Filter is enabled with Mega Drive or Mega CD games using H-32 mode
  • code cleanup

Genesis Plus GX 1.7.4 (21/06/2013) (Eke-Eke)


[Core/SCD]


  • fixed access to read-only registers on Main-CPU side ("Batman Returns" platform level freeze)
  • fixed & improved emulation of PRG-RAM write protection register ("Lunar Eternal Blue" japanese version freeze)
  • improved SUB & MAIN-CPU synchronization ("Dracula Unleashed" freeze when using US Model 2 BIOS)
  • improved CPU polling detection
  • improved CDD emulation & added CD drive access time for SEEK command ("Panic!/Switch" intro missing scene)
  • added missing reinitialization of MAIN-CPU PRG-RAM bank on reset
  • added .OGG audio tracks support through LIBTREMOR

[Core/Sound]


  • fixed YM2612 configurable DAC depth emulation
  • improved Low-Pass filter
  • added optional "MONO" output mode

[Core/VDP]


  • fixed FIFO access timings when using invalid write code value ("Clue" menu)
  • fixed DMA Copy with undocumented code value ("Fatal Labyrinth" end sequence)
  • minor code fixes & optimizations

[Core/CPU]


  • optimized 68k stack read/write functions
  • fixed broken 68k address error emulation
  • fixed 68k interrupt behavior (prevents interrupts from being executed multiple time when 68k is halted)
  • fixed Z80 registers initial state, added proper initialization when using PBC (verified on real hardware by Charles McDonald)

[Core/MD]


  • fixed SRAM incompatibilities between BIG ENDIAN & LITTLE ENDIAN platforms (note: this breaks old .srm files with LITTLE ENDIAN platform ports)
  • added support for a few recently dumped unlicensed games
  • added auto-detection of byte-swapped ROM files

[Gamecube/Wii]


  • fixed CD Leds positioning when using NTSC filter
  • improved on-screen CD Leds (thanks to Iceknight)
  • various code fixes & improvements

Genesis Plus GX 1.7.3 (26/11/2012) (Eke-Eke)


[Gamecube/Wii]


  • fixed broken input system initialization

Genesis Plus GX 1.7.2 (24/11/2012) (Eke-Eke)


[Core/SCD]


  • added default TOC for Shadow of the Beast II (prevent hangs when audio tracks are missing)
  • fixed CD-DA fader muting
  • fixed PCM channels panning on reset
  • fixed backup RAM file management when using disc swap with Mode 1 cartridge
  • incremented CD drive read latency: fixes Space Adventure Cobra (freeze when opening coffin at 2nd morgue scene)
  • improved CDD emulation accuracy: fixes Snatcher (freeze at the end of Act 2) & various CD player bugs
  • improved MAIN-SUB memory map mirroring in SCD mode (verified on real hardware by Charles McDonald)
  • implemented cycle-accurate "stopwatch" register emulation

[Core/Sound]


  • fixed broken PSG noise frequency
  • fixed incorrect Game Gear PSG stereo emulation
  • implemented cycle-accurate Game Gear PSG stereo

[Core/VDP]


  • fixed broken VDP DMA from SVP ROM latency (graphic errors in Virtua Racing)

[Core/MD]


  • added Super Mario World 64 (unlicensed) cartridge hardware emulation

[Core/Input]


  • added automatic detection for CD games with Justifier/Menacer support
  • improved Justifier/Menacer emulation

[Gamecube/Wii]


  • fixed screen rendering when borders are disabled
  • added configurable on-screen CD leds

[Wii]


  • DVD light now indicates when virtual CD tray is open
  • fixed automatic input settings detection
  • improved lightgun crosshair positionning

Genesis Plus GX 1.7.1 (13/10/2012) (Eke-Eke)


[Core/SCD]


  • added support for CUE files
  • added CD-DA tracks emulation (needs CUE+BIN or ISO+WAV images)
  • added CD fader emulation
  • added CDD "Fast FW" & "Fast RW" commands emulation
  • improved CDD TOC emulation (random freezes in Sonic CD, Switch/Panic, Final Fight CD and probably many others)
  • improved PCM chip synchronization with SUB-CPU (missing speeches in Willy Beamish)
  • fixed PCM chip emulation (random hangs in Snatcher, missing sound effects in Switch/Panic, Final Fight CD, Wonderdog...)
  • fixed Word-RAM memory mode on soft-reset (missing logo gfx effects)
  • fixed SUB-CPU access to unused areas when using PC-relative instructions (Final Fight CD first boss random crash)
  • fixed CPU idle loop detection on memory mode register access (Pugsy CD first boss slowdown)
  • fixed Mode 1 emulation (cartridge boot mode)

[Core/Sound]


  • replaced FIR resampler by Blip Buffer for FM resampling
  • modified SN76489 core for use of Blip Buffer
  • improved PSG & FM chips synchronization using Blip Buffer
  • added Game Gear PSG stereo support
  • fixed SG-1000 specific PSG noise
  • fixed YM2612 LFO AM waveform (California Games surfing event)
  • fixed YM2612 phase precision
  • minor optimizations to YM2612 core

[Core/Game Gear]


  • added support for CJ Elephant Fugitive (recently released by SMS Power)
  • added Game Gear extended screen option

[Core/Genesis]


  • added support for a few recently dumped (but unreleased) games

[Core/General]


  • improved ROM & CD image file loading
  • various code cleanup

[Gamecube/Wii]


  • added automatic disc swap feature
  • removed automatic frameskipping (no use)
  • improved general audio/video sync
  • various code cleanup & bugfixes



Genesis Plus GX 1.7.0 (01/07/2012) (Eke-Eke)


[Core/SCD]


  • added Mega CD / Sega CD hardware emulation (incl. Sub 68K, CDD, CDC, PCM, GFX rotation/scaling, etc)
  • added .ISO & .BIN CD image file support
  • added 512K backup cartridge RAM support
  • added savestate support for CD games

NOTES: 20:10, 13 December 2016 (CET)~

  • to play CD games, original BIOS ROM files are required in /genplus/bios/ directory: unzip & rename them to bios_CD_U.bin, bios_CD_E.bin, bios_CD_J.bin
  • CD audio tracks (CD-DA) are not supported (yet)

[Core/CPU]


  • modified 68k core for Mega CD / Sega CD support
  • optimized 68k core using prebuild const tables

[Core/VDP]


  • improved DMA accuracy
  • improved accuracy of nametables register & VSRAM writes during HBLANK: fixes "The Adventures of Batman & Robin" (graphical issues during 2nd Boss fight).
  • added support for 8-bit VRAM writes with undocumented code value (verified on real hardware by Nemesis)

[Core/Sound]


  • improved synchronization between SN76489 & YM2162 cores.
  • improved accuracy of SN76489 core timings.

[Core/MD]


  • added support for some recently dumped unlicensed games.
  • improved emulation of 32k bankswitch hardware used by a few unlicensed games.
  • fixed behavior of Z80 banked reads from 68k RAM (verified on real hardware).
  • fixed support for 128K Pro Action Replay ROM.

[Core/MS]


  • added support for all recent korean ROM dumps by SMS Power.
  • added emulation of korean multi-game mapper (4-Pak All Action)
  • added pseudo-random RAM pattern initialization on Mark-III and Japanese Master System (fixes "Alibaba and 40 Thieves" & "Block Hole")
  • added port $3E emulation & internal BOOTROM support (Master System & Game Gear only).

[Core/General]


  • added an option to set VDP mode (PAL/NTSC) independently from console region.
  • added an option to select original system master clock frequency (PAL/NTSC/AUTO), emulation will run at selected frequency when VSYNC is disabled.
  • fixed 68k context loading/saving (Sol Deace).
  • fixed C89 incompatibilities for better portability.
  • removed use of "long int" type for portability on 64-bit platforms.
  • moved savestate zlib compression out of emulation core (for ports that don't use it).
  • various optimizations.

[Gamecube/Wii]


  • removed ROM load device selection from Load Menu: default ROM device must now be configured in menu settings.
  • added specific load buttons, browsers & saved paths for each systems, this also fixes slowdowns caused by screenshot loading when browsing from slow devices.
  • added support for left/right buttons as page up/down keys in ROM browsers
  • added right analog stick as default "return to menu" key for Gamecube controllers
  • added alternate remappable menu key combo for Gamecube controllers
  • added an option to disable VSYNC (emulator is synced with audio hardware instead of video).
  • added an option to boot system from "BIOS", with or without cartridge.
  • added Master System & Game Gear "BIOS" support (files should be named bios_U.sms, bios_J.sms, bios_E.sms & bios.gg and copied to /genplus/bios directory).
  • replaced "Hard Reset" button by a Soft Reset for systems having a Reset button (Mega Drive / Genesis & Master System)
  • State & SRAM files are now only compressed when saving to Gamecube Memory Cards
  • various fixes & cleanup.
  • compiled with devkitPPC r26 & libogc 1.8.11.

[Gamecube]


  • improved progressive mode support when component cable is detected (hold B during startup to switch menu video mode configuration)