aboutsummaryrefslogtreecommitdiff
path: root/libpsn00b/include/inline_c.h
diff options
context:
space:
mode:
Diffstat (limited to 'libpsn00b/include/inline_c.h')
-rw-r--r--libpsn00b/include/inline_c.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/libpsn00b/include/inline_c.h b/libpsn00b/include/inline_c.h
index 3775fdd..177faf1 100644
--- a/libpsn00b/include/inline_c.h
+++ b/libpsn00b/include/inline_c.h
@@ -211,6 +211,70 @@
: "r"( r0 ), "r"( r1 ), "r"( r2 ) \
: "memory" )
+#define gte_stsxy3_f3( r0 ) __asm__ volatile ( \
+ "swc2 $12, 8( %0 );" \
+ "swc2 $13, 12( %0 );" \
+ "swc2 $14, 16( %0 )" \
+ : \
+ : "r"( r0 ) \
+ : "memory" )
+
+#define gte_stsxy3_g3( r0 ) __asm__ volatile ( \
+ "swc2 $12, 8( %0 );" \
+ "swc2 $13, 16( %0 );" \
+ "swc2 $14, 24( %0 )" \
+ : \
+ : "r"( r0 ) \
+ : "memory" )
+
+#define gte_stsxy3_ft3( r0 ) __asm__ volatile ( \
+ "swc2 $12, 8( %0 );" \
+ "swc2 $13, 16( %0 );" \
+ "swc2 $14, 24( %0 )" \
+ : \
+ : "r"( r0 ) \
+ : "memory" )
+
+#define gte_stsxy3_gt3( r0 ) __asm__ volatile ( \
+ "swc2 $12, 8( %0 );" \
+ "swc2 $13, 20( %0 );" \
+ "swc2 $14, 32( %0 )" \
+ : \
+ : "r"( r0 ) \
+ : "memory" )
+
+#define gte_stsxy3_f4( r0 ) __asm__ volatile ( \
+ "swc2 $12, 8( %0 );" \
+ "swc2 $13, 12( %0 );" \
+ "swc2 $14, 16( %0 )" \
+ : \
+ : "r"( r0 ) \
+ : "memory" )
+
+#define gte_stsxy3_g4( r0 ) __asm__ volatile ( \
+ "swc2 $12, 8( %0 );" \
+ "swc2 $13, 16( %0 );" \
+ "swc2 $14, 24( %0 )" \
+ : \
+ : "r"( r0 ) \
+ : "memory" )
+
+#define gte_stsxy3_ft4( r0 ) __asm__ volatile ( \
+ "swc2 $12, 8( %0 );" \
+ "swc2 $13, 16( %0 );" \
+ "swc2 $14, 24( %0 )" \
+ : \
+ : "r"( r0 ) \
+ : "memory" )
+
+#define gte_stsxy3_gt4( r0 ) __asm__ volatile ( \
+ "swc2 $12, 8( %0 );" \
+ "swc2 $13, 20( %0 );" \
+ "swc2 $14, 32( %0 )" \
+ : \
+ : "r"( r0 ) \
+ : "memory" )
+
#define gte_stsz( r0 ) __asm__ volatile ( \
"swc2 $19, 0( %0 );" \
: \