1 2
7 8
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3573)
Joined: 11/3/2004
Posts: 4754
Location: Tennessee
As of May 17th, 2022, VBA is no longer allowed for GB/SGB/GBC submissions. GBA submissions are still allowed, but may become deprecated soon.
VBA is the primary emulator used to record GB/SGB/GBC/GBA TAS movies. The rerecording project is VBA-rercording The project is maintained at github: http://github.com/TASVideos/vba-rerecording It has a WIN32 and SDL version. However, the SDL version is sorely outdated and not currently available on via SVN. (It can be provided upon request). The win32 version compiles with VS2003/2005/2008/2010. Any coding help is greatly appreciated. Particularly, we are in strong need of someone to help get the SDL version useable. If interested, I can be PMed on the forums. Issue tracker: https://github.com/TASVideos/vba-rerecording/issues
It's hard to look this good. My TAS projects
Editor, Emulator Coder, Expert player (2156)
Joined: 5/22/2007
Posts: 1134
Location: Glitchvania
Hmm, I think I've found the fix for the desync problem in GBA movies recorded from SRAM. It has already existed in earlier versions and was not just introduced in VBA v20. In file "src/movie.cpp":
static void SetRecordEmuSettings(void)
{
    /* ................... */
#if (defined(WIN32) && !defined(SDL))
    // What is this piece of code supposed to do? It just causes the desync problem in GBA movies recoded right after some key-combos like reset (Ctrl+R). Comment out the following line to fix it!
    if(GetAsyncKeyState(VK_CONTROL) == 0) // FIXME: Comment me out!
#endif
    if(!memLagTempEnabled)
        Movie.header.optionFlags |= MOVIE_SETTING_LAGHACK;
    Movie.header.gbEmulatorType = gbEmulatorType;

    Movie.header.optionFlags |= MOVIE_SETTING_GBCFF55FIX;
    extern int gbDMASpeedVersion;
        gbDMASpeedVersion = 1;
    /* ................... */
}
<klmz> it reminds me of that people used to keep quoting adelikat's IRC statements in the old good days <adelikat> no doubt <adelikat> klmz, they still do
Post subject: VBA21 release announcement
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3573)
Joined: 11/3/2004
Posts: 4754
Location: Tennessee
I am proud to announc the release of VBA v21: http://code.google.com/p/vba-rerecording/ All information can be found on the home page. The most notable things are Lua Scripting and the resolution of the v19.3 vs v20 conflict :)
It's hard to look this good. My TAS projects
Editor, Emulator Coder, Expert player (2156)
Joined: 5/22/2007
Posts: 1134
Location: Glitchvania
VBA v21 released! April 11, 2099
This is so cool.
<klmz> it reminds me of that people used to keep quoting adelikat's IRC statements in the old good days <adelikat> no doubt <adelikat> klmz, they still do
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3573)
Joined: 11/3/2004
Posts: 4754
Location: Tennessee
Yes it is! Also, much thanks for your contributions :)
It's hard to look this good. My TAS projects
Editor, Emulator Coder, Expert player (2156)
Joined: 5/22/2007
Posts: 1134
Location: Glitchvania
Well, I didn't do very much. Still some issues to be fixed. LUA can be a workaround for the VBA/VBx Watch problems, though.
<klmz> it reminds me of that people used to keep quoting adelikat's IRC statements in the old good days <adelikat> no doubt <adelikat> klmz, they still do
Skilled player (1416)
Joined: 10/27/2004
Posts: 1978
Location: Making an escape
Oh, hey, a lag counter! Handy. I can finally confirm that Metroid 2's select glitch is indeed the result of system lag! Just look at that counter go! :> Couple of things: For future revisions, you might want to go with a smaller font for the frame and lag counters. When playing a GBX game, the lag counter tends to go offscreen. I noticed you decided to keep 19.x's method of handling loading frames. Example: The opening of Daikatana. After the "fine print" finishes, 19.x will render one frame as nearly a second long. 20 will split this time up into individual frames. I'd kinda like 20's method since it would report a more accurate time in the movie files. Sure, it may break movie compatibility, but I like to keep old versions for that sort of stuff. It's up to you guys what to do. If that was related to the desynch problems, then it certainly isn't worth the hassle. Either way, you all deserve a hug! /Ferret Warlord hugs the VBA team!
A hundred years from now, they will gaze upon my work and marvel at my skills but never know my name. And that will be good enough for me.
Editor, Emulator Coder, Expert player (2156)
Joined: 5/22/2007
Posts: 1134
Location: Glitchvania
Ferret Warlord wrote:
For future revisions, you might want to go with a smaller font for the frame and lag counters. When playing a GBX game, the lag counter tends to go offscreen.
You may want to go with "Options" -> "Video" -> "Text display options...", and check "On screen" under "Display" then.
<klmz> it reminds me of that people used to keep quoting adelikat's IRC statements in the old good days <adelikat> no doubt <adelikat> klmz, they still do
Skilled player (1416)
Joined: 10/27/2004
Posts: 1978
Location: Making an escape
klmz wrote:
Ferret Warlord wrote:
For future revisions, you might want to go with a smaller font for the frame and lag counters. When playing a GBX game, the lag counter tends to go offscreen.
You may want to go with "Options" -> "Video" -> "Text display options...", and check "On screen" under "Display" then.
Oh hey! Thank you!
A hundred years from now, they will gaze upon my work and marvel at my skills but never know my name. And that will be good enough for me.
Player (121)
Joined: 2/11/2007
Posts: 1522
Yay more Lua! I wanted it for VBA for something, if only I could remember now :P
I make a comic with no image files and you should read it. While there is a lower class, I am in it, and while there is a criminal element I am of it, and while there is a soul in prison, I am not free. -Eugene Debs
Skilled player (1098)
Joined: 8/26/2006
Posts: 1139
Location: United Kingdom
I've been waiting for this for a while. Thanks to everyone for all their hard work! Its great to see an up to date VBA since the GBA especially still oozes TAS potential.
Editor, Expert player (2073)
Joined: 6/15/2005
Posts: 3282
I haven't yet been able to use VBxWatch or VBAWatch with v21. I copied the settings as stated in the menu and placed them in vbxwcnf0.txt and vbawcnf0.txt, but the program doesn't recognize VBA v21. It recognizes VBA v19.x, like it always had. Edit: I see it's already listed under issues at the Google Page.
Editor, Emulator Coder, Expert player (2156)
Joined: 5/22/2007
Posts: 1134
Location: Glitchvania
That's really weird. Some people can get VBAWatch to work, while some others can't. Mine fails with these settings (copied using the very menu command):
:target:VBA21.exe:72A044:72A050:72A04C:72A064:72A054:72A058:72A060:72A048
The filename of the executable doesn't seem to matter.
<klmz> it reminds me of that people used to keep quoting adelikat's IRC statements in the old good days <adelikat> no doubt <adelikat> klmz, they still do
gocha
Any
Emulator Coder, Former player
Joined: 6/21/2006
Posts: 401
Location: Japan, Nagoya
A case reported before: if the newlines in your setting file are not CR+LF, just replace them with CR+LF.
I am usually available on Discord server or Twitter.
Editor, Emulator Coder, Expert player (2156)
Joined: 5/22/2007
Posts: 1134
Location: Glitchvania
gocha wrote:
A case reported before: if the newlines in your setting file are not CR+LF, just replace them with CR+LF.
It works! Thanks a lot! So this problem is caused by VBAWatch itself rather than VBA? Hmmm. I should have asked you earlier, so that I wouldn't have been switching between the old and new versions all the time X( EDIT: Hmm. It seems that it's VBA's fault to copy setting strings that are ended with LF newlines. I guess they should be converted before copied for use with VBAWatch/VBxWatch. EDIT 2: Is it supposed that you cannot record GBx movies from Reset/SRAM? EDIT 3: Alright, I found this:
nitsuja wrote:
Bag of Magic Food wrote:
So you just made From Reset not an option anymore? That seems kinda mean. Oh wait, it only seems to be disabled for the old Game Boys. Game Boy Advance still has the option. What's up with that?
I couldn't get from-SRAM recording to work at all for GB games, so I disabled it until I can figure it out. There is still from-snapshot and from-power-on for them, at least.
EDIT 4: Done on SVN rev85.
<klmz> it reminds me of that people used to keep quoting adelikat's IRC statements in the old good days <adelikat> no doubt <adelikat> klmz, they still do
Editor, Expert player (2329)
Joined: 5/15/2007
Posts: 3933
Location: Germany
Are still improvements made in emulation as well as in TAS features? Because Dirty Racing (GB) is still unplayable, Mario and Luigi Superstar Saga (GBA) still has the annoying flickering issue and possibly also the glitched screen after you save Mario in the university, and The Smurfs (GB) has a glitch that let's you skip the first level if you press up upon entering one of the bonus rooms in said level, and this glitch doesn't work in VBA.
Editor, Emulator Coder, Expert player (2156)
Joined: 5/22/2007
Posts: 1134
Location: Glitchvania
MUGG wrote:
Are still improvements made in emulation as well as in TAS features? Because Dirty Racing (GB) is still unplayable, Mario and Luigi Superstar Saga (GBA) still has the annoying flickering issue and possibly also the glitched screen after you save Mario in the university, and The Smurfs (GB) has a glitch that let's you skip the first level if you press up upon entering one of the bonus rooms in said level, and this glitch doesn't work in VBA.
And Metal Slug Advance (aka. "the cursed GBA game") is still freezing/crashing. These can be fixed, but we want to keep movie compatibility for now. A branch that fixes these bugs can be nice, though.
<klmz> it reminds me of that people used to keep quoting adelikat's IRC statements in the old good days <adelikat> no doubt <adelikat> klmz, they still do
Skilled player (1416)
Joined: 10/27/2004
Posts: 1978
Location: Making an escape
klmz wrote:
These can be fixed, but we want to keep movie compatibility for now.
I'm willing to sacrifice movie compatibility for more accurate emulation as long as it doesn't desynch as badly as v20. As I said before, if I need an older movie to synch up I can play it back on an earlier version. I do find it kinda strange that backwards compatibility wasn't as much of a concern a few years ago as it is now. Eh, whatever. Keep up the good work.
A hundred years from now, they will gaze upon my work and marvel at my skills but never know my name. And that will be good enough for me.
Joined: 9/12/2009
Posts: 5
Location: Finland
I dunno if this is wrong place for this, but could someone fix that Linux-compatibility bug? I know it runs fine with Wine, but I would prefer native programs instead of emulating.
Former player
Joined: 12/5/2007
Posts: 716
I gave up on that issue quite some time ago because it has become pointless and a huge pain. If you want to give it a shot yourself, be my guest, the devs are always welcoming patches for that regard. Have fun untangling win32 code from the core and rebuilding the gtk interface the SDL port once had.
Post subject: VBA V22 release announcement
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3573)
Joined: 11/3/2004
Posts: 4754
Location: Tennessee
VBA V22 released! Win32 binary This version has a number of bug fixes and lua features. But most importantly it features a long over due Ram Watch dialog! In addition it has 7z archive support (like FCEUX and GENS).
It's hard to look this good. My TAS projects
MarbleousDave
He/Him
Player (13)
Joined: 9/12/2009
Posts: 1559
The Escape key is usually for toggling the menu in full screen. But now the default for the Escape key is save slot 9. What's the point since Shift+F9 does the said thing. Should have left it alone.
Player (206)
Joined: 5/29/2004
Posts: 5712
put yourself in my rocketpack if that poochie is one outrageous dude
Emulator Coder, Skilled player (1310)
Joined: 12/21/2004
Posts: 2687
So he's just complaining about not being able to load savestates that he made from earlier when he was playing on a non-rerecording version of VBA? Of course that doesn't work... Well, ok, it could be handled better but he's talking about a use case that wasn't even considered before and I'm still not sure we care about it.
PikachuMan wrote:
But now the default for the Escape key is save slot 9
Now that's an annoying bug. I wonder how that happened.
arflech
He/Him
Joined: 5/3/2008
Posts: 1120
After looking up how to get the Classic NES/Famicom Mini series to work, I was reminded of that permanent beta, VisualBoyAdvance 1.80 I realize why the community has preferred the stable 1.72 to branch from, but I wonder whether any of the improvements in VBA-M (based on the 1.80 beta) will appear in VBA-rr, like the ability to use both GBA and SGB BIOSes, and whatever Forgotten did to allow 1.80 to run the Classic NES/Famicom Mini series. On the other hand, I didn't appreciate that the Windows version of VBA-M required the latest DirectX Runtime just to load, even without the latest filters; in case anyone here is curious about VBA-M, the project page is here: http://sourceforge.net/projects/vbam/files/ the backup is here: http://code.google.com/p/visualboyadvance-m/ and the website is here: http://vba-m.com/ I know Nach is on the VBA-M team, so maybe he can tell us about any intended or possible cross-pollination.
i imgur com/QiCaaH8 png
1 2
7 8