Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
JUTException Class Reference

#include <JUTException.h>

+ Inheritance diagram for JUTException:
+ Collaboration diagram for JUTException:

Classes

class  JUTExMapFile
 

Public Types

enum  EInfoPage {
  EINFO_PAGE_GPR = 1 , EINFO_PAGE_FLOAT = 2 , EINFO_PAGE_STACK = 3 , EINFO_PAGE_GPR_MAP = 4 ,
  EINFO_PAGE_SSR0_MAP = 5
}
 

Public Member Functions

 JUTException (JUTDirectPrint *)
 
virtual ~JUTException ()
 
void showFloatSub (int, f32)
 
void showFloat (OSContext *)
 
void showStack (OSContext *)
 
void showMainInfo (u16, OSContext *, u32, u32)
 
void showGPR (OSContext *)
 
bool showMapInfo_subroutine (u32, bool)
 
void showGPRMap (OSContext *)
 
void showSRR0Map (OSContext *)
 
void printDebugInfo (JUTException::EInfoPage, OSError, OSContext *, u32, u32)
 
bool isEnablePad () const
 
bool readPad (u32 *, u32 *)
 
void printContext (u16, OSContext *, u32, u32)
 
void createFB ()
 
virtual voidrun ()
 
JUTExternalFBgetFrameMemory () const
 
void setTraceSuppress (u32 param_0)
 
void setGamePad (JUTGamePad *gamePad)
 
- Public Member Functions inherited from JKRThread
 JKRThread (u32 stack_size, int message_count, int param_3)
 
 JKRThread (JKRHeap *heap, u32 stack_size, int message_count, int param_4)
 
 JKRThread (OSThread *thread, int message_count)
 
virtual ~JKRThread ()
 
void setCommon_mesgQueue (JKRHeap *heap, int message_count)
 
void setCommon_heapSpecified (JKRHeap *heap, u32 stack_size, int param_3)
 
OSThreadgetThreadRecord () const
 
voidgetStack () const
 
TLoadgetLoadInfo ()
 
JKRHeapgetCurrentHeap () const
 
s32 getCurrentHeapError () const
 
void setCurrentHeap (JKRHeap *heap)
 

Static Public Member Functions

static JUTExceptioncreate (JUTDirectPrint *)
 
static void errorHandler (OSError, OSContext *, u32, u32)
 
static void panic_f_va (char const *, int, char const *, va_list)
 
static void panic_f (char const *, int, char const *,...)
 
static void setFPException (u32)
 
static bool searchPartialModule (u32, u32 *, u32 *, u32 *, u32 *)
 
static OSErrorHandler setPreUserCallback (OSErrorHandler)
 
static OSErrorHandler setPostUserCallback (OSErrorHandler)
 
static void appendMapFile (char const *)
 
static bool queryMapAddress (char *, u32, s32, u32 *, u32 *, char *, u32, bool, bool)
 
static bool queryMapAddress_single (char *, u32, s32, u32 *, u32 *, char *, u32, bool, bool)
 
static void createConsole (void *, u32)
 
static void waitTime (s32)
 
static JUTExceptiongetManager ()
 
static JUTConsolegetConsole ()
 
static void setMapFile (const char *map)
 
static void panic (const char *file, int line, const char *msg)
 
- Static Public Member Functions inherited from JKRThread
static voidstart (void *param_1)
 
static JKRThreadsearchThread (OSThread *thread)
 
static JSUList< JKRThread > & getList ()
 

Private Attributes

JUTExternalFBmFrameMemory
 
JUTDirectPrintmDirectPrint
 
JUTGamePadmGamePad
 
JUTGamePad::EPadPort mGamePadPort
 
s32 mPrintWaitTime0
 
s32 mPrintWaitTime1
 
u32 mTraceSuppress
 
u32 field_0x98
 
u32 mPrintFlags
 
u32 mStackPointer
 

Static Private Attributes

static OSMessageQueue sMessageQueue = {0}
 
