RetroArch
Classes | Macros | Typedefs | Functions | Variables
exception.c File Reference
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <stdarg.h>
#include "asm.h"
#include "processor.h"
#include "cache.h"
#include "irq.h"
#include "context.h"
#include "system.h"
#include "gx.h"
#include "pad.h"
#include "consol.h"
#include "console.h"
#include "lwp_threads.h"
#include "ios.h"
#include "ogc/video_types.h"
Include dependency graph for exception.c:

Classes

struct  _framerec
 

Macros

#define CPU_STACK_TRACE_DEPTH   10
 

Typedefs

typedef struct _framerec frame_rec
 
typedef struct _framerecframe_rec_t
 

Functions

void __exception_sethandler (u32 nExcept, void(*pHndl)(frame_context *))
 
void udelay (int us)
 
void fpu_exceptionhandler ()
 
void irq_exceptionhandler ()
 
void dec_exceptionhandler ()
 
void default_exceptionhandler ()
 
void VIDEO_SetFramebuffer (void *)
 
void __reload ()
 
void __exception_load (u32 nExc, void *data, u32 len, void *patch)
 
void __systemcall_init ()
 
void __exception_init ()
 
void __exception_close (u32 except)
 
void __exception_closeall ()
 
static void _cpu_print_stack (void *pc, void *lr, void *r1)
 
void __exception_setreload (int t)
 
static void waitForReload ()
 
void c_default_exceptionhandler (frame_context *pCtx)
 

Variables

static voidexception_xfb = (void*)0xC1700000
 
static int reload_timer = -1
 
s8 exceptionhandler_start []
 
s8 exceptionhandler_end []
 
s8 exceptionhandler_patch []
 
s8 systemcallhandler_start []
 
s8 systemcallhandler_end []
 
void(* _exceptionhandlertable [NUM_EXCEPTIONS])(frame_context *)
 
static u32 exception_location [NUM_EXCEPTIONS]
 
static const char * exception_name [NUM_EXCEPTIONS]
 

Macro Definition Documentation

◆ CPU_STACK_TRACE_DEPTH

#define CPU_STACK_TRACE_DEPTH   10

Typedef Documentation

◆ frame_rec

typedef struct _framerec frame_rec

◆ frame_rec_t

typedef struct _framerec * frame_rec_t

Function Documentation

◆ __exception_close()

void __exception_close ( u32  except)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ __exception_closeall()

void __exception_closeall ( void  )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ __exception_init()

void __exception_init ( void  )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ __exception_load()

void __exception_load ( u32  nExc,
void data,
u32  len,
void patch 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ __exception_sethandler()

void __exception_sethandler ( u32  nExcept,
void(*)(frame_context *)  pHndl 
)
Here is the caller graph for this function:

◆ __exception_setreload()

void __exception_setreload ( int  t)
Here is the caller graph for this function:

◆ __reload()

void __reload ( )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ __systemcall_init()

void __systemcall_init ( void  )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ _cpu_print_stack()

static void _cpu_print_stack ( void pc,
void lr,
void r1 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ c_default_exceptionhandler()

void c_default_exceptionhandler ( frame_context pCtx)
Here is the call graph for this function:

◆ dec_exceptionhandler()

void dec_exceptionhandler ( )
Here is the caller graph for this function:

◆ default_exceptionhandler()

void default_exceptionhandler ( )
Here is the caller graph for this function:

◆ fpu_exceptionhandler()

void fpu_exceptionhandler ( )
Here is the caller graph for this function:

◆ irq_exceptionhandler()

void irq_exceptionhandler ( )
Here is the caller graph for this function:

◆ udelay()

void udelay ( int  us)
Here is the caller graph for this function:

◆ VIDEO_SetFramebuffer()

void VIDEO_SetFramebuffer ( void )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ waitForReload()

static void waitForReload ( )
static
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ _exceptionhandlertable

void(* _exceptionhandlertable[NUM_EXCEPTIONS])(frame_context *)

◆ exception_location

u32 exception_location[NUM_EXCEPTIONS]
static
Initial value:
= {
0x00000100, 0x00000200, 0x00000300, 0x00000400,
0x00000500, 0x00000600, 0x00000700, 0x00000800,
0x00000900, 0x00000C00, 0x00000D00, 0x00000F00,
0x00001300, 0x00001400, 0x00001700 }

◆ exception_name

const char* exception_name[NUM_EXCEPTIONS]
static
Initial value:
= {
"System Reset", "Machine Check", "DSI", "ISI",
"Interrupt", "Alignment", "Program", "Floating Point",
"Decrementer", "System Call", "Trace", "Performance",
"IABR", "Reserved", "Thermal"}

◆ exception_xfb

void* exception_xfb = (void*)0xC1700000
static

◆ exceptionhandler_end

s8 exceptionhandler_end[]

◆ exceptionhandler_patch

s8 exceptionhandler_patch[]

◆ exceptionhandler_start

s8 exceptionhandler_start[]

◆ reload_timer

int reload_timer = -1
static

◆ systemcallhandler_end

s8 systemcallhandler_end[]

◆ systemcallhandler_start

s8 systemcallhandler_start[]