mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-20 18:22:07 +00:00
Fix __FILE__, __TIME__ and __DATE__
If they don't have quotes when passed to sym_AddString() they can't be used at all by the assembler. I suppose nobody actually used them, they seem to have been broken forever. Added a comment to the function to say how to use it correctly for strings. Signed-off-by: Antonio Niño Díaz <antonio_nd@outlook.com>
This commit is contained in:
@@ -346,7 +346,9 @@ fstk_Init(char *s)
|
||||
{
|
||||
char tzFileName[_MAX_PATH + 1];
|
||||
|
||||
sym_AddString("__FILE__", s);
|
||||
char tzSymFileName[_MAX_PATH + 1 + 2];
|
||||
snprintf(tzSymFileName, sizeof(tzSymFileName), "\"%s\"", s);
|
||||
sym_AddString("__FILE__", tzSymFileName);
|
||||
|
||||
strcpy(tzFileName, s);
|
||||
pFileStack = NULL;
|
||||
|
||||
@@ -495,7 +495,16 @@ sym_AddEqu(char *tzSym, SLONG value)
|
||||
}
|
||||
|
||||
/*
|
||||
* Add a string equated symbol
|
||||
* Add a string equated symbol.
|
||||
*
|
||||
* If the desired symbol is a string it needs to be passed to this function with
|
||||
* quotes inside the string, like sym_AddString("name", "\"test\"), or the
|
||||
* assembler won't be able to use it with DB and similar. This is equivalent as
|
||||
* ``` name EQUS "\"test\"" ```
|
||||
*
|
||||
* If the desired symbol is a register or a number, just the terminator quotes
|
||||
* of the string are enough: sym_AddString("M_PI", "3.1415"). This is the same
|
||||
* as ``` M_PI EQUS "3.1415" ```
|
||||
*/
|
||||
void
|
||||
sym_AddString(char *tzSym, char *tzValue)
|
||||
@@ -824,8 +833,8 @@ sym_Init(void)
|
||||
struct tm *tptr;
|
||||
|
||||
tptr = localtime(&tod);
|
||||
strftime(SavedTIME, sizeof(SavedTIME), "%H:%M:%S", tptr);
|
||||
strftime(SavedDATE, sizeof(SavedDATE), "%d %B %Y", tptr);
|
||||
strftime(SavedTIME, sizeof(SavedTIME), "\"%H:%M:%S\"", tptr);
|
||||
strftime(SavedDATE, sizeof(SavedDATE), "\"%d %B %Y\"", tptr);
|
||||
sym_AddString("__TIME__", SavedTIME);
|
||||
sym_AddString("__DATE__", SavedDATE);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user