X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Fca65%2Fmain.c;h=b029e2f0cc64b67255ec5102819d2143cf6c9f64;hb=1d458e9f33d442052a2921f0678efb4875d2e8ab;hp=1601699e20d4c45ba0ee2c31c499d91eeb8415ed;hpb=1b4039be3be867c152ddc00290f18ef4ce6469db;p=cc65 diff --git a/src/ca65/main.c b/src/ca65/main.c index 1601699e2..b029e2f0c 100644 --- a/src/ca65/main.c +++ b/src/ca65/main.c @@ -36,11 +36,12 @@ #include #include #include -#include #include /* common */ +#include "chartype.h" #include "cmdline.h" +#include "print.h" #include "target.h" #include "tgttrans.h" #include "version.h" @@ -55,6 +56,7 @@ #include "incpath.h" #include "instr.h" #include "istack.h" +#include "lineinfo.h" #include "listing.h" #include "macro.h" #include "nexttok.h" @@ -137,14 +139,14 @@ static void DefineSymbol (const char* Def) char SymName [MAX_STR_LEN+1]; /* The symbol must start with a character or underline */ - if (Def [0] != '_' && !isalpha (Def [0])) { + if (Def [0] != '_' && !IsAlpha (Def [0])) { InvDef (Def); } P = Def; /* Copy the symbol, checking the rest */ I = 0; - while (isalnum (*P) || *P == '_') { + while (IsAlNum (*P) || *P == '_') { if (I <= MAX_STR_LEN) { SymName [I++] = *P; } @@ -313,7 +315,7 @@ static void OptTarget (const char* Opt, const char* Arg) static void OptVerbose (const char* Opt, const char* Arg) /* Increase verbosity */ { - ++Verbose; + ++Verbosity; } @@ -479,6 +481,9 @@ static void CreateObjFile (void) /* Write debug symbols if requested */ WriteDbgSyms (); + /* Write line infos if requested */ + WriteLineInfo (); + /* Write an updated header and close the file */ ObjClose (); } @@ -508,7 +513,7 @@ int main (int argc, char* argv []) int I; /* Initialize the cmdline module */ - InitCmdLine (argc, argv, "ca65"); + InitCmdLine (&argc, &argv, "ca65"); /* Enter the base lexical level. We must do that here, since we may * define symbols using -D. @@ -517,10 +522,10 @@ int main (int argc, char* argv []) /* Check the parameters */ I = 1; - while (I < argc) { + while (I < ArgCount) { /* Get the argument */ - const char* Arg = argv [I]; + const char* Arg = ArgVec [I]; /* Check for an option */ if (Arg [0] == '-') { @@ -635,8 +640,11 @@ int main (int argc, char* argv []) SegCheck (); } + /* If we didn't have an errors, index the line infos */ + MakeLineInfoIndex (); + /* Dump the data */ - if (Verbose >= 2) { + if (Verbosity >= 2) { SymDump (stdout); SegDump (); }