summaryrefslogtreecommitdiff
path: root/pcr/reicast-multilib-git/futuristic-memops.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/reicast-multilib-git/futuristic-memops.patch')
-rw-r--r--pcr/reicast-multilib-git/futuristic-memops.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/pcr/reicast-multilib-git/futuristic-memops.patch b/pcr/reicast-multilib-git/futuristic-memops.patch
new file mode 100644
index 000000000..517670402
--- /dev/null
+++ b/pcr/reicast-multilib-git/futuristic-memops.patch
@@ -0,0 +1,31 @@
+diff -Nur a/core/hw/sh4/dyna/shil_canonical.h b/core/hw/sh4/dyna/shil_canonical.h
+--- a/core/hw/sh4/dyna/shil_canonical.h 2015-10-06 21:43:53.031336322 -0300
++++ b/core/hw/sh4/dyna/shil_canonical.h 2015-10-06 21:48:30.009328396 -0300
+@@ -206,6 +206,27 @@
+ shil_recimp()
+ shil_opc_end()
+
++//mem io v2
++
++//vref = vrans<mode|size>(ptr, nil)
++//vref = vrans<mode|size>(base, offset)
++shil_opc(vtrans)
++shil_recimp()
++shil_opc_end()
++
++//dst = readpvr<size>(vref)
++//dst = readpvr<size>(vref, nil, offs) w/ offs < 1024
++shil_opc(readvptr)
++shil_recimp()
++shil_opc_end()
++
++//writevptr<size>(vref, src)
++//writevptr<size>(vref, src, offs) w/ offs < 1024
++shil_opc(writevptr)
++shil_recimp()
++shil_opc_end()
++
++
+ //Canonical impl. opcodes !
+ shil_opc(sync_sr)
+ shil_canonical