Navigation
« 

Anonymous




Register
Login
« 
« 

Amiga Future

« 

Community

« 

Knowledge

« 

Last Magazine

The Amiga Future 167 was released on the March 5th.

The Amiga Future 167 was released on the March 5th.
The Amiga Future 167 was released on the March 5th.

The Amiga Future 167 was released on the March 5th.
More informations

« 

Service

« 

Search




Advanced search

Unanswered topics
Active topics
« 

Social Media

Twitter Amigafuture Facebook Amigafuture RSS-Feed [german] Amigafuture RSS-Feed [english] Instagram YouTube Patreon WhatsApp
« 

Advertisement

Amazon

Patreon

« 

Partnerlinks

Amiga Future News Portal

Choose the language for the News (current shown in english): Show news in german EN
Back to previous page


vasm 1.9a released

Published 04.10.2022 - 21:51 by AndreasM

vasm released in the Version 1.9a.

vasm is a portable and retargetable assembler to create linkable objects in various formats or absolute code. Multiple CPU-, syntax and output-modules can be selected.

Many common directives/pseudo-opcodes are supported (depending on the syntax module) as well as CPU-specific extensions.

The assembler supports optimizations (e.g. choosing the shortest possible branch instruction or addressing mode) and relaxations (e.g. converting a branch to an absolute jump when necessary).

Most syntax modules support macros, include directives, repetitions, conditional assembly and local symbols.

Changes:


Reads the input from stdin when no source file name is given.
Small performance improvements. Tuned hash table sizes. Reduced memory allocations and deallocations.
Do not ignore the path from the main source when looking for a file.
Can build low-memory version of vasm with minimal hash tables, by compiling with -DLOWMEM.
Do not allow exporting equates which are based on imported symbols.
Search for include files in the current work directory first, then in the compile directory.
New option -maxpasses to adjust the maximum number of passes while resolving a section.
New option -nocompdir to disable compile directory based include file lookup completely.
New option -v to print version and copyright.
m68k: -no-opt option really ovrrides all "opt o" and "opt a" directives from the source now.
m68k: Fixed 68030/68851 PMOVE issue with TC and MMUSR, caused by a conflict with MOVEC control registers of the same name.
m68k: New Apollo instructions DBcc.L and MOVE2.
m68k: Fixed Apollo MOVE immediate addressing mode to vector register.
m68k: Fixed Apollo SUBI banked instruction (one word missing).
m68k: Added Apollo banking prefix support for MOVE.L Bn,<ea> and MOVE.L <ea>,Bn.
m68k: Apollo LSLQ and LSRQ default to a .W operation size when missing. The remaining AMMX instructions should be .Q.
m68k: Make sure AMMX 64-bit constants are parsed with full precision.
m68k: Added missing Apollo FMOVE addressing modes.
6502: Added support for the WDC 65816 and 65802 8/16 bits instruction set, including some new directives for selecting Accumulator and Index width.
z80: Fix for GBZ80 "ld (c),a" and "ld a,(c)".
mot-syntax: ASSERT directive.
mot-syntax: macro arguments within <..> allow additional '>' characters inside a string without terminating the argument (vasm default mode only, not for Devpac-compatibility).
std-syntax: New option -gas for stricter GNU-as compatibility.
std-syntax: Supports one-digit temporary labels, where the nearest previous label may be referenced by Nb and the nearest following by Nf.
oldstyle-syntax: New directives SYMDEPEND and NEEDS. They define a dependency of the current section from an external symbol, which must be resolved by the linker.
oldstyle-syntax: Anonymous labels may be defined with a single ':' and referenced by ':+' or ':-'.
hunk-output: Converts NONE-relocs to 8-bit ABS with a warning.
hunk-output: Improved short-reloc output and work around AmigaOS LoadSeg() limitations/bugs.
o65-output: Check bad addends for 8-bit relocations.

http://sun.hasenbraten.de/vasm/

Back to previous page