cc8cb3093a/vm/graphical/vm.c
| f35805c2c56c0dc7b89bf5c8b341f450093fa7c9 | cc8cb3093a2c3f411f5312b929e7df6e9785ba00 | ||
|---|---|---|---|
122 | vm.rsp++; | 122 | vm.rsp++; |
123 | TORS = vm.ip; | 123 | TORS = vm.ip; |
124 | vm.ip = vm.image[vm.ip] - 1; | 124 | vm.ip = vm.image[vm.ip] - 1; |
125 | if (vm.image[vm.ip+1] == 0) | 125 | if (vm.ip < 0) |
126 | { | 126 | { |
127 | vm.ip++; | 127 | vm.ip = IMAGE_SIZE; |
128 | } | 128 | } |
129 | if (vm.image[vm.ip+1] == 0) | 129 | else |
130 | { | 130 | { |
131 | vm.ip++; | 131 | if (vm.image[vm.ip+1] == 0) |
132 | vm.ip++; | ||
133 | if (vm.image[vm.ip+1] == 0) | ||
134 | vm.ip++; | ||
132 | } | 135 | } |
133 | break; | 136 | break; |
134 | 137 | ||
... | ... | ||
139 | case VM_JUMP: | 142 | case VM_JUMP: |
140 | vm.ip++; | 143 | vm.ip++; |
141 | vm.ip = vm.image[vm.ip] - 1; | 144 | vm.ip = vm.image[vm.ip] - 1; |
142 | #ifdef EXPERIMENTAL | 145 | if (vm.ip < 0) |
143 | if (vm.image[vm.ip+1] == 0) | ||
144 | { | 146 | { |
145 | vm.ip++; | 147 | vm.ip = IMAGE_SIZE; |
146 | } | 148 | } |
147 | if (vm.image[vm.ip+1] == 0) | 149 | else |
148 | { | 150 | { |
149 | vm.ip++; | 151 | if (vm.image[vm.ip+1] == 0) |
152 | vm.ip++; | ||
153 | if (vm.image[vm.ip+1] == 0) | ||
154 | vm.ip++; | ||
150 | } | 155 | } |
151 | #endif | ||
152 | break; | 156 | break; |
153 | 157 | ||
154 | /***************************************************/ | 158 | /***************************************************/ |
... | ... | ||
371 | vm.rsp++; | 375 | vm.rsp++; |
372 | TORS = vm.ip; | 376 | TORS = vm.ip; |
373 | vm.ip = vm.image[vm.ip] - 1; | 377 | vm.ip = vm.image[vm.ip] - 1; |
374 | if (vm.image[vm.ip+1] == 0) | 378 | if (vm.ip < 0) |
375 | { | 379 | { |
376 | vm.ip++; | 380 | vm.ip = IMAGE_SIZE; |
377 | } | 381 | } |
378 | if (vm.image[vm.ip+1] == 0) | 382 | else |
379 | { | 383 | { |
380 | vm.ip++; | 384 | if (vm.image[vm.ip+1] == 0) |
385 | vm.ip++; | ||
386 | if (vm.image[vm.ip+1] == 0) | ||
387 | vm.ip++; | ||
381 | } | 388 | } |
382 | break; | 389 | break; |
383 | } | 390 | } |
Download diff