obhq / obliteration

Experimental PS4 emulator written in Rust for Windows, macOS and Linux
https://obliteration.net
MIT License
586 stars 17 forks source link

patch_fs for VEX_Vmovups_ymm_ymmm256 #826

Open VocalFan opened 2 months ago

VocalFan commented 2 months ago

When attempting to run Metal Gear Solid 3, the emulator quickly crashes on patch_fs as MGS3 uses an unimplemented code.

++++++++++++++++++ I [00:00:00:00:270]:0x0000000000005a98: kernel\src/main.rs:395
Application stack: 0x1f880004000:0x1f880204000
++++++++++++++++++ P [00:00:00:00:980]:0x0000000000005a98: kernel\src\ee\native\mod.rs:319
not yet implemented: 'vmovups ymm0,fs:[0]' ([64, c5, fc, 10, 04, 25, 00, 00, 00, 00]) at 0x1691b22 on /app0/eboot.bin.
VocalFan commented 2 months ago

VEX_Vmovups_ymm_ymmm256 - With a hacky implementation of patching ymm0 with NOP, it seems to progress to the point other games hit with DMEM

VocalFan commented 2 months ago

I have reached this with another game. Orbital Bullet.

++++++++++++++++++ P [00:00:00:00:813]:0x0000000000006d60: kernel\src\ee\native\mod.rs:319
not yet implemented: 'vmovups ymm0,fs:[0]' ([64, c5, fc, 10, 04, 25, 00, 00, 00, 00]) at 0x117fdd2 on /app0/eboot.bin.