Game Boy (Color) emulators: Difference between revisions

Emulators: moved jgenesis to multi system
Gorilli09 (talk | contribs)
No edit summary
Line 10: Line 10:
==Emulators==
==Emulators==
===Standalone emulators===
===Standalone emulators===
{|class="wikitable" style="text-align:center;width:100%"
{|class="wikitable" style="table-layout:fixed;text-align:center;width:100%"
|+Before editing, review the [[Getting involved]] and [[Recommended emulators|Recommended]] pages. See [[Computer_specifications#Recommended_Specifications|system requirements]] page for performance demand of the emulators.<br>See tables for <span style="font-weight: bold; color: #CC0000; border: 1px solid #CC0000; padding: 2px;">[[#Enhancements|enhancements]], [[#Hardware_features_and_peripherals|hardware features and peripherals]].</span><br>For more details such as [[licensing]], [[Source_code#Language_levels|programming language]], [[High_and_low-level_emulation|emulation method]], visit each emulator’s dedicated page.<br>Because of how relatively easy popular 8-bit consoles are to emulate, tons of Game Boy emulators exist. For a list of open-source projects, see [https://github.com/search?o=desc&q=gameboy+emulator&s=updated&type=Repositories&utf8=%E2%9C%93 this GitHub query]. For a list of accuracy tests, see [https://daid.github.io/GBEmulatorShootout/ daid.github.io/GBEmulatorShootout].
|+Before editing, review the [[Getting involved]] and [[Recommended emulators|Recommended]] pages. See [[Computer_specifications#Recommended_Specifications|system requirements]] page for performance demand of the emulators.<br>See tables for <span style="font-weight: bold; color: #CC0000; border: 1px solid #CC0000; padding: 2px;">[[#Enhancements|enhancements]], [[#Hardware_features_and_peripherals|hardware features and peripherals]].</span><br>For more details such as [[licensing]], [[Source_code#Language_levels|programming language]], [[High_and_low-level_emulation|emulation method]], visit each emulator’s dedicated page.<br>Because of how relatively easy popular 8-bit consoles are to emulate, tons of Game Boy emulators exist. For a list of open-source projects, see [https://github.com/search?o=desc&q=gameboy+emulator&s=updated&type=Repositories&utf8=%E2%9C%93 this GitHub query]. For a list of accuracy tests, see [https://daid.github.io/GBEmulatorShootout/ daid.github.io/GBEmulatorShootout].
!Name
!Name
Line 50: Line 50:
|[[Gambatte]]<br><small>[https://docs.libretro.com/library/gambatte/ Gambatte_libretro]</small>
|[[Gambatte]]<br><small>[https://docs.libretro.com/library/gambatte/ Gambatte_libretro]</small>
| align="left" |{{Icon|Windows|WoA|Linux|macOS|Web}}
| align="left" |{{Icon|Windows|WoA|Linux|macOS|Web}}
|[https://buildbot.libretro.com/nightly/ libretro core]<br>[https://sourceforge.net/projects/gambatte/files/gambatte r571]||{{~}}<ref group="lower-alpha" name=active>[https://github.com/libretro/gambatte-libretro/tree/master Libretro core] is still active.</ref> ||{{Green}} {{License|GPLv2}} ({{License|Copyleft}})  
|[https://buildbot.libretro.com/nightly/ libretro core]<br>[https://sourceforge.net/projects/gambatte/files/gambatte r571]||{{~}}<ref group="n" name=active>[https://github.com/libretro/gambatte-libretro/tree/master Libretro core] is still active.</ref> ||{{Green}} {{License|GPLv2}} ({{License|Copyleft}})  
| ||{{Ya}}  
| ||{{Ya}}  
| ?||{{~}}
| ?||{{~}}
Line 104: Line 104:
|[[mGBA]]
|[[mGBA]]
| align="left" |{{Icon|Windows|Linux|macOS|FreeBSD}}
| align="left" |{{Icon|Windows|Linux|macOS|FreeBSD}}
|[https://mgba.io/builds/1/ Dev builds]<br>[https://buildbot.libretro.com/nightly/ libretro core]<ref group="lower-alpha">[https://old.reddit.com/r/emulation/comments/12x3fsm/mgba_0102_released/jhigow4/ endrift's comment about libretro core]</ref><br>[https://mgba.io/downloads.html {{mGBAVer}}]||{{Ya}} ||{{Green}} {{License|MPL2}} ({{License|Copyleft}})  
|[https://mgba.io/builds/1/ Dev builds]<br>[https://buildbot.libretro.com/nightly/ libretro core]<ref group="n">[https://old.reddit.com/r/emulation/comments/12x3fsm/mgba_0102_released/jhigow4/ endrift's comment about libretro core]</ref><br>[https://mgba.io/downloads.html {{mGBAVer}}]||{{Ya}} ||{{Green}} {{License|MPL2}} ({{License|Copyleft}})  
| ||{{Ya}}  
| ||{{Ya}}  
|[https://github.com/mgba-emu/mgba/blob/master/README.md#game-boy-mappers Unlicensed] ||{{~}}
|[https://github.com/mgba-emu/mgba/blob/master/README.md#game-boy-mappers Unlicensed] ||{{~}}
Line 223: Line 223:
|-
|-
|[[TGB Dual]]
|[[TGB Dual]]
| align="left" |{{Icon|Windows|Linux}}<ref group="lower-alpha" name="two">On Linux as an SDL port (and the [[libretro]] core is based on this version).</ref>
| align="left" |{{Icon|Windows|Linux}}<ref group="n" name="two">On Linux as an SDL port (and the [[libretro]] core is based on this version).</ref>
|[https://github.com/libertyernie/tgbdual_L/releases 1.2]||{{Na}} ||{{Green}} {{License|GPLv2}} ({{License|Copyleft}})  
|[https://github.com/libertyernie/tgbdual_L/releases 1.2]||{{Na}} ||{{Green}} {{License|GPLv2}} ({{License|Copyleft}})  
| ||{{Na}}  
| ||{{Na}}  
Line 300: Line 300:
|[https://github.com/philj56/gbcc-android/releases/tag/v0.41 beta41] (source)||{{Na|link=https://github.com/philj56/gbcc-android}} ||{{Green}} {{License|MIT}} ({{License|Permissive}})  
|[https://github.com/philj56/gbcc-android/releases/tag/v0.41 beta41] (source)||{{Na|link=https://github.com/philj56/gbcc-android}} ||{{Green}} {{License|MIT}} ({{License|Permissive}})  
| ||{{Na}}  
| ||{{Na}}  
| ?||{{~}}<ref group="lower-alpha">Must be compiled from source due to binaries going offline and has been surpassed in terms of general use, but is still Recommended for its exceptional [https://play-lh.googleusercontent.com/_5D9uMlRlL-DJ_anXEyJHtI3IriwCFVPgg2zgwhkaG-uYwkjYeTqmiuUZwpomTYKsuo=w1024-h768-rw Printer] and {{YouTubeVideo|ESYolQ761Dw|Kirby Camera}} support.</ref>
| ?||{{~}}<ref group="n">Must be compiled from source due to binaries going offline and has been surpassed in terms of general use, but is still Recommended for its exceptional [https://play-lh.googleusercontent.com/_5D9uMlRlL-DJ_anXEyJHtI3IriwCFVPgg2zgwhkaG-uYwkjYeTqmiuUZwpomTYKsuo=w1024-h768-rw Printer] and {{YouTubeVideo|ESYolQ761Dw|Kirby Camera}} support.</ref>
|-
|-
|[https://pixelrespawn.com/ Linkboy]
|[https://pixelrespawn.com/ Linkboy]
Line 386: Line 386:
|[https://files.extremscorner.org/gamecube/apps/gbi/latest main]<br>[https://files.extremscorner.org/gamecube/apps/gbi/latest-extra extra]||{{Ya}} ||{{Red}} {{license|Proprietary}}  
|[https://files.extremscorner.org/gamecube/apps/gbi/latest main]<br>[https://files.extremscorner.org/gamecube/apps/gbi/latest-extra extra]||{{Ya}} ||{{Red}} {{license|Proprietary}}  
| ||{{Na}}  
| ||{{Na}}  
|Uses real GBA Hardware (Requires Game Boy Player hardware) ||{{Ya}}<ref group="lower-alpha" name=gbinterface>Multiple versions available. Pick the version that fits best with your specific setup.</ref>
|Uses real GBA Hardware (Requires Game Boy Player hardware) ||{{Ya}}<ref group="n" name=gbinterface>Multiple versions available. Pick the version that fits best with your specific setup.</ref>
|-
|-
|[https://docs.libretro.com/library/gambatte/ Gambatte_libretro]
|[https://docs.libretro.com/library/gambatte/ Gambatte_libretro]
Line 440: Line 440:
|N/A||{{Na}} ||{{Red}} {{License|Proprietary}}  
|N/A||{{Na}} ||{{Red}} {{License|Proprietary}}  
| ||{{Na}}  
| ||{{Na}}  
|Uses real Game Boy hardware ||{{Ya}}<ref group="lower-alpha" name="Super Game Boy">Uses real hardware on the cartridge. Super Game Boy 1 runs slightly faster than real hardware without a mod and does not have a link port. The Japanese-only Super Game Boy 2 has a link port and runs at the correct speed. Both SGBs support game borders, palettes, and SGB-enhanced games.</ref>
|Uses real Game Boy hardware ||{{Ya}}<ref group="n" name="Super Game Boy">Uses real hardware on the cartridge. Super Game Boy 1 runs slightly faster than real hardware without a mod and does not have a link port. The Japanese-only Super Game Boy 2 has a link port and runs at the correct speed. Both SGBs support game borders, palettes, and SGB-enhanced games.</ref>
|-
|-
|[[VisualBoy_Advance#VBA-M|VBA GX]]
|[[VisualBoy_Advance#VBA-M|VBA GX]]
Line 458: Line 458:
| ||{{Na}} ||{{Red}} {{license|Proprietary}}  
| ||{{Na}} ||{{Red}} {{license|Proprietary}}  
| ||{{Na}}  
| ||{{Na}}  
|Uses real GBA Hardware (Requires Game Boy Player hardware) ||{{~}}<ref group="lower-alpha" name="Game Boy Player">Game Boy Interface is recommended instead. Limited to a filtered, 480i output with a slight amount of input lag</ref>
|Uses real GBA Hardware (Requires Game Boy Player hardware) ||{{~}}<ref group="n" name="Game Boy Player">Game Boy Interface is recommended instead. Limited to a filtered, 480i output with a slight amount of input lag</ref>
|-
|-
|RealBoy Vita
|RealBoy Vita
Line 492: Line 492:
| ?||{{Ya}}
| ?||{{Ya}}
|}
|}
<references group="lower-alpha" />
<references group="n"/>


===[[Multi-system emulators]]===
===[[Multi-system emulators]]===
{|class="wikitable" style="text-align:center;width:100%"
{|class="wikitable" style="table-layout:fixed;text-align:center;width:100%"
!Emulator(s)
!Emulator(s)
!Platform(s)
!Platform(s)
Line 528: Line 528:
|[[MAME]]
|[[MAME]]
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
|git artifacts<ref group="lower-alpha">[https://nightly.link/mamedev/mame/workflows/ci-windows/master CI-Windows] [https://nightly.link/mamedev/mame/workflows/ci-linux/master CI-Linux] [https://nightly.link/mamedev/mame/workflows/ci-macos/master CI-Macos]</ref><br>[http://www.mamedev.org/release.html {{MAMEVer}}]<br>[https://buildbot.libretro.com/nightly/ libretro core]||{{Ya}} ||{{Green}} {{License|GPLv2}}<br>{{License|BSD3}}  
|git artifacts<ref group="n">[https://nightly.link/mamedev/mame/workflows/ci-windows/master CI-Windows] [https://nightly.link/mamedev/mame/workflows/ci-linux/master CI-Linux] [https://nightly.link/mamedev/mame/workflows/ci-macos/master CI-Macos]</ref><br>[http://www.mamedev.org/release.html {{MAMEVer}}]<br>[https://buildbot.libretro.com/nightly/ libretro core]||{{Ya}} ||{{Green}} {{License|GPLv2}}<br>{{License|BSD3}}  
| ||{{Ya}}
| ||{{Ya}}
|[http://adb.arcadeitalia.net/lista_mess.php?machine_name=gameboy Unlicensed] ||{{~}}
|[http://adb.arcadeitalia.net/lista_mess.php?machine_name=gameboy Unlicensed] ||{{~}}
Line 542: Line 542:
|[http://byuu.org/emulation/higan {{higanVer}}]<br>[https://github.com/libretro/higan libretro core]||{{Ya}} ||{{Green}} {{License|GPLv3}} ({{License|Copyleft}})  
|[http://byuu.org/emulation/higan {{higanVer}}]<br>[https://github.com/libretro/higan libretro core]||{{Ya}} ||{{Green}} {{License|GPLv3}} ({{License|Copyleft}})  
| ||{{Ya}}
| ||{{Ya}}
| ?||{{Na}}<ref group="lower-alpha">Superseded by [[ares]].</ref>
| ?||{{Na}}<ref group="n">Superseded by [[ares]].</ref>
|-
|-
|[[jgenesis]]
|[[jgenesis]]
Line 550: Line 550:
| ?||{{Dunno}}
| ?||{{Dunno}}
|}
|}
<references group="lower-alpha" />
<references group="n"/>


==Comparison==
==Comparison==
Line 598: Line 598:


==Enhancements==
==Enhancements==
{|class="wikitable sortable" style="text-align:center;width:100%"
{|class="wikitable sortable" style="table-layout:fixed;text-align:center;width:100%"
|+Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages.
|+Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages.
! colspan=2 |Name
! colspan=2 style="width:50%" |Name
! BGB
! BGB
!Emulicious
!Emulicious
Line 608: Line 608:
|[[Input_lag|Input lag-mitigating technique]]
|[[Input_lag|Input lag-mitigating technique]]
|{{Dunno}}
|{{Dunno}}
|{{Dunno}}||{{~}}<ref name="LibretroExclusive" group="lower-alpha" />
|{{Dunno}}||{{~}}<ref group="n" name="LibretroExclusive"/>
|-
|-
|[https://docs.retroachievements.org/general/tutorials/turbo-button.html Turbo button]
|[https://docs.retroachievements.org/general/tutorials/turbo-button.html Turbo button]
Line 661: Line 661:
|Built-in [[Cheats_and_patches|cheat manager]]
|Built-in [[Cheats_and_patches|cheat manager]]
|{{Dunno}}
|{{Dunno}}
|{{Dunno}}||{{~}}<ref group="lower-alpha" name="SameBoyCOCO">For macOS only.</ref>
|{{Dunno}}||{{~}}<ref group="n" name="SameBoyCOCO">For macOS only.</ref>
|-
|-
|{{Enhancements/Quality of life/Built-in custom resolution}}
|{{Enhancements/Quality of life/Built-in custom resolution}}
Line 668: Line 668:
|Built-in Game Boy sound player
|Built-in Game Boy sound player
|{{Dunno}}
|{{Dunno}}
|{{Dunno}}||{{~}}<ref group="lower-alpha" name="SameBoyCOCO"></ref>
|{{Dunno}}||{{~}}<ref group="n" name="SameBoyCOCO"/>
|-
|-
|Built-in [[Mods,_hacks_and_fan-translations#Built-in mod editor and manager for emulators|mod editor and manager]]
|Built-in [[Mods,_hacks_and_fan-translations#Built-in mod editor and manager for emulators|mod editor and manager]]
Line 736: Line 736:
|[[Netplay#Game_Boy|Netplay]]<br><small>Should not be confused with Game Boy (Color) online features or link cable emulation. See [[#Hardware features and peripherals|hardware features and peripherals]].</small>
|[[Netplay#Game_Boy|Netplay]]<br><small>Should not be confused with Game Boy (Color) online features or link cable emulation. See [[#Hardware features and peripherals|hardware features and peripherals]].</small>
|{{Dunno}}
|{{Dunno}}
|{{Dunno}}||{{~}}<ref group="lower-alpha" name="LibretroExclusive">Input lag mitigation technique and [https://docs.libretro.com/guides/retroachievements/#game-boy-game-boy-color RetroAchievements exclusive to libretro cores]. Also [https://docs.libretro.com/library/sameboy/#features netplay enhancement] exclusive to SameBoy libretro core.</ref>
|{{Dunno}}||{{~}}<ref group="n" name="LibretroExclusive">Input lag mitigation technique and [https://docs.libretro.com/guides/retroachievements/#game-boy-game-boy-color RetroAchievements exclusive to libretro cores]. Also [https://docs.libretro.com/library/sameboy/#features netplay enhancement] exclusive to SameBoy libretro core.</ref>
|-
|-
|[[RetroAchievements]]
|[[RetroAchievements]]
|{{Dunno}}
|{{Dunno}}
|{{Dunno}}||{{~}}<ref group="lower-alpha" name="LibretroExclusive"></ref>
|{{Dunno}}||{{~}}<ref group="n" name="LibretroExclusive"/>
|-
|-
|Rich Presence (RPC)<br><small>Allows the emulator to share real-time game session details (e.g., current game title, level, boss, playtime, or custom status) with external applications. This enables features such as displaying what you're playing on your profile, inviting friends to spectate, or triggering join-in-progress functionality where supported.</small>
|Rich Presence (RPC)<br><small>Allows the emulator to share real-time game session details (e.g., current game title, level, boss, playtime, or custom status) with external applications. This enables features such as displaying what you're playing on your profile, inviting friends to spectate, or triggering join-in-progress functionality where supported.</small>
Line 749: Line 749:
| colspan="3" |You can use [https://docs.libretro.com/guides/ai-service/ RetroArch's AI Service] or the standalone offline [https://github.com/bquenin/interpreter bquenin's Interpreter].
| colspan="3" |You can use [https://docs.libretro.com/guides/ai-service/ RetroArch's AI Service] or the standalone offline [https://github.com/bquenin/interpreter bquenin's Interpreter].
|}
|}
<references group="lower-alpha"/>
<references group="n"/>


==Hardware features and peripherals==
==Hardware features and peripherals==
{|class="wikitable sortable" style="text-align:center;width:100%"
{|class="wikitable sortable" style="table-layout:fixed;text-align:center;width:100%"
|+Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages.<br>''[https://shonumi.github.io/articles/art34.html Shonumi: The State of Emulation - 2024]''
|+Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages.<br>''[https://shonumi.github.io/articles/art34.html Shonumi: The State of Emulation - 2024]''
! colspan="4" |Name
! colspan="4" style="width:50%" |Name
! BGB
! BGB
!Emulicious
!Emulicious
Line 861: Line 861:
|{{Na}}
|{{Na}}
|{{Dunno}}
|{{Dunno}}
|{{~}}<ref name="SameBoyCOCO" group="lower-alpha">For macOS only.</ref>
|{{~}}<ref group="n" name="SameBoyCOCO">For macOS only.</ref>
|{{Ya}}
|{{Ya}}
|-
|-
Line 868: Line 868:
|{{Ya}}
|{{Ya}}
|{{Na}}
|{{Na}}
| {{~}}<ref name="SameBoyCOCO" group="lower-alpha" />
| {{~}}<ref group="n" name="SameBoyCOCO"/>
|{{Ya}}
|{{Ya}}
|-
|-
Line 893: Line 893:
|-
|-
| colspan="2" |[[#Accessories|WorkBoy]]||{{Dunno}}
| colspan="2" |[[#Accessories|WorkBoy]]||{{Dunno}}
|{{Dunno}}||{{~}}<ref name="SameBoyCOCO" group="lower-alpha" />
|{{Dunno}}||{{~}}<ref group="n" name="SameBoyCOCO"/>
|{{Ya}}
|{{Ya}}
|-
|-
Line 944: Line 944:
| colspan="4" | <small>There is no emulator currently includes built-in cartridge tilting simulation. As a workaround, you can try the external [https://github.com/redscientistlabs/RTCV Real-Time Corruptor (RTCV)] tool. It is a real-time memory/data corruption tool for inducing glitches during emulation, which might mimic some effects of cartridge tilting (e.g., visual/audio artifacts or crashes). However, it is not a true "cartridge tilting" simulator, as it works on live memory rather than simulating cartridge read errors.</small>
| colspan="4" | <small>There is no emulator currently includes built-in cartridge tilting simulation. As a workaround, you can try the external [https://github.com/redscientistlabs/RTCV Real-Time Corruptor (RTCV)] tool. It is a real-time memory/data corruption tool for inducing glitches during emulation, which might mimic some effects of cartridge tilting (e.g., visual/audio artifacts or crashes). However, it is not a true "cartridge tilting" simulator, as it works on live memory rather than simulating cartridge read errors.</small>
|}
|}
<references group="lower-alpha" />
<references group="n"/>


===Infrared===
===Infrared===