VisualBoyAdvance
VisualBoyAdvance (commonly abbreviated as VBA) is a free emulator of the Game Boy, Game Boy Color, and Game Boy Advance handheld game consoles[2] as well as of Super Game Boy and Super Game Boy 2.
Original author(s) | Julian Henry Hitchcock & Michael Henry Watford |
---|---|
Developer(s) | VBA Team |
Stable release | 1.7.2 (Windows) 1.7.1 (Linux, BeOS) 1.7.4 (Mac) / May 25, 2004 |
Preview release | 1.8.0 beta 3
/ October 1, 2005 |
Repository | sourceforge |
Written in | C, C++ |
Operating system | Cross-platform |
Size | 1.4 MB - 1.92 MB |
Available in | English, French, German, Italian, Polish, Portuguese, Chinese, Spanish, Turkish (v.1.7 and above, for Windows only) |
Type | Console emulator |
License | GNU General Public License |
Website | sourceforge |
Original author(s) | Julian Henry Hitchcock & Michael Henry Watford |
---|---|
Developer(s) | VBA-M Development Team |
Stable release | 2.1.4[1]
/ 17 April 2019 |
Repository | https://github.com/visualboyadvance-m/visualboyadvance-m |
Operating system | Cross-platform |
Type | Console emulator |
License | GNU General Public License |
Website | vba-m |
Besides the DirectX version for the Windows platform, there is also one that is based on the free platform independent graphics library SDL. This is available for a variety of operating systems including Linux,[3] BSD, Mac OS X,[4] and BeOS. VisualBoyAdvance has also been ported to AmigaOS 4, AROS, GameCube, Wii, webOS, and Zune HD.[5]
History
The VisualBoyAdvance project was started by a developer under the online alias "Forgotten".[6] When this person left the development of the emulator, the project was handed over to a team named "VBA Team", led by Forgotten's brother. Development on the original VisualBoyAdvance stopped in 2004 with version 1.8.0 beta 3, and a number of forked versions were made by various developers in the years since then, such as VisualBoyAdvance-M.
VisualBoyAdvance-M
VisualBoyAdvance-M, or simply VBA-M, is an improved fork from the inactive VisualBoyAdvance project, adding several features as well as maintaining an up-to-date codebase. After VisualBoyAdvance became inactive in 2004, several forks began to appear such as VBALink, which allowed users to emulate the linking of two Game Boy devices. Eventually, VBA-M was created, which merged several of the forks into one codebase. Thus, the M in VBA-M stands for Merge.[7] There is also a RetroArch/Libretro port of VBA-M's GBA emulation core (without the GB, GBC and SGB cores)[8] as well as a modified version called VBA-Next.[9]
Features
VisualBoyAdvance sports the following features:
- Compatibility with Game Boy, Game Boy Color, and Game Boy Advance ROMs
- Import/export feature of native saved games from and to other emulators
- Full save state support
- Joystick support
- Super Game Boy and Super Game Boy 2 border and color palette support
- Game Boy Printer emulation
- Real-time IPS patching (used mostly to play fan translations)
- Hacking and debugging tools, including loggers, viewers and editor
- The SDL version also includes a Game Boy Advance debugger
- Auto-fire support
- Speed-up key
- Full screen mode support
- Screen capture support
- Full support for GameShark for Game Boy Advance and Code Breaker Advance cheat codes (Windows version only)
- Audio (WAV) and video (AVI) recording
- Also allows recording in a proprietary video format only supported by VisualBoyAdvance and its forked versions
- Graphic filters to enhance display: 2xSaI, Super 2xSaI, Super Eagle, AdvanceMAME, Pixelate, and Motion blur
- GUI skinning support
In addition, VisualBoyAdvance-M adds the following:
- HQ3x/4x pixel filters
- Game Boy linking, over LAN and Internet
In conjunction with the Dolphin GameCube emulator, VBA-M supports linking GameCube and Game Boy Advance titles.[10][11]
Critical security flaw
The VBA emulator is vulnerable to arbitrary code execution through a feature that allows importation of cheat codes from files, which isn't protected against buffer overrun. By importing a malicious XPC file (usually containing a list of GameShark cheat codes), VBA and VBA-rr can execute arbitrary code contained within the file.
Proof-of-concept XPC files have been written for VBA 1.8.0 and VBA-rr,[12] but VBA-M is currently not known to be vulnerable.
See also
References
- Github - Latest Release
- "Visual Boy Advance". The Emulator Zone.
- i"VisualBoyAdvance-SDL". The Linux Game Tome.
- "VisualBoyAdvance 1.7.2". Softonic.
- "Visual Boy Advance GX". Google Code.
- "Visual Boy Advance". NGEmu. Archived from the original on 2009-12-17. Retrieved 2009-11-18.
- "VBA-M (Archived - Now on Github)". SourceForge. Retrieved 2020-10-18.
- https://github.com/visualboyadvance/vbam-libretro
- https://github.com/libretro/vba-next
- "Dolphin Progress Report: March 2015". Dolphin Emulator. 1 April 2015.
- "Preliminary update to the GameCube to GBA link cable emulation. Fixes… · visualboyadvance-m/visualboyadvance-m@f1e3094".
- "VBA 1.8.0 & VBA-RR: Stack buffer overflow in XPC file parser results in code execution". TheZZAZZGlitch. 12 September 2016.