SSBM Decomp
Loading...
Searching...
No Matches
OSInterrupt.h File Reference
#include <dolphin/os.h>
#include <dolphin/types.h>

Go to the source code of this file.

Macros

#define __OS_INTERRUPT_MEM_0   0
#define __OS_INTERRUPT_MEM_1   1
#define __OS_INTERRUPT_MEM_2   2
#define __OS_INTERRUPT_MEM_3   3
#define __OS_INTERRUPT_MEM_ADDRESS   4
#define __OS_INTERRUPT_DSP_AI   5
#define __OS_INTERRUPT_DSP_ARAM   6
#define __OS_INTERRUPT_DSP_DSP   7
#define __OS_INTERRUPT_AI_AI   8
#define __OS_INTERRUPT_EXI_0_EXI   9
#define __OS_INTERRUPT_EXI_0_TC   10
#define __OS_INTERRUPT_EXI_0_EXT   11
#define __OS_INTERRUPT_EXI_1_EXI   12
#define __OS_INTERRUPT_EXI_1_TC   13
#define __OS_INTERRUPT_EXI_1_EXT   14
#define __OS_INTERRUPT_EXI_2_EXI   15
#define __OS_INTERRUPT_EXI_2_TC   16
#define __OS_INTERRUPT_PI_CP   17
#define __OS_INTERRUPT_PI_PE_TOKEN   18
#define __OS_INTERRUPT_PI_PE_FINISH   19
#define __OS_INTERRUPT_PI_SI   20
#define __OS_INTERRUPT_PI_DI   21
#define __OS_INTERRUPT_PI_RSW   22
#define __OS_INTERRUPT_PI_ERROR   23
#define __OS_INTERRUPT_PI_VI   24
#define __OS_INTERRUPT_PI_DEBUG   25
#define __OS_INTERRUPT_PI_HSP   26
#define __OS_INTERRUPT_MAX   32
#define OS_INTERRUPTMASK(interrupt)
#define OS_INTERRUPTMASK_MEM_0   OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_0)
#define OS_INTERRUPTMASK_MEM_1   OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_1)
#define OS_INTERRUPTMASK_MEM_2   OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_2)
#define OS_INTERRUPTMASK_MEM_3   OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_3)
#define OS_INTERRUPTMASK_MEM_ADDRESS    OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_ADDRESS)
#define OS_INTERRUPTMASK_MEM
#define OS_INTERRUPTMASK_DSP_AI   OS_INTERRUPTMASK(__OS_INTERRUPT_DSP_AI)
#define OS_INTERRUPTMASK_DSP_ARAM   OS_INTERRUPTMASK(__OS_INTERRUPT_DSP_ARAM)
#define OS_INTERRUPTMASK_DSP_DSP   OS_INTERRUPTMASK(__OS_INTERRUPT_DSP_DSP)
#define OS_INTERRUPTMASK_DSP
#define OS_INTERRUPTMASK_AI_AI   OS_INTERRUPTMASK(__OS_INTERRUPT_AI_AI)
#define OS_INTERRUPTMASK_AI   (OS_INTERRUPTMASK_AI_AI)
#define OS_INTERRUPTMASK_EXI_0_EXI   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_0_EXI)
#define OS_INTERRUPTMASK_EXI_0_TC   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_0_TC)
#define OS_INTERRUPTMASK_EXI_0_EXT   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_0_EXT)
#define OS_INTERRUPTMASK_EXI_0
#define OS_INTERRUPTMASK_EXI_1_EXI   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_1_EXI)
#define OS_INTERRUPTMASK_EXI_1_TC   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_1_TC)
#define OS_INTERRUPTMASK_EXI_1_EXT   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_1_EXT)
#define OS_INTERRUPTMASK_EXI_1
#define OS_INTERRUPTMASK_EXI_2_EXI   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_2_EXI)
#define OS_INTERRUPTMASK_EXI_2_TC   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_2_TC)
#define OS_INTERRUPTMASK_EXI_2    (OS_INTERRUPTMASK_EXI_2_EXI | OS_INTERRUPTMASK_EXI_2_TC)
#define OS_INTERRUPTMASK_EXI
#define OS_INTERRUPTMASK_PI_PE_TOKEN    OS_INTERRUPTMASK(__OS_INTERRUPT_PI_PE_TOKEN)
#define OS_INTERRUPTMASK_PI_PE_FINISH    OS_INTERRUPTMASK(__OS_INTERRUPT_PI_PE_FINISH)
#define OS_INTERRUPTMASK_PI_PE    (OS_INTERRUPTMASK_PI_PE_TOKEN | OS_INTERRUPTMASK_PI_PE_FINISH)
#define OS_INTERRUPTMASK_PI_CP   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_CP)
#define OS_INTERRUPTMASK_PI_SI   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_SI)
#define OS_INTERRUPTMASK_PI_DI   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_DI)
#define OS_INTERRUPTMASK_PI_RSW   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_RSW)
#define OS_INTERRUPTMASK_PI_ERROR   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_ERROR)
#define OS_INTERRUPTMASK_PI_VI   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_VI)
#define OS_INTERRUPTMASK_PI_DEBUG   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_DEBUG)
#define OS_INTERRUPTMASK_PI_HSP   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_HSP)
#define OS_INTERRUPTMASK_PI

