{
{"CSEG", 0},
{"GSINIT", 0},
+ {"GSINIT0", 0},
+ {"GSINIT1", 0},
+ {"GSINIT2", 0},
+ {"GSINIT3", 0},
+ {"GSINIT4", 0},
+ {"GSINIT5", 0},
{"GSFINAL", 0},
{"HOME", 0},
{"XINIT", 0},
OutputByte((unsigned char)(value/0x100));
}
-void OutputName(char * name)
+void OutputName(unsigned char * name)
{
int k;
OutputByte((unsigned char)strlen(name));
/*Content Record*/
OutputByte(0x06);/*REC TYPE*/
+ if(procedure[k].EndAdd==-1) procedure[k].EndAdd=HexSize;
recsize=procedure[k].EndAdd-procedure[k].BeginAdd+1+4;
OutputWord(recsize);/*Record Length*/
OutputByte(0x00);/*SEG ID*/
symbol[numsym].UsageType=0x00;/*A procedure name symbol*/
symbol[numsym].Procedure=-1; /*Global symbol*/
symbol[numsym].Address=-1;/*Collected later*/
+ symbol[numsym].Static=-1; // o_gloom
numsym++;
}
break;
fclose(CDBin);
}
-int hex2dec (char hex_digit)
+int hex2dec (unsigned char hex_digit)
{
- int j;
- j=toupper(hex_digit)-'0';
- if (j>9) j -= 7;
- return j;
+ if (isdigit (hex_digit))
+ return hex_digit-'0';
+ else
+ return toupper (hex_digit)-'A'+10;
}
unsigned char GetByte(char * buffer)