summary refs log tree commit diff
path: root/quine.asm
diff options
context:
space:
mode:
authorIrene Knapp <ireneista@irenes.space>2026-06-06 11:17:16 -0700
committerIrene Knapp <ireneista@irenes.space>2026-06-12 03:07:53 -0700
commite7390b9f2f8da8ea0b89705ba8c25cca977a071c (patch)
tree9f7111032173d3e0f453feb698cb2516d0d78637 /quine.asm
parentd1cccb7b2096f9b4418487f1d2a605c0b157441a (diff)
first steps towards the hex transform
quite a lot is implemented, but there is quite a lot still to go. at any rate it compiles cleanly and this seemed like a good point to check things in.

Change-Id: I634bb3b2f1b10702cf63cb73c0a995983b5041f2
Force-Push: yes
Diffstat (limited to 'quine.asm')
-rw-r--r--quine.asm15
1 files changed, 10 insertions, 5 deletions
diff --git a/quine.asm b/quine.asm
index 2df2d3a..f11b435 100644
--- a/quine.asm
+++ b/quine.asm
@@ -1883,7 +1883,7 @@ _start:
   ;;;   These will be the permanent homes of these values, though we have
   ;;; copies of them elsewhere while we're still in this routine.
   ;;;
-  mov.qreg.disp32.qreg rdi, control_stack_size + 0x00, rdi    ; heap
+  mov.qreg.disp32.qreg rdi, control_stack_size + 0x00, rdi    ; log
   mov.qreg.disp32.qreg rdi, control_stack_size + 0x08, rsp    ; s0
   mov.qreg.disp32.qreg rdi, control_stack_size + 0x10, rbp    ; r0
   mov.qreg.qimm rax, final_word_name
@@ -1891,9 +1891,14 @@ _start:
   lea.qreg.disp32.qreg rax, control_stack_size + 0x28, rdi
   mov.qreg.disp32.qreg rdi, control_stack_size + 0x20, rax    ; here
   ;;;
-  ;;; * "heap" is the physical bottom of the heap
-  ;;;     The heap grows upwards in memory, so this is also the logical
+  ;;; * "log" is the physical bottom of the log
+  ;;;     The log grows upwards in memory, so this is also the logical
   ;;;   bottom. This comes from the address mmap() just returned to us.
+  ;;;     The rest of quine.asm refers to the log as the heap. It's not a
+  ;;;   heap, but it used to be called that. The self-hosted version of
+  ;;;   Evocation has the fully revised and reconciled copy of all these
+  ;;;   comments, it just felt like unnecessary tedium to do that here as
+  ;;;   well.
   ;;; * "s0" is the logical bottom of the value stack
   ;;;     The value stack grows downwards in memory, so this is the physical
   ;;;   top of it. This comes from the stack pointer the kernel initialized us
@@ -2018,7 +2023,7 @@ cold_start:
   ;;;   This is the only hardcoding we need to do; by building on top of it,
   ;;; we will soon reach a point where the rest of the system can be defined
   ;;; within itself.
-  dq early_heap, litstring, "heap", early_variable
+  dq early_heap, litstring, "log", early_variable
   dq early_s0, litstring, "s0", early_variable
   dq early_r0, litstring, "r0", early_variable
   dq early_latest, litstring, "latest", early_variable
@@ -11966,7 +11971,7 @@ defword boot_source, 0x40
 
   ;   This use of bitwise and is okay because they're both either 0 or 1.
   ; We'll have logical and real soon now, be patient... :)
-  dq ": is-in-heap dup heap @ <= swap here @ > & ;                    "
+  dq ": is-in-heap dup log @ <= swap here @ > & ;                     "
 
 ;  dq ": unlink-pre-heap-words                                         "
 ;  dq "  latest @                                                      "