Welcome, Guest
You have to register before you can post on our site.



Search Forums

(Advanced Search)

Forum Statistics
» Members: 1,201
» Latest member: Yamatiop
» Forum threads: 502
» Forum posts: 2,017

Full Statistics

Online Users
There are currently 58 online users.
» 0 Member(s) | 57 Guest(s)

Latest Threads
Registration temporarily ...
Forum: News
Last Post: endrift
03-09-2020, 10:42 PM
» Replies: 0
» Views: 312
Problem with the speed op...
Forum: Development
Last Post: Yamatiop
03-08-2020, 12:17 PM
» Replies: 0
» Views: 264
Forums suggestions
Forum: General
Last Post: AdriFeL
03-06-2020, 04:14 AM
» Replies: 15
» Views: 36,274
Pokemon Save State file i...
Forum: General
Last Post: AshKetchup
03-06-2020, 02:31 AM
» Replies: 0
» Views: 328
FF4 mgba (vita) unplayabl...
Forum: General
Last Post: Divineheresy88
03-02-2020, 09:41 AM
» Replies: 0
» Views: 367
Fast forward speed (Held)...
Forum: General
Last Post: endrift
02-22-2020, 02:08 AM
» Replies: 1
» Views: 603
Original Game boy Green/B...
Forum: General
Last Post: manf0001
02-15-2020, 02:03 PM
» Replies: 0
» Views: 671
Feature request: save as ...
Forum: Development
Last Post: Rin Tohsaka
02-10-2020, 07:37 PM
» Replies: 4
» Views: 969
Alternate controls.
Forum: General
Last Post: endrift
02-08-2020, 07:06 PM
» Replies: 1
» Views: 823
how to perform a clean un...
Forum: General
Last Post: zieme666
02-04-2020, 07:29 AM
» Replies: 2
» Views: 1,039

  Feature Request Thread?
Posted by: GH56734 - 05-25-2015, 01:30 PM - Forum: General - Replies (3)

Hi there Smile

Really pleased with how open you are with feedback, and seeing as this may be the de-facto portable GBA emulator down in the future, I figured I might want to elaborate a bit on my.. wish list of stuff I'd really, really love to find in the game Tongue

So, without further ado, here I go Tongue

Color Correction

The older GBA models lacked back-lighting, hence why some games tended to overcompensate with altering their palettes to look far brighter than needed. As later models included back-lighting, some games disregarded this.
It would be lovely to have some custom palette correction options, kind of like with NES palettes.

SAPPY Sound Emulation Enhancements

GBA sound output is, bluntly put, often horrible. Sound gets processed through the CPU, and in most games it just tends to get the shorter end of the stick.
That aside, for games that do get the sound processed to the full potential of the hardware, the sound quality is full of crackling and noise, kind of like how sound gets distorted through phones.

While some games rely on chiptunes/GB sounds (Starfy 1, Castlevania HoD, Super Robot Taisen J), or the internal sound samples themselves have a very low bitrate to save ROM space (Lunar), ... in most cases, the sound samples found within the ROM are much higher quality than what gets output.

I often used this tool "GBA Music Ripper". It's a bit of a work-in-progress, and there are bugs at times (having to do with some instruments not being figured out, or in the case of both Golden Sun games not at all due to them using a different sappy format with reverb and stuff like that).

However, the sappy format is really widespread and almost universal in GBA games, and this tool takes the rom and rips all music, voice samples and sound effects, in sets of SoundFont files (.sf2) and midi files (midi). Using a tool like foobar to read the soundtrack, even Mother 3, often cited as a highlight of sound engineering in the GBA, pales compared to the ripped version which sounds like from a DS game. Zelda Minish Cap is a delight.

So, what I'm asking for is...

This reminded me a huge lot of 3D models rendering in shit resolutions... then emulators added upscale options to process the game's assembly instructions for graphic displaying (in our case it would be sound emulation) as normal, then recognizing specific calls to graphic hardware (here sound hardware, or just sappy sound engine assembly instructions), overriding them when it comes to end-user output to show a custom higher quality model/sound output done in real time.

Would this be possible here? I have the feeling this would be the biggest drawing point to this emulator if this ever materialized.

Debugger Suite

To help fan-translators and such folks.

