Repository navigation
Demon's Souls (PPSA01341) #1283
fisherjoey
started this conversation in
Game bring-up
Replies: 1 comment
|
Update, top post refreshed.
AI-assisted: yes |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Tested
mainatdf16c4c2plus fix(guest-arena): place guest address space in the PS5 window on Linux #861, fix(module): resolve the default dlsym scope against the main program #864, perf(agc): query guest page access with PROCMAP_QUERY on Linux #157, perf(agc): pipeline queue-0 draw commits behind the packet worker #1201/perf(agc): cheaper draw commits; pipelined draws on by default #1202, feat(recompiler): bindless image tables up to the device's sampled-image limit #1184, fix(agc): release the current address space with the image mirrors #1071 and the local changes listed below.Status
In game on Linux, but not playable. A new game reaches the tutorial level (Outpost Passage) with the HUD drawn. The level runs at about 2.0-2.2 fps, and the 3D scene renders wrong (blocker B).
Everything before that works: SIE logo, PS Studios movie, language, brightness and subtitle setup, the opening cinematic (33-40 fps), the title screen (50-53 fps), the main menu, "Continue Offline" at the online prompt, character creation (about 10 fps) and the new-game intro. Online fails cleanly and offers offline play. The name entry dialog returns its default text, so the character is named "Slayer".
Shortcut to the level.
+ds_enableDebugStartMenu=trueinapp0/PackageCmdLineArgs.txt(next to the shipped+cp11_callHomeLockDownEnabled=false) opens the game's debug start menu instead of the logos and title. Walk Through, then page 6 of the map list, "(T-1) Tutorial (Fort Entrance)", loads the level with the default loadout about 2 minutes after launch, with no character creation or intro. It needs more bindless slots than the normal route (APS5_BINDLESS_SLOTS=128, see C). It starts at a different spot from a new game, so fps from the two routes isn't comparable.Settings used:
APS5_BINDLESS_SLOTS=48(128 for the debug start route),APS5_THREAD_PRIORITY=high,APS5_TEXTURE_CACHE_MIB=8192,APS5_STAGING_POOL_MIB=2048,APS5_PIPELINE_CACHE_ENTRIES=4096.Open blockers
0x2dfnever written, front/back depth bias differing, color format 0). The mask says "in shadow" everywhere. The bands are a separate aliasing issue.0x248946900selects from a material table with 37-93 keys depending on the scene. #1184 doesn't lift the slot cap for material-selected tables, soAPS5_BINDLESS_SLOTSis still needed, and its clamp of 48 is too low for the debug start route.On a cold shader cache the level shows terrain and foliage, because the shadow and fog passes are still compiling and the frames carry only part of their work:
Stops on
main, in the order they are hit/app0/packagecmdlineargs.txt; the file isPackageCmdLineArgs.txt. Linux: guest paths are resolved case-sensitively, so titles miss files the console would find #1047; fixed by fix(libc): resolve case differences in guest paths and mounts #1321 (merged)./proc/self/mapsabout 48,000 times in 25 s. perf(agc): query guest page access with PROCMAP_QUERY on Linux #157 (merged).no record) #1132; PR perf(agc): prove sampled depth surfaces in the fast resource proof #1430.fix/depth-compare-copy.feat/queue-thread-priority. Locally, a port of KytyPS5 test(shader): execute tbuffer_load_format_d16_xyzw against hardware results #599's idle backoff for the job-worker poll loop (title-specific, patched by signature) cuts the title's CPU use from ~920% to ~300% with no fps loss.0x248a1dd00and0x2489e6d00). Compute buffers wait on a label written at the end of the graphics buffer, and the title fills the dispatch tables after submitting; the wait passed when queue 0 recorded the label. 15 of 15 clean runs with the fix. Branchfix/agc-compute-gate-capture; issue to follow.30 73 c1 7e) thatlibSceAjmrejected. Fixed locally (one LibAtrac9 decoder per channel, interleaved). Issue to follow.describePagesstores PROCMAP_QUERY results only on Windows: 2.1M calls per 20 s in the level. Caching them in the page table on Linux takes that to ~2.7k. Fixed locally; perf(agc): cache page permissions within registered allocations #1330 covers part of it (it leaves ~500k queries per 10 s here).MIP_STATS_COUNTER_EN/ID), which the title rotates, so each texture was cached under about six keys and evicted live twins. Masking them took evictions from ~800 per 10 s to 0. Fixed locally.Also fixed locally and not filed yet: rejected draws memoized instead of rethrown (~36k per 10 s in the level), indirect-dispatch recipe rebuilds on the title screen, and index-based overlap queries for pending storage images.
Not established
sceAjmBatchWaitfails.All reactions