Skip to content

Activate analysis for ZAPF-files

Added function definition for configure_zapf_parse_tables and see (Russottos's repository for unmodified code):

//#error /* TODO -- write the K&R definition or remove K&R completely */
void configure_zapf_parse_tables(verb_count,
				action_count,
				parse_count,
				parser_type,
				prep_type,
				verb_table_base,
				verb_table_end,
				verb_data_base,
				verb_data_end,
				action_table_base,
				action_table_end,
				preact_table_base,
				preact_table_end,
				prep_table_base,
				prep_table_end)
unsigned int* verb_count;
unsigned int* action_count;
unsigned int* parse_count;
unsigned int* parser_type;
unsigned int* prep_type;
unsigned long* verb_table_base;
unsigned long* verb_table_end;
unsigned long* verb_data_base;
unsigned long* verb_data_end;
unsigned long* action_table_base;
unsigned long* action_table_end;
unsigned long* preact_table_base;
unsigned long* preact_table_end;
unsigned long* prep_table_base;
unsigned long* prep_table_end;
#endif

and modified configure_inform_tables in infinfo.c to not identify a zapf-file as compiled with Inform.

	header.serial[4] >= '0' && header.serial[4] <= '3' &&
	header.serial[5] >= '0' && header.serial[5] <= '9' &&
	header.serial[0] != '8') {
	if (header.name[4] >= '6') {
	if (header.name[4] >= '6' && header.name[4] <= '9') {		// 7.4 Exclude ZAPF and Dialog. /HÅS 
	    *inform_version = (header.name[4] - '0') * 100 +
			      (header.name[6] - '0') * 10 +
			      (header.name[7] - '0');
@@ -70,7 +70,8 @@ unsigned long *attr_names_end;
		*attr_names_end = address - 1;
		/* then come the action names, the individual property values, the dynamic arrays, etc */
	    }
	}
	} else
	*inform_version = 0;										// 7.4 Force ZAPF and Dialog to 0. /HÅS
    } else
	*inform_version = 0;
    tx_printf ("Inform Version: %d\n", *inform_version);