logo
Menu
Main
About
Search
Submit News
News Archive
Forum
Contact Us

Tools
Games/Demos
Sourcecode
Documentation
Hardware
Developers
mGBA 0.9.0
By endrift [Tuesday March 30th 01:19:43 UTC 2021]
Tools : Emulator
Permalink
mGBA is a new generation of Game Boy Advance emulator. The project started in April 2013 with the goal of being fast enough to run on lower end hardware than other emulators support, without sacrificing accuracy or portability. Even in the initial version, games generally played without problems. mGBA has only gotten better since then, and now boasts being the most accurate GBA emulator around.

Other goals include accurate enough emulation to provide a development environment for homebrew software, a good workflow for tool-assist runners, and a modern feature set for emulators that older emulators may not support.

mGBA is licensed under the Mozilla Public License 2.0, and the code can be found on GitHub.

Up-to-date news and more downloads can be found at mgba.io.

After the seemingly longest year possible, mGBA 0.9.0 is finally here. It’s been a difficult year for the entire world and that definitely had an impact on development this cycle too. While progress marched on with mGBA for the first few months of last year, I was able to release 0.8.1 through 0.8.3 picking up most of the bug fixes I made along the way towards 0.9. After several months there were lots changed under the surface, but not many user visible new features. In the interest of releasing an properly exciting new version of mGBA I decided to hold onto releasing 0.9 until it was polished and featureful. During the latter half of the year I finally started a push for features, and released 0.8.4 as the last of the 0.8 line. Remember, mGBA currently only has one major developer, so things can take quite a long time to finish, and if I’m not actively working on it any given week then there isn’t progress made that week. While this did lead to 0.9 being effectively “coming soon” for many, many months in a row, it has led to what I believe to be an extremely polished release, so I’m now happy to announce that mGBA 0.9.0 is done and out.

Though it has dozens and fixes and tweaks under the hood, there are some pretty major features to announce, including full e-Reader support, some new enhanced utilities such as a save type converter and a bug report tool, and more. The most exciting features added in this release are detailed after the cut, along with a full change log.

Supported Platforms:
• Windows Vista or newer
• OS X 10.7 (Lion)[3] or newer
• Linux
• FreeBSD
• Nintendo 3DS
• Nintendo Switch
• Wii
• PlayStation Vita

Major Features:
• Single Pak game linking now works with most games.
• Accuracy and speed improvements for the OpenGL enhancement renderer.
• Running mGBA for Wii as an injected Wii U VC title now supports the game pad.
• Preliminary support for Game Boy cartridges with MBC6 flash memory (for Net de Get @ 100) and additional unlicensed mappers.
• A bug compatibility mode for ROM hacks that were only tested in VBA enables many broken ROM hacks to work in mGBA now, too. This mode is enabled by default for FireRed ROM hacks and must be manually enabled in overrides for other games.
• Dozens and dozens of bug fixes.

Features:
• e-Reader card scanning
• New tool for converting between different save game formats
• WebP and APNG recording
• Separate overrides for GBC games that can also run on SGB or regular GB
• Game Boy Player features can be enabled by default for all compatible games
• Frame and I/O viewer support for Game Boy
• Bug report tool for gathering information helpful for reporting bugs
• Mute option in homebrew ports
• Status indicators for fast-forward and mute in homebrew ports
• VBA bug compatibility mode for ROM hacks that don’t work on real hardware
• Read-only support for MBC6 flash memory
• New unlicensed GB mappers: Pokémon Jade/Diamond, BBD, and Hitek
• Stack tracing tools in ARM debugger (by ahigerd)
• Command scripts for CLI debugger (by ahigerd)
• Scheduled event dumping in CLI debugger
• ARM disassembler now resolves addresses to symbol names
• Add Game Boy Player feature support to ports
• Individual window types can now be toggled in debugging views
• Support for the Wii U GamePad when running as an injected VC title

