cdrom: change pause timing again
[pcsx_rearmed.git] / frontend / cspace_neon.S
index 56ab304..3a89fdb 100644 (file)
@@ -23,13 +23,25 @@ FUNCTION(bgr555_to_rgb565): @ dst, src, bytes
     pld         [r1]
     mov         r3, #0x07c0
     vdup.16     q15, r3
+    tst         r0, #8
+    beq         0f
+    @ align the dst
+    vld1.16     {d0}, [r1]!
+    sub         r2, r2, #8
+    vshl.u16    d0, d0, #1
+    vshl.u16    d1, d0, #10
+    vsri.u16    d1, d0, #11
+    vbit        d1, d0, d30
+    vst1.16     {d1}, [r0]!
+0:
     subs        r2, r2, #64
     blt         btr16_end64
 0:
     pld         [r1, #64*2]
     @ Pulls 15-bit BGR color values (which are actually 16 bits) into q0-q3.
     @ example:  q0 = 0111 1110 0101 0011
-    vldmia      r1!, {q0-q3}
+    vld1.16     {d0-d3}, [r1]!
+    vld1.16     {d4-d7}, [r1]!
     @ Shift BGR color 1 bit to the left, discarding MSB and preparing for vbit.
     @ MSB is used for transparency (not needed here, and can mess with green).
     @ example:  q0 = 1111 1100 1010 0110
@@ -102,7 +114,8 @@ FUNCTION(bgr555_to_rgb565_b): @ dst, src, bytes, int brightness2k // 0-0x0800
     vdup.16     q14, r3
 0:
     pld         [r1, #64*2]
-    vldmia      r1!, {q0-q3}
+    vld1.16     {d0-d3}, [r1]!
+    vld1.16     {d4-d7}, [r1]!
     vand.u16    q8,  q0, q14
     vand.u16    q9,  q1, q14
     vand.u16    q10, q2, q14
@@ -183,8 +196,8 @@ FUNCTION(bgr888_to_rgb888): @ dst, src, bytes
     umull       r12,r2, r3, r2
 0:
     pld         [r1, #48*3]
-    vld3.8      {d0-d2}, [r1, :64]!
-    vld3.8      {d3-d5}, [r1, :64]!
+    vld3.8      {d0-d2}, [r1]!
+    vld3.8      {d3-d5}, [r1]!
     vswp        d0, d2
     vswp        d3, d5
     vst3.8      {d0-d2}, [r0, :64]!
@@ -207,8 +220,8 @@ FUNCTION(bgr888_to_rgb565): @ dst, src, bytes
     vdup.16     q15, r3
 0:
     pld         [r1, #48*3]
-    vld3.8      {d1-d3}, [r1, :64]!
-    vld3.8      {d5-d7}, [r1, :64]!
+    vld3.8      {d1-d3}, [r1]!
+    vld3.8      {d5-d7}, [r1]!
 
     vshll.u8    q8, d2, #3      @ g
     vshll.u8    q9, d6, #3
@@ -259,4 +272,4 @@ FUNCTION(rgb888_to_rgb565): @ dst, src, bytes
     bx          lr
 
 
-@ vim:filetype=armasm
+@ vim:filetype=armasm:expandtab