Joined: 3/17/2007
Posts: 97
Location: Berkeley, CA
mfc71.dll and msvcp71.dll are standard MS runtime libraries. Google them and you'll get safe download links; I'm pretty sure that's perfectly legal.
The last string of errors you got was for building TestEmu, not VisualBoyAdvance itself.
No idea about the fast-forward issue... that sucks.
You need all of the code changes I mentioned for VBA to (a) not crash and (b) accept a movie's input when you supply the --watchmovie switch.
Sorry about assuming C++ knowledge you didn't have. I threw a crappy patch on this crappy file host: http://www.fileden.com/files/2007/9/22/1451488/vba-rerecording-19-sdl-cpp_changes_only.patch.
It contains the changes I made to the C++ source (not makefiles).
DeHackEd or somebody might have a more complete solution for Linux, BTW.
Chances are that nobody's ported the TAS-making features that Nitsuja added, though.
I copied them using my still existing XP installation and I still get the same errors.
Oh, I see. Sorry.
Your patches were applied just fine.
No problem. ;)
Now I didn't even seem to get a binary. After including movie.cpp instead in .h in GBA.cpp (I honestly have no idea as to what this might have helped or made worse), I do get a binary and now was even able to watch submission #1975, up to the third level of the tree zone. On that very first run, the game was running at perfectly normal speed (fluctuating between 98% and 103%). After it desynced (after getting the mushroom in that particular level), I restarted VBA and bam, fast-forward again. :(
These are the build errors with #include "movie.h" in GBA.cpp:
Making all in sdl
make[1]: Entering directory `/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl'
if g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"VisualBoyAdvance\" -DVERSION=\"1.7.2\" -DYYTEXT_POINTER=1 -DHAVE_LIBZ=1 -DHAVE_LIBPNG=1 -DHAVE_LIBPTHREAD=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_MALLOC_H=1 -DHAVE_STRINGS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_ARPA_INET_H=1 -DHAVE_NETINET_IN_H=1 -I. -I. -I../../src -DSDL -DSYSCONFDIR=\"/usr/local/etc\" -fno-exceptions -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -g -O2 -DPROFILING -DMMX -DDEV_VERSION -MT GBA.o -MD -MP -MF ".deps/GBA.Tpo" \
-c -o GBA.o `test -f '../GBA.cpp' || echo './'`../GBA.cpp; \
then mv -f ".deps/GBA.Tpo" ".deps/GBA.Po"; \
else rm -f ".deps/GBA.Tpo"; exit 1; \
fi
g++ -fno-exceptions -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -g -O2 -DPROFILING -DMMX -DDEV_VERSION -o VisualBoyAdvance SDL.o debugger.o 2xSaI.o Cheats.o EEprom.o Flash.o GBA.o Gfx.o Globals.o Mode0.o Mode1.o Mode2.o Mode3.o Mode4.o Mode5.o RTC.o Sound.o Sram.o Text.o Util.o admame.o agbprint.o armdis.o bilinear.o bios.o elf.o expr-lex.o expr.o exprNode.o getopt.o getopt1.o hq2x.o interframe.o memgzio.o motionblur.o pixel.o remote.o scanline.o simple2x.o unzip.o ../gb/libgb.a ../prof/libprof.a ../i386/lib386.a -lSDL -lpthread -lpthread -lpng -lz
SDL.o: In function `systemReadJoypad(int, bool)':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/SDL.cpp:2826: undefined reference to `VBAMovieUpdate(int)'
SDL.o: In function `main':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/SDL.cpp:2609: undefined reference to `VBAMovieOpen(char const*, signed char)'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/SDL.cpp:2612: undefined reference to `VBAMovieOpen(char const*, signed char)'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/SDL.cpp:2606: undefined reference to `VBAMovieCreate(char const*, char const*, unsigned char, unsigned char, unsigned char)'
GBA.o: In function `CPUReset()':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../GBA.cpp:3243: undefined reference to `VBAMovieSignalReset()'
GBA.o: In function `CPUWriteStateToStream(void*)':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../GBA.cpp:688: undefined reference to `VBAMovieActive()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../GBA.cpp:695: undefined reference to `VBAMovieFreeze(unsigned char**, unsigned long*)'
GBA.o: In function `CPUReadStateFromStream(void*)':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../GBA.cpp:998: undefined reference to `VBAUpdateFrameCountDisplay()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../GBA.cpp:923: undefined reference to `VBAMovieActive()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../GBA.cpp:944: undefined reference to `VBAMovieUnfreeze(unsigned char const*, unsigned long)'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../GBA.cpp:946: undefined reference to `VBAMovieActive()'
RTC.o: In function `rtcWrite(unsigned int, unsigned short)':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../RTC.cpp:155: undefined reference to `VBAMovieActive()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../RTC.cpp:155: undefined reference to `VBAMovieLoading()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../RTC.cpp:157: undefined reference to `VBAMovieGetId()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../RTC.cpp:157: undefined reference to `VBAMovieGetFrameCounter()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../RTC.cpp:128: undefined reference to `VBAMovieActive()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../RTC.cpp:128: undefined reference to `VBAMovieLoading()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../RTC.cpp:130: undefined reference to `VBAMovieGetId()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl/../RTC.cpp:130: undefined reference to `VBAMovieGetFrameCounter()'
../gb/libgb.a(GB.o): In function `gbWriteSaveStateToStream(void*)':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2421: undefined reference to `VBAMovieActive()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2428: undefined reference to `VBAMovieFreeze(unsigned char**, unsigned long*)'
../gb/libgb.a(GB.o): In function `gbReadSaveStateFromStream(void*)':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2750: undefined reference to `VBAUpdateFrameCountDisplay()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2698: undefined reference to `VBAMovieActive()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2719: undefined reference to `VBAMovieUnfreeze(unsigned char const*, unsigned long)'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2721: undefined reference to `VBAMovieActive()'
../gb/libgb.a(GB.o): In function `gbReadBatteryFile(char const*)':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2151: undefined reference to `VBAMovieActive()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2151: undefined reference to `VBAMovieLoading()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2153: undefined reference to `VBAMovieGetId()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:2153: undefined reference to `VBAMovieGetFrameCounter()'
../gb/libgb.a(GB.o): In function `gbReset()':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/GB.cpp:1629: undefined reference to `VBAMovieSignalReset()'
../gb/libgb.a(gbMemory.o): In function `memoryUpdateMBC3Clock()':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/gbMemory.cpp:212: undefined reference to `VBAMovieActive()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/gbMemory.cpp:212: undefined reference to `VBAMovieLoading()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/gbMemory.cpp:213: undefined reference to `VBAMovieGetId()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/gbMemory.cpp:213: undefined reference to `VBAMovieGetFrameCounter()'
../gb/libgb.a(gbMemory.o): In function `mapperMBC3RAM(unsigned short, unsigned char)':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/gbMemory.cpp:325: undefined reference to `VBAMovieActive()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/gbMemory.cpp:326: undefined reference to `VBAMovieGetId()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/gbMemory.cpp:326: undefined reference to `VBAMovieGetFrameCounter()'
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/gbMemory.cpp:325: undefined reference to `VBAMovieLoading()'
../gb/libgb.a(gbSGB.o): In function `gbSgbPicture()':
/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/gb/gbSGB.cpp:319: undefined reference to `VBAMovieSignalIgnoreNextReset()'
collect2: ld returned 1 exit status
make[1]: *** [VisualBoyAdvance] Error 1
make[1]: Leaving directory `/home/doofy/Desktop/emu/compile/vba-rerecording-19-src/src/sdl'
make: *** [all-recursive] Error 1
With movie.cpp included, only TestEmu fails to compile.
Maybe somebody might have a precompiled version of VBA 19.3 for me?
Joined: 3/17/2007
Posts: 97
Location: Berkeley, CA
That's odd. It worked for me if those DLLs are placed in either the same directory as "vba-rerecording-19 3.exe" or the current directory from which you run wine.
The patch didn't include the Makefile changes you'd already made--that's all.
I also get the desync (no idea...) but not the fast-forward problem. Don't suppose you have a VisualBoyAdvance.cfg that it's reading? Or that passing "--throttle=0" helps?
Damn it! I put the DLLs in windows/system32. Although I don't have any sound while watching the run, it doesn't desync anymore. Thanks for that hint :)
Nope, didn't have any of them. But as the Windows version is running fine for now (I don't mind the sound, rather listen to music anyway), it's all kind of solved, I guess.
Thanks for your support!
VisualBoyAdvance 1.7.2 Rerecording v19.3 has emulation issues with
GB Dirty Racing (both "Race Days (Dirty Racing & 4 Wheel Drive) (U).gb" and "Dirty Racing (J) [!].gb").
When entering a track the screen stays mostly colored white.
This may be of some interest its called meboy and its an emulator for mobile phone which lets you run the gameboy colour and original black and white roms on your cell phone its a little choppy but i think it does a good job. http://www.techagesite.com/meboy.htm
VisualBoyAdvance 1.7.2 Rerecording v20.0 has emulation issues with GB Sneaky Snakes ("Sneaky Snakes (UE) [!].gb").
From the intro on, the color of the "white background" is just pitch black all the time.
<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
nitsuja
About VBA of kode54, think in these improvements:
LCD colors option, in Filter
PCM interpolation (None, Linear, Cubic, FIR (Kaiser 4T) and libresample)
Joined: 2/28/2006
Posts: 2275
Location: Milky Way -> Earth -> Brazil
hay... vba-re-rec ignores input when it's main window loses focus... even if you're on memory viewer or cheat search, it still can't read the controller.
Can anyone fix the bug (that's gotta be a bug).
"Genuine self-esteem, however, consists not of causeless feelings, but of certain knowledge about yourself.
It rests on the conviction that you — by your choices, effort and actions — have made yourself into the
kind of person able to deal with reality. It is the conviction — based on the evidence of your own volitional
functioning — that you are fundamentally able to succeed in life and, therefore, are deserving of that success."
- Onkar Ghate
I remember fixing the bug already in my pre-alpha VBARL hack. But now I don't have any access to my HDD where all the source files are. o_O
<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
It's not necessarily a bug- if you're entering in an address/datum and you have 0-9 or a-f bound to controller, you don't want it inputting to controller while you do, do you?
I think one will always pause the emulation first in order to modify memory values.
<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
Joined: 2/28/2006
Posts: 2275
Location: Milky Way -> Earth -> Brazil
yeah, it's really weird that the emulator doesn't pause, but doesn't accept input either if that window is not focused.
"Genuine self-esteem, however, consists not of causeless feelings, but of certain knowledge about yourself.
It rests on the conviction that you — by your choices, effort and actions — have made yourself into the
kind of person able to deal with reality. It is the conviction — based on the evidence of your own volitional
functioning — that you are fundamentally able to succeed in life and, therefore, are deserving of that success."
- Onkar Ghate
Joined: 2/28/2006
Posts: 2275
Location: Milky Way -> Earth -> Brazil
20.0 is broken in all manners.
"Genuine self-esteem, however, consists not of causeless feelings, but of certain knowledge about yourself.
It rests on the conviction that you — by your choices, effort and actions — have made yourself into the
kind of person able to deal with reality. It is the conviction — based on the evidence of your own volitional
functioning — that you are fundamentally able to succeed in life and, therefore, are deserving of that success."
- Onkar Ghate
I'm amazed that my savestate-saving/loading operations in SGB (Border enabled) movies can be recorded with v20.0.
<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
I managed to get r9 of the SVN partially running (r10 barfed up...). It plays games fine, yet segfaults when trying to play back a vbm file.
Check issue 19 on the tracker for more. In case anybody is willing to help us SDL folks to get that running, contributions of any kind are really appreciated.
I'm not familiar with SDL things, so I don't seem to update that really outdated SDL port.
It's sad that my personal computer where all my code stuff lurks is down and unlikely to be repaired soon for some reasons.
<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