Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
78 commits
Select commit Hold shift + click to select a range
17a9c3c
Cleanup + update template
igor725 Feb 8, 2026
de11a57
Validate pkgs
igor725 Feb 11, 2026
f40199a
migrated to latest build system, improvements
marecl Feb 18, 2026
e77726a
dirent code cleanup
marecl Feb 19, 2026
3134f8d
Therapist WIP
marecl Feb 19, 2026
b3e3008
Refactored some tests to CppUTest
marecl Feb 19, 2026
7bee57b
preliminary toolset for Enderman
marecl Feb 24, 2026
ac0b29a
Cleanup + update template
igor725 Feb 8, 2026
006c1f6
Validate pkgs
igor725 Feb 11, 2026
9031422
Make sources list a variadic argument
igor725 Feb 18, 2026
67116c9
Update comments and README.md + move template to tests directory
igor725 Feb 19, 2026
23d7dd1
Fix README typos
igor725 Feb 19, 2026
4f45cca
Missing $ sign
igor725 Feb 19, 2026
db35148
Add package count validator
igor725 Feb 19, 2026
3b4b4c1
cursed shall be thy read parameters
marecl Feb 24, 2026
5d15144
toolset ctd.
marecl Feb 25, 2026
3c84cc3
Merge branch 'ps4emulation:main' into fstest
marecl Feb 25, 2026
c1ed010
macos adaptation
marecl Feb 25, 2026
53aa286
Dirents are dumped by read value (again)
marecl Feb 26, 2026
762982c
comparator cleanup, better comparsions
Feb 26, 2026
48d573a
more annoying files
marecl Feb 27, 2026
fa42c44
added cues (read sizes/RS+basep) for read comparsions
marecl Feb 27, 2026
c0fc3ac
fixed lseek tests
marecl Feb 27, 2026
ab1af71
formatting, cue files
Feb 27, 2026
6c1f096
roaming
Mar 3, 2026
1418c08
roamingv2
Mar 3, 2026
9da455e
WIP (this time: comparing dents and read dirents)
marecl Mar 3, 2026
fa8e0ea
cleaner a bit
marecl Mar 3, 2026
e78df75
major refactor
marecl Mar 4, 2026
9a6a86f
added (?) checking regular directory
marecl Mar 4, 2026
a00d92c
reachability and path resolution testing
marecl Mar 9, 2026
e82a09f
todo: finish those
marecl Mar 10, 2026
b01263a
new dirent tests
marecl Mar 12, 2026
2e2d7ed
temp
marecl Mar 13, 2026
8eb8e5e
redoing (again) note to self: only check read sizes on the machine, c…
marecl Mar 13, 2026
21b5ac8
corrected getdirentries test
marecl Mar 17, 2026
9878b47
adjusted constants (awaiting condition descriptions)
marecl Mar 17, 2026
57756f9
error tests
marecl Mar 24, 2026
f85831a
storing raw data for later comparsion
marecl Apr 7, 2026
160cf53
improved hex minidumps
marecl Apr 7, 2026
a562893
skip formatting check
Apr 9, 2026
4199bad
updated dumps
marecl Apr 11, 2026
8e25d08
more tests
marecl Apr 12, 2026
849f5b0
minor tomfoolery
marecl Apr 12, 2026
f668c14
^-^
marecl Apr 12, 2026
3e7081d
clang
marecl Apr 12, 2026
bcc8071
added missing files
marecl Apr 13, 2026
b9edf30
more files for testing
marecl Apr 13, 2026
472fc3e
added preliminary PFS getdirentries simulator
marecl Apr 13, 2026
6d5f6c3
calculator improvements
marecl Apr 14, 2026
7b395fc
dirent calculator MOSTLY works
marecl Apr 14, 2026
3813fa5
tuning dirent creep
marecl Apr 16, 2026
bf2a3e8
for later
marecl Apr 16, 2026
04dd940
aaaaalmost
marecl Apr 16, 2026
4d3e4bb
mostly right
marecl Apr 16, 2026
0bc2952
updated HW returns
Apr 17, 2026
0250131
updated dumps
marecl Apr 17, 2026
43bdb0c
adjustments
marecl Apr 19, 2026
86f0885
validation PFS
marecl Apr 20, 2026
dfcd4a6
yaaay
marecl Apr 20, 2026
78855f4
roaming
marecl Apr 20, 2026
8b7d32e
Polished up normal getdirentries
marecl Apr 21, 2026
4b26557
cleaned up normal getdirentries math
marecl Apr 21, 2026
9e463cf
added fuzzing
marecl Apr 22, 2026
a8390c8
oops
marecl Apr 22, 2026
095a81b
Added lseek tests + fuzzing
marecl Apr 25, 2026
f8bf253
roaimng
marecl Apr 25, 2026
2a87484
updated log
marecl Apr 25, 2026
c0af0f4
testing whence hole/data
marecl Apr 27, 2026
516fb53
accurate lseek
marecl Apr 29, 2026
40ac5d7
leak is back :<
marecl Apr 29, 2026
f65e721
perrrfect!
marecl Apr 30, 2026
d958544
arbitrary version bump
marecl Apr 30, 2026
a980f72
fixed math logic, decreasing amounts of crashes
marecl May 3, 2026
a990b84
updated log (verbose)
marecl May 3, 2026
6510e5e
i accept my fate
marecl May 3, 2026
382c0b6
added config via file structure
marecl May 3, 2026
533c9cf
clarification
marecl May 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ jobs:
fi

