Difference between revisions of "Game Boy Interface/Standard Edition"

From GC-Forever Wiki
Jump to navigation Jump to search
Line 151: Line 151:
  
 
; <code>--aspect=<w:h></code>
 
; <code>--aspect=<w:h></code>
: Set screen aspect ratio. (default: sram)
+
: Specify screen aspect ratio. (default: sram)
 
; <code>--offset=<x:y></code>
 
; <code>--offset=<x:y></code>
 
: Set default offset. (default: sram)
 
: Set default offset. (default: sram)
Line 204: Line 204:
 
: Record input log. (default: no)
 
: Record input log. (default: no)
 
; <code>--overlay=<path></code>, <code>--no-overlay</code>
 
; <code>--overlay=<path></code>, <code>--no-overlay</code>
: Set texture palette. (default: frame.tpl.gz)
+
: Load texture palette. (default: frame.tpl.gz)
 
; <code>--overlay-id=<ID></code>
 
; <code>--overlay-id=<ID></code>
 
: Set texture palette index. (default: sram)
 
: Set texture palette index. (default: sram)
Line 245: Line 245:
 
: Set gamma. (default: 2.2)
 
: Set gamma. (default: 2.2)
 
; <code>--output-gamma=<1.0|1.7|2.2></code>
 
; <code>--output-gamma=<1.0|1.7|2.2></code>
: Set screen gamma. (default: 2.2)
+
: Specify screen gamma. (default: 2.2)
 
; <code>--contrast=<red[:green[:blue]]></code>
 
; <code>--contrast=<red[:green[:blue]]></code>
 
: Set gain. (default: 1.0)
 
: Set gain. (default: 1.0)
Line 257: Line 257:
 
: Set video format. (default: sram)
 
: Set video format. (default: sram)
 
; <code>--scan-mode=<[interlace|quasi-interlace|non-interlace|non-progressive|progressive][,clock2x][,size2x]></code>
 
; <code>--scan-mode=<[interlace|quasi-interlace|non-interlace|non-progressive|progressive][,clock2x][,size2x]></code>
: Set scan mode. (default: sram)
+
: Set scanning mode. (default: sram)
 
; <code>--osd</code>, <code>--no-osd</code>
 
; <code>--osd</code>, <code>--no-osd</code>
: Toggle on-screen display. (default: yes)
+
: Show on-screen display. (default: yes)
 
; <code>--ipv4-address=<aaa.bbb.ccc.ddd></code>
 
; <code>--ipv4-address=<aaa.bbb.ccc.ddd></code>
 
: Set static IPv4 address. (default: dhcp)
 
: Set static IPv4 address. (default: dhcp)
Line 267: Line 267:
 
: Set static IPv4 netmask. (default: dhcp)
 
: Set static IPv4 netmask. (default: dhcp)
 
; <code>--network</code>, <code>--no-network</code>
 
; <code>--network</code>, <code>--no-network</code>
: Toggle networking. (default: yes)
+
: Enable [[Broadband Adapter]] features. (default: yes)
 
; <code>--stream[=<aaa.bbb.ccc.ddd>]</code>, <code>--no-stream</code>
 
; <code>--stream[=<aaa.bbb.ccc.ddd>]</code>, <code>--no-stream</code>
 
: Stream video to IP address on UDP port 1234. (default: no)
 
: Stream video to IP address on UDP port 1234. (default: no)
 
; <code>--enhance</code>, <code>--no-enhance</code>
 
; <code>--enhance</code>, <code>--no-enhance</code>
: Toggle Game Boy Player enhancements. (default: yes)
+
: Enable Game Boy Player enhancements. (default: yes)
 
; <code><path></code>
 
; <code><path></code>
: Set Game Boy Advance multiboot. (default: default.mb.gz)
+
: Load Game Boy Advance multiboot ROM. (default: default.mb.gz)
  
 
== Comparisons ==
 
