|
|
(11 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
| {{#seo:
| |
| |title=Wii Homebrew Emulators (Handheld) - GameBrew
| |
| |title_mode=append
| |
| |image=emgbawii.jpg
| |
| |image_alt=emgba
| |
| }}
| |
| {{Infobox Wii Homebrews | | {{Infobox Wii Homebrews |
| |title=emgba | | |title=emgba |
| |image=emgbawii.jpg | | |image=emgbawii2.png |
| |description=An enhanced port of mGBA, based on Game Boy Interface Standard Edition. | | |description=An enhanced port of mGBA, based on Game Boy Interface Standard Edition. |
| |author=extremscorner | | |author=extremscorner |
| |lastupdated=2022/01/05 | | |lastupdated=2024/10/26 |
| |type=Handheld | | |type=Handheld |
| |version=20220105 | | |version=20241026 |
| |license=MPL-2.0 | | |license=MPL-2.0 |
| |download=https://dlhb.gamebrew.org/wiihomebrews/emgbawii.7z | | |download=https://dlhb.gamebrew.org/wiihomebrews/emgbawii.7z?k33p0fil35 |
| |website=https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA | | |website=https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA |
| |source=https://github.com/extremscorner/emgba | | |source=https://github.com/extremscorner/emgba |
| | |donation=https://github.com/extremscorner/emgba |
| }} | | }} |
| emGBA (Enhanced mGBA) is a modified version of the Game Boy Advance emulator, mGBA, which is based on Game Boy Interface Standard Edition.
| | Enhanced mGBA (emGBA) is an enhanced port of the Game Boy Advance emulator, based on [https://www.gc-forever.com/forums/viewtopic.php?f=37&t=2782 Game Boy Interface Standard Edition] and [[MGBA Wii|mGBA]]. |
| | |
| | ==Installation== |
| | It is not recommended to use both [[MGBA Wii|mGBA]] and emGBA together on your console. |
| | |
| | To install, copy the mGBA and apps folders to the root of the SD card. |
| | |
| | Launch it with the [[Homebrew Channel Wii|Homebrew Channel]]. |
| | |
| | ==User guide== |
| | It supports meta.xml arguments, a list of options can be found [https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA here]. |
| | |
| | Example meta.xml for TV with 240p settings by TheDimensioner ([https://www.gc-forever.com/forums/viewtopic.php?f=13&t=3129&p=39026#p39015 thread], [https://pastebin.com/VkBspBk7 pastebin]): |
| | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> |
| | <app version="1"> |
| | <name>Enhanced mGBA</name> |
| | <author>Extrems</author> |
| | <version>2017-07-26</version> |
| | <release_date>20170726094548</release_date> |
| | <short_description>mGBA Game Boy Advance emulator</short_description> |
| | <long_description>Enhanced mGBA Game Boy Advance emulator</long_description> |
| | <arguments> |
| | <arg>--scan-mode=non-interlace</arg> |
| | <arg>--input-gamma=1</arg> |
| | <arg>--output-gamma=1</arg> |
| | <arg>--matrix=identity</arg> |
| | <arg>--poll=0</arg> |
| | <arg>--cursor=sd:/mGBA/point-srgb.tpl.gz</arg> |
| | <arg>--overlay=sd:/mGBA/frame-srgb.tpl.gz</arg> |
| | <arg>--overlay-id=2</arg> |
| | </arguments> |
| | </app> |
| | |
| | ==Screenshots== |
| | https://dlhb.gamebrew.org/wiihomebrews/emgbawii3.png |
| | |
| | ==Known issues== |
| | Game crashes but worked previously - Try deleting the log file in the mGBA folder. |
|
| |
|
| == Options ==
| |
| <pre>
| |
| ; {{anchor|--aspect}}<code>--aspect=<w:h></code>
| |
| : Specify screen aspect ratio. The default is the Progressive Scan Mode system setting (4:3 or 16:9).
| |
| : Setting this option to 3:2 is not recommended unless interpreting 720×480 as square pixels.
| |
| ; {{anchor|--offset}}<code>--offset=<x:y></code>
| |
| : Set offset. The default is the Screen Position system setting (-32 to +32).
| |
| ; {{anchor|--zoom}}<code>--zoom=<x:y></code>
| |
| : Set zoom (default: auto).
| |
| ; {{anchor|--zoom-auto}}<code>--zoom-auto[=<ratio>]</code>
| |
| : Enable best fit for a given screen size ratio, or [[wikipedia:Safe area (television)|safe area]]. The default is the Game Boy Player Start-up Disc's Screen Size setting (0.75 or 0.875).
| |
| ; {{anchor|--rotate}}<code>--rotate=<0-359></code>
| |
| : Set rotation (default: 0).
| |
| ; {{anchor|--poll}}<code>--poll=<0-11></code>
| |
| : Set controller polling rate. Use if your third-party controller or controller adapter is malfunctioning.
| |
| : Not applicable to Nintendo 64 Controllers using a passive connector adapter.
| |
| : {| class="wikitable"
| |
| | '''0:'''
| |
| | VSync (most compatible)
| |
| |-
| |
| | '''1:'''
| |
| | 1000Hz (default)
| |
| |-
| |
| | '''2:'''
| |
| | 500Hz
| |
| |-
| |
| | '''3:'''
| |
| | 350Hz
| |
| |-
| |
| | '''4:'''
| |
| | 300Hz
| |
| |-
| |
| | '''5:'''
| |
| | 250Hz
| |
| |-
| |
| | '''6:'''
| |
| | 200Hz
| |
| |-
| |
| | '''7:'''
| |
| | 150Hz
| |
| |-
| |
| | '''8:'''
| |
| | 150Hz
| |
| |-
| |
| | '''9:'''
| |
| | 125Hz
| |
| |-
| |
| | '''10:'''
| |
| | 125Hz
| |
| |-
| |
| | '''11:'''
| |
| | 100Hz
| |
| |}
| |
| ; {{anchor|--cursor|--no-cursor}}<code>--cursor=<path></code>, <code>--no-cursor</code>
| |
| : Load texture palette for cursors (default: point.tpl.gz).
| |
| ; {{anchor|--overlay|--no-overlay}}<code>--overlay=<path></code>, <code>--no-overlay</code>
| |
| : Load texture palette for graphic overlays (default: frame.tpl.gz).
| |
| ; {{anchor|--overlay-id}}<code>--overlay-id=<ID></code>
| |
| : Set texture palette index for graphic overlay. The default is the Game Boy Player Start-up Disc's Frame setting (0 to 19).
| |
| ; {{anchor|--overlay-scale}}<code>--overlay-scale=<x:y></code>
| |
| : Set texture scale for graphic overlay (default: auto).
| |
| ; {{anchor|--filter}}<code>--filter=<[none|blend|deflicker|accumulate|scale2x[ex|plus]|eagle2x|scan2x|normal2x][,prescale|no-prescale]></code>
| |
| : Set image doubling or screen filter. The default is the Game Boy Player Start-up Disc's Screen Filter setting (none, blend, deflicker).
| |
| :; <code>none</code>
| |
| :: Also known as the Sharp screen filter.
| |
| :; <code>blend[=<red[:green[:blue]]>]</code>
| |
| :: Blend frames ''n'' and ''n-1'' (default: 0.55).
| |
| :: Also known as the Soft screen filter.
| |
| :; <code>deflicker[=<red[:green[:blue]]>]</code>
| |
| :: Blend frames ''n'' and ''n-1'' where ''n'' and ''n-2'' are equal (default: 0.55).
| |
| :: Also known as the Normal screen filter.
| |
| :; <code>accumulate[=<red[:green[:blue]]>]</code>
| |
| :: Blend frames with accumulation buffer (default: 0.55).
| |
| :: As used by the Nintendo 3DS Ambassador games.
| |
| :; <code>scale2xex</code>
| |
| :: Apply enhanced [[wikipedia:Pixel-art scaling algorithms#EPX/Scale2×/AdvMAME2×|EPX/Scale2×/AdvMAME2×]] algorithm with Y’C’<sub>B</sub>C’<sub>R</sub> difference.
| |
| :; <code>scale2xplus</code>
| |
| :; <code>scale2x</code>
| |
| :: Apply [[wikipedia:Pixel-art scaling algorithms#EPX/Scale2×/AdvMAME2×|EPX/Scale2×/AdvMAME2×]] algorithm.
| |
| :; <code>eagle2x</code>
| |
| :: Apply [[wikipedia:Pixel-art scaling algorithms#Eagle|Eagle]] algorithm.
| |
| :; <code>scan2x</code>
| |
| :: Apply simple scanlines.
| |
| :; <code>normal2x</code>
| |
| :; <code>prescale</code>, <code>no-prescale</code>
| |
| :: Enable prescaling filter (default: no).
| |
| ; {{anchor|--dither}}<code>--dither=<none|threshold|bayer8x8|bayer4x4|bayer2x2|cluster8x8|cluster4x4></code>
| |
| : Set dithering algorithm (default: threshold). Setting this option to none is not recommended when using linear RGB rendering.
| |
| : Applied during prescaling.
| |
| ; {{anchor|--scaler}}<code>--scaler=<nearest|bilinear|area|box></code>
| |
| : Set image scaling filter. Setting this option to nearest is not recommended when using fractional scaling or a non-square [[wikipedia:Pixel aspect ratio|pixel aspect ratio]].
| |
| : {| class="wikitable"
| |
| | '''nearest:'''
| |
| | [[wikipedia:Nearest-neighbor interpolation|Nearest-neighbor interpolation]] (fastest)
| |
| |-
| |
| | '''bilinear:'''
| |
| | [[wikipedia:Bilinear interpolation|Bilinear interpolation]]
| |
| |-
| |
| | '''area:'''
| |
| | Sharp bilinear interpolation (default)
| |
| |-
| |
| | '''box:'''
| |
| | Inverse sharp bilinear interpolation
| |
| |}
| |
| ; {{anchor|--matrix}}<code>--matrix=<identity|gba|gbc|gbc-dev|gbi|nds|palm|psp|vba></code>
| |
| : Set color matrix (default: gbi).
| |
| : This translates the RGB color primaries to the [[wikipedia:sRGB|standard RGB color space]].
| |
| : {| class="wikitable"
| |
| | '''identity:'''
| |
| | [[wikipedia:Identity matrix|Identity matrix]]
| |
| |-
| |
| | '''gba:'''
| |
| | Game Boy Advance (by [https://forums.libretro.com/t/real-gba-and-ds-phat-colors/1540 Pokefan531])
| |
| |-
| |
| | '''gbc:'''
| |
| | Game Boy Color (by [https://forums.libretro.com/t/real-gba-and-ds-phat-colors/1540 Pokefan531])
| |
| |-
| |
| | '''gbc-dev:'''
| |
| | Gameboy Hi-Colour Convertor (by [https://forums.libretro.com/t/real-gba-and-ds-phat-colors/1540 Pokefan531])
| |
| |-
| |
| | '''gbi:'''
| |
| | Game Boy Interface
| |
| |-
| |
| | '''nds:'''
| |
| | Nintendo DS (by [https://forums.libretro.com/t/real-gba-and-ds-phat-colors/1540 Pokefan531])
| |
| |-
| |
| | '''palm:'''
| |
| | Palm Treo 700p (by [https://forums.libretro.com/t/real-gba-and-ds-phat-colors/1540 Pokefan531])
| |
| |-
| |
| | '''psp:'''
| |
| | PlayStation Portable (by [https://forums.libretro.com/t/real-gba-and-ds-phat-colors/1540 Pokefan531])
| |
| |-
| |
| | '''vba:'''
| |
| | VisualBoyAdvance-M (by [https://forums.libretro.com/t/real-gba-and-ds-phat-colors/1540 Pokefan531])
| |
| |}
| |
| ; {{anchor|--profile}}<code>--profile=<srgb|gba|gbc|gbc-dev|gbi|nds|palm|psp></code>
| |
| : Set quick color profile.
| |
| : Overrides <code>--matrix</code>, <code>--input-gamma</code>, <code>--output-gamma</code>, <code>--brightness</code> and <code>--contrast</code>.
| |
| : {| class="wikitable"
| |
| | '''srgb:'''
| |
| | Emulator
| |
| |-
| |
| | '''gba:'''
| |
| | [[Game Boy Interface/Standard Edition#Game Boy Advance|Game Boy Advance]]
| |
| |-
| |
| | '''gbc:'''
| |
| | Game Boy Color
| |
| |-
| |
| | '''gbc-dev:'''
| |
| | Gameboy Hi-Colour Convertor
| |
| |-
| |
| | '''gbi:'''
| |
| | Game Boy Interface (2015–2017)
| |
| |-
| |
| | '''nds:'''
| |
| | [[Game Boy Interface/Standard Edition#Nintendo DS|Nintendo DS]]
| |
| |-
| |
| | '''palm:'''
| |
| | [[Game Boy Interface/Standard Edition#Palm Treo 700p|Palm Treo 700p]]
| |
| |-
| |
| | '''psp:'''
| |
| | [[Game Boy Interface/Standard Edition#PlayStation Portable|PlayStation Portable]]
| |
| |}
| |
| ; {{anchor|--input-gamma}}<code>--input-gamma=<red[:green[:blue]]></code>
| |
| : Set gamma (default: 2.2).
| |
| ; {{anchor|--output-gamma}}<code>--output-gamma=<1.0|1.7|2.2></code>
| |
| : Specify screen gamma (default: 2.2).
| |
| ; {{anchor|--brightness}}<code>--brightness=<red[:green[:blue]]></code>
| |
| : Set lift (default: 0.0).
| |
| ; {{anchor|--contrast}}<code>--contrast=<red[:green[:blue]]></code>
| |
| : Set gain (default: 1.0).
| |
| ; {{anchor|--format}}<code>--format=<ntsc|pal|pal-m|ntsc-50|pal-60|custom|custom-m|hd60|hd50|hd48|hdcustom></code>
| |
| : Set video format. The default is the Video Mode system setting (ntsc, pal-60, pal-m).
| |
| : {| class="wikitable"
| |
| | '''ntsc:'''
| |
| | [[wikipedia:NTSC#NTSC-J|NTSC-J]]
| |
| |-
| |
| | '''pal:'''
| |
| | [[wikipedia:PAL|PAL-B/G/D/K/I]]
| |
| |-
| |
| | '''pal-m:'''
| |
| | [[wikipedia:PAL-M|PAL-M]]
| |
| |-
| |
| | '''ntsc-50:'''
| |
| | [[wikipedia:NTSC#NTSC-N/NTSC50|NTSC-50]]
| |
| |-
| |
| | '''pal-60:'''
| |
| | [[wikipedia:PAL#Multisystem PAL support and "PAL 60"|PAL-60]]
| |
| |-
| |
| | '''hd60:'''
| |
| | [[wikipedia:High-definition television|HDTV]] (60Hz)
| |
| |-
| |
| | '''hd50:'''
| |
| | HDTV (50Hz)
| |
| |-
| |
| | '''hd48:'''
| |
| | HDTV (48Hz)
| |
| |}
| |
| : Note: GCVideo-DVI is only designed to support NTSC-J, PAL-B/G/D/K/I and PAL-60. <br /> AVE N-DOL can only output [[wikipedia:Composite video|CVBS]] or [[wikipedia:S-Video|Y/C]] as NTSC-J, PAL-M or NTSC-50. <br /> AVE P-DOL can only output [[wikipedia:Composite video|CVBS]] as PAL-B/G/D/K/I or PAL-60. <br /> AVE-RVL is only designed to support NTSC-J, PAL-B/G/D/K/I, PAL-M and PAL-60.
| |
| ; {{anchor|--scan-mode}}<code>--scan-mode=<[interlace|quasi-interlace|non-interlace|non-progressive|progressive][,clock2x|no-clock2x][,size2x|no-size2x]></code>
| |
| : Set scan mode. The default is the Progressive Scan Mode system setting (interlace or progressive).
| |
| : {| class="wikitable"
| |
| | '''interlace:'''
| |
| | 15 or 18-22kHz interlaced (480i@60Hz; 576i@50Hz; 720i@48-60Hz), deflickering
| |
| |-
| |
| | '''quasi-interlace:'''
| |
| | 15 or 18-22kHz segmented frame (480sf@30Hz; 576sf@25Hz; 720sf@24-30Hz)
| |
| |-
| |
| | '''non-interlace:'''
| |
| | 15 or 18-22kHz progressive (240p@60Hz; 288p@50Hz; 360p@48-60Hz)
| |
| |-
| |
| | '''non-progressive:'''
| |
| | 31 or 27-33kHz interlaced (960i@60Hz; 1152i@50Hz; 1080i@48-60Hz), field rendering
| |
| |-
| |
| | '''progressive:'''
| |
| | 31 or 27-33kHz progressive (480p@60Hz; 576p@50Hz; 540p@48-60Hz)
| |
| |}
| |
| :; <code>clock2x</code>, <code>no-clock2x</code>
| |
| :: Enable 27MHz pixel clock (default: auto). Enabling doubles the refresh rate for <code>interlace</code> scan modes. Disabling halves the refresh rate for <code>progressive</code> scan modes.
| |
| :: This depend on a compatible [[wikipedia:Video encoder|video encoder]] or transmitter not mangling its input.
| |
| :; <code>size2x</code>, <code>no-size2x</code>
| |
| :: Enable 2× video oversampling (default: auto). Enabling halves the refresh rate. <br /> If the video format's horizontal resolution is less or equal to 682, the internal resolution is doubled instead.
| |
| :: This depend on a compatible [[wikipedia:Video encoder|video encoder]] or transmitter not mangling its input.
| |
| ; {{anchor|--ipv4-address}}<code>--ipv4-address=<aaa.bbb.ccc.ddd></code>
| |
| : Set static IPv4 address.
| |
| ; {{anchor|--ipv4-gateway}}<code>--ipv4-gateway=<aaa.bbb.ccc.ddd></code>
| |
| : Set static IPv4 gateway.
| |
| ; {{anchor|--ipv4-netmask}}<code>--ipv4-netmask=<aaa.bbb.ccc.ddd></code>
| |
| : Set static IPv4 netmask.
| |
| ; {{anchor|--network|--no-network}}<code>--network</code>, <code>--no-network</code>
| |
| : Enable [[Broadband Adapter]] features (default: yes).
| |
| ; <code><path></code>
| |
| : Load ROM.
| |
| </pre>
| |
| ==Changelog== | | ==Changelog== |
| | '''20241026''' |
| | * Updated to mGBA 0.11-8583-279485fc3. |
| | * Resynchronized with Game Boy Interface. |
| | * Fixed loading key mappings. |
| | '''20240618''' |
| | * Updated to mGBA 0.11-8472-2ea11feda. |
| | * Resynchronized with Game Boy Interface. |
| '''20220105''' | | '''20220105''' |
| * Updated to mGBA 0.10-7177-ea1abe2fc. | | * Updated to mGBA 0.10-7177-ea1abe2fc. |
Line 261: |
Line 66: |
| * Fixed stalls induced by N64 Controller support. | | * Fixed stalls induced by N64 Controller support. |
|
| |
|
| ==External Links== | | ==External links== |
| * Official Site - https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA | | * GitHub - https://github.com/extremscorner/emgba |
| * Github - https://github.com/extremscorner/emgba | | * gc-forever - https://www.gc-forever.com/wiki/index.php?title=Enhanced_mGBA |
| | * gc-forever - https://www.gc-forever.com/forums/viewtopic.php?f=13&t=3129 |