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

From GC-Forever Wiki
Jump to navigation Jump to search
Line 428: Line 428:
  
 
* Fixed rumble protocol handshake.
 
* 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 ===
 
=== May 8, 2015 ===

Revision as of 00:54, 19 May 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


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.