2.5 KiB
2.5 KiB
| 1 | # Game profile of DARK SOULS: REMASTERED (Switch, update 1.0.3 = v196608; base game v0 not extracted). Plays on the iPhone and the Mac (title, character creation, the opening, the Undead Asylum at 60 fps with sound; 30 on the Switch, rewriter cuts lift its limiter and halve its fixed frame step, patches.py) | |||||
|---|---|---|---|---|---|---|
| 2 | # Format: see dm/games/README.md | |||||
| 3 | # FromSoftware's engine (dantelion2) on SDK 4.5.0, the oldest so far, NVN, Havok, FMOD through AudioOut; subsdk0 is the SDK's movie library (H.264 MP4 movies, decoded by the host). | |||||
| 4 | # Files are in two dvdbnd archives (dvdbnd0.bdt / dvdbnd1.bdt, each indexed by its .bhd5; DCX zlib entries, BND3 archives inside), which the game reads itself | |||||
| 5 | # ---- Identity ---- | |||||
| 6 | title_id | 01004AB00A260000 | ||||
| 7 | program_id | 01004AB00A260000 | ||||
| 8 | # ---- App ---- | |||||
| 9 | # Game name: only a label for profile listings and the Mac window title; the iOS app name is the game name in the base NSP, and the bundle ID comes from the base game title ID (build_ipa.sh / NSP script) | |||||
| 10 | name | DARK SOULS: REMASTERED | ||||
| 11 | ipa | DarkSoulsRemastered.ipa | ||||
| 12 | app_category | public.app-category.role-playing-games | ||||
| 13 | # the right stick turns the camera and the D-pad switches spells and items; the game maps its buttons by position (B confirms, A goes back) | |||||
| 14 | pad_layout | full | ||||
| 15 | # ---- Versions ---- | |||||
| 16 | # only the merged 1.0.3 copy is extracted | |||||
| 17 | build | v196608 | 1.0.3 | main=df3766a2bb651a3e822828abf10b6f7b | subsdk0=73f98f5f7a34d4c520bda7c1a19cd9bd | sdk=d95547528dcd684e2813ec83d338a472 |
| 18 | package | v196608 | ||||
| 19 | shader_versions | v196608 | ||||
| 20 | # ---- Files ---- | |||||
| 21 | # every module main imports from | |||||
| 22 | modules | main subsdk0 sdk | ||||
| 23 | romfs_marker | dvdbnd0.bdt | ||||
| 24 | zip_store | .bdt:.mp4:.metallib | ||||
| 25 | # ---- Memory ---- | |||||
| 26 | # no system resource: the game sets a 3.10 GB heap (pool − used) in the 4 GB layout; about 1.6 GB resident in the Asylum on the Mac | |||||
| 27 | mem_reserve | 0x100000000 | ||||
| 28 | mem_alias | 0x10000000 | ||||
| 29 | mem_stack | 0x10000000 | ||||
| 30 | app_pool | 0xCD500000 | ||||
| 31 | # the NPDM declares 0 MB of system resource: IsVirtualAddressMemoryEnabled is false, as on Horizon | |||||
| 32 | sys_resource | 0x0 | ||||
| 33 | # the rewritten modules (110 MB with main's 51 MB bss) are larger than the default 64 MB of used memory the game takes off the pool for its heap | |||||
| 34 | mem_used | 0x6e00000 | ||||
| 35 | # ---- Shader split ---- | |||||
| 36 | # 3,099 shaders: 3,040 GLSLC outputs, one per .vpo / .fpo entry of six BND3 archives in dvdbnd0.bdt (shader_split.py bdt_shaders), and 59 more in main. SDK 4's GLSLC writes control | |||||
| 37 | # sections whose +0x20 is 12 bytes short of their length, so the split reads those outputs through their section headers (glslc_section) | |||||
| 38 | shader_groups | .bdt#=dvdbnd | ||||
| 39 | shader_note | DARK SOULS™: REMASTERED shaders |