added fdump and frdump for dumping the stack in the new format
This commit is contained in:
@@ -6,6 +6,7 @@ import io.sl
|
|||||||
# dump takes the firts element from the stack
|
# dump takes the firts element from the stack
|
||||||
# and prints that much consequent elements
|
# and prints that much consequent elements
|
||||||
# from the stack while not modifying it
|
# from the stack while not modifying it
|
||||||
|
# all variations have the same stack effect
|
||||||
|
|
||||||
word dump
|
word dump
|
||||||
1 swap
|
1 swap
|
||||||
@@ -17,7 +18,7 @@ word dump
|
|||||||
drop
|
drop
|
||||||
end
|
end
|
||||||
|
|
||||||
# same but for return stack
|
# dump return stack
|
||||||
word rdump
|
word rdump
|
||||||
1 swap
|
1 swap
|
||||||
for
|
for
|
||||||
@@ -28,6 +29,38 @@ word rdump
|
|||||||
drop
|
drop
|
||||||
end
|
end
|
||||||
|
|
||||||
|
word fdump
|
||||||
|
"[*, " write_buf
|
||||||
|
1 swap 1 +
|
||||||
|
while dup 3 > do
|
||||||
|
dup pick
|
||||||
|
puti
|
||||||
|
1 -
|
||||||
|
", " write_buf
|
||||||
|
end
|
||||||
|
1 - pick puti
|
||||||
|
" | " write_buf
|
||||||
|
1 - pick puti
|
||||||
|
"]\n" write_buf
|
||||||
|
end
|
||||||
|
|
||||||
|
word frdump
|
||||||
|
"[*, " write_buf
|
||||||
|
1 swap 1 -
|
||||||
|
while dup 2 > do
|
||||||
|
dup rpick
|
||||||
|
puti
|
||||||
|
1 -
|
||||||
|
", " write_buf
|
||||||
|
end
|
||||||
|
rpick puti
|
||||||
|
", " write_buf
|
||||||
|
rpick puti
|
||||||
|
" | " write_buf
|
||||||
|
rpick puti
|
||||||
|
"]\n" write_buf
|
||||||
|
end
|
||||||
|
|
||||||
#int3 [*] -> [*]
|
#int3 [*] -> [*]
|
||||||
:asm int3 {
|
:asm int3 {
|
||||||
int3
|
int3
|
||||||
|
|||||||
Reference in New Issue
Block a user