Sonic Adventure 2: Battle

Sonic and company are back and better than ever in Sonic Adventure 2: Battle. Dr. Eggman is causing trouble once again, and it's up to Sonic, Tails, and Knuckles to stop him. Experience faster action, all-new two-player games, and a branching storyline that lets you choose to save the world as the Hero side, or conquer it as the Dark side. In the single-player mode, you'll go through more than 30 unique stages, which include a forgotten pyramid, an abandoned military base, and a giant space station. And then there's the expanded two-player mode, which features 12 playable characters competing in new head-to-head games.

Text Missing
Random letters and numbers missing, most noticeably in Chao World but occasionally in subtitles. The cause is unknown, and occurs even with a real GC bios. Setting the Texture Cache Accuracy to safe seems to be the fix.

Dual Core Mode Causes Crashes
If Dual Core mode is on, the emulator will trigger panic handlers and inevitably crash. See.

Tiny Chao Garden
Connections to a GBA (emulated via VBA-M) to enable play of "Tiny Chao Garden" does work as of the VBA-Link updates. In order to get a connection, sometimes the GBA Link has to be turned off as it's attempting to connect. There may be slow framerates as well. Getting the chao back in can be problematic, but has worked at least once.

Black Bar at Bottom of Screen
This is caused by the game running in 50Hz mode. Hold down B as emulation starts to get a prompt for 60Hz mode, or use RealXFB to fix 50 Hz mode.

Graphics Issues
During Kart races, the texture directly left, right, behind, and before the Kart is either static or lines. During King Boom Boo boss fight with Knuckles, when the King is underground, his shadow is invisible. In addition, static or lines may occur. The cause is unknown. Fixed in recent development builds.

Meteor Herd Crash
Select the stage "Meteor Herd", and dig in the ground below the starting area. If done the game will crash. Fixed in recent development builds. --error message in log-- 42:40:730 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc1 @ 00000000270DDC66, preprocessing = no) 42:40:735 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x66 @ 000000002712CA11, preprocessing = no) 42:40:749 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xfd @ 00000000271DDCCE, preprocessing = no) 42:40:765 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x41 @ 00000000270F69E3, preprocessing = no) 42:40:777 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x5e @ 000000002717F406, preprocessing = no) 42:40:777 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc1 @ 000000002717F407, preprocessing = no) 42:40:783 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x66 @ 00000000271CE1B2, preprocessing = no) 42:40:799 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x5e @ 00000000270D128B, preprocessing = no) 42:40:799 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc1 @ 00000000270D128C, preprocessing = no) 42:40:804 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x66 @ 0000000027120037, preprocessing = no) 42:40:817 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x3f @ 00000000271D12C4, preprocessing = no) 42:40:817 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x16 @ 00000000271D12C5, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941AB, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941AC, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941AD, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941AE, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941AF, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B0, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B1, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B2, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B3, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B4, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B5, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B6, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B7, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B8, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941B9, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941BA, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941BB, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941BC, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941BD, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941BE, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000271941BF, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027194208, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027194209, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719420A, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719420B, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719420C, preprocessing = no) 42:44:700 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719420D, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719420E, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719420F, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027194210, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027194211, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027194212, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027194213, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027194214, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027194215, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196410, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196411, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196414, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196415, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196418, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196419, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719641C, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719641D, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719641E, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719641F, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196420, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196421, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196422, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196423, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196424, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196425, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196426, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 0000000027196427, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x3f @ 0000000027196440, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x7f @ 0000000027196441, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xce @ 0000000027196442, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc2 @ 0000000027196448, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x7b @ 0000000027196449, preprocessing = no) 42:44:701 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 000000002719644A, preprocessing = no) 42:44:702 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc5 @ 00000000271C0EDF, preprocessing = no) 42:44:702 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc2 @ 00000000271C0EE0, preprocessing = no) 42:44:716 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc0 @ 00000000270D75AF, preprocessing = no) 42:44:716 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc5 @ 00000000270D75C5, preprocessing = no) 42:44:724 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x2a @ 00000000270D75C6, preprocessing = no) 42:44:724 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xe9 @ 00000000270D766F, preprocessing = no) 42:44:724 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xcd @ 00000000270D7676, preprocessing = no) 42:44:724 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xeb @ 00000000270D7677, preprocessing = no) 42:44:724 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x58 @ 00000000270D7678, preprocessing = no) 42:44:724 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x79 @ 00000000270D7679, preprocessing = no) 42:44:724 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x59 @ 00000000270D767A, preprocessing = no) 42:44:724 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x7e @ 00000000270D767B, preprocessing = no) 42:44:738 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x18 @ 00000000271640D9, preprocessing = no) 42:44:738 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x3c @ 00000000271640DC, preprocessing = no) 42:44:738 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x1f @ 00000000271640DF, preprocessing = no) 42:44:739 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x05 @ 0000000027172EE4, preprocessing = no) 42:44:739 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xf3 @ 0000000027172EE5, preprocessing = no) 42:44:743 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x4e @ 00000000271CF90D, preprocessing = no) 42:44:743 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x59 @ 00000000271CF90E, preprocessing = no) 42:44:743 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x07 @ 00000000271CF913, preprocessing = no) 42:44:743 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x50 @ 00000000271CF914, preprocessing = no) 42:44:743 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x59 @ 00000000271CF915, preprocessing = no) 42:44:743 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x52 @ 00000000271CF916, preprocessing = no) 42:44:744 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x41 @ 00000000271CF917, preprocessing = no) 42:44:744 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x4d @ 00000000271CF918, preprocessing = no) 42:44:744 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x49 @ 00000000271CF919, preprocessing = no) 42:44:749 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc5 @ 00000000271DE487, preprocessing = no) 42:44:750 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x7a @ 00000000271DE488, preprocessing = no) 42:44:750 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xe4 @ 00000000271DE489, preprocessing = no) 42:44:750 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x3c @ 00000000271DE48A, preprocessing = no) 42:44:750 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xc5 @ 00000000271DE48B, preprocessing = no) 42:44:750 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x74 @ 00000000271DE48C, preprocessing = no) 42:44:760 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x0f @ 00000000270E5735, preprocessing = no) 42:44:760 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x73 @ 00000000270E5736, preprocessing = no) 42:44:760 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x03 @ 00000000270E5737, preprocessing = no) 42:44:760 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x0c @ 00000000270E5738, preprocessing = no) 42:44:766 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x3b @ 00000000270E5739, preprocessing = no) 42:44:766 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000270E573A, preprocessing = no) 42:44:766 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x0f @ 00000000270E573B, preprocessing = no) 42:44:766 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0xff @ 00000000270E578A, preprocessing = no) 42:44:766 OpcodeDecoding.cpp:296 E[Video]: FIFO: Unknown Opcode(0x3f @ 00000000270E578B, preprocessing = no)

Crash in Wild Canyon (2nd Hero level)
If framelimit is set to "auto", then the game will crash upon the player trying to float up using the wind tunnel in the middle of the level. Setting the framelimit to "60" solves the issue. Fixed sometime before.