1 ### Mes --- Maxwell Equations of Software
2 ### Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
4 ### This file is part of Mes.
6 ### Mes is free software# you can redistribute it and/or modify it
7 ### under the terms of the GNU General Public License as published by
8 ### the Free Software Foundation# either version 3 of the License, or (at
9 ### your option) any later version.
11 ### Mes is distributed in the hope that it will be useful, but
12 ### WITHOUT ANY WARRANTY# without even the implied warranty of
13 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ### GNU General Public License for more details.
16 ### You should have received a copy of the GNU General Public License
17 ### along with Mes. If not, see <http://www.gnu.org/licenses/>.
20 DEFINE add____$i32,%eax 05
21 DEFINE add____$i32,%ecx 81c1
22 DEFINE add____$i32,%edx 81c2
23 DEFINE add____$i32,(%eax) 8100
24 DEFINE add____$i32,0x32(%eax) 8180
25 DEFINE add____$i32,0x32(%ebp) 8185
26 DEFINE add____$i8,%eax 83c0
27 DEFINE add____$i8,%edx 83c2
28 DEFINE add____$i8,%esp 83c4
29 DEFINE add____$i8,(%eax) 8300
30 DEFINE add____$i8,0x32 8305
31 DEFINE add____$i8,0x32(%eax) 8380
32 DEFINE add____$i8,0x32(%eax) 8380
33 DEFINE add____$i8,0x32(%ebp) 8385
34 DEFINE add____$i8,0x8(%eax) 8340
35 DEFINE add____$i8,0x8(%ebp) 8345
36 DEFINE add____%eax,%eax 01c0
37 DEFINE add____%ebp,%eax 01e8
38 DEFINE add____%edx,%eax 01d0
39 DEFINE add____%edx,%eax 01d0
40 DEFINE and____%edx,%eax 21d0
42 DEFINE call___*%eax ffd0
43 DEFINE cmp____$0x32,%eax 3d
44 DEFINE cmp____$i32,%eax 3d
45 DEFINE cmp____$i32,0x32(%ebp) 81bd
46 DEFINE cmp____$i32,0x8(%ebp) 817d
47 DEFINE cmp____$i8,%eax 83f8
48 DEFINE cmp____$i8,0x32(%ebp) 83bd
49 DEFINE cmp____$i8,0x8(%ebp) 837d
50 DEFINE cmp____%al,%dl 38c2
51 DEFINE cmp____%edx,%eax 39d0
52 DEFINE idiv___%ebx f7fb
53 DEFINE int____$0x80 cd80
63 DEFINE lea____0x32(%ebp),%eax 8d85
64 DEFINE lea____0x32(%ebp),%edx 8d95
65 DEFINE lea____0x8(%ebp),%eax 8d45
66 DEFINE lea____0x8(%ebp),%edx 8d55
68 DEFINE mov____$i32,%eax b8
69 DEFINE mov____$i32,%ebx bb
70 DEFINE mov____$i32,%ecx b9
71 DEFINE mov____$i32,%edx ba
72 DEFINE mov____$i32,(%eax) c700
73 DEFINE mov____$i32,0x32 c705
74 DEFINE mov____$i32,0x8(%eax) c740
75 DEFINE mov____$i32,0x8(%ebp) c745
76 DEFINE mov____%al,(%edx) 8802
77 DEFINE mov____%dl,(%eax) 8810
78 DEFINE mov____%dl,0x8(%eax) 8850
79 DEFINE mov____%eax,%ebx 89c3
80 DEFINE mov____%eax,%edx 89c2
81 DEFINE mov____%eax,(%ecx) 8901
82 DEFINE mov____%eax,(%edx) 8902
83 DEFINE mov____%eax,0x32 a3
84 DEFINE mov____%eax,0x32(%ebp) 8985
85 DEFINE mov____%eax,0x32(%edx) 8982
86 DEFINE mov____%eax,0x8(%ebp) 8945
87 DEFINE mov____%eax,0x8(%edx) 8942
88 DEFINE mov____%ebp,%eax 89e8
89 DEFINE mov____%ebp,%ecx 89e9
90 DEFINE mov____%ebp,%edx 89ea
91 DEFINE mov____%ecx,(%eax) 8908
92 DEFINE mov____%ecx,(%edx) 890a
93 DEFINE mov____%edx,%eax 89d0
94 DEFINE mov____%edx,%ebx 89d3
95 DEFINE mov____%edx,%ecx 89d1
96 DEFINE mov____%edx,(%eax) 8910
97 DEFINE mov____%edx,0x32(%ebp) 8995
98 DEFINE mov____%edx,0x8(%ebp) 8955
99 DEFINE mov____%esp,%ebp 89e5
100 DEFINE mov____(%eax),%eax 8b00
101 DEFINE mov____(%eax),%ecx 8b08
102 DEFINE mov____(%edx),%ecx 8b0a
103 DEFINE mov____(%edx),%edx 8b12
104 DEFINE mov____0x32(%eax),%eax 8b80
105 DEFINE mov____0x32(%ebp),%eax 8b85
106 DEFINE mov____0x32(%ebp),%eax 8b85
107 DEFINE mov____0x32(%ebp),%ebx 8b9d
108 DEFINE mov____0x32(%ebp),%ecx 8b8d
109 DEFINE mov____0x32(%ebp),%edx 8b95
110 DEFINE mov____0x32(%ebp),%edx 8b95
111 DEFINE mov____0x32,%eax a1
112 DEFINE mov____0x32,%edx 8b15
113 DEFINE mov____0x8(%eax),%eax 8b40
114 DEFINE mov____0x8(%ebp),%eax 8b45
115 DEFINE mov____0x8(%ebp),%ebx 8b5d
116 DEFINE mov____0x8(%ebp),%ecx 8b4d
117 DEFINE mov____0x8(%ebp),%edx 8b55
118 DEFINE movzbl_%al,%eax 0fb6c0
119 DEFINE movzbl_%dl,%edx 0fb6d2
120 DEFINE movzbl_(%eax),%eax 0fb600
121 DEFINE movzbl_(%eax),%edx 0fb610
122 DEFINE movzbl_(%edx),%edx 0fb612
123 DEFINE movzbl_0x8(%ebp),%eax 0fb645
124 DEFINE movzbl_0x8(%ebp),%edx 0fb655
125 DEFINE mul____%edx f7e2
127 DEFINE not____%eax f7d0
128 DEFINE or_____%edx,%eax 09d0
129 DEFINE pop____%eax 58
130 DEFINE pop____%edx 5a
131 DEFINE push___$i32 68
132 DEFINE push___%eax 50
133 DEFINE push___%ebp 55
134 DEFINE push___%edx 52
135 DEFINE push___(%eax) ff30
136 DEFINE push___0x32(%ebp) ffb5
137 DEFINE push___0x8(%ebp) ff75
140 DEFINE sete___%al 0f94c0
141 DEFINE setg___%al 0f9fc0
142 DEFINE setge__%al 0f9dc0
143 DEFINE setl___%al 0f9cc0
144 DEFINE setle__%al 0f9ec0
145 DEFINE setne__%al 0f95c0
146 DEFINE shl____$i8,%eax c1e0
147 DEFINE shl____%cl,%eax d3e0
148 DEFINE shr____%cl,%eax d3e8
149 DEFINE sub____%al,%dl 28d0
150 DEFINE sub____%dl,%al 28c2
151 DEFINE sub____%eax,%edx 29c2
152 DEFINE sub____%edx,%eax 29d0
153 DEFINE sub____%edx,%eax 29d0
154 DEFINE sub____%esp,$i32 81ec
155 DEFINE sub____%esp,$i8 83ec
156 DEFINE test___%al,%al 84c0
157 DEFINE test___%eax,%eax 85c0
158 DEFINE xchg___%eax,(%esp) 870424
159 DEFINE xor____$i32,%eax 35
160 DEFINE xor____$i8,%ah 80f4
161 DEFINE xor____%eax,%eax 31c0
162 DEFINE xor____%ebx,%ebx 31db
163 DEFINE xor____%ecx,%ecx 31c9
164 DEFINE xor____%edx,%eax 31d0
165 DEFINE xor____%edx,%edx 31d2
169 DEFINE SYS_exit 01000000
170 DEFINE SYS_read 03000000
171 DEFINE SYS_write 04000000
172 DEFINE SYS_open 05000000
173 DEFINE SYS_close 06000000
174 DEFINE SYS_unlink 0a000000
175 DEFINE SYS_lseek 13000000
176 DEFINE SYS_access 21000000
177 DEFINE SYS_brk 2d000000
178 DEFINE SYS_fsync 76000000
179 DEFINE SYS_getcwd b7000000