Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Threadless Base #137

Draft
wants to merge 164 commits into
base: develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
164 commits
Select commit Hold shift + click to select a range
f3f626d
TrainerManager work
Aug 29, 2020
7847c05
Move dynlib structs to header file
Sep 1, 2020
e435fe2
Fix module_load name
Sep 1, 2020
a8cd9b8
More usability fixes
Sep 1, 2020
50b02cb
Fix bug reported by LM
Sep 2, 2020
3c7f186
Fix ioctl return values
Sep 2, 2020
a0ad668
More bugfixes
Sep 2, 2020
86f32a4
Remove dead code
Sep 2, 2020
3dac8ab
Add updated SceAuthId (from LM)
Sep 8, 2020
7eaca25
Update
Sep 11, 2020
a1e1eeb
Add MiraConfig
Sep 26, 2020
f5d6533
Fucc protobuf
Sep 26, 2020
eebf6bd
Add clang-format to the preinstall for CI
Sep 27, 2020
eb71ac2
Add Get/SetConfiguration to Mira::Framework
Sep 27, 2020
f7c3b66
Add contribution guide
Sep 28, 2020
197c8a1
Fix initialization and termination order
Sep 28, 2020
d3ef9c8
Add ThreadId logging for testing
Oct 12, 2020
8f395af
Fix core suspend/resume
Oct 19, 2020
ab9baf3
Remove protobuf
Oct 24, 2020
a130e69
Add Write/ReadProcessMemory IOCTL numbers
Oct 24, 2020
6a69a77
Add auto-embedding Mira build ELF
Oct 24, 2020
0bba58c
Fix shutdown state
Oct 26, 2020
81ac2cf
Fix MiraLoader embedded elf launching (thx Seremo)
Oct 26, 2020
7f5a297
Re-enable the trainer manager, ctrldriver, substitute
Oct 31, 2020
4eea580
Prepare stub
Nov 4, 2020
9ecf3cd
Move CtrlDriver enums and cmds to it's own file
Dec 5, 2020
5db3800
Fix compiler errors
kiwidoggie Dec 17, 2020
cf62031
Attempt crash
kiwidoggie Dec 17, 2020
4aa04f6
Add build dependency on trainer_loader to Mira
kiwidoggie Dec 31, 2020
d00bb4b
Silence noisy print statement
kiwidoggie Jan 2, 2021
70924c4
Implement trainer payload execution
kiwidoggie Jan 4, 2021
c99d5d6
Fix loader logic again
kiwidoggie Jan 4, 2021
e0f67bb
Change DriverCmds to have reserved sections
kiwidoggie Jan 9, 2021
97656d4
Fix overflow issue in MiraIoctlCmds (thanks CC)
kiwidoggie Jan 10, 2021
561b19d
Add debugger trainer prx
kiwidoggie Jan 10, 2021
9b33518
Change TrainerManager::GetUsbTrainerPath to not allocate new memory
kiwidoggie Jan 17, 2021
5bd8f6d
Fix VSCode defines/include paths for trainer_loader
kiwidoggie Jan 17, 2021
9f364a0
Fix app crash due to trainers failing to load
kiwidoggie Jan 17, 2021
733ebca
Rename Debugger2
kiwidoggie Jan 18, 2021
bd00237
THE PURGE
kiwidoggie Jan 18, 2021
e3d37d5
Move Substitute defines to external for use in kernel and userland
kiwidoggie Jan 22, 2021
275bc9a
Implement ChendoChaps dynlib structures
kiwidoggie Jan 22, 2021
8533d53
Fix build errors
kiwidoggie Jan 22, 2021
bb8bee2
Add file structure fix
kiwidoggie Jan 22, 2021
6060ec4
Fix FreeBSD structures
kiwidoggie Jan 22, 2021
d0a28bb
Fix some substitute bug & add 5.05 offsets
Jan 31, 2021
8fe89e8
Change MiraRead/WriteProcessMemory to use StructureSize to calculate …
kiwidoggie Feb 17, 2021
39fa939
Update Daemon to be built on PC for faster debugging
kiwidoggie Feb 22, 2021
3cf99b4
Kill flatbuffers
kiwidoggie Feb 22, 2021
87d6cdd
Add grpc protobuf
kiwidoggie Feb 22, 2021
168c9b5
Won't link, don't care needs correct libprotobuf for what version the…
kiwidoggie Feb 22, 2021
647c5c0
At least it builds and runs, but segfaults smh
kiwidoggie Feb 23, 2021
c5021b9
F to pay respects. This is doa.
kiwidoggie Feb 23, 2021
14cc6d8
Downgrade gRPC to 1.35.0 (fixes all issues)
kiwidoggie Mar 2, 2021
d2e6550
Finish implementing the rest of FileManager
kiwidoggie Mar 2, 2021
5d506d3
Add Logger to replace the errors
kiwidoggie Mar 14, 2021
c41ee4a
Remove unneeded dependencies
kiwidoggie Mar 14, 2021
04938f5
Change the cc1 flags for daemon
kiwidoggie Mar 16, 2021
c05581e
My message
Mar 16, 2021
f6fbdb7
My message
Mar 16, 2021
b43938d
Remove Substitute, Implement new Debugger function for future
Mar 16, 2021
d928c40
Fix external includes in .vscode
kiwidoggie Mar 19, 2021
b625f14
Fix build
kiwidoggie Mar 19, 2021
d3e2edf
Add hooks, missing kdlsym
kiwidoggie Mar 19, 2021
515bc5e
More work on hooks (UNTESTED)
kiwidoggie Mar 20, 2021
60264ad
Merge branch 'pr/1' into develop
kiwidoggie Mar 20, 2021
63e0ac0
Moving stuff around
kiwidoggie Mar 20, 2021
3149520
Merge branch 'develop' of https://github.com/kiwidoggie/mira-project …
kiwidoggie Mar 20, 2021
c3c66fb
Fix the build issues.
kiwidoggie Mar 20, 2021
8494f53
More changes
kiwidoggie Mar 20, 2021
37bb8a7
Linker issues, but moved everything around
kiwidoggie Mar 20, 2021
0b1ffed
Linker issues ...
kiwidoggie Mar 20, 2021
eefe920
Fix linker issue
kiwidoggie Mar 20, 2021
5df852b
Add mira_module vscode config
kiwidoggie Mar 20, 2021
88912f5
Add mira_module build step to vscode
kiwidoggie Mar 21, 2021
8f4f753
Cleanup vscode tasks.json
kiwidoggie Mar 21, 2021
c3c0f41
Add C-facing API for mira_module
kiwidoggie Mar 21, 2021
9e52980
Fix bugs reported by ChendoChap
kiwidoggie Mar 22, 2021
be0845e
Missed some files
kiwidoggie Mar 22, 2021
6dc1e77
Update PrivCheckPlugin to use ThreadIds
kiwidoggie Mar 25, 2021
df34e76
Add CMake initial setup
kiwidoggie Mar 26, 2021
8e1b69d
More cmake fuckery
kiwidoggie Mar 29, 2021
785ff15
Add MonoApi
kiwidoggie Apr 13, 2021
f917771
Build everything with cmake (needs fixes)
kiwidoggie Apr 14, 2021
e61c724
More build fixes
kiwidoggie Apr 17, 2021
1fc6137
Everything builds with cmake now (oosdk stuff is broken)
kiwidoggie Apr 17, 2021
0342437
Create driver system ioctls to match code refactoring
kiwidoggie Apr 18, 2021
bea2fbf
Fix compiler errors
kiwidoggie Apr 18, 2021
9b61541
Comment out what was breaking
kiwidoggie Apr 18, 2021
77ad402
Add user application for testing
kiwidoggie May 2, 2021
6c4879e
No clue
kiwidoggie May 2, 2021
9b3f583
Update liborbisgen scripts (not for OOSDK yet)
kiwidoggie May 2, 2021
2c53fcd
I dun forgot
kiwidoggie May 2, 2021
9db8b0f
Add support for fallback-style Trainer loading
kiwidoggie May 5, 2021
49af605
Disable eboot check for TrainerManager
kiwidoggie May 6, 2021
bedb63c
Cleanup the repository
kiwidoggie May 19, 2021
9fe5542
Add or update README files
kiwidoggie May 19, 2021
bf0b2c4
Add daemon readme
kiwidoggie May 27, 2021
04e5333
Update dlsym header to new mira format
kiwidoggie Jun 5, 2021
3660b2b
add 7.55 support
therootlord Jun 5, 2021
20a2455
Push oosdk fixes
kiwidoggie Jun 5, 2021
ec8ee6b
Merge pull request #18 from therootlord/develop
kiwidoggie Jun 5, 2021
2666e1d
Remove testing bomb
kiwidoggie Jun 5, 2021
9dfe497
Add example_trainer
kiwidoggie Jun 6, 2021
a2bd77d
Bump CMake to version 3.20 minimum
kiwidoggie Jul 11, 2021
f7f8b33
Add SCE custom privs
kiwidoggie Jul 12, 2021
4d7c982
SMD trainer loading finally works
kiwidoggie Jul 12, 2021
f3cd3c8
Add KernelDebug
Churros98 Jul 28, 2021
44b8fe4
Add missing nullptr checks (may fix issue, not hopeful)
kiwidoggie Sep 18, 2021
14c28d4
Merge branch 'develop' into develop
kiwidoggie Sep 19, 2021
ee5a6fa
Merge pull request #19 from theorywrong/develop
kiwidoggie Sep 19, 2021
eddc5f6
Implement PVS-Studio cmake step
kiwidoggie Sep 25, 2021
247ef53
Add create-lib call to mira_module
kiwidoggie Oct 30, 2021
1c73b34
Merge branch 'develop' of github.com:kiwidoggie/mira-project into dev…
kiwidoggie Oct 30, 2021
338f26c
Attempt to make loader 100% agnostic. WIP Need to test
kiwidoggie Nov 8, 2021
4c74e76
Gate Protobuf behind _PROTOBUF define
kiwidoggie Nov 24, 2021
145b677
Gate PVS-Studio and OOSDK Toolchain dependencies in CMake
kiwidoggie Nov 24, 2021
a930a40
Add configuration override
kiwidoggie Nov 24, 2021
fc784da
Fix loader. (thx ChendoChap, LM)
kiwidoggie Nov 24, 2021
0957935
Add Jmpslot ioctl and Fix CMakeFile (Boolean if doesn't work)
Churros98 Dec 5, 2021
703bfec
Delete Makefile
Churros98 Dec 5, 2021
2be23eb
Add FindJmpslot inside Mira Module
Churros98 Dec 5, 2021
5f9071a
Merge branch 'develop' of https://github.com/theorywrong/mira-project…
Churros98 Dec 5, 2021
550539f
Add /kernel USERLAND_PATCHES gate to re-add usermode patches
kiwidoggie Dec 13, 2021
da8304b
Merge pull request #32 from theorywrong/develop
kiwidoggie Dec 13, 2021
c224cff
Add stack smashing check
kiwidoggie Dec 19, 2021
29231f4
Merge branch 'develop' of github.com:kiwidoggie/mira-project into dev…
kiwidoggie Dec 19, 2021
a22cb40
Attempt to fix CI
kiwidoggie Dec 19, 2021
2c03b7c
CI fix part 2
kiwidoggie Dec 19, 2021
1263c67
CI fix part 3
kiwidoggie Dec 19, 2021
d32e7a9
CI fix part 4
kiwidoggie Dec 19, 2021
9619583
CI fix part 5
kiwidoggie Dec 19, 2021
7ae3f4d
CI fix attempt 6
kiwidoggie Dec 19, 2021
01526f4
Fix CI part 7
kiwidoggie Dec 19, 2021
ddbdb18
CI fix part 8
kiwidoggie Dec 19, 2021
c1ebc24
CI fix part 9
kiwidoggie Dec 19, 2021
54271da
CI fix part 10
kiwidoggie Dec 19, 2021
7600513
Prevent overwriting external variable
kiwidoggie Dec 19, 2021
e723eb8
Fix ci part 11
kiwidoggie Dec 19, 2021
b92e7c6
Remove outdated workflows
kiwidoggie Dec 19, 2021
ee22805
Add alt launch mode for trainer_loader to allow injection
kiwidoggie Dec 24, 2021
4887746
Fix C++ interop with sysctl.h
kiwidoggie Dec 29, 2021
cf7056c
Add GetShellUIThread to Mira
kiwidoggie Dec 29, 2021
85f5e4e
Disable TrainerManager::OnProcessExit (MountManager handles unmountin…
kiwidoggie Dec 31, 2021
0e8e26c
Fix OOSDK detection in master CMakeLists.txt
kiwidoggie Dec 31, 2021
fc1d3ef
Fix TrainerManager running out of EPs
kiwidoggie Jan 1, 2022
6416221
Fix MountManager not actually unmounting properly
kiwidoggie Jan 1, 2022
da133e4
Fix the example_trainer payload lifespan
kiwidoggie Jan 2, 2022
d00dd96
Update Dockerfile to include OOSDK
kiwidoggie Jan 2, 2022
94576ff
Update github workflow
kiwidoggie Jan 2, 2022
34f3b93
Update CI
kiwidoggie Jan 2, 2022
797e154
Update CI 2
kiwidoggie Jan 2, 2022
18637af
Update CI 3
kiwidoggie Jan 2, 2022
d12e49b
Update CI 4
kiwidoggie Jan 2, 2022
3cd3a05
Update CI 5
kiwidoggie Jan 2, 2022
3b84802
Update CI 6
kiwidoggie Jan 2, 2022
4cdd6e9
Update CI 7
kiwidoggie Jan 2, 2022
7598673
Add OOSDK libraries to artifacts
kiwidoggie Jan 2, 2022
70cf40d
NOTE: NONWORKING BUILD
kiwidoggie Jan 2, 2022
902b0df
Remove CAPI until v1 is finalized
kiwidoggie Jan 2, 2022
726bbf1
Fix IOCTL codes in CtrlDriver, TrainerManager
kiwidoggie Jan 2, 2022
c01ace8
Continue driver fixes
kiwidoggie Jan 2, 2022
48ac885
Burned everything down, now to rebuild
kiwidoggie Jan 2, 2022
2556cd7
Starting to re-wire everything to new format
kiwidoggie Jan 2, 2022
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
43 changes: 0 additions & 43 deletions .github/workflows/Orbis474.yml

This file was deleted.

43 changes: 0 additions & 43 deletions .github/workflows/Orbis501.yml

This file was deleted.

43 changes: 0 additions & 43 deletions .github/workflows/Orbis503.yml

This file was deleted.

43 changes: 0 additions & 43 deletions .github/workflows/Orbis505.yml

This file was deleted.

43 changes: 0 additions & 43 deletions .github/workflows/Orbis620.yml

This file was deleted.

43 changes: 0 additions & 43 deletions .github/workflows/Orbis672.yml

This file was deleted.

80 changes: 80 additions & 0 deletions .github/workflows/cmake.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: C/C++ CI

on: [push]

jobs:
build-ubuntu:

runs-on: ubuntu-latest

steps:
- name: Set up Clang
uses: egor-tensin/setup-clang@v1
with:
version: 13
platform: x64
- uses: actions/checkout@v1
- name: Install Pre-Reqs
run: sudo apt update && sudo apt install lld
- name: Download and install OOSDK
run: mkdir /home/runner/toolchain && pushd /home/runner/toolchain && wget https://github.com/OpenOrbis/OpenOrbis-PS4-Toolchain/releases/download/v0.5.2/v0.5.2.tar.gz && tar -zxvf v0.5.2.tar.gz && mv OpenOrbis/PS4Toolchain/* /home/runner/toolchain && rm -rf OpenOrbis && export OO_PS4_TOOLCHAIN=/home/runner/toolchain && echo "OO_PS4_TOOLCHAIN=/home/runner/toolchain" >> $GITHUB_ENV && popd
#- name: configure176
# run: export MIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_176 && mkdir build176 && cd build176 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_176 -G "Unix Makefiles" .. && cd ..
#- name: configure405
# run: mkdir build405 && cd build405 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_405 -G "Unix Makefiles" .. && cd ..
#- name: configure455
# run: mkdir build455 && cd build455 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_455 -G "Unix Makefiles" .. && cd ..
#- name: configure474
# run: mkdir build474 && cd build474 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_474 -G "Unix Makefiles" .. && cd ..
#- name: configure501
# run: mkdir build501 && cd build501 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_501 -G "Unix Makefiles" .. && cd ..
#- name: configure505
# run: mkdir build505 && cd build505 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_505 -G "Unix Makefiles" .. && cd ..
#- name: configure620
# run: mkdir build620 && cd build620 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_620 -G "Unix Makefiles" .. && cd ..
#- name: configure650
# run: mkdir build650 && cd build650 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_650 -G "Unix Makefiles" .. && cd ..
- name: configure672
run: mkdir build672 && cd build672 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_672 -G "Unix Makefiles" .. && cd ..
#- name: configure755
# run: mkdir build755 && cd build755 && cmake --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER=clang-13 -DCMAKE_CXX_COMPILER=clang++-13 -DMIRA_PLATFORM=MIRA_PLATFORM_ORBIS_BSD_755 -G "Unix Makefiles" .. && cd ..
#- name: build176
# run: cmake --build build176
#- name: build405
# run: cmake --build build405
#- name: build455
# run: cmake --build build455
#- name: build474
# run: cmake --build build474
#- name: build501
# run: cmake --build build501
#- name: build505
# run: cmake --build build505
#- name: build620
# run: cmake --build build620
#- name: build650
# run: cmake --build build650
- name: build672
run: cmake --build build672
#- name: build755
# run: cmake --build build755
- name: upload mira binaries
uses: actions/upload-artifact@v2
with:
name: Binaries
path: |
build176/loader/loader.bin
build405/loader/loader.bin
build455/loader/loader.bin
build474/loader/loader.bin
build501/loader/loader.bin
build505/loader/loader.bin
build620/loader/loader.bin
build650/loader/loader.bin
build672/loader/loader.bin
build672/example_trainer/example_trainer.prx
build672/tests/tests.EBOOT.BIN
build672/daemon/daemon.prx
build672/mira_module/mira_module.prx
build755/loader/loader.bin

3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,6 @@ project.log
report.tasks
strace_out
maneja/**
.vscode/*
*.prx
*.oprx
Loading