change memory model #1
@ -11,12 +11,12 @@ int main(int argc, char **argv){
|
|||||||
void (*op)(struct State *);
|
void (*op)(struct State *);
|
||||||
|
|
||||||
s.chart = *(argv+1);
|
s.chart = *(argv+1);
|
||||||
s.counter = 0;
|
s.counter = s.chart;
|
||||||
|
|
||||||
for(s.counter = 0; ; ++s.counter){
|
for(s.counter = s.chart; ; ++s.counter){
|
||||||
if(s.chart == (char *)0)
|
if(s.chart == (char *)0)
|
||||||
return (int)s.hand;
|
return (int)s.hand;
|
||||||
if((op = Ops_lookup(s.chart[s.counter])) == NULL)
|
if((op = Ops_lookup(*s.counter)) == NULL)
|
||||||
return 127;
|
return 127;
|
||||||
else
|
else
|
||||||
op(&s);
|
op(&s);
|
||||||
|
|||||||
@ -5,15 +5,13 @@
|
|||||||
* Adjust to architecture/system/environment/etc. */
|
* Adjust to architecture/system/environment/etc. */
|
||||||
typedef uint64_t hand_t;
|
typedef uint64_t hand_t;
|
||||||
|
|
||||||
/* Just has to be fairly big. (TODO specify) */
|
|
||||||
typedef uint64_t counter_t;
|
|
||||||
|
|
||||||
/* Holds *argv; will not change between environments. */
|
/* Holds *argv; will not change between environments. */
|
||||||
typedef char * chart_t;
|
typedef char * chart_t;
|
||||||
|
|
||||||
struct State{
|
struct State{
|
||||||
chart_t chart;
|
chart_t chart;
|
||||||
counter_t counter;
|
chart_t point;
|
||||||
|
chart_t counter;
|
||||||
hand_t hand;
|
hand_t hand;
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|||||||