Skip to content

v1.1

Choose a tag to compare

@Clownacy Clownacy released this 12 Aug 21:42
· 17 commits to master since this release

Note

clownassembler_asm68k.exe is the one that mimics asm68k's interface; clownassembler.exe has a custom, simpler interface that is incompatible.

Added features

  • Warnings about opcodes having a dot but no size now only print when pedantic warnings are enabled.
  • Automatic even.
    • Forces DC, DCB, DS, and RS which are word- or longword-sized to begin at the next even address.
    • Enabled with ae+.
  • DS directive.
    • Allocates spaces and fills it with 0s.
  • Default arguments for the C++ interface.

Fixes

  • Special macro arguments (like \_) not always being substituted.
  • Functions like DEF and STRCMP returning 1 instead of 0xFFFFFFFF.
  • IF, ELSE, ENDC, ENDR, and similar keywords not being detected if they are hidden inside a short macro (declared with MACROS keyword).
  • MOVE not being compatible with having a register list as either of its operands.
  • INCBIN's start offset not being optional whilst a length is specified.
  • Non-string macro arguments not being converted to lowercase when case-insensitivity is enabled.
  • DC directive range errors printing numbers as decimal rather than hexadecimal.
  • Special macro arguments not absorbing their trailing backslash.
  • Got C++ interface wrapper working again.
  • Macro arguments and string constants not all being applied in order from left to right.
    • Previously, macro arguments were always applied first, even if string constants occurred before them.
  • Fixed 'symbol redefined' errors for macro-local variables which use forward references.