-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCompiled.tosh
130 lines (108 loc) · 1.11 KB
/
Compiled.tosh
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
hide
INIT
MAXMIN
ANDOR
FACT7
stop all
define MAXMIN
PUSH 1
PUSH 2
MAX
.
CR
PUSH 2
PUSH 1
MAX
.
CR
PUSH 1
PUSH 2
MIN
.
CR
PUSH 2
PUSH 1
MIN
.
CR
stop this script
define ANDOR
TRUE
FALSE
AND
.
CR
TRUE
TRUE
AND
.
CR
TRUE
FALSE
OR
.
CR
FALSE
FALSE
OR
.
CR
stop this script
define FACT7
PUSH 7
FACT
.
stop this script
define FACT
DUP
PUSH 1
.EQ.
POP
if not abs of Popped = 0 then
DROP
PUSH 1
else
DUP
PUSH 1
.SUB.
FACT
.MUL.
end
stop this script
define INIT
broadcast "INIT" and wait
define PUSH (number1)
set Number to number1
broadcast "PUSH" and wait
define POP
broadcast "POP" and wait
define DROP
broadcast "rtDROP" and wait
define DUP
broadcast "rtDUP" and wait
define .EQ.
broadcast "rt=" and wait
define .ADD.
broadcast "rt+" and wait
define .SUB.
broadcast "rt-" and wait
define .MUL.
broadcast "rt*" and wait
define .DIV.
broadcast "rt/" and wait
define OR
broadcast "rtOR" and wait
define AND
broadcast "rtAND" and wait
define FALSE
PUSH 0
define TRUE
PUSH -1
define MIN
broadcast "rtMIN" and wait
define MAX
broadcast "rtMAX" and wait
define .
broadcast "rt." and wait
define CR
broadcast "rtCR" and wait