From 457d0c866b5ef333aaa925dbf8d13b1bdf2b2af7 Mon Sep 17 00:00:00 2001 From: Connor McLaughlin Date: Tue, 5 Jan 2021 02:01:56 +1000 Subject: [PATCH] Created Difficult to Emulate Games (markdown) --- Difficult-to-Emulate-Games.md | 94 +++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 Difficult-to-Emulate-Games.md diff --git a/Difficult-to-Emulate-Games.md b/Difficult-to-Emulate-Games.md new file mode 100644 index 0000000..748327b --- /dev/null +++ b/Difficult-to-Emulate-Games.md @@ -0,0 +1,94 @@ +Monkey Hero + - DMA transfer timing or FMVs lock up + - Commands spanning multiple blocks + +Hot Wheels Turbo Racing + - DMA timing or hangs on startup/ingame + +Syphon Filter (series) + - Infinite DMA linked list/chains + +Valkyrie Profile + - Requires DMA timing otherwise battles time out/lock up + +Red Asphalt +Dukes of Hazzard, The - Racing for Home +Little Princess - Marl Oukoku no Ningyou-hime 2 + - Hangs in various locations if DMA timing is off + - Locks up if DMA timing is off/CPU does not run + +Suikoden (version 1.0, not 1.1) + - Two releases, the old version corrupts palettes if you don't emulate fetch timing from the BIOS ROM + - It executes a bunch of memmoves (running from uncached ROM), which can't complete too quickly, racing the DMA + - Interestingly, version 1.1 spams printf during the same screen transition with a bunch of a's and a number suffix + +Deadheat Road + - Kicks off a DMA chain involving a VRAM fill, which takes a while to complete, + - then does a memcpy out of uncached ROM + - then zeroes out some of the headers in the DMA chain before it finishes + - Will hang emulators (if they don't properly handle infinite LLs) or the game will time out and skip a bunch of texture uploads in the loading scren + +Alice in Cyberland + - HUD/UI will flicker during battles if draw and DMA timing is instant + +Battle Arena Toshinden + - Runs too fast if CPU/GPU timing is off + +Bust A Groove Series + - Audio will drift slowly over time with game if GPU frame rate is incorrect + +Championship Motocross 2001 featuring Ricky Carmichael + - Sensitive to DMA timing - rider will be missing from bike if incorrect + +Evil Dead - Hail to the King (USA) + - Needs timer0 clocked from dot clock emulated + +NASCAR 2001 + - Main menu music will drop in and out if SPU interrupts are not re-triggered after enabling + +Skullmonkeys + - Requires GPU coordinate truncation/sign-extension otherwise objects will be missing + +Formula One 99 + - Requires CPU icache emulation + +Spyro 2 PAL +Spyro 3 PAL + - Libcrypt protection is really nasty - the cop0 instructions to grab are xor-obfuscated, and written immediately before execution + - Naive icache implementations will break - you need to handle partial line fetches from non-16-byte-aligned addresses + +Parasite Eve 2 +Disney's Treasure Planet + - Sensitive to MDEC timing + +Pro Pinball Series, True Pinball + - Requires interlaced rendering (line skipping) otherwise hangs on startup + +Dead or Alive + - Requires interlaced rendering, otherwise artifacts on screen in battles + +Vampire Hunter D + - Screws with GPU packets after enabling DMA, requires CPU to run in parallel otherwise menu will be black + +Jackie Chan Stuntmaster + - Triggers interrupts by setting cop0 bits in software, can be tricky for recompilers + +Silent Hill +Ghost In The Shell +TwinBee RPG +Duke Nukem - Land of the Babes +Ultraman - Fighting Evolution + - Various graphical errors if mask bit is not emulated correctly + +Megatudo 2096 +NBA Jam Extreme +Zero Divide + - Requires semi-accurate CPU timings (icache/fetch) and GPU draw timings, otherwise games run too fast + +Moto Racer +Frogger +Pandemonium! +Adidas Power Soccer 98 +Armored Core +Auto Destruct + - Sensitive to DMA timing (and CPU/DMA slices), otherwise controller input is dropped \ No newline at end of file