# ======================================================================================== # 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 ULJM05309 = true ULUS10410 = true ULES01218 = true ULJM08023 = true ULES01218 = true # Phantasy Star Portable 2 JP (missing text) ULJM05493 = true NPJH50043 = true ULJM08030 = true # Puyo Puyo Fever 2 #3663 (layering) ULJM05058 = true # NBA 2K13 #6603 (menu glitches) ULAS42332 = true ULJS00551 = true NPJH50713 = true ULJS00596 = true ULES01578 = 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 [PixelDepthRounding] # Heroes Phantasia requires pixel depth rounding. #6485 (flickering overlaid sprites) NPJH50558 = true ULJS00456 = true ULJS00454 = true # Heroes Phantasia Limited Edition Disc requires pixel depth rounding. ULJS00455 = true # Phantasy Star games flickering # Phantasy Star Portable 1 ULJM05309 = true ULUS10410 = true ULES01218 = true ULJM08023 = true ULES01218 = true # Phantasy Star Portable 2 JP ULJM05493 = true NPJH50043 = true ULJM08030 = true # Phantasy Star Portable 1 Demo NPUH90023 = true ULJM91014 = true NPJH90002 = true # Phantasy Star Portable 2 JP Demo ULJM91018 = true NPJH90062 = 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. ULJM05493 = true NPJH50043 = true ULJM08030 = true ULES01439 = true ULUS10529 = true ULJM91018 = true # Infinity demo disc? NPJH90157 = true # Infinity demo ULJM05732 = true NPJH50332 = true [ClearToRAM] # SOCOM Navy Seals games require this. See issue #8973. # Navy Seals UCUS98615 = true ULES00038 = true UCKS45021 = true # Fireteam Bravo 3 UCJS10102 = true NPJG00035 = true UCUS98716 = true UCES01242 = true [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. # Crash Tag Team Racing needs it to pass checking memory stick screen. ULUS10044 = true ULES00168 = true ULJM05036 = true # 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