static const charsCpuExpName [17]
 
static JSUList< JUTException::JUTExMapFilesMapFileList
 
static OSMessage sMessageBuffer [1+1] = {0}
 
static JUTExceptionsErrorManager
 
static OSErrorHandler sPreUserCallback
 
static OSErrorHandler sPostUserCallback
 
static voidsConsoleBuffer
 
static u32 sConsoleBufferSize
 
static JUTConsolesConsole
 
static u32 msr
 
static u32 fpscr
 

Additional Inherited Members

- Static Public Attributes inherited from JKRThread
static JSUList< JKRThreadsThreadList
 
- Protected Member Functions inherited from JKRThread
void resume ()
 
BOOL sendMessage (OSMessage message)
 
void sendMessageBlock (OSMessage message)
 
OSMessage waitMessage ()
 
OSMessage waitMessage (BOOL *received)
 
OSMessage waitMessageBlock ()
 
void jamMessageBlock (OSMessage message)
 

Member Enumeration Documentation

◆ EInfoPage

Enumerator
EINFO_PAGE_GPR 
EINFO_PAGE_FLOAT 
EINFO_PAGE_STACK 
EINFO_PAGE_GPR_MAP 
EINFO_PAGE_SSR0_MAP 

Constructor & Destructor Documentation

◆ JUTException()

JUTException::JUTException ( JUTDirectPrint directPrint)

◆ ~JUTException()

JUTException::~JUTException ( )
virtual

Member Function Documentation

◆ appendMapFile()

void JUTException::appendMapFile ( char const path)
static

◆ create()

JUTException * JUTException::create ( JUTDirectPrint directPrint)
static

◆ createConsole()

void JUTException::createConsole ( void console_buffer,
u32  console_buffer_size 
)
static

◆ createFB()

void JUTException::createFB ( )

◆ errorHandler()

void JUTException::errorHandler ( OSError  error,
OSContext context,
u32  param_3,
u32  param_4 
)
static

◆ getConsole()

static JUTConsole * JUTException::getConsole ( )
inlinestatic

◆ getFrameMemory()

JUTExternalFB * JUTException::getFrameMemory ( ) const
inline

◆ getManager()

static JUTException * JUTException::getManager ( )
inlinestatic

◆ isEnablePad()

bool JUTException::isEnablePad ( ) const

◆ panic()

static void JUTException::panic ( const char file,
int  line,
const char msg 
)
inlinestatic

◆ panic_f()

void JUTException::panic_f ( char const file,
int  line,
char const format,
  ... 
)
static

◆ panic_f_va()

void JUTException::panic_f_va ( char const file,
int  line,
char const format,
va_list  args 
)
static

◆ printContext()

void JUTException::printContext ( u16  error,
OSContext context,
u32  dsisr,
u32  dar 
)

◆ printDebugInfo()

void JUTException::printDebugInfo ( JUTException::EInfoPage  page,
OSError  error,
OSContext context,
u32  param_3,
u32  param_4 
)

◆ queryMapAddress()

bool JUTException::queryMapAddress ( char mapPath,
u32  address,
s32  section_id,
u32 out_addr,
u32 out_size,
char out_line,
u32  line_length,
bool  print,
bool  begin_with_newline 
)
static

◆ queryMapAddress_single()

bool JUTException::queryMapAddress_single ( char mapPath,
u32  address,
s32  section_id,
u32 out_addr,
u32 out_size,
char out_line,
u32  line_length,
bool  print,
bool  begin_with_newline 
)
static

◆ readPad()

bool JUTException::readPad ( u32 out_trigger,
u32 out_button 
)

◆ run()

void * JUTException::run ( void  )
virtual

Reimplemented from JKRThread.

◆ searchPartialModule()

bool JUTException::searchPartialModule ( u32  address,
u32 module_id,
u32 section_id,
u32 section_offset,
u32 name_offset 
)
static

◆ setFPException()

void JUTException::setFPException ( u32  fpscr_enable_bits)
static