Well, for starters we'd need some basic stuff, namely:
1/ Cheat support (we have already a really good base work, besides editing/deleting cheats it would also need external cheat files)
2/ Powerful cheat search engine (relative search with ability to set initial values, searching specific value, searching value equal to a given address, displaying values signed/unsigned/hex), and options for bigger/lower/equal... should be assigned to hotkeys in-game with HUD optionally displaying and telling how many results are there.
3/ Search for ranges of unused memory addresses throughout the game that never get written to aside from instructions blanking whole memory, could be running in the background as we play.
Useful for translators to find where to stuff their custom code.
4/ Save States, Rewinding, Frame Advance, Pause key, Reset key

With that out of the way:
1/ VRAM viewer (with ability to switch between various GBA modes)
2/ Map viewer (with ability to see what each square from each BG is from)
3/ OAM viewer (with info like rotation/palette/etc, palette viewer and exporter to same format as VBA, )
4/ Hex viewer/editor (divided by memory types ROM/VRAM/SRAM/...) and the ability to extract a specific range to an external file, pick a custom table (tbl) to change what each hex byte displays as as a letter/char in the right column (ascii, shift-jis, given by default, with option to get an external tbl file)

5/ you can drag to select a given area in either hex viewer or map/vram viewer, then
a: copy it to the clipboard (for VRAM: as a bitmap, for HEX: depending if it's the letter area or the hex area, as a string of characters/hex bytes selected in raw text)
b: paste with overwriting from the first byte onwards, byte number gets unchanged
c: track from ROM : meaning, relying on the rewind feature, tracking where this byte originated from in the ROM - either until a MOV instruction of a block of stuff from the rom, an LZ/Huffman compression scheme or just displaying the instruction that generated it the instant we reach a dead-end.
Figuring out where stuff is in the ROM is the bane of translators Tongue
d: watch value for RAM addresses. Like with SNES9X, it can show a tiny HUD with the value real time in-game. Could be useful too if available in the cheat engine

Of course, there's the debugger:
1/ Disassembler
2/ All Breakpoint options (on write, on read, on execute, run, break...) with keyboard shortcuts too Big Grin
3/ A good status viewer of various hardware flags
4/ Tracer (just dumps all instructions executed between instants t1 and t2)
5/ Assembler (like with FCEUX)

Unemulated Stuff

* Various rumble features: GB Player Rumble, Drill Dozer variable Rumble, WarioWare Rumble...
could use smartphone rumble, joypad rumble, wiimote rumble, or alternatively just a colored HUD square (that turns orange, or shades of orange/yellow/red for Drill Dozer's variable speed rumble)

* Key mapping for gyro controls in Yoshi/WarioWare with various schemes - key inputs with four keys, wiimote emulation (better), wiimotion plus/gyroscopic smartphones (best). And maybe the screen could rotate too?

* Figurine stuff (LegendZ, among 4 other games, but it's really obscure)

Print this item

  mGBA compared to MESS
Posted by: geertjan - 05-16-2015, 10:57 AM - Forum: General - Replies (4)

Hi, thanks for pushing GBA emulation to the next level!

I had a question, I noticed MESS implemented some GBA improvements taken from mGBA, which is cool of course, the power of open source.

Now this ConsUME site says that MESS (or UME) "is, in our opinion, at least as good as the best standalone emulators for this system."

Would you agree that MESS and mGBA are on the same level of accuracy/compatibility, or do you think mGBA still has an edge?

Print this item

  [Linux] Joypad inputs
Posted by: nicodemus - 05-14-2015, 02:06 AM - Forum: General - Replies (2)

Using mgba-qt, the program didn't seem to catch all the inputs from my 360 controller. It recognizes it, but only grabs a few input presses (mostly main joystick, and one trigger.)

Is this a known issue? Can I help troubleshoot in any way?


Print this item

  Praise and Questions!
Posted by: nicodemus - 05-13-2015, 11:52 PM - Forum: General - Replies (2)

Thanks so much for doing this! We are in desperate need of a modern emulator built from the ground up. Also thanks for the early Linux support!

Q1) Is there a gui for the linux version? I seem to only have a CLI command. If I have this right you wrote the GUI in QT, that should make it easy to get going under Linux, yes? For reference I'm on Kubuntu 15.04 using the nightly.

Q2) What anti-aliasing process are you using under Windows, and can I use it under Linux? It seems to wash out the colors and smudge the image a bit, but at least it's an option. Smile

Q3) I'm very much looking forward to filters coming to mGBA, as it's one of the big things that makes me choose to emu over standard play. What do you hope to implement and how likely do you think it is for it to make it into version 3?

