Status Update - September 2021
Added 2021-10-01 17:54:55 +0000 UTCHey! September was somewhat productive, with a big package of Gran Turismo 2 cheats and some emulation fixes. Let's get to it!
DuckStation
- GamePropertiesDialog: Unlock the CPU OC slider only when the option is ticked - a small UX improvement, locking the overclock slider in Game Properties when the option is set to "partially checked". Overriding the OC setting without checking the option fully made no sense, so now the UI should be less confusing.
- CommonHostInterface: Fix broken word wrap in DrawOSDMessages - Fixes a regression where long OSD messages did not calculate the rect size with word wrap in mind, but they tried to draw with wrap, resulting in messages cutting off.
- Cheat list fixes - Fixes two bugs with the dropdown cheat list - their toggle state would be inconsistent depending on whether they were toggled from the cheat dropdown or the Cheat Manager. Now it's been fixed.
- Make DoSafeMemoryAccess return true properly for RAM, BIOS, dcache writes - Fixes broken cheats when writing to unaligned addresses, maybe also achievements. If you had issues with my metric cheat for Gran Turismo 2 not working as expected, please update DuckStation!
PCSX2
- Replace ATL with WIL - a big change I submitted a few months ago got merged in September. It replaces an ancient library used by PCSX2 (ATL) with a modern one (WIL), fixing numerous minor issues with the code along the way.
- Fix regressions from WIL migration - after merging my WIL changes, a few regressions showed up. However, with the exception of one issue, these were not exactly regressions, but previously quietly ignored bugs that now started failing "loudly!" I promptly fixed them, reassuring everyone that in hindsight, replacing a few quiet failures with "loud" ones helped uncover some issues in the code, one of them over a decade old!
- SPU2: Refactor SndOut_XAudio2.cpp - a rewrite of PCSX2's XAudio2 backend that allowed me to fix a few issues on shutting down/restarting the audio backend, and cleaned up the code greatly.
- PortAudio: Remove DirectSound backend - DirectSound is pretty broken nowadays and has much better alternatives on all OSes supported by PCSX2, so I just disabled it.
Gran Turismo 2
The highlight of this month was, without any doubt, Gran Turismo 2. I released several new cheats for the game, incl. a new widescreen cheat, an upgraded 60 FPS cheat, an upgraded metric system cheat, LOD override cheat, and more. I published a detailed writeup about this pack at the start of September:
https://cookieplmonster.github.io/2021/09/06/gran-turismo-2-codes-pack/
What's next?
I managed to keep the good pace of new "console" releases - as shown on Twitter lately, I'm currently working on more cheats for PS1 and PS2 Gran Turismos, such as:
- Real endurance for GT2 - a cheat making the only Endurance in GT2 last truly for 2 hours and not ending after 99 laps, much like in PS2 GTs.
- Trigger sensitivity cheats for PS2 GTs - finetuning triggers sensitivity so these games play more like their PS3 versions, with greater throttle/brake control on triggers.
- Remapping cheat for GT4 Prologue - allowing users to remap controls since GT4P is the only "mainline" Gran Turismo not to have that option in the UI!
- Misc cheats for NASCAR: Dirt to Daytona and Test Drive: Eve of Destruction - finally making the Consoles section more than a Gran Turismo section, a pack of cheats to remap controls in these PS2 games from Monster Games, to be more like in NASCAR Heat and/or Xbox releases of their games. Also, a cheat allowing the user to pick arbitrary birth dates for their driver profile, because there is no reason the user should be constrained to pick years 1986 or older.
Just like last month, these updates should arrive soon, so keep an eye on the blog and on this page!