diff options
| author | Matthew Parlane <parlane@gmail.com> | 2009-09-21 11:10:38 +1200 |
|---|---|---|
| committer | Matthew Parlane <parlane@gmail.com> | 2009-09-21 11:10:38 +1200 |
| commit | 3af6f9431232ced52faabb1a0019ff968d9483af (patch) | |
| tree | ae44d2f51802c6bc24b24b8367d416c5f411b0ff /main.c | |
| parent | 5aa5f3d835fd5d5ab5eded056175ad2c34cfbab4 (diff) | |
| parent | 30d7029aa7e0da4f85284bb0e2a017823f53f842 (diff) | |
Merge branch 'master' of github.com:SquidMan/benzin
Diffstat (limited to 'main.c')
| -rw-r--r-- | main.c | 201 |
1 files changed, 86 insertions, 115 deletions
@@ -16,128 +16,99 @@ #include "general.h" #ifdef DEBUGMAIN -#define dbgprintf printf +#define dbgprintf printf #else -#define dbgprintf // +#define dbgprintf // #endif //DEBUGMAIN int main(int argc, char* argv[]) { - u8 type = 3; - char *ext; + u8 type = 3; + char *ext; - if (argc < 4) - { - printf("Please use ./benzin r brlytfilename.brlyt xmlytfilename.xmlyt\n"); - printf(" - OR - \n"); - printf("Please use ./benzin m xmlytfilename.xmlyt brlytfilename.brlyt\n"); - exit(1); - } - if ((strcmp(argv[1], "r") == 0) || (strcmp(argv[1], "p") == 0)) - { - ext = strrchr(argv[2], '.'); - } else if ((strcmp(argv[1], "m") == 0) || (strcmp(argv[1], "w") == 0)) - { - if(argc < 4) - { - printf("Arguments not setup correctly\n"); - printf("Please type ./benzin to get possible arguments\n"); - exit(1); - } - ext = strrchr(argv[3], '.'); - } else { - printf("Please use ./benzin r brlytfilename.brlyt\n"); - printf(" - OR - \n"); - printf("Please use ./benzin m xmlytfilename.xmlyt brlytfilename.brlyt\n"); - exit(1); - } - if(!ext) - { - printf("No extension on file\n"); - printf("To see possible arguments type ./benzin\n"); - exit(1); - } - else - { - char* temp = ext; - if(strcmp(++ext, "brlyt") == 0) - { - type = 1; - } - ext = temp; - if(strcmp(++ext, "brlan") == 0) - { - type = 2; - } - if(type > 2) - { - printf("Unknown file extension\n"); - exit(1); - } - } + if (argc < 4) + { + printf("Please use ./benzin r brlytfilename.brlyt xmlytfilename.xmlyt\n"); + printf(" - OR - \n"); + printf("Please use ./benzin m xmlytfilename.xmlyt brlytfilename.brlyt\n"); + exit(1); + } - int brlanargread; - int brlytargread; - int brlanargmake; - int brlytargmake; - int brlanargdestmake; - int brlytargdestmake; - int reqargs; - int currentarg = 2; - char helpstrmake[256]; - char helpstrread[256]; - sprintf(helpstrmake, "%s m", argv[0]); - sprintf(helpstrread, "%s r", argv[0]); -if(type == 2) -{ - brlanargread = currentarg; - strcat(helpstrread, " <*.brlan>"); - brlanargmake = currentarg++; - strcat(helpstrmake, " <*.xmlan>"); -} -if(type == 1) -{ - brlytargread = currentarg; - strcat(helpstrread, " <*.brlyt>"); - brlytargmake = currentarg++; - strcat(helpstrmake, " <*.xmlyt>"); -} - reqargs = currentarg; -if(type == 2) -{ - brlanargdestmake = currentarg++; - strcat(helpstrmake, " <out.brlan>"); -} -if(type == 1) -{ - brlytargdestmake = currentarg++; - strcat(helpstrmake, " <out.brlyt>"); -} + if ((strcmp(argv[1], "r") == 0) || (strcmp(argv[1], "p") == 0) || (strcmp(argv[1], "m") == 0) || (strcmp(argv[1], "w") == 0)) + { + ext = strrchr(argv[2], '.'); + } else { + printf("Please use ./benzin r brlytfilename.brlyt xmlytfilename.xmlyt\n"); + printf(" - OR - \n"); + printf("Please use ./benzin m xmlytfilename.xmlyt brlytfilename.brlyt\n"); + exit(1); + } - printf(INFORMATION_TEXT); - if(argc < reqargs) { - printf("Invalid arguments. Use like:\n\t%s\n\t\tor:\n\t%s\n", helpstrread, helpstrmake); - exit(1); - } - if((argv[1][0] == 'r') || (argv[1][0] == 'p')) { -if(type == 2) -{ - parse_brlan(argv[brlanargread], argv[3]); -} -if(type == 1) -{ - parse_brlyt(argv[brlytargread], argv[3]); -} - }else if((argv[1][0] == 'm') || (argv[1][0] == 'w')) { -if(type == 2) -{ - make_brlan(argv[brlanargmake], argv[brlanargdestmake]); -} -if(type == 1) -{ - make_brlyt(argv[brlytargmake], argv[brlytargdestmake]); -} - } - return 0; + if(!ext) + { + printf("No extension on file\n"); + printf("To see possible arguments type ./benzin\n"); + exit(1); + } else { + char* temp = ext; + if(strcmp(++ext, "brlyt") == 0) + { + type = 1; + } + ext = temp; + if(strcmp(++ext, "brlan") == 0) + { + type = 2; + } + if(type > 2) + { + printf("Unknown file extension\n"); + exit(1); + } + } + + int brlanargread; + int brlytargread; + int brlanargmake; + int brlytargmake; + int brlanargdestmake; + int brlytargdestmake; + int brlanargdestread; + int brlytargdestread; + int currentarg = 2; + + if(type == 1) + { + brlytargread = currentarg; + brlytargmake = currentarg++; + brlytargdestread = currentarg; + brlytargdestmake = currentarg++; + } + if(type == 2) + { + brlanargread = currentarg; + brlanargmake = currentarg++; + brlanargdestread = currentarg; + brlanargdestmake = currentarg++; + } + + printf(INFORMATION_TEXT); + + if((argv[1][0] == 'r') || (argv[1][0] == 'p')) { + if(type == 1) + parse_brlyt(argv[brlytargread], argv[brlytargdestread]); + + if(type == 2) + parse_brlan(argv[brlanargread], argv[brlanargdestread]); + + } else if( (argv[1][0] == 'm') || (argv[1][0] == 'w') ) { + if(type == 1) + make_brlyt(argv[brlytargmake], argv[brlytargdestmake]); + + if(type == 2) + make_brlan(argv[brlanargmake], argv[brlanargdestmake]); + + } + return 0; } |