Q4) When do you expect v3 to release, roughly?

Thanks again for everything! mGBA is now my goto emu as it performs flawlessly for me, while VBAM does not.

Print this item

  GBA colour emulation
Posted by: angrykaspar - 04-29-2015, 01:19 AM - Forum: General - Replies (2)

A while ago I asked about this in an email, but since there was no reply I assume you missed it. Sorry if you're reading it twice.

Do you have any plans for a colour correction filter? GBA games were oversaturated to compensate for the poor screen of the GBA. I first noticed the issue on Golden Sun 2, which I'd already extensively played on an original GBA and an SP. The game was fine even on the backlit SP, but on an emulator without a desaturation filter, every instance of black appears maroon. VBA-M and No$GBA are the two emulators I can think of with such a filter.

Print this item

  Fps target
Posted by: angrykaspar - 04-25-2015, 11:15 PM - Forum: General - Replies (4)

Is this option necessary if you have the emulation synchronized to audio? I would have thought that the emulator would already run at 59.7fps if the audio was running at the right speed.

Print this item

  ROM hacking tools in mGBA
Posted by: endrift - 04-18-2015, 07:44 PM - Forum: General - Replies (3)

I've gotten a request for a bunch of tools to be added for ROM hacking purposes, including:

  • A palette exporter
  • text translation table support (.tbl?)
  • A way to trace RAM data back to ROM
Are there any other tools that people would want?

As for these tools, what file formats would be useful? For palettes, I could easily do .aco or .act exporting, two Photoshop formats. Are there other formats that would be useful? And what of .tbl files? I don't have any information on this file format, which would make it a bit challenging to implement. I found http://datacrystal.romhacking.net/wiki/Text_Table, but it's a bit incomplete.

Print this item

  mGBA FAQs — Please read first
Posted by: endrift - 04-17-2015, 12:02 AM - Forum: General - No Replies

Here's a smattering of common questions that have been answered already. More will be added as time goes on.

Q: How do I use multiplayer?
A: Multiplayer currently only works on the same computer. To start it, go to File > New Multiplayer Window. Then start the games in each window. Please note that this means that you need game controllers to control the individual players, one per player.

Q: The README says that vibrate, tilt and gyroscope are all supported, but I can't seem to figure out how they work.
A: Unfortunately as of 0.2.0, while they are indeed emulated and supported, they are not exposed to the Qt port. Vibrate is exposed as of the 2015-04-17 nightly. Accelerometer and Gyroscope are exposed and configurable as of the 2015-04-22 nightly. The tilt sensor uses two axes, one for X and one for Y, which are recommended to be on the same joystick. Gyroscopes use two as well, but for the gyroscope, games are controlled by rotating a joystick instead of angling it.

Q: Is Drill Dozer's variable speed vibrate emulated?
A: It is fully supported as of the 2015-05-22 nightly, and it may work (depending on the controller) in earlier nightlies.

Print this item

  HyperSpin / RocketLauncher support
Posted by: suspendedhatch - 04-15-2015, 09:41 PM - Forum: General - Replies (4)

Just wanted to let you know that I requested that RockerLauncher (HyperLaunch) add support for your emulator and they did already. So now people will easily be able to add it to their HyperSpin (and other) frontend setups.


I see you've added joystick support, a RetroArch core and a whole bunch of other good stuff. Very cool. Thanks for making a GBA emulator focused on accuracy. That is very much gaining in appreciation these days. In the future I hope to see you add support for regular GB, GBC, SuperGame Boy etc.

Nice work!

Print this item

Information Introductions thread
Posted by: endrift - 04-13-2015, 03:36 AM - Forum: Chatter - Replies (11)

Hello and welcome to the mGBA forums! Are you new here and feel like introducing yourself? Looking for a bit of guidance getting started? Here's the thread for you.

Let me start. I'm endrift, the author of mGBA, and have been working on it for two years. Before that, I worked on a JavaScript version of the emulator for several more months. I also wrote a game in a month during that time, called Scrum: A Game (Very) Vaguely About Programming. In my spare time, I mostly program or do design work. My twitter is @endrift. How about you?

Print this item