X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=rln.c;h=e451f4518e0916c2027d9611d994453eb1fbe10e;hb=a839b5e1b42ccc20bc7a0960c79c6916415adffb;hp=23b2fea77f8df642a65f53f03cb118a47c32f0c8;hpb=bd10a921a726ffb950afede504b6ff79df813d16;p=rln diff --git a/rln.c b/rln.c index 23b2fea..e451f45 100644 --- a/rln.c +++ b/rln.c @@ -1,6 +1,6 @@ // -// RLN - Reboot's Linker for the Atari Jaguar console system -// Copyright (C) 199x, Allan K. Pratt, 2014-2018 Reboot & Friends +// RLN - Renamed Linker for the Atari Jaguar console system +// Copyright (C) 199x, Allan K. Pratt, 2014-2021 Reboot & Friends // #include "rln.h" @@ -2851,6 +2851,10 @@ int doargs(int argc, char * argv[]) case 'e': case 'E': // Output COFF (absolute only) cflag = 1; + + if (noheaderflag) + printf("Warning: -e overridden by -n, output will be headerless\n"); + break; case 'g': case 'G': // Output source level debugging @@ -2909,6 +2913,9 @@ int doargs(int argc, char * argv[]) if (noheaderflag) warn('n', 1); + if (cflag) + printf("Warning: -e overridden by -n, output will be headerless\n"); + noheaderflag = 1; break; case 'o': @@ -2977,6 +2984,22 @@ int doargs(int argc, char * argv[]) wflag = 1; break; + case 'y': + case 'Y': + if (i >= argc) + { + printf("No directory filename following -y switch\n"); + return 1; + } + + if (strlen(argv[i]) > FARGSIZE * 3) + { + printf("Directory file name too long (sorry!)\n"); + return 1; + } + + strcpy(libdir, argv[i++]); + break; case 'z': case 'Z': // Suppress banner flag if (zflag) @@ -3027,8 +3050,8 @@ void ShowVersion(void) "| '__| | '_ \\\n" "| | | | | | |\n" "|_| |_|_| |_|\n" - "\nReboot's Linker for Atari Jaguar\n" - "Copyright (c) 199x Allan K. Pratt, 2014-2018 Reboot\n" + "\nRenamed Linker for Atari Jaguar\n" + "Copyright (c) 199x Allan K. Pratt, 2014-2021 Reboot & Friends\n" "V%i.%i.%i %s (%s)\n\n", MAJOR, MINOR, PATCH, __DATE__, PLATFORM); } } @@ -3044,7 +3067,7 @@ void ShowHelp(void) printf("\n"); printf("Options:\n"); printf(" -? or -h display usage information\n"); - printf(" -a output absolute file\n"); + printf(" -a output absolute file (default: ABS)\n"); printf(" hex value: segment address\n"); printf(" r: relocatable segment\n"); printf(" x: contiguous segment\n"); @@ -3057,7 +3080,7 @@ void ShowHelp(void) printf(" -ii