Functions

__OSInterruptHandler __OSSetInterruptHandler (__OSInterrupt interrupt, __OSInterruptHandler handler)
__OSInterruptHandler __OSGetInterruptHandler (__OSInterrupt interrupt)
void __OSDispatchInterrupt (__OSException exception, OSContext *context)
OSInterruptMask OSGetInterruptMask (void)
OSInterruptMask OSSetInterruptMask (OSInterruptMask mask)
OSInterruptMask __OSMaskInterrupts (OSInterruptMask mask)
OSInterruptMask __OSUnmaskInterrupts (OSInterruptMask mask)

Variables

volatile __OSInterrupt __OSLastInterrupt
volatile u32 __OSLastInterruptSrr0
volatile OSTime __OSLastInterruptTime

Macro Definition Documentation

◆ __OS_INTERRUPT_MEM_0

#define __OS_INTERRUPT_MEM_0   0

◆ __OS_INTERRUPT_MEM_1

#define __OS_INTERRUPT_MEM_1   1

◆ __OS_INTERRUPT_MEM_2

#define __OS_INTERRUPT_MEM_2   2

◆ __OS_INTERRUPT_MEM_3

#define __OS_INTERRUPT_MEM_3   3

◆ __OS_INTERRUPT_MEM_ADDRESS

#define __OS_INTERRUPT_MEM_ADDRESS   4

◆ __OS_INTERRUPT_DSP_AI

#define __OS_INTERRUPT_DSP_AI   5

◆ __OS_INTERRUPT_DSP_ARAM

#define __OS_INTERRUPT_DSP_ARAM   6

◆ __OS_INTERRUPT_DSP_DSP

#define __OS_INTERRUPT_DSP_DSP   7

◆ __OS_INTERRUPT_AI_AI

#define __OS_INTERRUPT_AI_AI   8

◆ __OS_INTERRUPT_EXI_0_EXI

#define __OS_INTERRUPT_EXI_0_EXI   9

◆ __OS_INTERRUPT_EXI_0_TC

#define __OS_INTERRUPT_EXI_0_TC   10

◆ __OS_INTERRUPT_EXI_0_EXT

#define __OS_INTERRUPT_EXI_0_EXT   11

◆ __OS_INTERRUPT_EXI_1_EXI

#define __OS_INTERRUPT_EXI_1_EXI   12

◆ __OS_INTERRUPT_EXI_1_TC

#define __OS_INTERRUPT_EXI_1_TC   13

◆ __OS_INTERRUPT_EXI_1_EXT

#define __OS_INTERRUPT_EXI_1_EXT   14

◆ __OS_INTERRUPT_EXI_2_EXI

#define __OS_INTERRUPT_EXI_2_EXI   15

◆ __OS_INTERRUPT_EXI_2_TC

#define __OS_INTERRUPT_EXI_2_TC   16

◆ __OS_INTERRUPT_PI_CP

#define __OS_INTERRUPT_PI_CP   17

◆ __OS_INTERRUPT_PI_PE_TOKEN

#define __OS_INTERRUPT_PI_PE_TOKEN   18

◆ __OS_INTERRUPT_PI_PE_FINISH

#define __OS_INTERRUPT_PI_PE_FINISH   19

◆ __OS_INTERRUPT_PI_SI

#define __OS_INTERRUPT_PI_SI   20

◆ __OS_INTERRUPT_PI_DI

#define __OS_INTERRUPT_PI_DI   21

◆ __OS_INTERRUPT_PI_RSW

#define __OS_INTERRUPT_PI_RSW   22

◆ __OS_INTERRUPT_PI_ERROR

#define __OS_INTERRUPT_PI_ERROR   23

◆ __OS_INTERRUPT_PI_VI

#define __OS_INTERRUPT_PI_VI   24

◆ __OS_INTERRUPT_PI_DEBUG

#define __OS_INTERRUPT_PI_DEBUG   25

◆ __OS_INTERRUPT_PI_HSP

#define __OS_INTERRUPT_PI_HSP   26

◆ __OS_INTERRUPT_MAX

#define __OS_INTERRUPT_MAX   32

◆ OS_INTERRUPTMASK

