From f7ef63a0355d976dc3d7c5823da5b416243a8349 Mon Sep 17 00:00:00 2001 From: Irene Knapp Date: Sat, 19 Sep 2026 18:11:24 -0700 Subject: every byte in the hex output is now attributed wow!!!! Force-Push: yes Change-Id: I2b46837b5ff37b4339a9a4ba0ae52903854d5e99 --- execution.e | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) (limited to 'execution.e') diff --git a/execution.e b/execution.e index 649784c..3800e16 100644 --- a/execution.e +++ b/execution.e @@ -248,7 +248,6 @@ ~ : the Forth execution environment, then invoking the warm-start routine, ~ : which is defined below. ~ : blank-line - ~ : blank-line ~ : indent current-offset L' cold-start set-label @@ -446,7 +445,6 @@ ~ : occurs after the warm-start routine in the executable, which means these ~ : are forward references to words defined far below. ~ : blank-line - ~ : blank-line ~ : indent ~ While it's not actually a requirement that codeword pointers be @@ -510,29 +508,44 @@ ~ within itself. L@' log-load-log offset-to-target-address-space pack64 + ~ : -8 log-load-log (codeword pointer) L@' litstring offset-to-target-address-space pack64 + ~ : -8 litstring (codeword pointer) s" log" packstring 8 packalign L@' log-load-variable offset-to-target-address-space pack64 + ~ : -8 log-load-variable (codeword pointer) L@' log-load-s0 offset-to-target-address-space pack64 + ~ : -8 log-load-s0 (codeword pointer) L@' litstring offset-to-target-address-space pack64 + ~ : -8 litstring (codeword pointer) s" s0" packstring 8 packalign L@' log-load-variable offset-to-target-address-space pack64 + ~ : -8 log-load-variable (codeword pointer) L@' log-load-r0 offset-to-target-address-space pack64 + ~ : -8 log-load-r0 (codeword pointer) L@' litstring offset-to-target-address-space pack64 + ~ : -8 litstring (codeword pointer) s" r0" packstring 8 packalign L@' log-load-variable offset-to-target-address-space pack64 + ~ : -8 log-load-variable (codeword pointer) L@' log-load-latest offset-to-target-address-space pack64 + ~ : -8 log-load-latest (codeword pointer) L@' litstring offset-to-target-address-space pack64 + ~ : -8 litstring (codeword pointer) s" latest" packstring 8 packalign L@' log-load-variable offset-to-target-address-space pack64 + ~ : -8 log-load-variable (codeword pointer) L@' log-load-here offset-to-target-address-space pack64 + ~ : -8 log-load-here (codeword pointer) L@' litstring offset-to-target-address-space pack64 + ~ : -8 litstring (codeword pointer) s" here" packstring 8 packalign L@' log-load-variable offset-to-target-address-space pack64 + ~ : -8 log-load-variable (codeword pointer) ~ Having done that, nothing else needs to be defined in an unusual way, so ~ we can go ahead and dispatch to the log-load transform, and do the rest of @@ -555,12 +568,17 @@ ~ The next layer is built now, so let's move on to it. L@' litstring offset-to-target-address-space pack64 + ~ : -8 litstring (codeword pointer) s" quit" packstring 8 packalign L@' log-load-find-execution-token offset-to-target-address-space pack64 + ~ : -8 log-load-find-execution-token (codeword pointer) L@' swap offset-to-target-address-space pack64 - ~ Get rid of that heap pointer on the stack, we're finally done with it! + ~ : -8 swap (codewored pointer) + ~ : Get rid of that heap pointer on the stack, we're finally done with it! L@' drop offset-to-target-address-space pack64 + ~ : -8 drop (codeword pointer) L@' execute offset-to-target-address-space pack64 + ~ : -8 execute (codeword pointer) ~ : deindent ; -- cgit 1.4.1