Vmunix
More actions
vmunix is the name of the executable file that holds the bulk of the game code on most of the Atari/Midway HDD based games. Normally found in the CODE folder, Rush 2049 and its variants load this file into memory after the filesystem has been mounted, and execution jumps over to it starting with the controls calibration screen. The normal test menu is also present in this file, while the boot ROM hosts the QA DIAGS menu that can be accessed even if the HDD is not present.
Using these patches assumes you know how to use a hex editor and how to extract CODE/vmunix from the HDD or how to find the file on the drive directly.
Improper patching will result in glitches or game crashes, and linked machines with mismatched patches will result in race desyncing.
| Disable game ID check at boot (no IOASIC PROBLEM mismatch error) | 0x4906A: 0x40 → 0x00 (BEQ $v0, $0, $80048FFC → B $80048FFC)
|
| Fix mixed up dip switch definition for VGA/Medium Resolution in DIP SWITCH TEST | 0x133614: 0x6C → 0x480x133618: 0x48 → 0x6C
|
| Fix mixed up dip switch definition for diagnostics types in DIP SWITCH TEST | 0x133660: 0xF8 → 0xDC0x133664: 0xDC → 0xF8
|
| Disable autolink between machines (will cause reverse button tire squeal to play until cursor is moved once) | 0x71C57: 0x10 → 0x14 (BEQ $v0, $0, $80071BFC → BNE $v0, $0, $80071BFC)
|
| Disable tire squeal when pressing reverse on track selection | 0x71C68: 0x64F0010C → 0x00000000 (JAL $8007C190 → NOP)0x71C6C: 0x04080424 → 0x00000000 (ADDIU $a0,$0,$804 → NOP)
|
| Disable linked timer continual reset when waiting on a player, even if that player chose a different track | 0x71598: 0xFCCC010C → 0x00000000 (JAL $800733F0 → NOP)0x7159C: 0x2D200000 → 0x00000000 (DADDU $a0,$0,$0 → NOP)0x715A0: 0x42CD010C → 0x00000000 (JAL $80073508 → NOP)0x715A4: 0x10270424 → 0x00000000 (ADDIU $a0,$0,$2710 → NOP)0x71660: 0xFCCC010C → 0x00000000 (JAL $800733F0 → NOP)0x71664: 0x2D200000 → 0x00000000 (DADDU $a0,$0,$0 → NOP)0x71668: 0x42CD010C → 0x00000000 (JAL $80073508 → NOP)0x7166C: 0x10270424 → 0x00000000 (ADDIU $a0,$0,$2710 → NOP)
|
| Force enable debug switch in dlevels (Gives 700 second timer) | 0x38248: 0x02004230 → 0x00000000 (ANDI $v0,$v0,$0002 → NOP)
|
| Disable auto abort from sitting still for too long | 0x6F638: 0x08 → 0x98 (ADDIU $v0,$0,$8 → ADDIU $v0,$0,$98)0x6F64A: 0x4050 → 0x4304 (BEQL $v0,$0,$8006F728 → BGEZL $v0,$8006F728)
|