RetroArch
|
Classes | |
struct | mch2_thread_args_t |
struct | mch2_thread_t |
struct | mch2_vars_t |
Macros | |
#define | CURRENT_KTHREAD 0xFFFF9000 |
#define | CURRENT_KPROCESS 0xFFFF9004 |
#define | CURRENT_KPROCESS_HANDLE 0xFFFF8001 |
#define | RESOURCE_LIMIT_THREADS 0x2 |
#define | MCH2_THREAD_COUNT_MAX 0x20 |
#define | MCH2_THREAD_STACKS_SIZE 0x1000 |
#define | SVC_ACL_OFFSET(svc_id) (((svc_id) >> 5) << 2) |
#define | SVC_ACL_MASK(svc_id) (0x1 << ((svc_id) & 0x1F)) |
#define | THREAD_PAGE_ACL_OFFSET 0xF38 |
Typedefs | |
typedef u32(* | backdoor_fn) (u32 arg0, u32 arg1) |
Functions | |
__attribute ((naked)) | |
static void | k_enable_all_svcs (u32 isNew3DS) |
static u32 | k_read_kaddr (u32 *kaddr) |
static u32 | read_kaddr (u32 kaddr) |
static u32 | k_write_kaddr (u32 *kaddr, u32 val) |
static void | write_kaddr (u32 kaddr, u32 val) |
__attribute__ ((naked)) | |
static void | alloc_thread_entry (mch2_vars_t *mch2) |
static void | dummy_thread_entry (Handle lock) |
static void | check_tls_thread_entry (bool *keep) |
static void | target_thread_entry (mch2_thread_args_t *args) |
static u32 | get_first_free_basemem_page (bool isNew3DS) |
static u32 | get_threads_limit (void) |
static void | do_memchunkhax2 (void) |
static void | gspwn (u32 dst, u32 src, u32 size, u8 *flush_buffer) |
static void | memchunkhax1_write_pair (u32 val1, u32 val2) |
static void | do_memchunkhax1 (void) |
Result | svchax_init (bool patch_srv) |
Variables | |
u32 | __ctr_svchax = 0 |
u32 | __ctr_svchax_srv = 0 |
void * | __service_ptr |
#define CURRENT_KPROCESS 0xFFFF9004 |
#define CURRENT_KPROCESS_HANDLE 0xFFFF8001 |
#define CURRENT_KTHREAD 0xFFFF9000 |
#define MCH2_THREAD_COUNT_MAX 0x20 |
#define MCH2_THREAD_STACKS_SIZE 0x1000 |
#define RESOURCE_LIMIT_THREADS 0x2 |
#define SVC_ACL_MASK | ( | svc_id | ) | (0x1 << ((svc_id) & 0x1F)) |
#define SVC_ACL_OFFSET | ( | svc_id | ) | (((svc_id) >> 5) << 2) |
#define THREAD_PAGE_ACL_OFFSET 0xF38 |
__attribute | ( | (naked) | ) |
__attribute__ | ( | (naked) | ) |
|
static |
|
static |
|
static |
u32 __ctr_svchax = 0 |
u32 __ctr_svchax_srv = 0 |
void* __service_ptr |