notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
forgotten credit..
[picodrive.git]
/
pico
/
carthw
/
svp
/
stub_arm.S
diff --git
a/pico/carthw/svp/stub_arm.S
b/pico/carthw/svp/stub_arm.S
index
d5c01bf
..
9d5c5fa
100644
(file)
--- a/
pico/carthw/svp/stub_arm.S
+++ b/
pico/carthw/svp/stub_arm.S
@@
-12,14
+12,6
@@
.text
.align 2
.text
.align 2
-@ externals
-#define cache_flush_d_inval_i ESYM(cache_flush_d_inval_i)
-#define ssp_get_iram_context ESYM(ssp_get_iram_context)
-#define ssp_pm_read ESYM(ssp_pm_read)
-#define ssp_pm_write ESYM(ssp_pm_write)
-#define ssp_translate_block ESYM(ssp_translate_block)
-#define tr_unhandled ESYM(tr_unhandled)
-
@ SSP_GR0, SSP_X, SSP_Y, SSP_A,
@ SSP_ST, SSP_STACK, SSP_PC, SSP_P,
@ SSP_PM0, SSP_PM1, SSP_PM2, SSP_XST,
@ SSP_GR0, SSP_X, SSP_Y, SSP_A,
@ SSP_ST, SSP_STACK, SSP_PC, SSP_P,
@ SSP_PM0, SSP_PM1, SSP_PM2, SSP_XST,
@@
-613,4
+605,23
@@
hle_07_036_ending2:
mov r0, #0x87
b ssp_drc_next @ let the dispatcher finish this
mov r0, #0x87
b ssp_drc_next @ let the dispatcher finish this
+
+@ ios stuff - preserving r9 on external calls
+#ifdef __MACH__
+
+#define APPLE_WRAP(f) \
+ f:; \
+ push {r9,lr}; \
+ bl _##f; \
+ pop {r9,pc}
+
+APPLE_WRAP(cache_flush_d_inval_i)
+APPLE_WRAP(ssp_get_iram_context)
+APPLE_WRAP(ssp_pm_read)
+APPLE_WRAP(ssp_pm_write)
+APPLE_WRAP(ssp_translate_block)
+APPLE_WRAP(tr_unhandled)
+
+#endif
+
@ vim:filetype=armasm
@ vim:filetype=armasm