From a6e2609e4e587e2846523acbcce99ccd232eeca6 Mon Sep 17 00:00:00 2001 From: Irene Knapp Date: Mon, 13 Apr 2026 15:14:27 -0700 Subject: add some sed scripts to make the output easier to examine these separate out the data and heap segments; the one for the data segment also replaces all the flatassembler names with Forth names. the output of these scripts looks very clean when passed through diff, showing only important differences Force-Push: yes Change-Id: I868ca9817fa41d2c503a8480ae6ceb44c9e10df7 --- describe-data.sed | 45 +++++++++++++++++++++++++++++++++++++++++++++ describe-heap.sed | 11 +++++++++++ 2 files changed, 56 insertions(+) create mode 100644 describe-data.sed create mode 100644 describe-heap.sed diff --git a/describe-data.sed b/describe-data.sed new file mode 100644 index 0000000..4f13e88 --- /dev/null +++ b/describe-data.sed @@ -0,0 +1,45 @@ +# ./quine | sed -f describe-data.sed > data.txt + +:start +/0000000008/!d +/^0000000008/bmain +bstart + +:main +n + +s/_/-/g +s/\/3roll/g +s/\/3unroll/g +s/\/2dup/g +s/\/0branch/g +s/\/=/g +s/\/!=/g +s/\/>/g +s/\//>=/g +s/\/<=/g +s/\([^a-z]\)-unsigned\>/\1unsigned/g +s/\\([^-]\)/\/%\1/g +s/\\([^-]\)/*\1/g +s/\\([^-]\)/-\1/g +s/\\([^-]\)/+\1/g +s/\<\([er][acdb]x\)\>/:\1/g +s/\<\([er]\?\([sb]p\|[sd]i\)\)\>/:\1/g +s/\<\([acdb][lhx]\)\>/:\1/g +s/\<\(r[89]\|r1[0-5]\)\>/:\1/g +s/\([^-]\)\/\1@/g +s/\/\1!/g +s/\/+!/g +s/\/-!/g +s/\/value@/g +s/\/value!/g +s/\/control@/g +s/\/control!/g +s/\/@/g +s/\/!/g + +bmain + diff --git a/describe-heap.sed b/describe-heap.sed new file mode 100644 index 0000000..f21781b --- /dev/null +++ b/describe-heap.sed @@ -0,0 +1,11 @@ +# ./quine | sed -f describe-heap.sed > heap.txt + +:main +/^0000000008/bdrop +n +bmain + +:drop +s/.*// +N +bdrop -- cgit 1.4.1