build:
needs: formatting-check
# needs: formatting-check
permissions:
contents: write
name: Build Tests
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
build/
**.bin
**.cue
**.pkg
**.gp4
**.sfo
.*/
!.github
!.vscode
.DS_Store
.venv
__pycache__
56 changes: 56 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Compare dumps (current, linux)",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/tests/code/filesystem_dirents/dumps/comparator.py",
"console": "integratedTerminal",
"args": [
// change accordingly
"${workspaceFolder}/tests/code/filesystem_dirents/dumps/1202",
"${userHome}/.local/share/shadPS4/data/enderman/dumps"
]
},
{
"name": "Compare dumps (current, macOS)",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/tests/code/filesystem_dirents/dumps/comparator.py",
"console": "integratedTerminal",
"args": [
// change accordingly
"${workspaceFolder}/tests/code/filesystem_dirents/dumps/1202",
"${userHome}/Library/Application Support/shadPS4/data/enderman/dumps"
]
},
{
"name": "Compare&Debug dumps (current, macOS)",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/tests/code/filesystem_dirents/dumps/comparator.py",
"console": "integratedTerminal",
"args": [
// change accordingly
"${workspaceFolder}/tests/code/filesystem_dirents/dumps/1202",
"${userHome}/Library/Application Support/shadPS4/data/enderman/dumps",
"--debug"
]
},
{
"name": "Compare dumps (qfs)",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/tests/code/filesystem_dirents/dumps/comparator.py",
"console": "integratedTerminal",
"args": [
"${workspaceFolder}/tests/code/filesystem_dirents/dumps/1202",
"${workspaceFolder}/tests/code/filesystem_dirents/dumps/qfs-08f4458"
]
}
]
}
6 changes: 5 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,8 @@
"C_Cpp.autoAddFileAssociations": false,
"editor.tabSize": 2,
"editor.insertSpaces": true,
}
"python.languageServer": "Pylance",
"[python]": {
"editor.defaultFormatter": "ms-python.black-formatter",
}
}
8 changes: 8 additions & 0 deletions tests/code/filesystem_dirents/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
project(Enderman VERSION 0.0.1)

link_libraries(SceSystemService)

create_pkg(TEST12345 5 50 "code/log.cpp;code/calculator.cpp;code/fs_test_tools.cpp;code/fs_test.cpp;code/main.cpp")
set_target_properties(TEST12345 PROPERTIES OO_PKG_TITLE "Enderman")
set_target_properties(TEST12345 PROPERTIES OO_PKG_APPVER "1.28")
finalize_pkg(TEST12345)
Loading