== Comparisons ==

Revision as of 13:35, 2 June 2018

Game Boy Interface
Information
Author(s) Extrems
Type Utility
Version Rolling release
Licence All rights reserved
Links
Download main package
Download extra package
Website
Discussion
Source

The author's original vision, Game Boy Interface Standard Edition features an advanced video renderer exercising the GameCube hardware to its fullest.

Controls

On-screen display

Nintendo GameCube Nintendo GameCube Controller Logitech Speed Force Action
A/B Buttons A/B Buttons Hide on-screen display
X Button X Button Toggle on-screen display
Y Button Y Button Revert offset/zoom
Z Button Z Button Take screenshot
Start/Pause
(Hold for 1 second)
Start/Pause
(Hold for 1 second)
Exit
+Control Pad +Control Pad Offset
L/R Buttons L/R Buttons Zoom
Reset Button X, Y and Start/Pause Buttons
(Hold for 1.5 seconds)
Recalibrate
Reset Button Save movie

In-game

Nintendo GameCube Nintendo GameCube Controller Logitech Speed Force Action
A/B Buttons A/B Buttons or Accelerator/Brake Pedals A/B Buttons
X Button X Button Toggle on-screen display
Y Button Y Button Turbo
Z Button Z Button Select
Start/Pause Start/Pause Start
+Control Pad or Control Stick +Control Pad or Steering Wheel +Control Pad
L/R Buttons L/R Buttons L/R Buttons
(Only for Game Boy Advance)
Reset Button Power Switch
DK Bongos Controller Active Life Mat Controller Action
Bottom Right/Left Orange Up/Right A/B Buttons
Hand Clap - Button Select
Start/Pause + Button Start
Top Right Blue or Orange Square +Control Pad Right
Top Left Blue Left +Control Pad Left
Blue Up +Control Pad Up
Blue or Orange Down +Control Pad Down

Options

--aspect=<w:h>
Specify screen aspect ratio. (default: sram)
--offset=<x:y>
Set default offset. (default: sram)
--zoom=<x:y>
Set default zoom. (default: sram)
--rotate=<0-359>
Set default rotation. (default: 0)
--poll=<0-11>
Set polling rate. (default: 1)
0: VSync
1: 1000Hz
2: 500Hz
3: 350Hz
4: 300Hz
5: 250Hz
6: 200Hz
7: 150Hz
8: 150Hz
9: 125Hz
10: 100Hz
11: 100Hz
--turbo=<on:off>
Set autofire interval. (default: 3)
--movie=<path>, --no-movie
Play input log. (default: no)
--movie-record, --no-movie-record
Record input log. (default: no)
--overlay=<path>, --no-overlay
Load texture palette. (default: frame.tpl.gz)
--overlay-id=<ID>
Set texture palette index. (default: sram)
--overlay-scale=<x:y>
Set texture scale. (default: auto)
--filter=<none|scale2x[ex|plus]|eagle2x|scan2x|normal2x|normalnx>
Set image doubling filter. (default: normalnx)
--dither=<none|threshold|bayer8x8|bayer4x4|bayer2x2|cluster8x8|cluster4x4>
Set dithering algorithm. (default: threshold)
--scaler=<nearest|bilinear|oversample|box>
Set image scaling filter. (default: bilinear)
--matrix=<identity|gba|gbc|gbi|nds|palm|psp|vba>
Set color matrix. (default: gbi)
identity: Identity matrix
gba: Game Boy Advance (by Pokefan531)
gbc: Gambatte/higan (requires --input-gamma=1.0 and --output-gamma=1.0)
gbi: Game Boy Interface
nds: Nintendo DS (by Pokefan531)
palm: Palm Treo 700p (by Pokefan531)
psp: PlayStation Portable (by Pokefan531)
vba: VisualBoyAdvance-M (by Pokefan531)
--input-gamma=<red[:green[:blue]]>
Set gamma. (default: 2.2)
--output-gamma=<1.0|1.7|2.2>
Specify screen gamma. (default: 2.2)
--contrast=<red[:green[:blue]]>
Set gain. (default: 1.0)
--brightness=<red[:green[:blue]]>
Set bias. (default: 0.0)
--volume=<left[:right]>
Set audio gain. (default: 0.75)
--sound=<mono|stereo>
Set sound mode. (default: sram)
--format=<ntsc|pal|pal-m|ntsc-50|pal-60|custom|hd60|hd50|hd48>
Set video format. (default: sram)
--scan-mode=<[interlace|quasi-interlace|non-interlace|non-progressive|progressive][,clock2x][,size2x]>
Set scanning mode. (default: sram)
--osd, --no-osd
Show on-screen display. (default: yes)
--ipv4-address=<aaa.bbb.ccc.ddd>
Set static IPv4 address. (default: dhcp)
--ipv4-gateway=<aaa.bbb.ccc.ddd>
Set static IPv4 gateway. (default: dhcp)
--ipv4-netmask=<aaa.bbb.ccc.ddd>
Set static IPv4 netmask. (default: dhcp)
--network, --no-network
Enable Broadband Adapter features. (default: yes)
--stream[=<aaa.bbb.ccc.ddd>], --no-stream
Stream video to IP address on UDP port 1234. (default: no)
--enhance, --no-enhance
Enable Game Boy Player enhancements. (default: yes)
<path>
Load Game Boy Advance multiboot ROM. (default: default.mb.gz)

