ps2sdk  1.1
A collection of Open Source libraries used for developing applications on Sony's PlayStation 2® (PS2).
alarm.c File Reference
#include <kernel.h>
#include <stdio.h>
+ Include dependency graph for alarm.c:

Go to the source code of this file.

Data Structures

struct  SyscallData
 

Functions

void InitAlarm (void)
 

Variables

static const struct SyscallData SysEntry []
 
unsigned char srcfile []
 
unsigned int size_srcfile
 
unsigned char eenull []
 
unsigned int size_eenull
 

Detailed Description

EE kernel update for alarm functions ReleaseAlarm is unable to correctly release alarm in all CEX/DEX EE kernels. This also includes code for dealing with the restriction on the COP0 EIE bit becoming set to 0 when an interrupt occurs before interrupts can be disabled.

Definition in file alarm.c.

Function Documentation

◆ InitAlarm()

void InitAlarm ( void  )

Definition at line 43 of file alarm.c.

44 {
45  int i;
46 
47  setup(SysEntry[0].syscall, SysEntry[0].function);
48  Copy((void*)0x80076000, srcfile, size_srcfile);
49  Copy((void*)0x00082000, eenull, size_eenull);
50  FlushCache(0);
51  FlushCache(2);
52  setup(SysEntry[1].syscall, SysEntry[1].function);
53 
54  for(i=2; i<8; i++)
55  setup(SysEntry[i].syscall, GetEntryAddress(SysEntry[i].syscall));
56 }
unsigned char srcfile[]
unsigned int size_srcfile
unsigned int size_eenull
static const struct SyscallData SysEntry[]
Definition: alarm.c:26
unsigned char eenull[]
void * GetEntryAddress(int syscall)
int Copy(void *dest, const void *src, int size)
void FlushCache(s32 operation)
void setup(int syscall_num, void *handler)

References Copy(), eenull, FlushCache(), GetEntryAddress(), setup(), size_eenull, size_srcfile, srcfile, SyscallData::syscall, and SysEntry.

Variable Documentation

◆ eenull

unsigned char eenull[]
extern

Referenced by InitAlarm().

◆ size_eenull

unsigned int size_eenull
extern

Referenced by InitAlarm().

◆ size_srcfile

unsigned int size_srcfile
extern

Referenced by InitAlarm().

◆ srcfile

unsigned char srcfile[]
extern

Referenced by InitAlarm().

◆ SysEntry

const struct SyscallData SysEntry[]
static
Initial value:
={
{0x5A, &kCopy},
{0x5B, (void*)0x80076000},
{0xFC, NULL},
{0xFD, NULL},
{0xFE, NULL},
{0xFF, NULL},
{0x12C, NULL},
{0x08, NULL},
}
int kCopy(void *dest, const void *src, int size)
#define NULL
Definition: tamtypes.h:91

Definition at line 1 of file alarm.c.

Referenced by InitAlarm().