{5,"TypeOf", 0x44,""},
{5,"Add2", 0x47,""},
{5,"Less2", 0x48,""},
-{5/*6?*/,"Less3", 0x67,""}
+{5/*6?*/,"Less3?", 0x67,""},
+{5/*6?*/,"GetMembers?", 0x55,""}
};
static int definedactions = sizeof(actions)/sizeof(struct Action);
return 1;
case 'b':
return 2;
+ case 'r':
+ return 1;
case 'p': {
U8 type = *data++;
if(type == 0) {
case '{': {
U16 num;
U16 codesize;
+ int s = 0;
int t;
printf(" %s(", data);
- while(*data++); //name
- num = (*data++); //num
- num += (*data++)*256;
+ while(data[s++]); //name
+ num = (data[s++]); //num
+ num += (data[s++])*256;
for(t=0;t<num;t++) {
printf("%s",data);
if(t<num-1)
printf(", ");
- while(*data++); //param
+ while(data[s++]); //param
}
printf(")");
- codesize = (*data++); //num
- codesize += (*data++)*256;
+ codesize = (data[s++]); //num
+ codesize += (data[s++])*256;
printf(" codesize:%d ",codesize);
printf("\n%s %s{", prefix, indent);
if(countpos>=15) {
case 'b': {
printf(" %d", data[0]+256*(signed char)data[1]);
} break;
+ case 'r': {
+ printf(" %d", data[0]);
+ } break;
case 'p': {
U8 type = *data;
unsigned char*value = data+1;