mirror of
https://github.com/cc65/cc65.git
synced 2025-02-27 14:29:52 +00:00
New option --list-conversions.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5591 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
c44c7d9f97
commit
44c70d01cb
@ -107,3 +107,12 @@ StrBuf* ConvertTo (const Bitmap* B, const Collection* A)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void ListConversionTargets (FILE* F)
|
||||||
|
/* Output a list of conversion targets */
|
||||||
|
{
|
||||||
|
unsigned I;
|
||||||
|
for (I = 0; I < sizeof (ConverterMap) / sizeof (ConverterMap[0]); ++I) {
|
||||||
|
fprintf (F, " %s\n", ConverterMap[I].Format);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -38,6 +38,8 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
/* common */
|
/* common */
|
||||||
#include "coll.h"
|
#include "coll.h"
|
||||||
#include "strbuf.h"
|
#include "strbuf.h"
|
||||||
@ -60,6 +62,9 @@ StrBuf* ConvertTo (const Bitmap* B, const Collection* A);
|
|||||||
* in the attribute collection A.
|
* in the attribute collection A.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
void ListConversionTargets (FILE* F);
|
||||||
|
/* Output a list of conversion targets */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* End of convert.h */
|
/* End of convert.h */
|
||||||
|
@ -85,6 +85,7 @@ static void Usage (void)
|
|||||||
" -V\t\t\t\tPrint the version number and exit\n"
|
" -V\t\t\t\tPrint the version number and exit\n"
|
||||||
" -c fmt[,attrlist]\t\tConvert into target format\n"
|
" -c fmt[,attrlist]\t\tConvert into target format\n"
|
||||||
" -h\t\t\t\tHelp (this text)\n"
|
" -h\t\t\t\tHelp (this text)\n"
|
||||||
|
" -lc\t\t\t\tList all possible conversions\n"
|
||||||
" -r file[,attrlist]\t\tRead an input file\n"
|
" -r file[,attrlist]\t\tRead an input file\n"
|
||||||
" -v\t\t\t\tIncrease verbosity\n"
|
" -v\t\t\t\tIncrease verbosity\n"
|
||||||
" -w file[,attrlist]\t\tWrite the output to a file\n"
|
" -w file[,attrlist]\t\tWrite the output to a file\n"
|
||||||
@ -92,6 +93,7 @@ static void Usage (void)
|
|||||||
"Long options:\n"
|
"Long options:\n"
|
||||||
" --convert-to fmt[,attrlist]\tConvert into target format\n"
|
" --convert-to fmt[,attrlist]\tConvert into target format\n"
|
||||||
" --help\t\t\tHelp (this text)\n"
|
" --help\t\t\tHelp (this text)\n"
|
||||||
|
" --list-conversions\t\tList all possible conversions\n"
|
||||||
" --pop\t\t\t\tRestore the original loaded image\n"
|
" --pop\t\t\t\tRestore the original loaded image\n"
|
||||||
" --read file[,attrlist]\tRead an input file\n"
|
" --read file[,attrlist]\tRead an input file\n"
|
||||||
" --slice x,y,w,h\t\tGenerate a slice from the loaded bitmap\n"
|
" --slice x,y,w,h\t\tGenerate a slice from the loaded bitmap\n"
|
||||||
@ -169,6 +171,16 @@ static void OptHelp (const char* Opt attribute ((unused)),
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static void OptListConversions (const char* Opt attribute ((unused)),
|
||||||
|
const char* Arg attribute ((unused)))
|
||||||
|
/* Print a list of all conversions */
|
||||||
|
{
|
||||||
|
ListConversionTargets (stdout);
|
||||||
|
exit (EXIT_SUCCESS);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static void OptPop (const char* Opt attribute ((unused)),
|
static void OptPop (const char* Opt attribute ((unused)),
|
||||||
const char* Arg attribute ((unused)))
|
const char* Arg attribute ((unused)))
|
||||||
/* Restore the original image */
|
/* Restore the original image */
|
||||||
@ -299,6 +311,7 @@ int main (int argc, char* argv [])
|
|||||||
static const LongOpt OptTab[] = {
|
static const LongOpt OptTab[] = {
|
||||||
{ "--convert-to", 1, OptConvertTo },
|
{ "--convert-to", 1, OptConvertTo },
|
||||||
{ "--help", 0, OptHelp },
|
{ "--help", 0, OptHelp },
|
||||||
|
{ "--list-conversions", 0, OptListConversions },
|
||||||
{ "--pop", 0, OptPop },
|
{ "--pop", 0, OptPop },
|
||||||
{ "--read", 1, OptRead },
|
{ "--read", 1, OptRead },
|
||||||
{ "--slice", 1, OptSlice },
|
{ "--slice", 1, OptSlice },
|
||||||
@ -320,8 +333,8 @@ int main (int argc, char* argv [])
|
|||||||
const char* Arg = ArgVec[I];
|
const char* Arg = ArgVec[I];
|
||||||
|
|
||||||
/* Check for an option */
|
/* Check for an option */
|
||||||
if (Arg [0] == '-') {
|
if (Arg[0] == '-') {
|
||||||
switch (Arg [1]) {
|
switch (Arg[1]) {
|
||||||
|
|
||||||
case '-':
|
case '-':
|
||||||
LongOption (&I, OptTab, sizeof(OptTab)/sizeof(OptTab[0]));
|
LongOption (&I, OptTab, sizeof(OptTab)/sizeof(OptTab[0]));
|
||||||
@ -339,6 +352,14 @@ int main (int argc, char* argv [])
|
|||||||
OptHelp (Arg, 0);
|
OptHelp (Arg, 0);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'l':
|
||||||
|
if (Arg[2] == 'c') {
|
||||||
|
OptListConversions (Arg, 0);
|
||||||
|
} else {
|
||||||
|
UnknownOption (Arg);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case 'r':
|
case 'r':
|
||||||
OptRead (Arg, GetArg (&I, 2));
|
OptRead (Arg, GetArg (&I, 2));
|
||||||
break;
|
break;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user