shithub: orca

Download patch

ref: 5f3d38cd5ef1febf2bf931112eb6a094aa357266
parent: adfe6ba9c215ab940db2bb1465d65239e23d5432
author: cancel <cancel@cancel.fm>
date: Wed Dec 19 22:38:47 EST 2018

Update behavior of 'L'

--- a/sim.c
+++ b/sim.c
@@ -704,14 +704,10 @@
     PORT(0, -1, IN | HASTE);
   END_PORTS
   if (IS_AWAKE && DUAL_IS_ACTIVE) {
-    Usz len = index_of(PEEK(0, -1));
+    Usz len = index_of(PEEK(0, -1)) + 1;
     I32 len_data[1];
     len_data[0] = (I32)len;
     STORE(len_data);
-    if (len == 0)
-      len = 1;
-    else if (len > 16)
-      len = 16;
     if (len > width - x - 1)
       len = width - x - 1;
     Mark* m = mbuffer + y * width + x + 1;
@@ -731,9 +727,9 @@
       len = width - x - 1;
     if (len == 0)
       return;
-    if (len > 16)
-      len = 16;
-    Glyph buff[16];
+    if (len > 36)
+      len = 36;
+    Glyph buff[36];
     Glyph* gs = gbuffer + y * width + x + 1;
     Glyph hopped = *gs;
     // ORCA_MEMCPY(buff, gs + 1, len - 1);