blob: c1ee096c7e0df47d20e510408c843df2268b98ab (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
~ (cat labels.e elf.e execution.e transform.e; \
~ echo 65536 read-to-buffer; \
~ cat core.e; \
~ echo pyrzqxgl; \
~ cat evoke.e) \
~ | ./quine > evoke && chmod 755 evoke && ./evoke
s" source-to-precompile" variable
1024 read-to-buffer
: foo 4 . ;
pyrzqxgl
s" source-to-heap-copy" variable
~ (output memory start, current output point
~ -- output memory start, current output point)
~ (output memory start, current output point
~ -- output memory start, current output point)
~
~ Everything directly called by all-contents has this same interface.
~
: all-contents
0x08000000 L!' origin
elf-file-header
elf-program-header
output-cold-start
source-to-heap-copy output-warm-start
output-docol
output-exit
source-to-precompile label-transform
0 L!' final-word-name
current-offset L!' total-size
0 L!' :
0 L!' ;
0 L!' ;asm
;
' all-contents entry-to-execution-token label-loop
swap sys-write bye
|