Compare commits

...

3 Commits

Author SHA1 Message Date
Mateico
65961996d7 cleanup of warnings 2026-04-30 10:09:35 +02:00
Mateico
354e996485 move 04.03 code cave to support devkit 2026-04-30 08:29:46 +02:00
Andy Nguyen
2497034be9 Add some clarifications. 2026-04-29 01:21:47 +02:00
6 changed files with 21 additions and 20 deletions

View File

@@ -180,14 +180,16 @@ Then, there are certain settings and commands we recommend doing:
1. Disable screen saver, as it is currently buggy.
2. Install Firefox:
2. Possibly, you have to disable and reenable your Wired/WLAN connection to get internet connection.
3. Install Firefox:
```bash
snap install firefox
sudo snap install firefox
sudo snap refresh mesa-2404 --channel=latest/edge
```
3. Clone our [ps5-linux-tools](https://github.com/ps5-linux/ps5-linux-tools):
4. Clone our [ps5-linux-tools](https://github.com/ps5-linux/ps5-linux-tools):
```bash
git clone https://github.com/ps5-linux/ps5-linux-tools
@@ -197,9 +199,8 @@ Then, there are certain settings and commands we recommend doing:
You can use a M.2 SSD exclusively for Linux (which means you cannot use it for PS5 game storage).
1. Attach the M.SSD and boot Linux on your PS5.
2. Run these commands to initialize your M.2:
1. Attach the M.SSD and format it on your PS5.
2. Boot Linux on your PS5 and run these commands to initialize your M.2:
```bash
sudo apt install zlib1g-dev

View File

@@ -1,10 +1,10 @@
#include "utils.h"
#include <stdint.h>
static uint64_t alloc_page(void);
static void install_page(uintptr_t pml4, vm_offset_t va, vm_paddr_t pa,
uint64_t alloc_page(void);
void install_page(uintptr_t pml4, vm_offset_t va, vm_paddr_t pa,
int bits);
void pte_store(uintptr_t ptep, uint64_t pte);
static int read_file(const char *path, void *buf, size_t bufsize);
static void trim_newline(char *s);
int read_file(const char *path, void *buf, size_t bufsize);
void trim_newline(char *s);
int fetch_linux(struct linux_info *info);

View File

@@ -220,7 +220,7 @@ int stage5_remove_xotext(void) {
uint64_t start =
ktext - 0xF0000; // Include first pages where fun stuff is located
uint64_t end = kdata;
int n = 0;
int n __attribute__((unused)) = 0;
for (uint64_t a = start; a < end; a += 0x1000) {
page_chain_set_rw(a);

View File

@@ -19,7 +19,7 @@
#define MINI_SYSCORE_PID 1
static uint64_t alloc_page(void) {
uint64_t alloc_page(void) {
void *page = mmap(NULL, PAGE_SIZE, PROT_READ | PROT_WRITE,
MAP_SHARED | MAP_ANONYMOUS, -1, 0);
@@ -30,7 +30,7 @@ static uint64_t alloc_page(void) {
return va_to_pa_user((uintptr_t)page);
}
static void install_page(uintptr_t pml4, vm_offset_t va, vm_paddr_t pa,
void install_page(uintptr_t pml4, vm_offset_t va, vm_paddr_t pa,
int bits) {
uint64_t entry;
@@ -100,7 +100,7 @@ long find_and_get_size_of_file(const char *filename, char *found_path) {
return -1;
}
static int find_and_read_file(const char *filename, void *buf, size_t bufsize) {
int find_and_read_file(const char *filename, void *buf, size_t bufsize) {
char full_path[256];
struct stat st;
@@ -119,7 +119,7 @@ static int find_and_read_file(const char *filename, void *buf, size_t bufsize) {
return -1;
}
static int read_file(const char *path, void *buf, size_t bufsize) {
int read_file(const char *path, void *buf, size_t bufsize) {
int fd = open(path, O_RDONLY);
if (fd < 0)
return fd;
@@ -128,7 +128,7 @@ static int read_file(const char *path, void *buf, size_t bufsize) {
return r;
}
static void trim_newline(char *s) {
void trim_newline(char *s) {
while (*s != '\0') {
if (*s == '\r' || *s == '\n') {
*s = '\0';

View File

@@ -197,7 +197,7 @@ offset_list off_0403 = {
.HV_VCPU_ARRAY_OFF = 0x5D0,
.HV_VCPU_STRIDE = 0x320,
.HV_VCPU_VMCB_PTR = 0x08,
.KERNEL_CODE_CAVE = 0x0043000,
.KERNEL_CODE_CAVE = 0x500,
.KERNEL_DATA_CAVE = 0x0043000 + 0xBBE300,
.IOMMU_SOFTC = 0x33C7680,
.VMSPACE_VM_VMID = 0x1E4,

View File

@@ -225,8 +225,8 @@ void notify(const char *fmt, ...) {
vsnprintf(buffer, sizeof(buffer), fmt, args);
va_end(args);
notify_internal(buffer);
printf(buffer);
notify_internal((uint8_t *)buffer);
printf("%s", buffer);
}
void notify_internal(uint8_t *msg) {
@@ -236,7 +236,7 @@ void notify_internal(uint8_t *msg) {
} req;
bzero(&req, sizeof(req));
uint64_t len =
strlen(msg) < (sizeof(req.msg) - 1) ? strlen(msg) : (sizeof(req.msg) - 1);
strlen((const char *)msg) < (sizeof(req.msg) - 1) ? strlen((const char *)msg) : (sizeof(req.msg) - 1);
memcpy(req.msg, msg, len);
sceKernelSendNotificationRequest(0, &req, sizeof(req), 0);
}