Où en est son développement ?
la source décompilée de db92 ne se compile pas avec la 2.71.F3 (plantage), mais elle passe avec la 2.71.F2.
Est-ce normal qu'a68k coupe les lignes sans aucun message d'erreur ?
Version 2.71.F3c (Kevin Kofler, July 20, 2001)
Applied a few patches submitted by Paul Froissart:
* A few more adaptations for compiling with Microsoft
Visual C++. (Note that I still recommend using GCC for
Mingw32.)
* A new command line switch:
-v Allows to set a variable in the command line (like
-d with GCC). The variable will be a SET, not EQU
variable. Syntax: "-v<name>[,<value>]" (without
spaces, and without the quotes). Note that <value>
can only be a NUMBER at the moment. (We might
support symbols as values in a future version.)
The default value of <value> is 1.
* Improved the optimization:
- made optional the optimization which changes MOVEM
with a single register to MOVE
- added an optional optimization which changes ADD(A)
and SUB(A) to LEA when applicable
- added an optional optimization which changes LEA to
ADDQ or SUBQ when applicable
- added a command line switch which allows you to
selectively disable some optimizations:
-r Allows to disable specific optimizations:
-rm Disable the MOVEM -> MOVE optimization
-ra Disable the ADD(A)/SUB(A) -> LEA optimization
-rl Disable the LEA -> ADDQ/SUBQ optimization
You might use more than one -r switch (as in
"-rm -ra") or combine them into a single switch
(as in "-rma").
You can still use -n to disable ALL optimizations
(even those not covered by -r).
* Added 2 more synonyms:
SLO = SCS
SHS = SCC
* The END directive is now optional. If you do not use
it, the assembly will automatically end at the end of
your source file.
Also fixed a bug found by Paul Froissart involving the
reporting of invalid flags with the SECTION directive.
(Not that anyone would use those flags anyway.)
Adapted and applied a very old patch by John Antonishek,
which allows you to define a symbol as XDEF even if it
has been declared as XREF before. This is especially
use when using a common include file for globals.
Moreover, END is not allowed in macros or include files
anymore since that was causing a few bugs because A68k
simply did not expect anyone to use it there. The
quickest remedy is to simply remove the END instruction,
since it is now optional anyway.
Version 2.71.F3b (Kevin Kofler, July 12, 2001)
Bugfix: Now raises an error if an undefined local label is
used.
Bugfix: Branches coded with an explicit length (.W or .L)
are not optimized (or flagged as optimizable)
anymore.
(In previous versions, .B or .S was not optimized,
but .W or .L could be optimized to a short branch.
Now, only branches without an explicit length will
be optimized.)
Bugfix: Quoted strings can now be passed as macro
arguments without the need for '<' and '>', even
if they contain spaces or separators (',' or ';').
You can still use '<' and '>', for example in
order to pass strings like <129,' version'> (which
will appear as "ß version" on a TI-89/92/92+).
Version 2.71.F3a (Kevin Kofler, July 9, 2001)
Win32 port for the TIGCC project, compiled with GCC for
Mingw32.
Even though we recommend Mingw32, A68k should also compile
with Microsoft Visual C++, thanks to Paul Froissart.
(Please do NOT ask me questions about compiling with
Visual C++. I have just put in Paul Froissart's ifdefs.)
It also compiles with Cygwin, but since the result is
larger than the Mingw32 version, I do not see any benefit
in using it.
Bugfix: My Win32 port of v.2.71.F3 did not support labels
or variable names which contain accented
characters.
Bugfix: Now detects all errors in include files. All
include files will be treated in pass 2 if an
error is detected.
Bugfix by Paul Froissart: fixed a random crash bug due to
a missing initialization
Bugfix by Julien Muchembled: allow odd displacements for
words and longwords if the
resulting address might be
even
The Win32 version is now less greedy with the memory, so
its limitations are less annoying:
* lines can now be 256 bytes long (Paul Froissart)
* filenames (with path) can now be 259 bytes long (the
Win32 maximum)
* the default heap sizes have also been increased (Paul
Froissart)
Added the following synonyms:
BLO = BCS
BHS = BCC
DBLO = DBCS
DBHS = DBCC
ROLX = ROXL
RORX = ROXR
Version 2.71.F3 (David Ellsworth, July 11, 2000)
Fixed a bug introduced by my modifications that prevented
branches from being optimized in Global XRef mode.
[...]