mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-20 10:12:06 +00:00
@@ -42,7 +42,7 @@ void fstk_Dump(void);
|
||||
void fstk_AddIncludePath(char *s);
|
||||
uint32_t fstk_RunMacro(char *s);
|
||||
void fstk_RunRept(uint32_t count);
|
||||
FILE *fstk_FindFile(char *fname);
|
||||
FILE *fstk_FindFile(char *fname, char **incPathUsed);
|
||||
int32_t fstk_GetLine(void);
|
||||
|
||||
#endif /* RGBDS_ASM_FSTACK_H */
|
||||
|
||||
@@ -234,7 +234,7 @@ void fstk_AddIncludePath(char *s)
|
||||
fatalerror("Include path too long '%s'", s);
|
||||
}
|
||||
|
||||
FILE *fstk_FindFile(char *fname)
|
||||
FILE *fstk_FindFile(char *fname, char **incPathUsed)
|
||||
{
|
||||
char path[_MAX_PATH];
|
||||
int32_t i;
|
||||
@@ -275,6 +275,8 @@ FILE *fstk_FindFile(char *fname)
|
||||
fprintf(dependfile, "%s: %s\n", tzObjectname,
|
||||
path);
|
||||
}
|
||||
if (incPathUsed)
|
||||
*incPathUsed = IncludePaths[i];
|
||||
return f;
|
||||
}
|
||||
}
|
||||
@@ -288,7 +290,8 @@ FILE *fstk_FindFile(char *fname)
|
||||
*/
|
||||
void fstk_RunInclude(char *tzFileName)
|
||||
{
|
||||
FILE *f = fstk_FindFile(tzFileName);
|
||||
char *incPathUsed = "";
|
||||
FILE *f = fstk_FindFile(tzFileName, &incPathUsed);
|
||||
|
||||
if (f == NULL)
|
||||
err(1, "Unable to open included file '%s'", tzFileName);
|
||||
@@ -296,7 +299,8 @@ void fstk_RunInclude(char *tzFileName)
|
||||
pushcontext();
|
||||
nLineNo = 1;
|
||||
nCurrentStatus = STAT_isInclude;
|
||||
strcpy(tzCurrentFileName, tzFileName);
|
||||
snprintf(tzCurrentFileName, sizeof(tzCurrentFileName), "%s%s",
|
||||
incPathUsed, tzFileName);
|
||||
pCurrentFile = f;
|
||||
CurrentFlexHandle = yy_create_buffer(pCurrentFile);
|
||||
yy_switch_to_buffer(CurrentFlexHandle);
|
||||
|
||||
@@ -902,7 +902,7 @@ void out_BinaryFile(char *s)
|
||||
{
|
||||
FILE *f;
|
||||
|
||||
f = fstk_FindFile(s);
|
||||
f = fstk_FindFile(s, NULL);
|
||||
if (f == NULL)
|
||||
err(1, "Unable to open incbin file '%s'", s);
|
||||
|
||||
@@ -938,7 +938,7 @@ void out_BinaryFileSlice(char *s, int32_t start_pos, int32_t length)
|
||||
if (length < 0)
|
||||
fatalerror("Number of bytes to read must be greater than zero");
|
||||
|
||||
f = fstk_FindFile(s);
|
||||
f = fstk_FindFile(s, NULL);
|
||||
if (f == NULL)
|
||||
err(1, "Unable to open included file '%s'", s);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user