Emulation fixes:
• ARM: Fix ALU reading PC after shifting
• ARM: Fix STR storing PC after address calculation
• ARM: Fix Addressing mode 1 shifter on rs == pc (fixes #1926)
• ARM: Fix long multiply-and-accumulate register write order (fixes #1956)
• ARM: Fix long and accumulate multiply timing
• GB: Partially fix timing for skipped BIOS
• GB: Downgrade DMG-only ROMs from CGB mode even without boot ROM
• GB: Fix marking BIOS as unmapped when skipping BIOS (fixes #2061)
• GB Audio: Fix serializing sweep time
• GB Audio: Fix some channel 4 timing edge cases
• GB MBC: Fix MBC1 mode changing behavior
• GB MBC: Fix some MBC3 bit masking
• GB Video: Fix state after skipping BIOS (fixes #1715 and #1716)
• GBA: Fix timing advancing too quickly in rare cases
• GBA: Clear GBP connection on reset
• GBA Audio: Revamp FIFO emulation (fixes #356, #875, #1847)
• GBA BIOS: Implement dummy sound driver calls
• GBA BIOS: Improve HLE BIOS timing
• GBA BIOS: Fix reloading video registers after reset (fixes #1808)
• GBA BIOS: Make HLE BIOS calls interruptable (fixes #1711 and #1823)
• GBA BIOS: Fix invalid decompression bounds checking
• GBA DMA: Linger last DMA on bus (fixes #301 and #1320)
• GBA DMA: Fix ordering and timing of overlapping DMAs
• GBA I/O: Green swap register should be readable
• GBA I/O: Ignore high bits on IME
• GBA Memory: Improve gamepak prefetch timing
• GBA Memory: Stall on VRAM access in mode 2 (fixes #190)
• GBA Memory: Improve robustness of Matrix memory support
• GBA Memory: Mark Famicom Mini games 22 through 28 as non-mirroring
• GBA Memory: Return correct byte for odd ROM open bus addresses
• GBA Memory: Improved AGBPrint emulation of edge cases (fixes #1867)
• GBA Memory: Fix masking of misaligned jumps
• GBA Serialize: Fix alignment check when loading states
• GBA SIO: Fix copying Normal mode transfer values
• GBA SIO: Fix Normal mode being totally broken (fixes #1800)
• GBA SIO: Fix deseralizing SIO registers
• GBA SIO: Fix hanging on starting a second multiplayer window (fixes #854)
• GBA SIO: Fix Normal mode transfer start timing (fixes #425)
• GBA Timers: Fix toggling timer cascading while timer is active (fixes #2043)
• GBA Video: Latch scanline at end of Hblank (fixes #1319)
• GBA Video: Fix Hblank timing
• GBA Video: Implement green swap (fixes #1609)
• GBA Video: Emulate sprite cycle limits in OpenGL renderer (fixes #1635)
• GBA Video: Fix OBJWIN erratic rendering in OpenGL renderer
• GBA Video: Fix x offset in 256-color BG mosaic (fixes #1684)
• GBA Video: Fix transposed BG mosaic parameters in GL renderer
• SM83: Emulate HALT bug
• SM83: Improve mid-M-cycle interrupts
• SM83: HALT should not consume an extra T-state

Other fixes:
• 3DS: Fix thread cleanup
• All: Improve export headers (fixes #1738)
• Cheats: Fix indirect write cheats (fixes #2026)
• CMake: Fix build with downstream minizip that exports incompatible symbols
• CMake: Link with correct OpenGL library (fixes #1872)
• Core: Ensure ELF regions can be written before trying
• Core: Fix threading improperly setting paused state while interrupted
• Core: Fix loading ELF files that have unexpected empty program headers
• Core: Fix destroying an mVL with an invalid channel count
• Debugger: Don’t skip undefined instructions when debugger attached
• Debugger: Close trace log when done tracing
• Debugger: Fix change watchpoints (fixes #1947)
• Debugger: Call CLI debugger system init
• FFmpeg: Fix some small memory leaks
• FFmpeg: Fix encoding of time base
• GB: Fix crash when changing ROM while in banked address space
• GB: Fix loading model overrides
• GB MBC: Force minimum SRAM size on rare MBCs that always have SRAM
• GB Serialize: Fix crash when loading pre-0.7 SGB savestates
• GB Video: Fix SGB video logs
• GB Video: Discard SGB packets in non-SGB mVLs
• GB Video: Fix deserializing negative LX state
• GB Video: Don’t rendering negative batches
• GBA: Fix loading multiboot ELF files (fixes #1949)
• GBA: Fix loading subsequent save files (fixes #2067)
• mGUI: Don’t attempt to preload files larger than can fit in RAM
• Qt: Force OpenGL paint engine creation thread (fixes #1642)
• Qt: Fix static compilation in MinGW (fixes #1769)
• Qt: Fix a race condition in the frame inspector
• Qt: Load/save bytes from memory viewer in the order visible (fixes #1900)
• Qt: Fix running proxied video if it gets pushed to the main thread
• Qt: Fix game display sometimes disappearing after closing load/save state screen
• Qt: Fix cancelling pausing before the frame ends
• Qt: Fix gamepad event dispatching (fixes #1922)
• Qt: Pre-attach GDB stub when launching with -g (fixes #1950)
• Qt: Fix crash when editing shortcuts with none selected (fixes #1964)
• Qt: Fix crashing when no OpenGL context can be obtained
• Qt: Fix issues with I/O viewer not properly synchronizing state
• Qt: Fix loading a new game crashing on Wayland (fixes #1992)
• Qt: Fix inability to clear hat bindings
• SM83: Simplify register pair access on big endian
• SM83: Disassemble STOP as one byte
• Switch: Fix GB game height in pixel accurate mode (fixes #2073)
• Wii: Fix crash on unloading irregularly sized GBA ROMs

Misc:
• 3DS: Use “wide mode” where applicable for slightly better filtering
• 3DS: Batch directory reads
• Core: Add savedataUpdated callback
• Core: Add shutdown callback
• Core: Rework thread state synchronization
• Core: Improve support for ROM patch cheats, supporting disabling overlapping patches
• Core: Adding to library is now recursive
• GB: Allow pausing event loop while CPU is blocked
• GB: Add support for sleep and shutdown callbacks
• GB: Redo double speed emulation (closes #1515)
• GB: Support loading CGB-on-AGB boot ROM
• GB Audio: Add channel 4 batching back (fixes #1313)
• GB Core: Return the current number of banks for ROM/SRAM, not theoretical max
• GB I/O: Implement preliminary support for PCM12/PCM34 (closes #1468)
• GB MBC: Remove unused SRAM size
• GBA: Allow pausing event loop while CPU is blocked
• GBA BIOS: Division by zero should emit a FATAL error
• GBA Cheats: Allow unlimited ROM patch-type codes per set
• GBA Video: Convert OpenGL VRAM texture to integer
• GBA Video: Skip attempting to render offscreen sprites in OpenGL
• GBA Video: New GL palette approach, no more batch splitting on palette edits
• GBA Video: Avoid integer division using reciprocal tricks
• Debugger: Keep track of global cycle count
• FFmpeg: Add looping option for GIF/APNG
• FFmpeg: Add CRF support for applicable codecs
• mGUI: Show battery percentage
• mGUI: Skip second scan loop when possible
• mGUI: Improve loading speed (fixes #1957)
• Qt: Renderer can be changed while a game is running
• Qt: Add hex index to palette view
• Qt: Add transformation matrix info to sprite view
• Qt: Memory viewer now supports editing decimal values directly (closes #1705)
• Qt: Add copy button to GB printer dialog
• Qt: Window title updates can be disabled (closes #1912)
• Qt: Redo OpenGL context thread handling (fixes #1724)
• Qt: Discard additional frame draws if waiting fails
• Qt: Unify monospace font usage
• Qt: Add button to jump to log settings
• Qt: Use relative paths in portable mode when applicable (fixes #838)
• Qt: Better initial shortcut editor column sizes
• SDL: Fall back to sw blit if OpenGL init fails
• Switch: Optimize font rendering (fixes #2078)
• Switch: Allow switching between CPU and GPU renderers without reloading
• Util: Reset vector size on deinit
• VFS: Change semantics of VFile.sync on mapped files (fixes #1730)

Download: mGBA-0.9.0-win32.zip

 
no$gba v3.04
By Martin Korth [Wednesday March 24th 22:11:56 UTC 2021]
Tools : Emulator
Permalink
no$gba is a Gameboy Advance / NDS / DSi emulator & debugger for Windows.

The no$gba debugger is a powerful programming tool for professional developers. If you are a developer, please see no$gba homepage for more info:
https://problemkaputt.de/gba.htm

23 Mar 2021 - version 3.04
• web: released new gbatek version with separate htm pages per chapter
• help engine: allows to export gbatek to multple chapter-name.htm pages
• help engine: added search/prev/next functions, and goto prev/next chapter
• help engine: save_as adds vgwort markers to htm pages (for usage stats)
• debug: added simple ARM CPU tracelog function (in tty debugmsg window)
• debug: added nds-wifi IE/IF interrupt enable/flags (in io map window)
• nds-ir-help: cartridge infrared port SPI commands and memory map
• nds-ir-help: activity meter IR commands and memory map
• nds-ir-help: p-walter IR commands, memory map, LCD and Accel registers
• nds-ir-help: component lists for infrared carts and pedometers
• nds-ir-help: H8/386 exception vectors and SFRs, H8/300H registers and opcodes
• nds-cart-help: SanDisk rom supports max 200h-byte blocks (padded with FFh)
• dsi-i2c-help: added ACK/NACK notes (thanks lidnariq)
• nds-wifi-help: much better specs for nintendo beacons (zone and download play)
• nds-wifi-help: much better specs for ds download play transfer protocol
• nds-wifi-help: added CMD/REPLY multiplay specs (thanks Arisotura)
• nds-wifi-emu: multiplay cmd/reply transfers (semi-stable)
• nds-wifi-emu: data frame rxhdr cmd/reply type, and txhdr reply status
• nds-wifi-emu: data frame rxhdr bssid match flag (per from/to sta/ds)
• nds-wifi-emu: rxfilter for da=mac, and broadcast with/without bssid=bssid
• cmdline: added fullscreen mode commandline switch (see /? for all switches)
• multimachine: mount_system (and init MAC address) now after init machine_id
• multimachine: fixed vram-remapping on add machne (moved after chain_in arm7)
• multimachine: fixed crash on non-existing sinline-dealloc on nds7 side
• multimachine: fixed 2-player no$gba.ini dsi-detect crash (thanks Lorenzo)


Download: no$gba34.zip

 
Leaf Visual Novel System v0.1 Alpha
By laqieer [Wednesday March 17th 09:46:11 UTC 2021]
Games : Misc
Permalink

Create your own games on GBA without coding! No programming skills are required!

Leaf Visual Novel System for GBA is a VN/AVG/ADV/Gal game engine on GBA. It comes with a demo project.

Messages, events and animations are written in Script Markup Language.

Features:
• Story branching
• Save & load at any point
• Skip to the next branch point & return to the previous branch point freely
• Environment configuration
• Logging

For more information check: https://github.com/laqieer/gbalvns

Download: gbalvns-0.1-alpha.zip

 
armips assembler v0.11
By Kingcom [Thursday March 11th 01:13:10 UTC 2021]
Tools : Build
Permalink
The assembler includes full support for the MIPS R3000, MIPS R4000, Allegrex and RSP instruction sets, partial support for the EmotionEngine instruction set, as well as complete support for the ARM7 and ARM9 instruction sets, both THUMB and ARM mode. Among the other features of the assembler are:

• a full fledged C-like expression parser. It should behave exactly like in any C/C++ code, including all the weirdness. All immediate values can be specified by an expression, though some directives can't use variable addresses including labels
• you can open several files in a row, but only one output file can be open at any time. You can specify its address in memory to allow overlay support. Any file can cross-reference any other included file
• local, static, and global labels (see 4.3)
• table support for user defined text encodings (see 4.7)
• several MIPS macros to make writing code easier and faster (see 5.1)
• user defined macros (see 6.3)
• built-in checks for possible load delay problems (see 4.6)
• optional automatic fix for said problems by inserting a nop between the instructions
• output of the assembled code to a text file, with memory addresses and origin (see 1.1)
• a directive to ensure that data is not bigger than a user defined size (see 4.8)

Version 0.11 Change log:
• new .aligna directive for absolute address alignment
• new expression functions: org(label), orga(label), headersize(label)
• new expression functions: min and max
• fixed major bug in MIPS LO/HI ELF symbol relocation
• COP2, TLB*, RFE instructions added to PSX
• fixed output of RSP VMOV/VRSQ*/VRCP* instructions
• RSP CTC2/CFC2 control register name support added
• fixed edge case bugs in ARM shift handling
• new -definelabel command line argument for defining label
• -equ command line option now normalizes the case of the name
• additional validations of command line arguments
• relativeinclude settings now respected in table directives
• fixed bugs in float exponential notation parsing
• fixed NaN and string comparisons with <, <=, >, >=
• negative initial header sizes now allowed (with warnings)
• correct line and column numbers for equ invocations
• other bugfixes and enhancements

Check the homepage for the source code & more information here: https://github.com/Kingcom/armips

Download: armips-v0.11.0-windows-x86.zip

 
VGBA 6.4
By Marat Fayzullin [Wednesday March 10th 22:01:10 UTC 2021]
Tools : Emulator
Permalink
VGBA-Windows and VGBA-Linux are free for everyone to use and share.

The latest VGBA, released on March 10 2021, enables most command line options in the Windows version and adds optional framerate display. I've also fixed random audio initialization failures on Windows. The VGBA-Android version is also available for your phones, tablets, and TV sets.

If you like VGBA-Windows and VGBA-Linux, and would like to support their further development, consider downloading VGBA-Android for your phone or tablet. The Android version comes with many cool extras, such as built-in Cheatopedia with codes for dozens of popular games, State Exchange for exchanging gameplay states with other users, and more. Give it a try and report any encountered problems in the discussion group.

The complete list of features and the list of new features and fixes can be found in the documentation.

What is Virtual GameBoy Advance?
Virtual GameBoy Advance (VGBA) is a program that emulates Nintendo's GameBoy Advance on your computer. It runs GameBoy Advance games on PCs, TVs, phones, tabets, or just about any other sufficiently fast gadget. It also helps debugging GameBoy Advance software without using a costly development system. I have previously written another emulator, VGB, that runs older GameBoy and GameBoy Color games. Because GameBoy Advance has completely different hardware, I had to write a new emulator for it, and VGBA runs only GameBoy Advance games. As far as I know, when I released VGBA in 2000, it was the first GameBoy Advance emulator in the world, soon to be joined by other emulators.

You can find the latest version of VGBA here: https://fms.komkon.org/VGBA/

Download: VGBA64-Windows-bin.zip

 
Google-Dino-Advance
By fritzem [Tuesday March 2nd 02:55:06 UTC 2021]
Games : Platform
Permalink

Google Dino Advance is a recreation of the google dinosaur game for Nintendo's 2001 handheld: the Gameboy Advance.

Controls:
Up on the D-pad and the A button make Dino jump, down on the D-pad crouches or speeds up Dino's fall.

Notes:
Referenced the original chromium source heavily. Game has been balanced to run as the actual game plays in a 240p sized window. The max speed was scaled down the same way the starting speed is scaled down in the original game. All game art is property of Google :)

Source code is available here: https://github.com/fritzem/Google-Dino-GBA
You can build a rom of your own with the included makefile. Requires devkitPro and the TONC library.

Download: Google-Dino-Advance.zip

 
GBACRAFT V1.0
By 3DSage [Monday February 15th 21:03:31 UTC 2021]
Demos : Tech Demo
Permalink

This is NOT an official port from the manufacturer of the original Minecraft.
GBACRAFT is a Homebrew game for the Nintendo Game Boy Advance.
I programmed this 3D textured polygon block building game on the GBA.
I made everything myself and in my own style with some unique features.

www.youtube.com/c/3dsage
www.instagram.com/3dsagepix

Controls:
Watch this video: www.youtube.com/watch?v=UJLk7uiTBdk

Download: gbacraft-3DSage.zip

 
VGBA 6.3
By Marat Fayzullin [Thursday February 11th 22:37:20 UTC 2021]
News : General
Permalink
As of September 19 2014, VGBA-Windows is free for everyone to use and share. Have fun, folks!

The latest VGBA, released on February 11 2021, enables melodic sound emulation while Direct Sound hardware is disabled. This should fix sound in Phantasy Star and International Karate games. The VGBA-Android version is also available for your phones, tablets, and TV sets.

If you like VGBA-Windows and want to support its further development, consider downloading VGBA-Android for your phone or tablet. The Android version comes with many cool extras, such as built-in Cheatopedia with codes for dozens of popular games, State Exchange for exchanging gameplay states with other users, and more. Give it a try and report any encountered problems in the discussion group.

The complete list of features and the list of new features and fixes can be found in the documentation.

What is Virtual GameBoy Advance?
Virtual GameBoy Advance (VGBA) is a program that emulates Nintendo's GameBoy Advance on your computer. It runs GameBoy Advance games on PCs, TVs, phones, tabets, or just about any other sufficiently fast gadget. It also helps debugging GameBoy Advance software without using a costly development system. I have previously written another emulator, VGB, that runs older GameBoy and GameBoy Color games. Because GameBoy Advance has completely different hardware, I had to write a new emulator for it, and VGBA runs only GameBoy Advance games. As far as I know, when I released VGBA in 2000, it was the first GameBoy Advance emulator in the world, soon to be joined by other emulators.

You can find the latest version of VGBA here: https://fms.komkon.org/VGBA/

Download: VGBA63-Windows-bin.zip

 
Pump It Up v1.3.0
By rodri042 [Wednesday January 20th 12:42:53 UTC 2021]
Games : Arcade
Permalink

A Pump It Up emulator for the Game Boy Advance that uses StepMania SSC charts.

• Full .ssc support (including hold/fake notes, bpm/scroll changes, stop/delays, warps)
• Several game modes (campaign, arcade, impossible)
• Multiplayer support via Link Cable (double charts)
• Dynamic speed multipliers
• Multiple mods
• ~70 songs per .gba ROM

Pump It Up port:
Project page: https://r-labs.io/#piugba
Source code: https://github.com/rodri042/piugba
Discord server: https://discord.com/invite/JE33cc2

Some videos:
Pump It Up For The GBA
Pump It Up GBA Multiplayer Update

Link Cable multiplayer library:
https://github.com/rodri042/gba-link-connection

Link: https://github.com/rodri042/piugba

 
3D Textured Polygons of Modern Games
By 3DSage [Saturday December 12th 00:29:25 UTC 2020]
Demos : Tech Demo
Permalink

I’ve been working hard to try to push the GBA to draw 3D polygons that are textured and animated in a 3D environment. I created everything from scratch including the models, textures, and the game engine it runs on.

I thought it would be fun to make them resemble popular games we recognize today. I hope you enjoy spinning, zooming, and viewing these 3D graphics at a smooth frame rate.

Check out my YouTube or Instagram for more posts, tutorials, and updates!
www.youtube.com/c/3dsage
www.instagram.com/3dsagepix

Download: 3DSage_3D_Jampack_V1.zip

 
6175692
Top Games

1. 2004Mbit Compo Game
2. Xmen V StreetFighter J Edition
3. Another World GBA v2.1
4. MarioBreak!
5. FF4 Advance- The Return of Golbez

Top Demos

1. Smash Bros. Advance
2. Half Life
3. Jespa3D Engine ver 1.39
4. GBACRAFT V1.0
5. BulletGBA 5.0

Search

GBADEV.ORG Stats
Visitors: 6175692
Days Online: 7617
Articles: 550
Games: 395
Demos: 242
Tools: 178

Forum Stats
Top Posters:
1. tepples (12205)
2. sgeos (2421)
3. HyperHacker (2404)
4. sajiimori (2226)
5. keldon (2158)

Members: 11078
Topics: 17031
Posts: 175569