Skip to content

Nintendo Game Boy Advance

Overview

The Game Boy Advance (GBA) application for webЯcade is an emulator for the Game Boy Advance handheld game console.

Anguna by Bite the Chili productions

Controls

The emulator supports one controller. The keyboard and gamepad mappings are listed in the tables below.

Keyboard

Keyboard controls are listed below.

Name
Keys
Comments
Move
A or
B or
Left Shoulder
Right Shoulder
Start
Select The Right Shift Key.
Show Pause Screen

Gamepad

Gamepad mappings are listed below.

Name
Gamepad
Comments
Move  or 
A or
B or
Left Shoulder
Right Shoulder
Start Not available for Xbox and not recommended for iOS (see alternate)

Press the Menu (Start) Button.
Start
(Alternate)
 and  Hold down the Right Trigger and click (press down) on the Right Thumbstick.
Select Not available for Xbox and not recommended for iOS (see alternate)

Press the View (Back) Button.
Select
(Alternate)
 and  Hold down the Right Trigger and click (press down) on the Left Thumbstick.
Show Pause Screen  and  Not available for Xbox and not recommended for iOS (see alternate 3 or 4)

Hold down the Left Trigger and press the Menu (Start) Button.
Show Pause Screen
(Alternate)
 and  Not available for Xbox and not recommended for iOS (see alternate 3 or 4)

Hold down the Left Trigger and press the View (Back) Button.
Show Pause Screen
(Alternate 2)
 and  Not available for Xbox and not recommended for iOS (see alternate 3 or 4)

Hold down the X Button and press the View (Back) Button.
Show Pause Screen
(Alternate 3)
 and  Hold down the Left Trigger and click (press down) on the Left Thumbstick.
Show Pause Screen
(Alternate 4)
 and  Hold down the Left Trigger and click (press down) on the Right Thumbstick.

Battery-backed SRAM

Some Game Boy Advance cartridges include battery-backed SRAM as a means of preserving state between sessions. The Game Boy Advance application supports persisting this SRAM state into the browser's local storage or optionally to cloud-based storage. The SRAM contents will be persisted whenever the pause screen is displayed (or the game is exited). Therefore, the menu should be displayed periodically for games that support battery-backed SRAM to ensure the state is properly persisted.

Feed

This section details how Game Boy Advance application instances can be added to feeds.

Type

The type name for the Game Boy Advance application is vba-m-gba.

Note

The alias gba also currently maps to this application. In the future, the gba alias may be mapped to another Nintendo Game Boy Advance application (different emulator implementation) if it is determined to be a more appropriate default.

Properties

The table below contains the properties that are specific to the Game Boy Advance application. These properties are specified in the props object of a feed item.

Property Type Required Details
rom URL Yes URL to a Game Boy Advance ROM file or a zip file containing a ROM file.
rotation Numeric No How many degrees the screen should be rotated.

Valid values are 0, 90, 180, and 270.
rtc Boolean No Whether the cartridge utilizes a real-time clock.
mirroring Boolean No Whether the cartridge utilizes mirrored memory addresses.
saveType Numeric No The type of save hardware utilized by the cartridge.
  • 0 : Auto Detect
  • 1 : EEPROM
  • 2 : SRAM
  • 3 : Flash
  • 4 : EEPROM + Sensor
  • 5 : None
flashSize Numeric No The size of the flash ram (only applicable for flash save type).

Valid values are 65536 and 131072.
disableLookup Boolean No

Disables looking up a game's settings based on Game ID.

This allows all settings to be overridden even if the game is recognized. This is typically useful for "hacks" that are based on a standard game ID, but have unique settings (use of Real-time clock, etc.).

zoomLevel Numeric No A numeric value indicating how much the display image should be zoomed in (0-40).

This property is typically used to hide the black borders that are present on some games.

Example

The following is an example of a complete feed that consists of a single Game Boy Advance application instance (type value of gba). The rom property value is a URL that points to a Dropbox location that contains the excellent homebrew game Anguna by Bite the Chili productions.

{
  "title": "Game Boy Advance Feed",
  "longTitle": "Nintendo Game Boy Advance Example Feed",
  "categories": [
    {
      "title": "Game Boy Advance Games",
      "longTitle": "Nintendo Game Boy Advance Games",
      "items": [
        {
          "title": "Anguna",
          "type": "gba",
          "props": {
            "rom": "https://dl.dropboxusercontent.com/s/hsx4gu0olyparyn/anguna.gba"
          }
        }
      ]
    }
  ]
}

This example can be tested by adding a feed with the following URL within the webЯcade player:

https://tinyurl.com/sample-gba-feed

References

Back to top