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
61 DEFINE lea____0x32(%ebp),%eax 8d85
62 DEFINE lea____0x32(%ebp),%edx 8d95
63 DEFINE lea____0x8(%ebp),%eax 8d45
64 DEFINE lea____0x8(%ebp),%edx 8d55
66 DEFINE mov____$i32,%eax b8
67 DEFINE mov____$i32,%ebx bb
68 DEFINE mov____$i32,%ecx b9
69 DEFINE mov____$i32,%edx ba
70 DEFINE mov____$i32,(%eax) c700
71 DEFINE mov____$i32,0x32 c705
72 DEFINE mov____$i32,0x8(%eax) c740
73 DEFINE mov____$i32,0x8(%ebp) c745
74 DEFINE mov____%al,(%edx) 8802
75 DEFINE mov____%dl,(%eax) 8810
76 DEFINE mov____%dl,0x8(%eax) 8850
77 DEFINE mov____%eax,%ebx 89c3
78 DEFINE mov____%eax,%edx 89c2
79 DEFINE mov____%eax,(%ecx) 8901
80 DEFINE mov____%eax,(%edx) 8902
81 DEFINE mov____%eax,0x32 a3
82 DEFINE mov____%eax,0x32(%ebp) 8985
83 DEFINE mov____%eax,0x32(%edx) 8982
84 DEFINE mov____%eax,0x8(%ebp) 8945
85 DEFINE mov____%eax,0x8(%edx) 8942
86 DEFINE mov____%ebp,%eax 89e8
87 DEFINE mov____%ebp,%ecx 89e9
88 DEFINE mov____%ebp,%edx 89ea
89 DEFINE mov____%ecx,(%eax) 8908
90 DEFINE mov____%edx,%eax 89d0
91 DEFINE mov____%edx,%ebx 89d3
92 DEFINE mov____%edx,%ecx 89d1
93 DEFINE mov____%edx,(%eax) 8910
94 DEFINE mov____%edx,0x32(%ebp) 8995
95 DEFINE mov____%edx,0x8(%ebp) 8955
96 DEFINE mov____%esp,%ebp 89e5
97 DEFINE mov____(%eax),%eax 8b00
98 DEFINE mov____(%edx),%ecx 8b0a
99 DEFINE mov____(%edx),%edx 8b12
100 DEFINE mov____0x32(%eax),%eax 8b80
101 DEFINE mov____0x32(%ebp),%eax 8b85
102 DEFINE mov____0x32(%ebp),%eax 8b85
103 DEFINE mov____0x32(%ebp),%ebx 8b9d
104 DEFINE mov____0x32(%ebp),%ecx 8b8d
105 DEFINE mov____0x32(%ebp),%edx 8b95
106 DEFINE mov____0x32(%ebp),%edx 8b95
107 DEFINE mov____0x32,%eax a1
108 DEFINE mov____0x32,%edx 8b15
109 DEFINE mov____0x8(%eax),%eax 8b40
110 DEFINE mov____0x8(%ebp),%eax 8b45
111 DEFINE mov____0x8(%ebp),%ebx 8b5d
112 DEFINE mov____0x8(%ebp),%ecx 8b4d
113 DEFINE mov____0x8(%ebp),%edx 8b55
114 DEFINE movzbl_%al,%eax 0fb6c0
115 DEFINE movzbl_%dl,%edx 0fb6d2
116 DEFINE movzbl_(%eax),%eax 0fb600
117 DEFINE movzbl_(%eax),%edx 0fb610
118 DEFINE movzbl_(%edx),%edx 0fb612
119 DEFINE movzbl_0x8(%ebp),%eax 0fb645
120 DEFINE movzbl_0x8(%ebp),%edx 0fb655
121 DEFINE mul____%edx f7e2
123 DEFINE not____%eax f7d0
124 DEFINE or_____%edx,%eax 09d0
125 DEFINE pop____%eax 58
126 DEFINE pop____%edx 5a
127 DEFINE push___$i32 68
128 DEFINE push___%eax 50
129 DEFINE push___%ebp 55
130 DEFINE push___%edx 52
131 DEFINE push___(%eax) ff30
132 DEFINE push___0x32(%ebp) ffb5
133 DEFINE push___0x8(%ebp) ff75
136 DEFINE sete___%al 0f94c0
137 DEFINE setne__%al 0f95c0
138 DEFINE shl____$i8,%eax c1e0
139 DEFINE shl____%cl,%eax d3e0
140 DEFINE shr____%cl,%eax d3e8
141 DEFINE sub____%al,%dl 28d0
142 DEFINE sub____%dl,%al 28c2
143 DEFINE sub____%eax,%edx 29c2
144 DEFINE sub____%edx,%eax 29d0
145 DEFINE sub____%edx,%eax 29d0
146 DEFINE sub____%esp,$i32 81ec
147 DEFINE sub____%esp,$i8 83ec
148 DEFINE test___%al,%al 84c0
149 DEFINE test___%eax,%eax 85c0
150 DEFINE xchg___%eax,(%esp) 870424
151 DEFINE xor____$i32,%eax 35
152 DEFINE xor____$i8,%ah 80f4
153 DEFINE xor____%eax,%eax 31c0
154 DEFINE xor____%ebx,%ebx 31db
155 DEFINE xor____%ecx,%ecx 31c9
156 DEFINE xor____%edx,%eax 31d0
157 DEFINE xor____%edx,%edx 31d2
161 DEFINE SYS_exit 01000000
162 DEFINE SYS_read 03000000
163 DEFINE SYS_write 04000000
164 DEFINE SYS_open 05000000
165 DEFINE SYS_close 06000000
166 DEFINE SYS_unlink 0a000000
167 DEFINE SYS_lseek 13000000
168 DEFINE SYS_access 21000000
169 DEFINE SYS_brk 2d000000
170 DEFINE SYS_fsync 76000000
171 DEFINE SYS_getcwd b7000000