More actions
(Created page with "{{Infobox Switch Homebrews |title=pGen |image=pgenswitch.png |description=Sega Genesis emulator, multiplatform port of Genesis Plus GX. |author=Cpasjuste |lastupdated=2022/08/30 |type=Console |version=6.6 |license=GPL-3.0 |download=https://dlhb.gamebrew.org/switchhomebrews/pgenswitch.7z |website=https://github.com/Cpasjuste/pemu |source=https://github.com/Cpasjuste/pemu/tree/master/pgen |donation= }} {{#seo: |title=Switch Homebrew Emulators (Console) - GameBrew |title_mo...") |
No edit summary |
||
(6 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Infobox Switch Homebrews | {{Infobox Switch Homebrews | ||
|title=pGen | |title=pGen | ||
|image= | |image=pgennx.png | ||
|description=Sega Genesis emulator, multiplatform port of Genesis Plus GX. | |description=Sega Genesis emulator, multiplatform port of Genesis Plus GX. | ||
|author=Cpasjuste | |author=Cpasjuste | ||
|lastupdated= | |lastupdated=2023/09/11 | ||
|type=Console | |type=Console | ||
|version=6. | |version=6.7.1 | ||
|license=GPL-3.0 | |license=GPL-3.0 | ||
|download=https://dlhb.gamebrew.org/switchhomebrews/ | |download=https://dlhb.gamebrew.org/switchhomebrews/pgennx.7z | ||
|website=https://github.com/Cpasjuste/pemu | |website=https://github.com/Cpasjuste/pemu | ||
|source=https://github.com/Cpasjuste/pemu/tree/master/pgen | |source=https://github.com/Cpasjuste/pemu/tree/master/pgen | ||
|donation= | |donation=https://ko-fi.com/cpasjuste | ||
}} | }} | ||
pGEN: Portable Genesis is a Sega Genesis emulator, multiplatform port of Genesis Plus GX. | |||
| | The main goals of this [https://github.com/ekeeke/Genesis-Plus-GX Genesis-Plus-GX] port are: | ||
| | *Have a basic but user-friendly user interface on non Windows devices. | ||
| | *Use a recent rendering interface for speed and effects support. | ||
*Cross-platform and code portability. | |||
*Easy updates of genesis-plus-gx core (no modifications to the original sources). | |||
==Features== | |||
*Support save states. | |||
*Support 2x, 3x, fit, fit 4/3 and fullscreen hardware scaling. | |||
*Support hardware filtering (shaders). | |||
==Installation== | |||
Copy "pgen.nro" to "/switch/pgen/" directory on SD card. | |||
Place your roms to the following location: | |||
*gamegear roms - "/switch/pgen/gamegear/". | |||
*megadrive roms - "/switch/pgen/megadrive/". | |||
*master system roms - "/switch/pgen/sms/". | |||
*sg-1000 roms - "/switch/pgen/sg1000/". | |||
*mega-cd roms (unzipped cue/bin) "/switch/pgen/megacd/". | |||
You need to put sega bios in the "pgen/bios" directory: | |||
{| style="margin-left:0em;" | |||
| | |||
*ggenie.bin | |||
*areplay.bin | |||
*sk.bin | |||
*sk2chip.bin | |||
*bios_CD_U.bin | |||
*bios_CD_E.bin | |||
|width="10px"| <!--spacer-column--> | |||
| | |||
*bios_CD_J.bin | |||
*bios_MD.bin | |||
*bios_U.sms | |||
*bios_E.sms | |||
*bios_J.sms | |||
*bios.gg | |||
|} | |||
==Controls== | |||
L - (In rom list) Configure main options and default roms options | |||
R - (In rom list) Configure per rom options | |||
L+R - (When in emulation) Bring the options menu | |||
== | ==Known issues== | ||
https:// | https://github.com/Cpasjuste/pemu/issues | ||
==Changelog== | ==Changelog== | ||
'''v.1.0''' | '''v.6.7.1''' | ||
* | * Common: cleanup media loading code. | ||
* Common: add unknown files even if it doesn't exist in gamelist.xml. | |||
* Common: change menus items position. | |||
* Common: fix games paths starting with ./ | |||
* Common: fix medias paths with recalbox gamelist.xml format. | |||
* Common: add ability to use custom gamelist.xml file in roms folders, overriding embedded (romfs) gamelist.xml. | |||
* Common: add SHOW_AVAILABLE menu option to hide missing files/roms/systems from gamelist (restart required). | |||
* ui: better handling of auto screen resolution. | |||
* ui: add font scaling option. | |||
* ui: add aspect ratio option. | |||
* ui: do not show extensions in rom list. | |||
* Skins: fix start and select buttons size. | |||
* Skins: fix option menu title position. | |||
* Skins: remove big skin (font scaling and aspect ratio options should be enough now). | |||
* Skins: add config.cfg.override and config.cfg.override.43 support. | |||
* Skins: allow/fix skin override from data directory. | |||
* pNES: bump nestopia to 1.52.0. | |||
* pNES: fix data paths (nestopia saves, etc...). | |||
* pFBNeo: bump fbneo to latest git revision. | |||
* pGEN: bump Genesis-Plus-GX to latest git revision (c3f02f9c9059e7f4898dd73feac57ef610e22db0). | |||
* pGEN: fix vita audio crackling (fps drops). | |||
* pSNES: bump to latest git revision (153965e5f2fbb0b638868ac3fa89ff8b0363d22c). | |||
* Vita, 3ds, windows: fix compilation. | |||
* Vita: enable cps3 driver back (OPTION_LIGHT). | |||
* Vita: fix app version in sfo creation. | |||
* Switch(pnes): invert A/B buttons by default. | |||
* Switch: force 720p resolution. | |||
'''6.6''' | |||
*Common: fix adding favorites in some cases. | |||
*Common: revert roms paths to default if not available. | |||
'''6.5''' | |||
*pGEN: fix hidden roms when file extension len is 2 (switch/vita/ps4). | |||
*Vita: fix fps counter. | |||
*pGEN: fix sram loading. | |||
*Common: disable config overwrite by default. | |||
*Input: fix inputs not always cleared before processing. | |||
*pGEN: fix emulation for roms size > 8MB. | |||
*pNES: remove load_archive hacks (use libarchive). | |||
*pNES: use 0ldsk00l repo. | |||
*Linux: hopefully fix missing shared libaries. | |||
'''6.4''' | |||
*pGEN: check for missing mega-cd bios on loading. | |||
*pGEN: save per game mega-cd backup ram. | |||
*pGEN: fix state saving (vita). | |||
*pGEN: fix scd_bram_cart.brm size. | |||
*pGEN: add sram saving support. | |||
*pSNES: remove deprecated high res option. | |||
*pSNES: add AUDIO_SYNC option (on: perfect audio, off: minor audio stuttering in favor of fps). | |||
*Vita: add more optimisations flags (improve fps). | |||
*Vita: add WAIT_RENDERING option (improve fps but not working with effects). | |||
*Common: fix wrong keys assignment in help bar (hopefully). | |||
*Common: improve audio handling. | |||
'''6.3''' | |||
*pFBNeo: support latest fbneo core (eda8ae4). | |||
*pFBNeo: update arcade gamelist.xml. | |||
*pSNES: fix missing game in gamelist (Elfaria - The Isle of the Blest (Japan).zip). | |||
*Common: fix video snap delay option. | |||
*pGEN: fix gamegear resolution and centering. | |||
*pGEN: add unknown files to correct system. | |||
*pGEN: add mega-cd chd support. | |||
*Common: use rom filepath hash for unknown roms id (fix very slow roms discovery). | |||
*pGEN: do not add mega-cd bin files to roms listing. | |||
*pSNES: create saves directory on startup. | |||
'''6.2''' | |||
*sdl2_audio: fill buffer with silence if nothing to play (fix pnes audio crap on game start). | |||
*pSNES: fix audio buffer overlflow (fix random crashes). | |||
*pSNES: fix minor remaining audio crackling (perfect audio now, hopefully). | |||
*pSNES: improve/simplify rendering code. | |||
*pSNES: update to latest snes9x revision (8c0a4a4). | |||
*Windows: fix crackling audio. | |||
*Gamelist: fix game id calculation (random crashes on unknown roms). | |||
*Windows: fix pnes compilation. | |||
'''6.1''' | |||
*Windows: hopefully fix missing libcrypto-1_1-x64.dll. | |||
*pGEN: fix launchers icons. | |||
*Vita: fix setTextureRect texture pitch (fix pgen). | |||
*pGEN: fix roms directories creation on first run. | |||
'''6.0''' | |||
*Common: add new emulator (pgen: genesis-plus-gx port). | |||
*Common: update gamelists. | |||
*Common: fix preview images and videos links. | |||
*Ui: only show know files extensions in rom list. | |||
*Ui: fix favorites preview images and videos. | |||
*Input: add rotation support back (wip). | |||
*Skins: enable font filtering back, remove big_preview skin. | |||
*Skins: add "config.cfg.override" file support for skin overriding. | |||
*Skins: code and data cleanup. | |||
*Skins: improve scaling. | |||
*pSNES: fix crackling audio in some games (zelda, ff6...). | |||
*Vita: remove slow pvr support (fix framerate on a lot of games). | |||
*Vita: fix input rotation (wip). | |||
*Switch: refactor inputs (use sdl2 gamecontroller and new sdl2 automatic single joycons handling). | |||
*Switch: update buttons gfx. | |||
*Windows: fix compilation, code improvements. | |||
*Android: add android support (wip). | |||
*And more... | |||
'''5.2''' | |||
*Common: fix audio sync (50hz roms in pSNES/pNES and a few games like seiken densetsu 3). | |||
*Common(skins): make menu text outline bigger. | |||
*Common(skins): fix fonts vertical positions. | |||
*Common: fix font padding and outline position. | |||
*Common: update gamelists (move to emulationstation format, lower memory usage). | |||
*pFBNeo: fix some games detected as clones (X-Men - Konami, ...). | |||
*Switch (pNES/pSNES): update romlist help texture. | |||
*Switch: fix single joycon mode for new c2d input (thanks R-YaTian). | |||
*Linux: add buttons gfx, enable some joystick buttons (wip). | |||
*Common: general improvements to enhance the user's experience... | |||
'''5.1''' | |||
*pNES: update gamelist.xml. | |||
*pNES: fix paths (for NstDatabase.xml, etc...). | |||
*pNES: always force audio sync. | |||
*pNES: use romfs for NstDatabase.xml. | |||
*pNES: update nestopia to latest git revision (c103378). | |||
*pNES: fix states menu. | |||
*pNES (ps4): fix datadir. | |||
*pNES/pSNES: disable auto aspect ratio scaling mode. | |||
*pNES/pSNES: improve scaling. | |||
'''5.0''' | |||
*FBNeo: bump core to git rev e44cd75. | |||
*FBNeo: add system switch with fire buttons 5-6 (L/R). | |||
*Input: add menu1 and menu2 keys config option. | |||
*Update all databases. | |||
*Add crt-geom-flat (for selected systems). | |||
*Add ps4 support. | |||
*Many changes... | |||
'''4.4''' | |||
*pNES: update for latest pemu changes. | |||
*pFBN: add nes console support. | |||
*pFBN: update FBNeo core to commit 89f2b6d. | |||
*All: add "big_preview" skin. | |||
*All: romlist: fix lower/upper cases sorting. | |||
*All: romlist: don't filter on file extension, show any files in roms folder. | |||
*All: load previews from default folders even if the game do not exist in database ("media/mixrbv2/.png", "media/video/.mp4"). | |||
*All: add "no preview" image when no preview found. | |||
*All: add a few effects to preview images/videos. | |||
*All: further improvements to overall system stability and other minor adjustments have been made to enhance the user experience. | |||
'''3.4''' | |||
*Fix uppercase roms not detected. | |||
'''3.1''' | |||
*Skins: use zipped skins (put zipped skins in "skins" directory). | |||
*Skins: add skin selection to main options menu. | |||
*Skins: change "skin" path to "skins". | |||
*Skins: change "ROM_ITEM" name/type to "TEXT". | |||
*Skins: add "color_missing", "color_not_working" and "highlight_use_text_color" options to "ROM_LIST > TEXT" skin config. | |||
*Options menu: set states options menu at the first place, for easier in game access. | |||
*States menu: fix bug to return to main menu with back button. | |||
*States: allow loading a rom with it's state from the main rom menu. | |||
*States menu: add tween position for a better effect. | |||
*Switch: input: use joystick click/press for either start (left joycon) or select (right joycon) on single joycon mode. | |||
==Credits== | |||
Thanks: | |||
*ScHlAuChi. | |||
*devkitPro and libnx people: yellows8, plutoo, profi200, WntrMute .... | |||
*ScHlAuChi again. | |||
== External links == | == External links == | ||
* | * GitHub - https://github.com/Cpasjuste/pemu/tree/master/src/cores/pgen | ||
Latest revision as of 06:23, 11 February 2024
pGen | |
---|---|
General | |
Author | Cpasjuste |
Type | Console |
Version | 6.7.1 |
License | GPL-3.0 |
Last Updated | 2023/09/11 |
Links | |
Download | |
Website | |
Source | |
Support Author | |
pGEN: Portable Genesis is a Sega Genesis emulator, multiplatform port of Genesis Plus GX.
The main goals of this Genesis-Plus-GX port are:
- Have a basic but user-friendly user interface on non Windows devices.
- Use a recent rendering interface for speed and effects support.
- Cross-platform and code portability.
- Easy updates of genesis-plus-gx core (no modifications to the original sources).
Features
- Support save states.
- Support 2x, 3x, fit, fit 4/3 and fullscreen hardware scaling.
- Support hardware filtering (shaders).
Installation
Copy "pgen.nro" to "/switch/pgen/" directory on SD card.
Place your roms to the following location:
- gamegear roms - "/switch/pgen/gamegear/".
- megadrive roms - "/switch/pgen/megadrive/".
- master system roms - "/switch/pgen/sms/".
- sg-1000 roms - "/switch/pgen/sg1000/".
- mega-cd roms (unzipped cue/bin) "/switch/pgen/megacd/".
You need to put sega bios in the "pgen/bios" directory:
|
|
Controls
L - (In rom list) Configure main options and default roms options
R - (In rom list) Configure per rom options
L+R - (When in emulation) Bring the options menu
Known issues
Changelog
v.6.7.1
- Common: cleanup media loading code.
- Common: add unknown files even if it doesn't exist in gamelist.xml.
- Common: change menus items position.
- Common: fix games paths starting with ./
- Common: fix medias paths with recalbox gamelist.xml format.
- Common: add ability to use custom gamelist.xml file in roms folders, overriding embedded (romfs) gamelist.xml.
- Common: add SHOW_AVAILABLE menu option to hide missing files/roms/systems from gamelist (restart required).
- ui: better handling of auto screen resolution.
- ui: add font scaling option.
- ui: add aspect ratio option.
- ui: do not show extensions in rom list.
- Skins: fix start and select buttons size.
- Skins: fix option menu title position.
- Skins: remove big skin (font scaling and aspect ratio options should be enough now).
- Skins: add config.cfg.override and config.cfg.override.43 support.
- Skins: allow/fix skin override from data directory.
- pNES: bump nestopia to 1.52.0.
- pNES: fix data paths (nestopia saves, etc...).
- pFBNeo: bump fbneo to latest git revision.
- pGEN: bump Genesis-Plus-GX to latest git revision (c3f02f9c9059e7f4898dd73feac57ef610e22db0).
- pGEN: fix vita audio crackling (fps drops).
- pSNES: bump to latest git revision (153965e5f2fbb0b638868ac3fa89ff8b0363d22c).
- Vita, 3ds, windows: fix compilation.
- Vita: enable cps3 driver back (OPTION_LIGHT).
- Vita: fix app version in sfo creation.
- Switch(pnes): invert A/B buttons by default.
- Switch: force 720p resolution.
6.6
- Common: fix adding favorites in some cases.
- Common: revert roms paths to default if not available.
6.5
- pGEN: fix hidden roms when file extension len is 2 (switch/vita/ps4).
- Vita: fix fps counter.
- pGEN: fix sram loading.
- Common: disable config overwrite by default.
- Input: fix inputs not always cleared before processing.
- pGEN: fix emulation for roms size > 8MB.
- pNES: remove load_archive hacks (use libarchive).
- pNES: use 0ldsk00l repo.
- Linux: hopefully fix missing shared libaries.
6.4
- pGEN: check for missing mega-cd bios on loading.
- pGEN: save per game mega-cd backup ram.
- pGEN: fix state saving (vita).
- pGEN: fix scd_bram_cart.brm size.
- pGEN: add sram saving support.
- pSNES: remove deprecated high res option.
- pSNES: add AUDIO_SYNC option (on: perfect audio, off: minor audio stuttering in favor of fps).
- Vita: add more optimisations flags (improve fps).
- Vita: add WAIT_RENDERING option (improve fps but not working with effects).
- Common: fix wrong keys assignment in help bar (hopefully).
- Common: improve audio handling.
6.3
- pFBNeo: support latest fbneo core (eda8ae4).
- pFBNeo: update arcade gamelist.xml.
- pSNES: fix missing game in gamelist (Elfaria - The Isle of the Blest (Japan).zip).
- Common: fix video snap delay option.
- pGEN: fix gamegear resolution and centering.
- pGEN: add unknown files to correct system.
- pGEN: add mega-cd chd support.
- Common: use rom filepath hash for unknown roms id (fix very slow roms discovery).
- pGEN: do not add mega-cd bin files to roms listing.
- pSNES: create saves directory on startup.
6.2
- sdl2_audio: fill buffer with silence if nothing to play (fix pnes audio crap on game start).
- pSNES: fix audio buffer overlflow (fix random crashes).
- pSNES: fix minor remaining audio crackling (perfect audio now, hopefully).
- pSNES: improve/simplify rendering code.
- pSNES: update to latest snes9x revision (8c0a4a4).
- Windows: fix crackling audio.
- Gamelist: fix game id calculation (random crashes on unknown roms).
- Windows: fix pnes compilation.
6.1
- Windows: hopefully fix missing libcrypto-1_1-x64.dll.
- pGEN: fix launchers icons.
- Vita: fix setTextureRect texture pitch (fix pgen).
- pGEN: fix roms directories creation on first run.
6.0
- Common: add new emulator (pgen: genesis-plus-gx port).
- Common: update gamelists.
- Common: fix preview images and videos links.
- Ui: only show know files extensions in rom list.
- Ui: fix favorites preview images and videos.
- Input: add rotation support back (wip).
- Skins: enable font filtering back, remove big_preview skin.
- Skins: add "config.cfg.override" file support for skin overriding.
- Skins: code and data cleanup.
- Skins: improve scaling.
- pSNES: fix crackling audio in some games (zelda, ff6...).
- Vita: remove slow pvr support (fix framerate on a lot of games).
- Vita: fix input rotation (wip).
- Switch: refactor inputs (use sdl2 gamecontroller and new sdl2 automatic single joycons handling).
- Switch: update buttons gfx.
- Windows: fix compilation, code improvements.
- Android: add android support (wip).
- And more...
5.2
- Common: fix audio sync (50hz roms in pSNES/pNES and a few games like seiken densetsu 3).
- Common(skins): make menu text outline bigger.
- Common(skins): fix fonts vertical positions.
- Common: fix font padding and outline position.
- Common: update gamelists (move to emulationstation format, lower memory usage).
- pFBNeo: fix some games detected as clones (X-Men - Konami, ...).
- Switch (pNES/pSNES): update romlist help texture.
- Switch: fix single joycon mode for new c2d input (thanks R-YaTian).
- Linux: add buttons gfx, enable some joystick buttons (wip).
- Common: general improvements to enhance the user's experience...
5.1
- pNES: update gamelist.xml.
- pNES: fix paths (for NstDatabase.xml, etc...).
- pNES: always force audio sync.
- pNES: use romfs for NstDatabase.xml.
- pNES: update nestopia to latest git revision (c103378).
- pNES: fix states menu.
- pNES (ps4): fix datadir.
- pNES/pSNES: disable auto aspect ratio scaling mode.
- pNES/pSNES: improve scaling.
5.0
- FBNeo: bump core to git rev e44cd75.
- FBNeo: add system switch with fire buttons 5-6 (L/R).
- Input: add menu1 and menu2 keys config option.
- Update all databases.
- Add crt-geom-flat (for selected systems).
- Add ps4 support.
- Many changes...
4.4
- pNES: update for latest pemu changes.
- pFBN: add nes console support.
- pFBN: update FBNeo core to commit 89f2b6d.
- All: add "big_preview" skin.
- All: romlist: fix lower/upper cases sorting.
- All: romlist: don't filter on file extension, show any files in roms folder.
- All: load previews from default folders even if the game do not exist in database ("media/mixrbv2/.png", "media/video/.mp4").
- All: add "no preview" image when no preview found.
- All: add a few effects to preview images/videos.
- All: further improvements to overall system stability and other minor adjustments have been made to enhance the user experience.
3.4
- Fix uppercase roms not detected.
3.1
- Skins: use zipped skins (put zipped skins in "skins" directory).
- Skins: add skin selection to main options menu.
- Skins: change "skin" path to "skins".
- Skins: change "ROM_ITEM" name/type to "TEXT".
- Skins: add "color_missing", "color_not_working" and "highlight_use_text_color" options to "ROM_LIST > TEXT" skin config.
- Options menu: set states options menu at the first place, for easier in game access.
- States menu: fix bug to return to main menu with back button.
- States: allow loading a rom with it's state from the main rom menu.
- States menu: add tween position for a better effect.
- Switch: input: use joystick click/press for either start (left joycon) or select (right joycon) on single joycon mode.
Credits
Thanks:
- ScHlAuChi.
- devkitPro and libnx people: yellows8, plutoo, profi200, WntrMute ....
- ScHlAuChi again.