" -i[path] Directory to search for include files\n"
" -l[filename] Create an output listing file\n"
" -l*[filename] Create an output listing file without pagination\n"
+ " -m[cpu] Select default CPU. Available options:\n"
+ " 68000\n"
+ " 68020\n"
+ " 68030\n"
+ " 68040\n"
+ " 68060\n"
+ " 6502\n"
+ " tom\n"
+ " jerry\n"
" -n Don't do things behind your back in RISC assembler\n"
" -o file Output file name\n"
" +o[value] Turn a specific optimisation on\n"
" o3: Outer displacement 0(an) to (an) (off)\n"
" o4: lea size(An),An to addq #size,An (off)\n"
" o5: Absolute long base displacement to word (off)\n"
+ " o6: Null branches to NOP (off)\n"
+ " o7: clr.l Dx to moveq #0,Dx (off)\n"
" ~o[value] Turn a specific optimisation off\n"
" +oall Turn all optimisations on\n"
" ~oall Turn all optimisations off\n"
}
sy->sattr = DEFINED | EQUATED | ABS;
- sy->svalue = (*s ? (VALUE)atoi(s) : 0);
+ sy->svalue = (*s ? (uint32_t)atoi(s) : 0);
break;
case 'e': // Redirect error message output
case 'E':
list_flag = 1;
lnsave++;
break;
+ case 'm':
+ case 'M':
+ if (strcmp(argv[argno] + 2, "68000") == 0)
+ d_68000();
+ else if (strcmp(argv[argno] + 2, "68020") == 0)
+ d_68020();
+ else if (strcmp(argv[argno] + 2, "68030") == 0)
+ d_68030();
+ else if (strcmp(argv[argno] + 2, "68040") == 0)
+ d_68040();
+ else if (strcmp(argv[argno] + 2, "68060") == 0)
+ d_68060();
+ else if (strcmp(argv[argno] + 2, "68881") == 0)
+ d_68881();
+ else if (strcmp(argv[argno] + 2, "68882") == 0)
+ d_68882();
+ else if (strcmp(argv[argno] + 2, "56001") == 0)
+ d_56001();
+ else if (strcmp(argv[argno] + 2, "6502") == 0)
+ d_6502();
+ else if (strcmp(argv[argno] + 2, "tom") == 0)
+ d_gpu();
+ else if (strcmp(argv[argno] + 2, "jerry") == 0)
+ d_dsp();
+ else
+ {
+ printf("Unrecognized CPU '%s'\n", argv[argno] + 2);
+ errcnt++;
+ return errcnt;
+ }
+ break;
case 'o': // Direct object file output
case 'O':
if (argv[argno][2] != EOS)