Comparisons

Image doubling

Pokémon Sapphire

Examples

Color restoration

Mario & Luigi: Superstar Saga

This game reduces contrast when played with Game Boy Player enhancements.

--overlay=frame-srgb.tpl.gz
--matrix=identity
--input-gamma=1.
--output-gamma=1.
--contrast=1.1

Super Mario Bros. 3: Super Mario Advance 4

This game reduces gamma when played without Game Boy Player enhancements.

--input-gamma=2.8

The Legend of Zelda: Oracle of Ages/Seasons

This game reduces gamma when played on a Game Boy Advance. Due to Game Boy Color limitations, only shadows can be restored perfectly.

--input-gamma=4.

This can be combined with Gambatte/higan's color correction as a special case.

--overlay=frame-srgb.tpl.gz
--matrix=gbc
--input-gamma=1.8
--output-gamma=1.

Mimicking

Game Boy Player Start-up Disc

Included as gbi.cli.example.

--aspect=4:3
--overlay=frame-srgb.tpl.gz
--dither=none
--matrix=identity
--input-gamma=1.
--output-gamma=1.
--contrast=.78125
--no-osd

Wii U Virtual Console

--aspect=16:9
--zoom=3
--no-overlay
--dither=none
--matrix=identity
--input-gamma=1.
--output-gamma=1.
--contrast=.75
--no-osd
--no-enhance

Video optimization

Open Source Scan Converter

--aspect=4:3
--offset=0
--zoom=4
--filter=none
--scaler=nearest
--format=hd60
--scan-mode=non-interlace

FAQs

How do I change Game Paks?

  1. Hold the Reset Button.
  2. Slide the Game Pak Ejector.
  3. Insert a Game Pak into the Game Pak Slot.
  4. Release the Reset Button.

Can I play Game Boy Advance Video?

Yes. You can do so by disabling Game Boy Player enhancements (--no-enhance), or holding a direction while the Game Boy Player logo is visible.

Why is there motion blur? Can I turn it off?

It removes stuttering caused by mismatches between the Game Boy Advance and the display refresh rate. It cannot be turned off. It can be reduced by using a 120Hz mode, but it's most effective on a sample-and-hold display.

Is this an emulator? Can I play ROMs?

No, but there's Enhanced mGBA if you're looking for one.

What happens when I exit Game Boy Interface?

