diff --git a/Oric-DFLAT/emulator/dftxt2tap b/Oric-DFLAT/emulator/dftxt2tap index c93ddc3..5e9ca4e 100755 Binary files a/Oric-DFLAT/emulator/dftxt2tap and b/Oric-DFLAT/emulator/dftxt2tap differ diff --git a/Oric-DFLAT/emulator/util/dftxt2tap/dftxt2tap/dftxt2tap.cpp b/Oric-DFLAT/emulator/util/dftxt2tap/dftxt2tap/dftxt2tap.cpp index dee71c9..4912842 100644 --- a/Oric-DFLAT/emulator/util/dftxt2tap/dftxt2tap/dftxt2tap.cpp +++ b/Oric-DFLAT/emulator/util/dftxt2tap/dftxt2tap/dftxt2tap.cpp @@ -8,6 +8,7 @@ #if defined(__linux__) || defined(__APPLE__) #include #include +#define pathchr '/' #define strcpy_s strcpy #define strcat_s strcat #define errno_t int @@ -47,6 +48,8 @@ char* _itoa_s(int value, char* str, int radix) { c = *p, *p = *q, *q = c; return str; } +#else +#define pathchr '\\' #endif FILE *in, *out; @@ -74,8 +77,8 @@ int init(int argc, char *argv[]) } /* Get filename portion of destination, must be <16 chars */ - for (i = strlen(argv[argc-1]); (i > 1) && (argv[argc-1][i] != '\\'); i--); - if (argv[argc-1][i] == '\\') i++; + for (i = strlen(argv[argc-1]); (i > 1) && (argv[argc-1][i] != pathchr); i--); + if (argv[argc-1][i] == pathchr) i++; strcpy_s(fname, &argv[argc-1][i]); if (strlen(fname) > 15) { printf("Destination filename too long.\n"); @@ -99,11 +102,16 @@ void gettxtline() char lineStr[10]; char temp[250]; - do { + while (i 0) line[i++] = 0x0d; line[i] = 0; if ((i > 1) && (lineNo!=0)) { if (atoi(line) == 0) {