PS2SDK
PS2 Homebrew Libraries
mipscopaccess.h
Go to the documentation of this file.
1 
6 #ifndef __MIPSCOPACCESS_H__
7 #define __MIPSCOPACCESS_H__
8 
9 #include <tamtypes.h>
10 
12 {
57 };
58 
59 static inline __attribute__((__always_inline__)) u32 get_mips_cop_reg(const u32 cop, const u32 idx)
60 {
61  u32 val;
62 
63  __asm__ __volatile__("mfc%[cop]\t%[val], $%[idx]\n" : [val] "=r"(val) : [cop] "i"(cop), [idx] "i"(idx));
64  return val;
65 }
66 
67 static inline __attribute__((__always_inline__)) void set_mips_cop_reg(const u32 cop, const u32 idx, u32 val)
68 {
69  __asm__ __volatile__("mtc%[cop]\t%[val], $%[idx]\n" :: [val] "r"(val), [cop] "i"(cop), [idx] "i"(idx));
70 }
71 
72 #endif /* __MIPSCOPACCESS_H__ */
COP0_REG_BadPAddr
@ COP0_REG_BadPAddr
Definition: mipscopaccess.h:46
COP0_REG_Status
@ COP0_REG_Status
Definition: mipscopaccess.h:36
COP0_REG_Count
@ COP0_REG_Count
Definition: mipscopaccess.h:30
COP0_REG_Config
@ COP0_REG_Config
Definition: mipscopaccess.h:44
COP0_REG_Cause
@ COP0_REG_Cause
Definition: mipscopaccess.h:38
COP0_REG_Compare
@ COP0_REG_Compare
Definition: mipscopaccess.h:34
COP0_REG_Debug
@ COP0_REG_Debug
Definition: mipscopaccess.h:48
COP0_REG_PageMask
@ COP0_REG_PageMask
Definition: mipscopaccess.h:24
tamtypes.h
COP0_REG_TagLo
@ COP0_REG_TagLo
Definition: mipscopaccess.h:52
COP0_REG_BadVAddr
@ COP0_REG_BadVAddr
Definition: mipscopaccess.h:28
COP0_REG_EntryHi
@ COP0_REG_EntryHi
Definition: mipscopaccess.h:32
COP0_REG_Index
@ COP0_REG_Index
Definition: mipscopaccess.h:14
COP0_REG_ErrorPC
@ COP0_REG_ErrorPC
Definition: mipscopaccess.h:56
mips_cop0_reg
mips_cop0_reg
Definition: mipscopaccess.h:11
COP0_REG_Context
@ COP0_REG_Context
Definition: mipscopaccess.h:22
COP0_REG_Perf
@ COP0_REG_Perf
Definition: mipscopaccess.h:50
__attribute__
Definition: gif_registers.h:38
COP0_REG_PRId
@ COP0_REG_PRId
Definition: mipscopaccess.h:42
COP0_REG_Random
@ COP0_REG_Random
Definition: mipscopaccess.h:16
COP0_REG_EntryLo1
@ COP0_REG_EntryLo1
Definition: mipscopaccess.h:20
COP0_REG_Wired
@ COP0_REG_Wired
Definition: mipscopaccess.h:26
COP0_REG_EntryLo0
@ COP0_REG_EntryLo0
Definition: mipscopaccess.h:18
COP0_REG_TagHi
@ COP0_REG_TagHi
Definition: mipscopaccess.h:54
COP0_REG_EPC
@ COP0_REG_EPC
Definition: mipscopaccess.h:40