summaryrefslogtreecommitdiff
path: root/arm9/lib/include/OS_reset.h
blob: fd91837061a0bf05e74ae8912fbbb4c954e43256 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//
// Created by red031000 on 2020-05-06.
//

#ifndef POKEDIAMOND_OS_RESET_H
#define POKEDIAMOND_OS_RESET_H

#include "consts.h"
#include "PXI_fifo.h"

#define OS_PXI_COMMAND_MASK 0x7f00
#define OS_PXI_COMMAND_SHIFT 8
#define OS_PXI_COMMAND_RESET 0x10

void OS_InitReset(void);
static void OSi_CommonCallback(PXIFifoTag tag, u32 data, BOOL err);
static void OSi_SendToPxi(u16 data);
void OS_ResetSystem(u32 parameter);
void OSi_DoBoot(void);
static void OSi_CpuClear32(register u32 data, register void *destp, register u32 size);
void OSi_ReloadRomData(void);
void OSi_ReadCardRom32(u32 src, void *dst, s32 len);

static inline u32 OS_GetResetParameter(void)
{
    return (u32)*(u32 *)HW_RESET_PARAMETER_BUF;
}

#endif //POKEDIAMOND_OS_RESET_H