#define OS_INTERRUPTMASK ( interrupt)
Value:
(0x80000000u >> (interrupt))

◆ OS_INTERRUPTMASK_MEM_0

#define OS_INTERRUPTMASK_MEM_0   OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_0)

◆ OS_INTERRUPTMASK_MEM_1

#define OS_INTERRUPTMASK_MEM_1   OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_1)

◆ OS_INTERRUPTMASK_MEM_2

#define OS_INTERRUPTMASK_MEM_2   OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_2)

◆ OS_INTERRUPTMASK_MEM_3

#define OS_INTERRUPTMASK_MEM_3   OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_3)

◆ OS_INTERRUPTMASK_MEM_ADDRESS

#define OS_INTERRUPTMASK_MEM_ADDRESS    OS_INTERRUPTMASK(__OS_INTERRUPT_MEM_ADDRESS)

◆ OS_INTERRUPTMASK_MEM

#define OS_INTERRUPTMASK_MEM
Value:
#define OS_INTERRUPTMASK_MEM_2
Definition OSInterrupt.h:44
#define OS_INTERRUPTMASK_MEM_0
Definition OSInterrupt.h:42
#define OS_INTERRUPTMASK_MEM_1
Definition OSInterrupt.h:43
#define OS_INTERRUPTMASK_MEM_3
Definition OSInterrupt.h:45
#define OS_INTERRUPTMASK_MEM_ADDRESS
Definition OSInterrupt.h:46

◆ OS_INTERRUPTMASK_DSP_AI

#define OS_INTERRUPTMASK_DSP_AI   OS_INTERRUPTMASK(__OS_INTERRUPT_DSP_AI)

◆ OS_INTERRUPTMASK_DSP_ARAM

#define OS_INTERRUPTMASK_DSP_ARAM   OS_INTERRUPTMASK(__OS_INTERRUPT_DSP_ARAM)

◆ OS_INTERRUPTMASK_DSP_DSP

#define OS_INTERRUPTMASK_DSP_DSP   OS_INTERRUPTMASK(__OS_INTERRUPT_DSP_DSP)

◆ OS_INTERRUPTMASK_DSP

#define OS_INTERRUPTMASK_DSP
Value:
#define OS_INTERRUPTMASK_DSP_ARAM
Definition OSInterrupt.h:53
#define OS_INTERRUPTMASK_DSP_AI
Definition OSInterrupt.h:52
#define OS_INTERRUPTMASK_DSP_DSP
Definition OSInterrupt.h:54

◆ OS_INTERRUPTMASK_AI_AI

#define OS_INTERRUPTMASK_AI_AI   OS_INTERRUPTMASK(__OS_INTERRUPT_AI_AI)

◆ OS_INTERRUPTMASK_AI

#define OS_INTERRUPTMASK_AI   (OS_INTERRUPTMASK_AI_AI)

◆ OS_INTERRUPTMASK_EXI_0_EXI

#define OS_INTERRUPTMASK_EXI_0_EXI   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_0_EXI)

◆ OS_INTERRUPTMASK_EXI_0_TC

#define OS_INTERRUPTMASK_EXI_0_TC   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_0_TC)

◆ OS_INTERRUPTMASK_EXI_0_EXT

#define OS_INTERRUPTMASK_EXI_0_EXT   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_0_EXT)

◆ OS_INTERRUPTMASK_EXI_0

#define OS_INTERRUPTMASK_EXI_0
Value:
#define OS_INTERRUPTMASK_EXI_0_EXT
Definition OSInterrupt.h:62
#define OS_INTERRUPTMASK_EXI_0_TC
Definition OSInterrupt.h:61
#define OS_INTERRUPTMASK_EXI_0_EXI
Definition OSInterrupt.h:60

◆ OS_INTERRUPTMASK_EXI_1_EXI

#define OS_INTERRUPTMASK_EXI_1_EXI   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_1_EXI)

◆ OS_INTERRUPTMASK_EXI_1_TC

#define OS_INTERRUPTMASK_EXI_1_TC   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_1_TC)

◆ OS_INTERRUPTMASK_EXI_1_EXT

#define OS_INTERRUPTMASK_EXI_1_EXT   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_1_EXT)

◆ OS_INTERRUPTMASK_EXI_1

#define OS_INTERRUPTMASK_EXI_1
Value:
#define OS_INTERRUPTMASK_EXI_1_TC
Definition OSInterrupt.h:67
#define OS_INTERRUPTMASK_EXI_1_EXI
Definition OSInterrupt.h:66
#define OS_INTERRUPTMASK_EXI_1_EXT
Definition OSInterrupt.h:68

◆ OS_INTERRUPTMASK_EXI_2_EXI

#define OS_INTERRUPTMASK_EXI_2_EXI   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_2_EXI)