The Game Boy Player keeps running and you're returned to autoexec.dol, or the Nintendo GameCube Main Menu.

Changelog

May, 2018

  • Added 360p, 720i, 720p and 1080i video modes.
  • Changed scan mode semantics.
  • Changed default aspect ratio for progressive scan to 16:9.
  • Fixed Game Boy Player advertisement.
  • Fixed rumble protocol handshake.

April, 2018

  • Added movie recording/playback.
  • Updated GBA-as-GC controller.

March, 2018

  • Improved multiboot implementation.
  • Improved Game Boy sound quality.
  • Improved audio rendering.
  • Reduced audio latency.
  • Changed default color matrix to GBI's original.
  • Fixed SD card compatibility.
  • Fixed multiboot to rumble protocol transition.

February, 2018

  • Added color matrix from Gambatte.
  • Added mono sound mode.
  • Fixed wiiload autoboot with tiny GBA multiboot ROMs.
  • Disabled machine checks.

January, 2018

  • Updated color matrices by Pokefan531.
  • Improved Game Boy Player driver.

September, 2017

  • Added overlay scale setting.
  • Added Logitech Speed Force support.
  • Added Active Life Mat support.
  • Improved Game Boy Player driver.
  • Changed wiiload server to accept oversized DOLs.
  • Fixed one random kernel crash.

August, 2017

  • Added DK Bongos support.
  • Updated color matrices by Pokefan531.
  • Improved Game Boy Player driver.

July, 2017

  • Added CLI append support.
  • Updated color matrices by Pokefan531.
  • Updated GBA-as-GC controller.

April, 2017

  • Added component video DAC oversampling.
  • Added experimental 960i and 1152i video modes.

March, 2017

  • Added temporal/spatial dithering.
  • Added color matrices by Pokefan531.
  • Added TPL overlay support to wiiload server.
  • Changed default color matrix to Pokefan531's.
  • Changed default gamma to 2.2.
  • Optimized NormalNx filter.

February, 2017

  • Added volume control.
  • Added per-channel settings where possible.
  • Changed volume to 75% to mitigate clipping.
  • Fixed framebuffer clearing for 576i.

November, 2016

  • Updated GBA-as-GC controller.
  • Optimized Scale2xEx filter.

October, 2016

  • Added Scale2xEx and Scale2xPlus filters.
  • Added oversample and box scalers.
  • Added basic video streaming.
  • Added Remote RetroPad support.
  • Optimized video rendering.

September, 2016

  • Added polling rate setting.

May, 2016

  • Updated GBA-as-GC controller.
  • Improved Game Boy Player driver.
  • Fixed WaveBird Controllers.

April, 2016

  • Added GBA multiboot support to wiiload server.
  • Added Xboo Communicator.
  • Added BIOS/ROM dumper.
  • Replaced GBA-as-controller with GBA-as-GC controller.

March, 2016

  • Added GBA-as-controller support.
  • Recognized a half press of the analog triggers.

December, 2015

  • Expanded video options. Now includes 25, 30, 100 and 120 Hz modes.
  • Added gamma-encoded borders for special use.

November, 2015

  • Added (GZipped) TPL overlay support.
  • Added all 20 borders from the Game Boy Player Start-up Disc.

October, 2015

  • Added Scale2x, Eagle2x, Scan2x and Normal2x filters.

August, 2015

  • Added executable compression.
  • Added return to autoexec.dol.
  • Added memory card distribution files.
  • Added auto-cropping for Game Boy screenshots.
  • Optimized video rendering.
  • Reduced coil whine.

July, 2015

  • Added rumble.
  • Added hold to quit.
  • Added screenshot saving.
  • Added SNTP broadcast listener.
  • Changed default video mode to interlaced.
  • Fixed Game Boy Player detection.

May, 2015

  • Changed all 60 Hz modes to have 486 active lines.

March, 2015

  • Added digital PWM sound.
  • Added turbo button.
  • Fixed 288p.