Rev 7565 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7565 | Rev 7566 | ||
---|---|---|---|
Line 163... | Line 163... | ||
163 | 163 | ||
164 | void main() |
164 | void main() |
165 | { |
165 | { |
166 | dword brainFuckCode = 0; |
166 | dword brainFuckCode = 0; |
167 | word maxLoop = 1000; |
167 | word maxLoop = 1000; |
Line 168... | Line 168... | ||
168 | dword txt = "(print (input \"test:\"))"; |
168 | dword txt = "(set name (input \"Enter you name: \"))(print \"You name \" (get name))"; |
169 | 169 | ||
170 | buffer = malloc(bufferSize); |
170 | buffer = malloc(bufferSize); |
Line 176... | Line 176... | ||
176 | IF(DSBYTE[I_Param]) |
176 | IF(DSBYTE[I_Param]) |
177 | { |
177 | { |
178 | IF(io.read(I_Param)) |
178 | IF(io.read(I_Param)) |
179 | { |
179 | { |
180 | code = EAX; |
180 | code = EAX; |
181 | loop() |
- | |
182 | { |
- | |
183 | WHILE(DSBYTE[code] == ' ') code++; |
- | |
184 | IF(DSBYTE[code]!='(') BREAK; |
- | |
185 | ELSE code++; |
- | |
186 | evalLisp(); |
181 | evalLisp(); |
187 | code--; |
- | |
188 | IF(DSBYTE[code]!=')') BREAK; |
- | |
189 | ELSE code++; |
- | |
190 | } |
- | |
191 | } |
182 | } |
192 | } |
183 | } |
193 | else |
184 | else |
194 | { |
185 | { |
195 | consoleInit(); |
186 | consoleInit(); |
Line 197... | Line 188... | ||
197 | while(maxLoop) |
188 | while(maxLoop) |
198 | { |
189 | { |
199 | con_printf stdcall ("\r\n\r\nEnter code: "); |
190 | con_printf stdcall ("\r\n\r\nEnter code: "); |
200 | con_gets stdcall(buffer, bufferSize); |
191 | con_gets stdcall(buffer, bufferSize); |
201 | code = EAX; |
192 | code = EAX; |
202 | //code = txt; |
193 | code = txt; |
203 | con_printf stdcall ("Output: "); |
194 | con_printf stdcall ("Output: "); |
204 | evalLisp(); |
195 | evalLisp(); |
205 | maxLoop--; |
196 | maxLoop--; |
206 | } |
197 | } |
207 | } |
198 | } |