diff -Nru base0106u10/src/info.c w0106u10/src/info.c --- base0106u10/src/info.c 2006-07-08 13:02:59.000000000 +1200 +++ w0106u10/src/info.c 2006-07-24 14:23:21.000000000 +1200 @@ -85,6 +85,7 @@ static void print_game_switch(FILE* out, const game_driver* game) { const input_port_entry* input; + int port = -1; begin_resource_tracking(); @@ -92,6 +93,9 @@ while (input->type != IPT_END) { + if(input->start.tag != NULL) + port++; + if (input->type==IPT_DIPSWITCH_NAME) { int def = input->default_value; @@ -99,6 +103,8 @@ fprintf(out, "\t\tname)); + fprintf(out, " mask=\"%i\"", input->mask); + fprintf(out, " port=\"%i\"", port); ++input; fprintf(out, ">\n"); @@ -107,6 +113,7 @@ { fprintf(out, "\t\t\tname)); + fprintf(out, " value=\"%i\"", input->default_value); if (def == input->default_value) fprintf(out, " default=\"yes\"");