# ======================================================================================== # compat.ini for PPSSPP # ======================================================================================== # # This file is not meant to be user-editable, although is kept as a separate ini # file instead of compiled into the code for debugging purposes. # # The uses cases are strict: # * Enable fixes for things we can't reasonably emulate without completely ruining # performance for other games, such as the screen copies in Dangan Ronpa # * Disabling accuracy features like 16-bit depth rounding, when we can't seem to # implement them at all in a 100% compatible way # * Emergency game-specific compatibility fixes before releases, such as the GTA # music problem where every attempted fix has reduced compatibility with other games # * Enable "unsafe" performance optimizations that some games can tolerate and # others cannot. We do not currently have any of those. # # This functionality should NOT be used for any of the following: # * Cheats # * Fun hacks, like enlarged heads or whatever # * Fixing general compatibility issues. First try to find a general solution. Try hard. # # Game IDs can be looked up at GameFAQs, for example: # http://www.gamefaqs.com/psp/925776-grand-theft-auto-liberty-city-stories/data # Sometimes the information may be incomplete though. # # ======================================================================================== # Issue numbers refer to issues on https://github.com/hrydgard/ppsspp/issues # ======================================================================================== [VertexDepthRounding] # Phantasy Star Portable needs depth rounding to 16-bit precision for text to show up. # It's enough to do it at the vertex granularity. #3777 # Phantasy Star Portable ULJM05309 = true ULUS10410 = true ULES01218 = true ULJM08023 = true ULES01218 = true # Phantasy Star Portable 1 Demo NPUH90023 = true # Phantasy Star Portable 2 ULES01439 = true ULUS10529 = true ULJM05493 = true NPJH50043 = true ULJM08030 = true NPUH90023 = true ULJM91014 = true NPJH90002 = true ULJM05732 = true NPJH50332 = true # Phantasy Star Portable 2 JP Demo ULJM91018 = true NPJH90062 = true # Phantasy Star Portable Infinity Demo NPJH90157 = true # Infinity demo # Puyo Puyo Fever 2 #3663 (layering) ULJM05058 = true # NBA 2K13 #6603 (menu glitches) ULAS42332 = true ULJS00551 = true NPJH50713 = true ULJS00596 = true ULES01578 = true ULUS10598 = true # Power Stone Collection #6257 (map arrow) ULES00496 = true ULUS10171 = true ULJM05178 = true # Taiko no Tatsujin Portable DX #7920 (missing text) ULJS00383 = true NPJH50426 = true ULAS42282 = true # PhotoKano #7920 (missing text) ULJS00378 = true NPJH50579 = true ULJS19069 = true NPJH50579 = true # After Burner: Black Falcon (#8514, only affects video) ULUS10244 = true ULES00753 = true ULES00785 = true # Matching Maker 3 x Tousouchuu (#15913) ULJS00242 = true [PixelDepthRounding] # Heroes Phantasia requires pixel depth rounding. #6485 (flickering overlaid sprites) NPJH50558 = true ULJS00456 = true ULJS00454 = true # Tales of Phantasia: Full Voice Edition # Attempted workaround for stencil testing driver bug on Arm Exynos (similar to the previous Adreno bug). # Seems that writing to depth disables a faulty optimization it's trying to do (as we saw in stencil draw). ULJS00079 = true ULJS19016 = true UCAS40110 = true NPJH50854 = true # Heroes Phantasia Limited Edition Disc requires pixel depth rounding. ULJS00455 = true # Phantasy Star games flickering # Phantasy Star Portable ULJM05309 = true ULUS10410 = true ULES01218 = true ULJM08023 = true ULES01218 = true # Phantasy Star Portable 1 Demo NPUH90023 = true # Phantasy Star Portable 2 ULES01439 = true ULUS10529 = true ULJM05493 = true NPJH50043 = true ULJM08030 = true NPUH90023 = true ULJM91014 = true NPJH90002 = true ULJM05732 = true NPJH50332 = true # Phantasy Star Portable 2 JP Demo ULJM91018 = true NPJH90062 = true # Phantasy Star Portable Infinity Demo NPJH90157 = true # Infinity demo # Nayuta no Kiseki might improve with pixel depth rounding. See issue #8744. ULJM06113 = true NPJH50625 = true ULJM08069 = true NPJH50625 = true [DepthRangeHack] # Phantasy Star Portable 2 and Infinity both use viewport depth outside [0, 1]. # This gets clamped in our current implementation, but attempts to fix it run into # Other bugs, so we've restored this hack for now. # Phantasy Star Portable ULJM05309 = true ULUS10410 = true ULES01218 = true ULJM08023 = true ULES01218 = true # Phantasy Star Portable 1 Demo NPUH90023 = true # Phantasy Star Portable 2 ULES01439 = true ULUS10529 = true ULJM05493 = true NPJH50043 = true ULJM08030 = true NPUH90023 = true ULJM91014 = true NPJH90002 = true ULJM05732 = true NPJH50332 = true # Phantasy Star Portable 2 JP Demo ULJM91018 = true NPJH90062 = true # Phantasy Star Portable Infinity Demo NPJH90157 = true # Infinity demo [ClearToRAM] # SOCOM Navy Seals games require this. See issue #8973. # Navy Seals : Tactical Strike UCES00855 = true UCUS98649 = true NPJG00035 = true NPJG90068 = true UCJS10102 = true # Tactical Strike demo NPUG70003 = true # Fireteam Bravo UCKS45021 = true UCUS98615 = true UCES00038 = true ULES00038 = true # Fireteam Bravo 2 UCES00543 = true UCUS98645 = true # Fireteam Bravo 2 Demo UCUS98677 = true UCUS98691 = true # DBZ Tenkaichi Tag Team, see issue #14283 ULJS00311 = true ULAS42247 = true ULUS10537 = true ULUS10737 = true ULJS19067 = true ULAS42318 = true NPUH90087 = true # demo NPEH90042 = true # demo [Force04154000Download] # This applies a hack to Dangan Ronpa, its demo, and its sequel. # The game draws solid colors to a small framebuffer, and then reads this directly in VRAM. # We force this framebuffer to 1x and force download it automatically. NPJH50631 = true NPJH50372 = true NPJH90164 = true NPJH50515 = true # Let's also apply to Me & My Katamari. ULUS10094 = true ULES00339 = true ULJS00033 = true UCKS45022 = true ULJS19009 = true NPJH50141 = true [DrawSyncEatCycles] # This replaced Crash Tag Team Racing hack to also fix Gundam games # It makes sceGeDrawSync eat a lot of cycles which can affect timing in lots of games, # might be negative for others, but happens to fix games below. # Gundam Battle Royale might need it to avoid crashes when certain Ace enemies shows up ULJS00083 = true ULKS46104 = true ULJS19015 = true # Gundam Battle Chronicle needs it to avoid crashes after most battles ULJS00122 = true ULKS46158 = true ULJS19021 = true # Gundam Battle Universe same problem as above ULJS00145 = true ULKS46183 = true ULJS00260 = true ULJS19041 = true NPJH50843 = true # Helps with Jeanne d'Arc weird 40/40 fps problem #5154 UCAS40129 = true UCJS10048 = true UCKS45033 = true UCJS18014 = true UCUS98700 = true NPJG00032 = true UCJX90019 = true # Fixes some double framerate issues in Patapon 2, contributed by pamford45 UCJS10089 = true NPJG00010 = true PSPJ30000 = true UCAS40232 = true UCAS40239 = true UCES01177 = true UCUS98732 = true UCJS18036 = true UCAS40292 = true UCJS18053 = true # Rewrite # fixes softlocks, see #15904 ULJM06364 = true ULJM06365 = true # Crash Tag Team Racing used to need it to pass checking memory stick screen. # ULES00168 = true # ULES00169 = true # ULES00170 = true # ULES00171 = true # ULES00172 = true # ULJM05036 = true # ULUS10044 = true [KernelGetSystemTimeLowEatMoreCycles] # Brothers in Arms: D-Day works around weird FPS(falling under 100% even on powerful hardware) as well as it's animation speed #18509 # recommend to OC PSP CPU to at least twice as much as real PSP to get constant 60 fps ULES00608 = true ULUS10193 = true [DrawSyncInstant] # Bizarre timing issue in Sakura-sou no Pet na Kanojo, see issue #15224. Note that an instant DrawSync is not logical. NPJH50745 = true [FakeMipmapChange] # This hacks separates each mipmap to independent textures to display wrong-size mipmaps. # For example this requires games like Tactics Ogre(Japanese) to display multi bytes fonts stored in mipmaps. # See issue #5350. # Tactics Ogre (Japanese) ULJM05753 = true NPJH50348 = true ULJM06009 = true # We handle the US/EU versions by detecting its weird use of two identical mipmaps and treating it as a normal 2D texture (#17491 / #17980) [RequireBufferedRendering] # Warn the user that the game will not work and have issue, if buffered rendering is not enabled. # Midnight Club: LA Remix ULUS10383 = true ULES01144 = true ULJS00180 = true ULJS00267 = true ULJM05904 = true NPJH50440 = true # Midnight Club 3 : DUB edition ULUS10021 = true ULES00108 = true # GTA : VCS ULUS10160 = true ULES00502 = true ULES00503 = true ULJM05297 = true ULJM05395 = true ULJM05884 = true NPJH50827 = true # GTA : LCS ULUS10041 = true ULES00151 = true ULES00182 = true ULJM05255 = true ULJM05359 = true ULJM05885 = true NPJH50825 = true ULKS46157 = true # Sindacco Chronicles total conversion ULUS01826 = true # GOW : Ghost of Sparta UCUS98737 = true UCAS40323 = true NPHG00092 = true NPEG00044 = true NPEG00045 = true NPJG00120 = true NPUG80508 = true UCJS10114 = true UCES01401 = true UCES01473 = true # GOW : Ghost of Sparta Demo NPJG90095 = true NPEG90035 = true NPUG70125 = true # GOW : Chains Of Olympus UCAS40198 = true UCUS98653 = true UCES00842 = true ULJM05438 = true ULJM05348 = true UCKS45084 = true NPUG80325 = true NPEG00023 = true NPHG00027 = true NPHG00028 = true NPJH50170 = true UCET00844 = true # GOW: Chains of Olympus Demo UCUS98705 = true UCED00971 = true UCUS98713 = true # Daxter UCUS98618 = true UCUS98654 = true UCES00044 = true NPUG80329 = true NPEG00025 = true UCKS45025 = true # Ys Seven ULUS10551 = true ULJM05475 = true NPEH00065 = true NPJH50350 = true ULJM08041 = true NPEH00065 = true # The Legend of Heroes: Trails in the Sky ULUS10540 = true ULUS10578 = true ULES01556 = true ULJM05170 = true ULJM08033 = true NPJH50373 = true # Grand Knights History ULJS00394 = true ULJS19068 = true NPJH50518 = true # Tactics Ogre ULUS10565 = true ULES01500 = true ULJM05753 = true NPJH50348 = true ULJM06009 = true UCKS45164 = true # Metal Gear Solid : Peace Walker ULUS10509 = true ULES01372 = true ULJM08038 = true NPJH50045 = true ULJM05630 = true NPJH90082 = true NPJH90063 = true # Star Ocean : Second Evolution ULUS10375 = true ULES01187 = true ULJM05591 = true ULJM05325 = true UCAS40203 = true # Driver 76 ULUS10235 = true ULES00740 = true # Chili Con Carnage ULUS10216 = true ULES00629 = true # Digimon Adventure NPJH50686 = true ULJS00541 = true ULAS42340 = true # Danganronpa ULJS00337 = true ULJS19060 = true NPJH50372 = true NPJH50515 = true # Danganronpa Demo NPJH90164 = true # Super Danganronpa 2 ULJS00521 = true ULJS00522 = true NPJH50631 = true # The Simpsons Game ULUS10295 = true ULES00975 = true ULES00979 = true ULES00978 = true ULES00977 = true ULES00976 = true # Jeanne d'Arc UCUS98700 = true UCJS10048 = true # Jeanne d'Arc Senkou Taikenban (Demo) UCJX90019 = true # Dante's Inferno ULUS10469 = true ULES01384 = true ULJM05621 = true NPJH50220 = true ULJM05799 = true ULKS46248 = true # Test Drive Unlimited ULET00386 = true ULUS10249 = true ULES00637 = true ULKS46126 = true # Silent Hill: Shattered Memories ULUS10450 = true ULES01352 = true ULJM05564 = true NPJH50148 = true ULAS42189 = true # Silent Hill: Origins ULUS10285 = true ULES00869 = true ULJM05281 = true NPJH50051 = true # Manhunt 2 ULUS10280 = true ULES00756 = true # LEGO Star Wars II: The Original Trilogy ULUS10155 = true ULES00479 = true # LEGO Indiana Jones: The Original Adventures ULUS10365 = true ULES01086 = true # LEGO Batman: The Videogame ULUS10380 = true ULES01151 = true # Burnout Dominator ULUS10236 = true ULES00750 = true ULJM05242 = true ULJM05371 = true NPJH50304 = true ULES00703 = true # Yu-Gi-Oh Tag Force 6 ULJM05940 = true NPJH50794 = true # Cave Story (homebrew) CAVE00992 = true # TODO: There are many more. [RequireBlockTransfer] # Warn the user that the game will have issue graphic, if simulate block transfer is not enabled. # The Legend of Heroes: Trails in the Sky need it to fix graphical glitch in menu screen. See issues #8053 ULUS10540 = true ULUS10578 = true ULES01556 = true ULJM05170 = true ULJM08033 = true NPJH50373 = true NPUH10191 = true NPUH10197 = true # Grand Knights History need it to fix blackboxes on characters and flickering texture . See issues #2135, #6099 ULJS00394 = true ULJS19068 = true NPJH50518 = true # Gradius Collection (see #13887) ULUS10103 = true ULES00381 = true ULJM05091 = true # GachiTora! Abarenbou Kyoushi in High School need it to render shadows properly (see #14136) ULJS00355 = true NPJH50409 = true # MegaMan Maverick Hunter X (see #10085) ULES00251 = true ULUS10068 = true ULJM05043 = true [DisableAccurateDepth] # Midnight Club: LA Remix ULUS10383 = true ULES01144 = true ULJS00180 = true ULJS00267 = true ULJM05904 = true NPJH50440 = true # Midnight Club 3 : DUB edition ULUS10021 = true ULES00108 = true # Shadow of Destiny (#9545) ULUS10459 = true NPJH50036 = true # Burnout games have problems with this on Mali, and have no use for it # Legends #ULES00125 = true #ULUS10025 = true #ULJM05228 = true #NPJH50305 = true #ULJM05049 = true #ULKS46027 = true #ULAS42019 = true # Dominator ULUS10236 = true ULES00750 = true ULJM05242 = true ULJM05371 = true NPJH50304 = true ULES00703 = true ULAS42095 = true [RequireDefaultCPUClock] # GOW : Ghost of Sparta UCUS98737 = true UCAS40323 = true NPHG00092 = true NPEG00044 = true NPEG00045 = true NPJG00120 = true NPUG80508 = true UCJS10114 = true UCES01401 = true UCES01473 = true # GOW : Ghost of Sparta Demo NPJG90095 = true NPEG90035 = true NPUG70125 = true # Tekken 6 ULUS10466 = true ULES01376 = true ULJS00224 = true NPUH10047 = true ULAS42214 = true ULJS19054 = true NPJH50184 = true [MGS2AcidHack] ULUS10006 = true # Metal Gear Acid ULES00008 = true ULJM05001 = true ULAS42007 = true ULJM08001 = true ULUS10077 = true # Metal Gear Acid 2 ULAS42035 = true ULES00284 = true ULJM05047 = true ULKS46065 = true ULJM08011 = true [SonicRivalsHack] ULES00622 = true # SR1 ULUS10195 = true # SR1 ULUS10323 = true # SR2 ULES00940 = true # SR2 ULET00958 = true [BlockTransferAllowCreateFB] # Digimon Adventure (JP and English patches) NPJH50686 = true ULJS00541 = true ULAS42340 = true # MotoGP ULUS10153 = true UCES00373 = true ULJS00078 = true UCAS40104 = true # Ys Seven disabled (caused glitches, see #13529) # ULUS10551 = true # ULJM05475 = true # ULJM05475 = true # NPEH00065 = true # NPJH50350 = true # Burnout Legends ULES00125 = true ULUS10025 = true ULJM05228 = true NPJH50305 = true ULJM05049 = true ULKS46027 = true ULAS42019 = true # Burnout Dominator ULUS10236 = true ULES00750 = true ULJM05242 = true ULJM05371 = true NPJH50304 = true ULES00703 = true # Test Drive Unlimited ULET00386 = true ULUS10249 = true ULES00637 = true ULKS46126 = true # Naruto Shippuden: Ultimate Ninja Impact ULUS10582 = true ULES01537 = true ULJS00390 = true ULAS42297 = true ULJS19071 = true NPJH50435 = true NPJH50435 = true # Naruto Shippuden: Ultimate Ninja Heroes 3 (issue #16733) ULJS00236 = true ULAS42208 = true ULUS10518 = true ULAS42231 = true ULJS19066 = true ULAS42317 = true ULUS10518 = true # Gradius Collection ULUS10103 = true ULES00381 = true ULJM05091 = true ULJM05222 = true ULAS42040 = true ULKS46064 = true # Shaun White Snowboarding (player shadow) ULES01185 = true ULUS10399 = true ULJM05412 = true NPJH50083 = true ULJM05570 = true # Cars Race-o-rama ULUS10428 = true ULES01333 = true # MX vs ATV Reflex ULES01375 = true ULUS10429 = true # Silent Hill: Origins # Avoids readback. ULES00869 = true ULUS10285 = true ULKS46161 = true ULJM05281 = true NPJH50051 = true # Silent Hill: Shattered Memories # Avoids readback. ULUS10450 = true ULES01352 = true ULJM05564 = true NPJH50148 = true ULAS42189 = true # Toca Race Driver 3 / DTM Race Driver 3 / V8 Supercars Shootout 3 # Avoids readback. ULES00613 = true ULES00615 = true ULES00614 = true # Toca Race Driver 2 / DTM Race Driver 2 # Avoids readback. ULES00040 = true ULES00041 = true ULJM05160 = true # Narikiri Dungeon X. See issue #16714. ULJS00293 = true [IntraVRAMBlockTransferAllowCreateFB] # Final Fantasy - Type 0 ULJM05900 = true ULJM05901 = true NPJH50443 = true NPJH50444 = true ULJM06217 = true ULJM06218 = true UCAS40346 = true UCAS40347 = true # Boku no Natsuyasumi: Mushi Mushi Hakase to Teppen-yama no Himitsu!! UCJS10038 = true UCJS18013 = true # Megaman Maverick Hunter X (see #10085) ULES00251 = true ULUS10068 = true ULJM05043 = true # R-TYPE TACTICS (see #14198) ULJS00111 = true # Japan NPJH50106 = true # Japan UCKS45065 = true # Korea UCAS40168 = true # Asia ULES01121 = true # Europe ULUS10343 = true # US, (R-TYPE COMMAND) NPUH90008 = true # (R-TYPE COMMAND demo) # R-TYPE TACTICS II -Operation BITTER CHOCOLATE- NPJH50119 = true ULJS00233 = true NPJH90089 = true # (demo) NPJH90065 = true # Unknown # Colin McRae 2005 (sun effect, see #7810) ULES00111 = true ULKS46010 = true ULJM05223 = true ULJM05362 = true # Iron Man, see [BlockTransferDepth] below. ULES01070 = true ULES01071 = true ULUS10347 = true # Note! This whole flag is disabled temporarily by appending "Disabled" to its name). See 7914 [YugiohSaveFixDisabled] # The cause of Yu-gi-oh series 's bad save (cannot save) are load "save status" and use cwcheat, # but the real cause still unknown. #7914 # Yu-Gi-Oh! Duel Monsters GX: Tag Force ULJM05151 = true ULES00600 = true ULUS10136 = true # Yu-Gi-Oh! Duel Monsters GX: Tag Force 2 ULUS10302 = true ULJM05260 = true ULES00925 = true ULES00926 = true # Yu-Gi-Oh! Duel Monsters GX: Tag Force 3 ULES01183 = true ULJM05373 = true # Yu-Gi-Oh! 5D's Tag Force 4 ULUS10481 = true ULJM05479 = true ULES01362 = true # Yu-Gi-Oh! 5D's Tag Force 5 ULUS10555 = true ULJM05734 = true ULES01474 = true # Yu-Gi-Oh! 5D's Tag Force 6 ULJM05940 = true NPJH50794 = true # Yu-Gi-Oh! 5D's Tag Force ULJM05940 = true # Yu-Gi-Oh! ARC-V Tag Force Special NPJH00142 = true [ForceUMDDelay] # F1 2006 won't boot at all with our standard unrealistically fast timing. UCES00238 = true UCJS10045 = true # F1 2005, japan only? UCJS10019 = true # Arctic Adventures - Polar's Puzzles NPEZ00219 = true NPUZ00114 = true # Innocent Life (see issue #2830) UCAS40079 = true ULUS10219 = true ULES00658 = true UCAS40187 = true ULJS00119 = true ULKS46167 = true NPJH50017 = true # Pangya Fantasy Golf (see issue #17458) ULUS10438 = true ULJM05687 = true ULJM05440 = true ULKS46164 = true # Qix++ (see issue #13724) ULJM05617 = true NPJH50199 = true # Mahou Shoujo Madoka Magica Portable #6557 ULJS00430 = true ULJS00429 = true # Harvest Moon US (issue #18287) ULUS10458 = true ULES01489 = true NPJH50019 = true ULJS19039 = true ULJS00188 = true # Twisted Metal sound effects break without this UCES00018 = true UCUS98601 = true # PlayStation Network Collection: Power Pack (#19571) UCES01160 = true # PlayStation Network Collection: Puzzle Pack UCES01159 = true # Bust-a-move Deluxe / Ghost (#8795) ULUS10057 = true ULES00233 = true [GoWFramerateHack60] # Replaces ForceMax60FPS for GOW games, should provide smoother experience # Also works around softlock in GOW:GOS , see #8299 # GOW : Ghost of Sparta UCUS98737 = true UCAS40323 = true NPHG00092 = true NPEG00044 = true NPEG00045 = true NPJG00120 = true NPUG80508 = true UCJS10114 = true UCES01401 = true UCES01473 = true # GOW : Ghost of Sparta Demo NPEG90035 = true NPUG70125 = true NPJG90095 = true # GOW : Chains Of Olympus UCAS40198 = true UCUS98653 = true UCES00842 = true ULJM05438 = true ULJM05348 = true UCKS45084 = true NPUG80325 = true NPEG00023 = true NPHG00027 = true NPHG00028 = true NPJH50170 = true UCET00844 = true # GOW: Chains of Olympus Demo UCUS98705 = true UCED00971 = true UCUS98713 = true [FramerateHack30] # Note that this hack is not universal, will not work for games simply added to the list # 30 fps hacks for games that run well are disabled by default since it's only an option for users with very weak hardware # GOW in 30 fps doesn't suffer from softlock #8299, so the hack is actually simpler # GOW : Ghost of Sparta # UCUS98737 = true # UCAS40323 = true # NPHG00092 = true # NPEG00044 = true # NPEG00045 = true # NPJG00120 = true # NPUG80508 = true # UCJS10114 = true # UCES01401 = true # UCES01473 = true # GOW : Ghost of Sparta Demo # NPEG90035 = true # NPUG70125 = true # NPJG90095 = true # GOW : Chains Of Olympus # UCAS40198 = true # UCUS98653 = true # UCES00842 = true # ULJM05438 = true # ULJM05348 = true # UCKS45084 = true # NPUG80325 = true # NPEG00023 = true # NPHG00027 = true # NPHG00028 = true # NPJH50170 = true # UCET00844 = true # GOW: Chains of Olympus Demo # UCUS98705 = true # UCED00971 = true # UCUS98713 = true # Brian Lara 2007: Pressure Play # workaround for incorrect fps/game speed ULES00814 = true ULES00815 = true # Blitz: Overtime # workaround for incorrect fps/game speed ULUS10200 = true [ForceMax60FPS] # Some games are very heavy and render as fast as they can. They benefit greatly from # capping the framerate at 60fps. # F1 2006 has extremely long loading times if we don't limit the framerate. UCES00238 = true UCJS10045 = true # F1 2005, japan only? UCJS10019 = true # The Transformers games are also afflicted with long loading times and render too fast like GoW. # Transformers - The Game ULES00823 = true ULES00824 = true ULES00825 = true ULUS10274 = true # Transformers - Revenge of the Fallen ULES01286 = true ULES01287 = true ULUS10433 = true # Tekken 6 ULUS10466 = true ULES01376 = true ULJS00224 = true NPUH10047 = true ULAS42214 = true ULJS19054 = true NPJH50184 = true # Hot Wheels - Ultimate Racing (issue #12604, this is a workaround) ULUS10239 = true ULES00828 = true # Fat Princess: Fistful of Cake loading speeds benefit greatly. UCAS40285 = true UCES01312 = true NPJG00045 = true NPHG00025 = true UCKS45137 = true UCUS98740 = true # Mumbo Jumbo games (see issue #12857) ULUS10287 = true # Super Collapse 3 ULES01027 = true # Super Collapse 3 ULUS10203 = true # Platypus ULES01029 = true # Platypus ULUS10227 = true # 7 Wonders of the Ancient World ULES01037 = true # 7 Wonders of the Ancient World # Super Monkey Ball Adventures also benefits from this (#7674). ULES00364 = true ULUS10132 = true # Homebrew Kurok (we don't normally add homebrew here but it has a distinctive GameID) KURO00767 = true # Scooby-Doo! Who's Watching Who? ULUS10168 = true ULES00571 = true # Tron Evolution ULUS10548 = true ULES01494 = true ULES01495 = true # Atari Classics Evolved ULUS10325 = true # Kurohyou 2: Ryu ga Gotoku Ashura Hen (Japan) NPJH50562 = true NPJH50333 = true # Silent Hill Origin ULUS10285 = true ULES00869 = true # Resistance Retribution UCES01184 = true UCUS98668 = true UCJP00174 = true # Spider-Man 3 ULES00938 = true ULUS10317 = true # NBA 2K13 ULUS10598 = true ULES01578 = true # Killzone: Liberation (see issue #6207) UCES00279 = true UCKS45041 = true UCUS98646 = true UCET00278 = true UCUS98670 = true UCUS98646 = true # Infected ULES00337 = true ULES00338 = true ULUS10054 = true [JitInvalidationHack] # This is an absolutely awful hack that somehow prevents issues when clearing the JIT, # if the game has copied code with EmuHack opcodes or something. Hopefully will be able # to remove this in the future. # See #3854. # Tony Hawk's Underground ULUS10014 = true ULES00033 = true ULES00034 = true ULES00035 = true # MTX MotoTrax ULUS10138 = true ULES00581 = true [HideISOFiles] # DJ Max Portable has some crude copy-protection functionality where it looks for ISO/CSO files # in a few directories. Prevent this by hiding the files from the game. # To be sure, catch all versions and remixes of the game that's been seen in reports. # It checks the following directories: # / # /PSP/ # /PSP/COMMON # /PSP/GAME ULKS46116 = true ULKS46189 = true ULKS46190 = true ULKS46236 = true ULKS46240 = true ULKS46059 = true ULUS10403 = true ULUS10538 = true ULKS46050 = true ULJM05836 = true ULJM46236 = true ULJM06034 = true NPHH00260 = true CF0020046 = true CF0020074 = true NPJH50471 = true ULJM06033 = true NPJH50559 = true NPEH00030 = true [MoreAccurateVMMUL] # Fixes leg shaking in Tekken 6. The potential for slowdown in other games is large enough # that we will not generally apply this accurate mode where not needed. ULUS10466 = true ULES01376 = true ULJS00224 = true NPUH10047 = true ULAS42214 = true ULJS19054 = true NPJH50184 = true [ForceSoftwareRenderer] # Darkstalkers ULES00016 = true ULUS10005 = true ULJM05005 = true [DarkStalkersPresentHack] # Darkstalkers ULES00016 = true ULUS10005 = true ULJM05005 = true [ReportSmallMemStick] # Harry Potter and the Goblet of Fire - issue #13266 ULUS10032 = true ULES00210 = true ULES00214 = true ULES00215 = true ULES00216 = true ULKS46047 = true # Street Fighter Alpha 3 MAX - issue #10462 ULJM05082 = true ULUS10062 = true ULES00235 = true ULJM05225 = true CPCS01043 = true ULUS10062 = true # LEGO Star Wars II: The Original Trilogy ULES00479 = true ULUS10155 = true # Tony Hawk's Underground 2 Remix ULES00033 = true ULUS10014 = true # Virtua Tennis: World Tour ULES00126 = true ULJM05079 = true ULKS46023 = true ULUS10037 = true # Warriors Orochi - issue #16827 ULJM05314 = true ULUS10341 = true ULES01054 = true ULJM08022 = true NPJH50126 = true ULJM08052 = true ULAS42316 = true # Doko Demo Issho - issue #18420 UCJS10002 = true UCJS10039 = true UCJS18012 = true [MemstickFixedFree] ULJM05571 = true ULES01367 = true NPEH00029 = true ULUS10455 = true [BlueToAlpha] # Some games render first to RGB of a 4444 texture, then they switch to 565 and render masked to blue, # just to be able to render to the alpha channel of the 4444. We can detect that and reroute rendering # to avoid problems. # Split/Second ULES01402 = true ULUS10513 = true ULJM05812 = true NPJH50371 = true # Colin McRae's DiRT 2 - issue #13012 (car reflections) ULUS10471 = true ULJM05533 = true NPJH50006 = true ULES01301 = true # Outrun 2006: Coast to Coast - issue #11358 (car reflections) ULES00262 = true ULUS10064 = true ULKS46087 = true [ForceMaxDepthResolution] # See #17014 - some games don't need our heuristics that drop down to 16-bit depth. # Outrun 2006: Coast to Coast - issue #11358 (car reflections) ULES00262 = true ULUS10064 = true ULKS46087 = true # Split/Second ULES01402 = true ULUS10513 = true ULJM05812 = true NPJH50371 = true # Cars Race-o-rama ULUS10428 = true ULES01333 = true # Test Drive Unlimited ULET00386 = true ULUS10249 = true ULES00637 = true ULKS46126 = true [DateLimited] # Car Jack Streets - issue #12698 NPUZ00043 = true NPEZ00198 = true [ShaderColorBitmask] # Colin McRae's DiRT 2 - issue #13012 (water) ULUS10471 = true ULJM05533 = true NPJH50006 = true ULES01301 = true # Outrun 2006: Coast to Coast - issue #11358 (car reflections), #11928 (water) ULES00262 = true ULUS10064 = true ULKS46087 = true # Burnout Dominator - lens flare effect (issue #11100) ULUS10236 = true ULES00750 = true ULJM05242 = true ULJM05371 = true NPJH50304 = true ULES00703 = true ULAS42095 = true # Need for Speed - Shift (same as Burnout Dominator) ULUS10462 = true ULES01275 = true ULJM05494 = true NPJH50143 = true ULJM05738 = true # Dragon Ball Z: Tenkaichi Tag Team: Shadows, see issue #18494 ULUS10537 = true ULES01456 = true ULJS00311 = true ULJS19067 = true ULAS42247 = true ULAS42318 = true [DisableFirstFrameReadback] # Wipeout Pure: Temporary workaround for lens flare flicker. See #13344 UCUS98612 = true UCJS10007 = true UCES00001 = true UCKS45008 = true NPJG00059 = true # SOCOM: Fireteam Bravo 3 (see issue #18958, hopefully fixes crash in Stockpile mission, #10461) UCES-01242 = true NPJG-00035 = true NPHG-00032 = true [MpegAvcWarmUp] # God Eater issue #13527 ,It is custom mpeg library that required sceMpegGetAvcAu return ERROR_MPEG_NO_DATA but break FIFA 14 issue #14086 # God Eater 1 ULJS00237 = true ULKS46238 = true # God Eater 2 ULJS00597 = true NPJH50832 = true ULJS19093 = true NPJH50832 = true # God Eater Burst ULJS00351 = true NPJH50352 = true ULJS00350 = true ULKS46263 = true ULUS10563 = true ULES01519 = true ULJS19056 = true NPJH50352 = true ULUS10563FV = true ULJS19081 = true NPJH50352 = true # Field Commander, see issue #10209 ULUS10088 = true ULES00335 = true ULKS46070 = true # Valkyrie Profile Lenneth (last video crash, see #6008) ULUS10107 = true ULJM05101 = true ULES00724 = true ULJM05320 = true [CenteredLines] # Echochrome looks better with these. Related: #15556 UCES01011 = true UCAS40197 = true NPEG00006 = true NPUG80135 = true # Webfest homebrew game (wireframe 3D rendering) looks substantially better with this. WEBF00752 = true [ZZT3SelectHack] # Bypass softlock on Zettai Zetsumei Toshi 3 character select screen #4901 # This problem affects the game also on PS3 ULJS00191 = true UCAS40252 = true UCKS45119 = true NPJH50907 = true UCAS40328 = true ULJS19050 = true NPJH50907 = true [AllowLargeFBTextureOffsets] # Final Fantasy - Type 0, see #18879 ULJM05900 = true ULJM05901 = true NPJH50443 = true NPJH50444 = true ULJM06217 = true ULJM06218 = true UCAS40346 = true UCAS40347 = true # Quickfix for Clone Wars, see #12949 ULES01284 = true ULES01285 = true ULUS10477 = true # Star Wars: The Force Unleashed ULUS10345 = true ULKS46143 = true ULES00981 = true ULES00982 = true LBSW10345 = true # Some modded version found in our report logs # Juiced 2 bloom effect (see #7295) ULES00928 = true ULUS10312 = true ULKS46154 = true [FramebufferAllowLargeVerticalOffset] # Tokimeki Memorial 4 (see #6379) NPJH50127 = true ULKS46226 = true ULAS42206 = true ULJM05541 = true # Breath of Fire III ULES00193 = true ULJM05029 = true ULJM05224 = true NPJH50214 = true [AtracLoopHack] #Atrac looped incorrectly see #7601 #13773 #11586 #10139 #12083 #Coded Arms: Contagion ULUS10184 = true ULJM05243 = true ULKS46139 = true #Gripshift ULUS10040 = true ULES00177 = true ULKS46040 = true ULJM05089 = true #Jackass the Game ULUS10303 = true ULES00897 = true #Shrek smash ULUS10194 = true ULES00618 = true # Silver Fall ULES00808 = true ULUS10270 = true [DeswizzleDepth] UCUS98633 = true UCAS40145 = true UCES00420 = true UCJS10052 = true UCKS45048 = true UCJS18030 = true UCJS18047 = true NPJG00015 = true [SplitFramebufferMargin] # Killzone: Liberation (see issue #6207) UCES00279 = true UCKS45041 = true UCUS98646 = true UCET00278 = true UCUS98670 = true UCUS98646 = true [UseFFMPEGFindStreamInfo] # The Warriors: Works around regression (#8991) by reverting to the old behavior ULUS10213 = true ULES00483 = true [ForceLowerResolutionForEffectsOn] # The water effect of DiRT 2 and Outrun doesn't work in higher resolutions. # Colin McRae's DiRT 2 - issue #13012 (water) ULUS10471 = true ULJM05533 = true NPJH50006 = true ULES01301 = true # Outrun 2006: Coast to Coast - issue #11358 (car reflections), #11928 (water) ULES00262 = true ULUS10064 = true ULKS46087 = true # Burnout Dominator - lens flare effect (issue #11100) # Some of the steps don't work at high resolution yet. ULUS10236 = true ULES00750 = true ULJM05242 = true ULJM05371 = true NPJH50304 = true ULES00703 = true ULAS42095 = true # Need for Speed - Shift (same as Burnout Dominator) ULUS10462 = true ULES01275 = true ULJM05494 = true NPJH50143 = true ULJM05738 = true # Motorstorm - See #16429 UCES01250 = true UCAS40266 = true UCUS98743 = true UCES01250 = true UCKS45124 = true UCJS10104 = true NPJG00047 = true # Tiger Woods 06 - bloom during rain ULUS10028 = true ULES00153 = true ULES00154 = true ULJM05059 = true ULAS42020 = true [ForceLowerResolutionForEffectsOff] # Some games really don't work with this. Ratchet & Clank looks terrible. UCUS98633 = true UCAS40145 = true UCES00420 = true UCJS10052 = true UCKS45048 = true UCES00420 = true UCJS18030 = true UCJS18047 = true NPJG00015 = true # The various Tantalus games will not work with this. # Cars Race-o-rama ULUS10428 = true ULES01333 = true # MX vs ATV Reflex ULES01375 = true ULUS10429 = true # MX vs ATV Untamed ULUS10330 = true ULES00993 = true ULKS46176 = true # Spongebob: The Yellow Avenger ULES00280 = true ULUS10092 = true # Also, it's a really bad idea in Kurohyou. # Kurohyou: Ryu ga Gotoku Shinshou ULJM05713 = true NPJH50333 = true ULAS42244 = true UCKS45159 = true ULJM08047 = true # Kurohyou 2: Ryu ga Gotoku Ashura Hen (Japan) NPJH50562 = true NPJH50333 = true [NearestFilteringOnFramebufferCreate] # Ridge Racer speedometer dynamic CLUT problem - they rely on some palette entries # from memory, and render to the rest of the palette. The palette entries loaded from memory # must not be blurred by filtering, so nearest it is. See issue #8509 # Ridge Racer ULJS00001 = true ULUS10001 = true UCKS45002 = true UCES00002 = true ULJS19002 = true UCKS45053 = true NPJH50140 = true # Ridge Racer 2 ULJS00080 = true UCKS45032 = true UCES00422 = true UCAS40273 = true NPJH50366 = true [AllowDownloadCLUT] # Temporary compatibility option, while working on the GPU CLUT-from-framebuffer path. # Not required for any games now that it works, but might be useful for development. [SecondaryTextureCache] # Was previously the "Retain changed textures" setting. # See https://github.com/hrydgard/ppsspp/issues/16339#issuecomment-1304826656 # Popolocrois UCJS10005 = true UCAS40009 = true ULUS10018 = true UCJS18003 = true ULES00291 = true NPJG00033 = true # Fushigi no Dungeon: Fuurai no Shiren 4 Plus - Kami no Hitomi to Akuma no Heso ULJS00547 = true NPJH50698 = true [EnglishOrJapaneseOnly] # Twinbee Portable, see issue #16382 ULAS42089 = true ULJM05221 = true ULJM05323 = true [OldAdrenoPixelDepthRoundingGL] # See #16015 # Naruto Shippuden: Ultimate Ninja Impact ULUS10582 = true ULES01537 = true ULJS00390 = true ULAS42297 = true ULJS19071 = true NPJH50435 = true NPJH50435 = true # Kingdom Hearts - Birth By Sleep ULES01441 = true ULJM05600 = true ULUS10505 = true ULJM05775 = true # Final MIX PSPJ30012 = true UCAS40295 = true UCKS45143 = true UCAS40317 = true UCAS40326 = true UCKS45168 = true ULJM06213 = true ULJM06214 = true # Monster Hunter Portable 3rd NPJB40001 = true NPJH55800 = true ULJM05800 = true ULJM08058 = true # Persona 3 Portable ULES01523 = true ULUS10512 = true UCAS40288 = true ULJM05489 = true UCKS45140 = true ULJM08044 = true NPJH50040 = true UCKS45175 = true # Hack/Link ULJS00266 = true ULJS00279 = true ULJS19058 = true # Midnight Club: LA Remix ULUS10383 = true ULES01144 = true ULJS00180 = true ULJS00267 = true ULJM05904 = true NPJH50440 = true # ModNation Racers UCES01327 = true UCUS98741 = true UCAS40306 = true UCJS10112 = true NPJG00116 = true NPUG70097 = true # Demo # Toca Race Driver 3 / DTM Race Driver 3 / V8 Supercars Shootout 3 ULES00613 = true ULES00615 = true ULES00614 = true # Toca Race Driver 2 / DTM Race Driver 2 ULES00040 = true ULES00041 = true ULJM05160 = true [ForceCircleButtonConfirm] # Shining Ark, issue #15663 NPJH50717 = true ULJM06223 = true # Danball Senki, issue #17622 ULJS00361 = true # Danball Senki Boost ULJM05990 = true # Shining Blade NPJH50530 = true [DisallowFramebufferAtOffset] # Little Big Planet, see #16030 UCUS98744 = true UCES01264 = true UCJS10107 = true NPJG00073 = true UCAS40262 = true # WWE Smackdown vs RAW 2006 : See #13797 ULES00227 = true ULKS46057 = true ULUS10050 = true # WWE Smackdown vs RAW 2007 ULUS10199 = True ULES00631 = True ULJM05233 = True # Rainbow Six: Vegas: See #9324 # Replaces a heuristic we added in #16971, which broke Castlevania - Symphony of the Night. ULES00584 = true ULUS10206 = true [RockmanDash2SoundFix] # Rockman Dash 2, see #11442 ULJM05037 = true ULJM05216 = true NPJH50181 = true [ReadbackDepth] # Syphon Filter - Dark Mirror UCES00310 = true UCUS98641 = true UCUS98656 = true UCUS98656 = true # Demo # Syphon Filter - Logan's Shadow UCUS98606 = true UCES00710 = true NPUG80173 = true NPUA80013 = true # Demo UCUS98704 = true # Demo NPEG90002 = true # Demo SYPH04036 = true # Prototype? # Syphon Filter - Combat Ops (weird multiplayer-only variant) NPUG80114 = true NPEG00004 = true [BlockTransferDepth] # Iron Man - see issue #16530 # Note that this option also requires IntraVRAMBlockTransferAllowCreateFB. ULES01070 = true ULES01071 = true ULUS10347 = true # Hayate no Gotoku!! Nightmare Paradise - see issue #17878 ULJM05416 = true [DaxterRotatedAnalogStick] # Daxter (see issue #17015) UCUS98618 = true UCUS98654 = true UCES00044 = true NPUG80329 = true NPEG00025 = true UCKS45025 = true # GOW : Ghost of Sparta UCUS98737 = true UCAS40323 = true NPHG00092 = true NPEG00044 = true NPEG00045 = true NPJG00120 = true NPUG80508 = true UCJS10114 = true UCES01401 = true UCES01473 = true # GOW : Ghost of Sparta Demo NPJG90095 = true NPEG90035 = true NPUG70125 = true # GOW : Chains Of Olympus UCAS40198 = true UCUS98653 = true UCES00842 = true ULJM05438 = true ULJM05348 = true UCKS45084 = true NPUG80325 = true NPEG00023 = true NPHG00027 = true NPHG00028 = true NPJH50170 = true UCET00844 = true # GOW: Chains of Olympus Demo UCUS98705 = true UCED00971 = true UCUS98713 = true [SOCOMClut8Replacement] # SOCOM and other games use CLUT8 with crafty sampling as if it was CLUT16. Issue #16210 UCES00855 = true UCUS98649 = true NPUG70003 = true # demo UCUS98714 = true # demo # SOCOM Fireteam Bravo 3 UCES01242 = true NPHG00032 = true UCUS98716 = true NPEG90024 = true # demo # SOCOM Navy Seals Portable (Japanese version) UCJS10102 = true NPJG00035 = true NPJG90068 = true # demo [Fontltn12Hack] # optimumFont do not return ltn12.pgf see #11055 NPJH00052 = true [LoadCLUTFromCurrentFrameOnly] # Helps Syphon Filter: Logan's Shadow color issue, # where we accidentally load a CLUT from an outdated framebuffer. # Perhaps this should be the default. UCUS98606 = true UCES00710 = true NPUG80173 = true NPUA80013 = true # Demo UCUS98704 = true # Demo NPEG90002 = true # Demo SYPH04036 = true # Prototype? [ForceUMDReadSpeed] # Aces of War required slow read speed (even in Real PSP), see #11062 ULES00590 = true ULJM05075 = true # Sengoku Musou 3Z Special DLC see #9993 ULJM06024 = true # Bejeweled 2. This shouldn't really fix anything since it's a PSN game that didn't run from UMD, # but apparently it does work around the timing error. See issue #15304 . NPUG30038 = true NPEG00036 = true # Doko Demo Issho, load savedata error see #18420 UCJS10002 = true UCJS18002 = true # Driver 76, see #16904 #12054 ULUS10235 = true ULES00740 = true # Harukanaru Toki no Naka de 3 with Izayoiki Aizouban, see #6127 ULJM05441 = true KOEIP0167 = true ULJM06245 = true # Ace Combat: Joint Assault #12434 ULUS10511 = true ULES01408 = true # Ace Combat X2: Joint Assault #5545 ULJS00290 = true ULKS46254 = true ULJS19057 = true NPJH50263 = true # Tales of the World: Radiant Mythology 2 - #19196 ULJS00175 = true UCAS40244 = true UCKS45110 = true ULJS19044 = true NPJH50852 = true [AllowDelayedReadbacks] # NOTE: This only affects Vulkan currently. # Added for easy experimentation. Many games using readbacks do not work well delaying them, though. # For example, Motorstorm lighting adaptation goes into self-oscillation (!) # UCES01250 = true [TacticsOgreEliminateDebugReadback] ULUS10565 = true ULES01500 = true ULJM05753 = true NPJH50348 = true ULJM06009 = true UCKS45164 = true [DisableMemcpySlicing] UCES01184 = true UCUS98668 = true UCJP00174 = true