◆ OS_INTERRUPTMASK_EXI_2_TC

#define OS_INTERRUPTMASK_EXI_2_TC   OS_INTERRUPTMASK(__OS_INTERRUPT_EXI_2_TC)

◆ OS_INTERRUPTMASK_EXI_2

#define OS_INTERRUPTMASK_EXI_2    (OS_INTERRUPTMASK_EXI_2_EXI | OS_INTERRUPTMASK_EXI_2_TC)

◆ OS_INTERRUPTMASK_EXI

#define OS_INTERRUPTMASK_EXI

◆ OS_INTERRUPTMASK_PI_PE_TOKEN

#define OS_INTERRUPTMASK_PI_PE_TOKEN    OS_INTERRUPTMASK(__OS_INTERRUPT_PI_PE_TOKEN)

◆ OS_INTERRUPTMASK_PI_PE_FINISH

#define OS_INTERRUPTMASK_PI_PE_FINISH    OS_INTERRUPTMASK(__OS_INTERRUPT_PI_PE_FINISH)

◆ OS_INTERRUPTMASK_PI_PE

#define OS_INTERRUPTMASK_PI_PE    (OS_INTERRUPTMASK_PI_PE_TOKEN | OS_INTERRUPTMASK_PI_PE_FINISH)

◆ OS_INTERRUPTMASK_PI_CP

#define OS_INTERRUPTMASK_PI_CP   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_CP)

◆ OS_INTERRUPTMASK_PI_SI

#define OS_INTERRUPTMASK_PI_SI   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_SI)

◆ OS_INTERRUPTMASK_PI_DI

#define OS_INTERRUPTMASK_PI_DI   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_DI)

◆ OS_INTERRUPTMASK_PI_RSW

#define OS_INTERRUPTMASK_PI_RSW   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_RSW)

◆ OS_INTERRUPTMASK_PI_ERROR

#define OS_INTERRUPTMASK_PI_ERROR   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_ERROR)

◆ OS_INTERRUPTMASK_PI_VI

#define OS_INTERRUPTMASK_PI_VI   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_VI)

◆ OS_INTERRUPTMASK_PI_DEBUG

#define OS_INTERRUPTMASK_PI_DEBUG   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_DEBUG)

◆ OS_INTERRUPTMASK_PI_HSP

#define OS_INTERRUPTMASK_PI_HSP   OS_INTERRUPTMASK(__OS_INTERRUPT_PI_HSP)

◆ OS_INTERRUPTMASK_PI

#define OS_INTERRUPTMASK_PI
Value:
#define OS_INTERRUPTMASK_PI_PE_FINISH
Definition OSInterrupt.h:83
#define OS_INTERRUPTMASK_PI_PE_TOKEN
Definition OSInterrupt.h:81
#define OS_INTERRUPTMASK_PI_RSW
Definition OSInterrupt.h:90
#define OS_INTERRUPTMASK_PI_SI
Definition OSInterrupt.h:88
#define OS_INTERRUPTMASK_PI_DI
Definition OSInterrupt.h:89
#define OS_INTERRUPTMASK_PI_ERROR
Definition OSInterrupt.h:91
#define OS_INTERRUPTMASK_PI_VI
Definition OSInterrupt.h:92
#define OS_INTERRUPTMASK_PI_HSP
Definition OSInterrupt.h:94
#define OS_INTERRUPTMASK_PI_DEBUG
Definition OSInterrupt.h:93
#define OS_INTERRUPTMASK_PI_CP
Definition OSInterrupt.h:87

Function Documentation

◆ __OSSetInterruptHandler()

__OSInterruptHandler __OSSetInterruptHandler ( __OSInterrupt interrupt,
__OSInterruptHandler handler )

◆ __OSGetInterruptHandler()

__OSInterruptHandler __OSGetInterruptHandler ( __OSInterrupt interrupt)

◆ __OSDispatchInterrupt()

void __OSDispatchInterrupt ( __OSException exception,
OSContext * context )

◆ OSGetInterruptMask()

OSInterruptMask OSGetInterruptMask ( void )

◆ OSSetInterruptMask()

OSInterruptMask OSSetInterruptMask ( OSInterruptMask mask)

◆ __OSMaskInterrupts()

OSInterruptMask __OSMaskInterrupts ( OSInterruptMask mask)

◆ __OSUnmaskInterrupts()

OSInterruptMask __OSUnmaskInterrupts ( OSInterruptMask mask)

Variable Documentation

◆ __OSLastInterrupt

volatile __OSInterrupt __OSLastInterrupt
extern

◆ __OSLastInterruptSrr0

volatile u32 __OSLastInterruptSrr0
extern

◆ __OSLastInterruptTime

volatile OSTime __OSLastInterruptTime
extern