aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbootstrap.lua15
-rw-r--r--paradox.false15
2 files changed, 8 insertions, 22 deletions
diff --git a/bootstrap.lua b/bootstrap.lua
index ac6cbc4..79fb4f2 100755
--- a/bootstrap.lua
+++ b/bootstrap.lua
@@ -296,22 +296,15 @@ writebuf: resb BUFSIZ
section .text
read:
mov rax, [readbuf_cursor]
-mov rbx, [readbuf_len]
-cmp rax, rbx
+cmp rax, [readbuf_len]
jb .has
-cmp rbx, BUFSIZ
-jb .fill
-xor rbx, rbx
-mov [readbuf_len], rbx
-mov [readbuf_cursor], rbx
-.fill:
mov rax, 0
mov rdi, 0
-lea rsi, [rbx+readbuf]
+mov rsi, readbuf
mov rdx, BUFSIZ
-sub rdx, rbx
syscall
-add [readbuf_len], rax
+mov [readbuf_len], rax
+mov qword[readbuf_cursor], 0
cmp rax, 0
jne .has
mov eax, -1
diff --git a/paradox.false b/paradox.false
index 8c705d1..364d98e 100644
--- a/paradox.false
+++ b/paradox.false
@@ -504,22 +504,15 @@ writebuf: resb BUFSIZ
section .text
read:
mov rax, [readbuf_cursor]
-mov rbx, [readbuf_len]
-cmp rax, rbx
+cmp rax, [readbuf_len]
jb .has
-cmp rbx, BUFSIZ
-jb .fill
-xor rbx, rbx
-mov [readbuf_len], rbx
-mov [readbuf_cursor], rbx
-.fill:
mov rax, 0
mov rdi, 0
-lea rsi, [rbx+readbuf]
+mov rsi, readbuf
mov rdx, BUFSIZ
-sub rdx, rbx
syscall
-add [readbuf_len], rax
+mov [readbuf_len], rax
+mov qword[readbuf_cursor], 0
cmp rax, 0
jne .has
mov eax, -1