From 5f3d38cd5ef1febf2bf931112eb6a094aa357266 Mon Sep 17 00:00:00 2001
From: cancel <cancel@cancel.fm>
Date: Thu, 20 Dec 2018 03:38:47 +0900
Subject: [PATCH] Update behavior of 'L'

---
 sim.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/sim.c b/sim.c
index 15fa450..610b6c3 100644
--- a/sim.c
+++ b/sim.c
@@ -704,14 +704,10 @@ BEGIN_DUAL_PHASE_0(loop)
     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 @@ BEGIN_DUAL_PHASE_1(loop)
       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);