◆ setGamePad()

void JUTException::setGamePad ( JUTGamePad gamePad)
inline

◆ setMapFile()

static void JUTException::setMapFile ( const char map)
inlinestatic

◆ setPostUserCallback()

OSErrorHandler JUTException::setPostUserCallback ( OSErrorHandler  callback)
static

◆ setPreUserCallback()

OSErrorHandler JUTException::setPreUserCallback ( OSErrorHandler  callback)
static

◆ setTraceSuppress()

void JUTException::setTraceSuppress ( u32  param_0)
inline

◆ showFloat()

void JUTException::showFloat ( OSContext context)

◆ showFloatSub()

void JUTException::showFloatSub ( int  index,
f32  value 
)

◆ showGPR()

void JUTException::showGPR ( OSContext context)

◆ showGPRMap()

void JUTException::showGPRMap ( OSContext context)

◆ showMainInfo()

void JUTException::showMainInfo ( u16  error,
OSContext context,
u32  dsisr,
u32  dar 
)

◆ showMapInfo_subroutine()

bool JUTException::showMapInfo_subroutine ( u32  address,
bool  begin_with_newline 
)

◆ showSRR0Map()

void JUTException::showSRR0Map ( OSContext context)

◆ showStack()

void JUTException::showStack ( OSContext context)

◆ waitTime()

void JUTException::waitTime ( s32  timeout_ms)
static

Member Data Documentation

◆ field_0x98

u32 JUTException::field_0x98
private

◆ fpscr

u32 JUTException::fpscr
staticprivate

◆ mDirectPrint

JUTDirectPrint* JUTException::mDirectPrint
private

◆ mFrameMemory

JUTExternalFB* JUTException::mFrameMemory
private

◆ mGamePad

JUTGamePad* JUTException::mGamePad
private

◆ mGamePadPort

JUTGamePad::EPadPort JUTException::mGamePadPort
private

◆ mPrintFlags

u32 JUTException::mPrintFlags
private

◆ mPrintWaitTime0

s32 JUTException::mPrintWaitTime0
private

◆ mPrintWaitTime1

s32 JUTException::mPrintWaitTime1
private

◆ msr

u32 JUTException::msr
staticprivate

◆ mStackPointer

u32 JUTException::mStackPointer
private

◆ mTraceSuppress

u32 JUTException::mTraceSuppress
private

◆ sConsole

JUTConsole * JUTException::sConsole
staticprivate

◆ sConsoleBuffer

void * JUTException::sConsoleBuffer
staticprivate

◆ sConsoleBufferSize

u32 JUTException::sConsoleBufferSize
staticprivate

◆ sCpuExpName

SECTION_DATA const char * JUTException::sCpuExpName
staticprivate
Initial value:
= {
"SYSTEM RESET",
"MACHINE CHECK",
"DSI",
"ISI",
"EXTERNAL INTERRUPT",
"ALIGNMENT",
"PROGRAM",
"FLOATING POINT",
"DECREMENTER",
"SYSTEM CALL",
"TRACE",
"PERFORMACE MONITOR",
"BREAK POINT",
"SYSTEM INTERRUPT",
"THERMAL INTERRUPT",
"PROTECTION",
"FLOATING POINT",
}

◆ sErrorManager

JUTException * JUTException::sErrorManager
staticprivate

◆ sMapFileList

JSUList< JUTException::JUTExMapFile > JUTException::sMapFileList
staticprivate

◆ sMessageBuffer

SECTION_SDATA OSMessage JUTException::sMessageBuffer = {0}
staticprivate

◆ sMessageQueue

SECTION_DATA OSMessageQueue JUTException::sMessageQueue = {0}
staticprivate

◆ sPostUserCallback

OSErrorHandler JUTException::sPostUserCallback
staticprivate

◆ sPreUserCallback

OSErrorHandler JUTException::sPreUserCallback
staticprivate

The documentation for this class was generated from the following files: