Game Boy Interface/Speedrunning Edition

From GC-Forever Wiki
Jump to navigation Jump to search
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


Controls

Type A (two-handed)

Nintendo GameCube Nintendo GameCube Controller Logitech Speed Force Action
A/B Buttons A/B Buttons or Accelerator/Brake Pedals A/B Buttons
Y/Z Buttons Y/Z Buttons Select
X Button or Start/Pause X Button or Start/Pause Start
+Control Pad or Control Stick +Control Pad or Steering Wheel +Control Pad
L/R Buttons L/R Buttons L/R Buttons
Reset Button B, X and Start/Pause Buttons B, X and Start/Pause Buttons Power Switch
Reset Button X, Y and Start/Pause Buttons
(Hold for 1.5 seconds)
Recalibrate
X, Y and Start/Pause Buttons
(Hold for 3 seconds)
Swap controls
(Only with SNES Controller)
C Stick ↓ Toggle input viewer

Type B (one-handed)

Nintendo GameCube Nintendo GameCube Controller Logitech Speed Force Action
A/B Buttons A/B Buttons or Accelerator/Brake Pedals A/B Buttons
L/Z Buttons Y/Z Buttons Select
R Button or Start/Pause X Button or Start/Pause Start
+Control Pad, Control Stick or C Stick +Control Pad or Steering Wheel +Control Pad
Y/X Buttons L/R Buttons L/R Buttons
Reset Button B, X and Start/Pause Buttons B, X and Start/Pause Buttons Power Switch
Reset Button X, Y and Start/Pause Buttons
(Hold for 1.5 seconds)
Recalibrate
X, Y and Start/Pause Buttons
(Hold for 3 seconds)
Swap controls
(Only with SNES Controller)

Type C (Super Mario World: Super Mario Advance 2)

Nintendo GameCube Nintendo GameCube Controller Logitech Speed Force Action
B/Y or X Buttons A/B Buttons or Accelerator/Brake Pedals A/B Buttons
Z Button Y/Z Buttons Select
Start/Pause X Button or Start/Pause Start
+Control Pad or Control Stick +Control Pad or Steering Wheel +Control Pad
L/R or A Buttons L/R Buttons L/R Buttons
Reset Button B, X and Start/Pause Buttons B, X and Start/Pause Buttons Power Switch
Reset Button X, Y and Start/Pause Buttons
(Hold for 1.5 seconds)
Recalibrate
X, Y and Start/Pause Buttons
(Hold for 3 seconds)
Swap controls
(Only with SNES Controller)
C Stick ↓ Toggle input viewer

Type D (The Legend of Zelda: A Link to the Past)

Nintendo GameCube Nintendo GameCube Controller Logitech Speed Force Action
Y/B Buttons A/B Buttons or Accelerator/Brake Pedals A/B Buttons
R Button or Start/Pause Y/Z Buttons Select
L/Z Buttons X Button or Start/Pause Start
+Control Pad, Control Stick or C Stick +Control Pad or Steering Wheel +Control Pad
X/A Buttons L/R Buttons L/R Buttons
Reset Button B, X and Start/Pause Buttons B, X and Start/Pause Buttons Power Switch
Reset Button X, Y and Start/Pause Buttons
(Hold for 1.5 seconds)
Recalibrate
X, Y and Start/Pause Buttons
(Hold for 3 seconds)
Swap controls
(Only with SNES Controller)

Options

--offset=<x:y>
Set offset. (default: 0:0)
--zoom=<x:y>
Set zoom. (default: 2.0)
--rotate=<0-359>
Set rotation. (default: 0)
--poll=<0-11>
Set polling rate. (default: 1)
--control=<0-3>
Set controller scheme. (default: sram)
--delay-reset=<n>
Set reset delaying. (default: 75)
--delay-video=<n>
Set video buffering. (default: 1)
--movie=<path>, --no-movie
Play input log. (default: no)
--movie-record, --no-movie-record
Record input log. (default: no)
--overlay=<path>, --no-overlay
Set texture palette. (default: frame-srgb.tpl.gz)
--overlay-id=<id>
Set texture palette index. (default: sram)
--overlay-scale=<x:y>
Set texture scale. (default: auto)
--palette=<xxxx-xxxx-xxxx>, --no-palette
Set Super Game Boy color palette. (default: no)
--lut3d=<path>, --no-lut3d
Set 32x32x32 lookup table. (default: auto)
--lut3d-order=<rgb|gbr|bgr>
Set lookup table order. (default: rgb)
--scaler=<nearest|bilinear|oversample|box>
Set image scaling filter. (default: nearest)
--matrix=<identity|gba|gbc|gbi|nds|palm|psp|vba>
Set color matrix. (default: identity)
--input-gamma=<r:g:b>
Set gamma. (default: 2.2)
--output-gamma=<1.0|1.7|2.2>
Set screen gamma. (default: 2.2)
--gamma=<even:odd>
Set gamma correction. (default: 1.0)
--contrast=<r:g:b>
Set gain. (default: 1.0)
--brightness=<r:g:b>
Set bias. (default: 0.0)
--blend=<a>
Set alpha blending. (default: 1.0)
--background=<#rrggbb>
Set background color. (default: #000000)
--vfilter=<m:l:u>, --vfilter-even=<m:l:u>, --vfilter-odd=<m:l:u>
Set vertical filter coefficients. (default: 1.0)
--volume=<l:r>
Set audio gain. (default: 0.75)
--sound=<mono|stereo>
Set sound mode. (default: sram)
--format=<ntsc|pal|pal-m|ntsc-50|pal-60|custom>[,offset=<x:y>][,scaled-size=<w:h>][,size=<w:h>]
Set video format. (default: sram)
--scan-mode=<interlace|quasi-interlace|non-interlace|progressive>[,double-clock[,oversample]]
Set scan mode. (default: sram)
--osd-input[=<x:y>], --no-osd-input
Toggle input viewer. (default: no)
--usb, --no-usb
Toggle USB Gecko. (default: yes)
--enhance, --no-enhance
Toggle Game Boy Player enhancements. (default: no)
<path>
Set Game Boy Advance multiboot. (default: none)

Examples

Color restoration

Mario & Luigi: Superstar Saga

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

--input-gamma=1.
--output-gamma=1.
--contrast=1.1

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.

--matrix=gbc
--input-gamma=1.8
--output-gamma=1.

Mimicking

Game Boy Player Start-up Disc (60Hz)

Included as gbisr.cli.example.

--delay-video=2
--input-gamma=1.
--output-gamma=1.
--contrast=.78125
--vfilter=.5:.25:.25
--format=ntsc,scaled-size=666:448,size=608:448
--scan-mode=interlace
--enhance

Game Boy Player Start-up Disc (50Hz)

--delay-reset=65
--delay-video=2
--input-gamma=1.
--output-gamma=1.
--contrast=.78125
--vfilter=.5:.25:.25
--format=pal,scaled-size=670:530,size=608:448
--scan-mode=interlace
--enhance

Video optimization

Open Source Scan Converter

Included as gbisr-ossc.cli, gbisr-ossc.dol+cli and gbisr-ossc.gci.

--vfilter-even=.5:.5
--vfilter-odd=.5:.0:.5
--format=custom,offset=0,scaled-size=0
--scan-mode=non-interlace

XRGB-mini Framemeister

Included as gbisr-xrgb.cli, gbisr-xrgb.dol+cli and gbisr-xrgb.gci.

--vfilter-even=.5:.5
--vfilter-odd=.5:.0:.5
--format=ntsc,offset=0,scaled-size=0
--scan-mode=non-interlace

Video output

120Hz black frame insertion

--vfilter-even=.5:.5
--vfilter-odd=0.
--scan-mode=non-interlace,double-clock

480p hybrid scanlines

--overlay=frame.tpl.gz
--gamma=2.2:1.
--scan-mode=progressive

480p simple scanlines

--vfilter-even=.5:.5
--vfilter-odd=0.
--scan-mode=progressive

Video scaling

4:3 fullscreen (Game Boy Advance)

--zoom=2.375
--scaler=oversample
--vfilter=.5:.25:.25
--format=ntsc
--scan-mode=interlace

4:3 fullscreen (Game Boy Color)

--zoom=3
--vfilter=.5:.25:.25
--format=ntsc
--scan-mode=interlace

16:9 fullscreen

--zoom=2:3
--format=custom,size=568
--scan-mode=progressive

Changelog

May 18, 2018

  • Fixed rumble protocol handshake.

May 5, 2018

  • Added movie playback.
  • Added Super Game Boy color palette setting.

April 15, 2018

  • Updated GBA-as-GC controller.

April 5, 2018

  • Added movie recording.

March 30, 2018

  • Improved per-field filtering in single-buffered mode.
  • Improved multiboot implementation.
  • Attempted fix for SD card compatibility.

March 25, 2018

  • Added controls swapping for SNES controllers.
  • Added framebuffer size/offset setting.
  • Replaced sample aspect ratio with scaled size.
  • Fixed multiboot to rumble protocol transition.
  • Disabled default multiboot.

March 6, 2018

  • Improved Game Boy sound quality.
  • Improved audio rendering.
  • Reduced audio latency.

February 19, 2018

  • Added background color setting.
  • Added video buffering setting.

February 16, 2018

  • Tweaked input viewer.
  • Changed some argument semantics.

February 14, 2018

  • Added input viewer.

February 11, 2018

  • Reverted audio latency reduction.

February 10, 2018

  • Added color matrix from Gambatte. (requires 1.0 gamma settings)
  • Added mono sound mode.
  • Reduced audio latency.
  • Fixed per-field settings with default video mode.
  • Fixed wiiload autoboot with tiny GBA multiboot ROMs.

February 4, 2018

  • Added Framemeister build due to lack of maintenance.
  • Added 3D LUT auto-generation.
  • Added GBR/BGR LUT order support.
  • Added per-field gamma correction control.
  • Disabled machine checks.

January 28, 2018

  • Updated LUTs by Pokefan531.
  • Improved Game Boy Player driver.
  • Changed default component video modes.
  • Tweaked control type C.

September 10, 2017

  • Added overlay scale setting.
  • Changed zoom scale.

September 9, 2017

  • Fixed one random kernel crash.

September 5, 2017

  • Added GameCube Steering Wheel support.
  • Added Active Life Mat support.
  • Readded DK Bongos support.

September 2, 2017

  • Improved Game Boy Player driver.
  • Changed wiiload server to accept oversized DOLs.
  • Removed DK Bongos support due to raphnet adapter bug.
  • Fixed scaling without a 3D LUT.

August 27, 2017

  • Added DK Bongos support.
  • Improved Game Boy Player driver.

August 12, 2017

  • Adapted control type C for Super Mario World: Super Mario Advance 2.
  • Added control type D for The Legend of Zelda: A Link to the Past.
  • Added per-field vertical filter control.
  • Added PNG 3D LUT.
  • Added LUTs by Pokefan531.
  • Added LUTs from the 3DS Virtual Console. (thanks SuperrSonic)

July 30, 2017

  • Updated GBA-as-GC controller.

July 23, 2017

  • Updated GBA-as-GC controller.
  • Changed reset combo behavior.

July 3, 2017

  • Added CLI append support.

June 24, 2017

  • Added zoom & rotate.
  • Added reset delay.
  • Added reset combo.

April 10, 2017

  • Added component video DAC oversampling.
  • Added reset fade effect.
  • Added TPL overlay.

March 19, 2017

  • Added rumble, disabled by default.
  • Added USB Gecko wiiload server.
  • Added Xboo Communicator.

February 11, 2017

  • Added volume control.
  • Added per-channel settings where possible.
  • Changed volume to 75% to mitigate clipping with AVE-DOL.

November 26, 2016

  • Updated GBA-as-GC controller.

September 7, 2016

  • Added video options.
  • Added control schemes.
  • Added polling rate setting.

May 17, 2016

  • Added rumble to GBA-as-GC controller, requires Drill Dozer or WarioWare: Twisted! cartridge.
  • Improved Game Boy Player driver.
  • Fixed WaveBird Controllers?

April 29, 2016

  • Replaced GBA-as-controller with GBA-as-GC controller.

March 28, 2016

  • Fixed GameCube Controller hotplugging.
  • Fixed no GameCube Controller issue.

March 26, 2016

  • Added U+D/L+R cancelling.
  • Added GBA-as-controller support. (thanks FIX94!)
  • Recognized a half-press of the analog triggers.
  • Disabled GameCube Controller hotplugging for now.

August 16, 2015

  • Added memory card distribution files.
  • Compressed with LZMA2.
  • Reduced coil whine.

July 15, 2015

  • Fixed Game Boy Player detection issue.

May 8, 2015

  • Initial release.