aboutsummaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--main.c201
1 files changed, 86 insertions, 115 deletions
diff --git a/main.c b/main.c
index e6fdef4..59bfab9 100644
--- a/main.c
+++ b/main.c
@@ -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;
}