Short: PhxAss V4.39 68xxx Macro Assembler Author: frank@phoenix.owl.de (Frank Wille) Uploader: frank phoenix owl de Type: dev/asm Version: 4.39 Replaces: dev/asm/PhxAss438* Requires: OS2.04 Architecture: m68k-amigaos PhxAss V4.39 is a highly optimizing macro assembler for Motorola's 680x0 CPUs, 6888x FPUs and 68851 MMU (of course, the 030, 040 and 060 MMUs are also supported). It requires OS2.04 (V37) and 1 MB RAM as minimum. Most important features: o PhxAss is FREEWARE. o Symbolic and Source Level Debugging. Possibility to enable Source Level Debugging for high level languages too. o Automatic generation of executables (if possible). o Creates relocatable Amiga-DOS objects or absolute code (written into a file (raw or Motorola S-Format), into memory or directly onto disk). o Small Code and Small Data support (also support for __MERGED sections). o Listing file, Cross Reference Listing, Equates file. o Complete floating point support: You can use complex floating point expressions, including float functions (sine, logarithm, square root, power, etc.), everywhere in your source, e.g. defining float EQUates or SETs. o Switches for ten different optimizations. o Locale symbols (xxx$ and .xxx type, also AsmOne-style: global/.local). o Up to 36 macro parameters. o Support for Motorola's old and new operand style (even in 68000 mode). o locale.library usage (english, german, swedish, norwegian, italian, danish, dutch, hungarian and french ). o Nearly all directives of the most popular assemblers like Seka, DevPac or AS (Aztec) are supported. Example: INCBIN, INCDIR, CODE_C, REPT, RS, RSRESET, EQUR, REG, OFFSET, XDEF, XREF, PUBLIC, OUTPUT ... o PhxAss is able to stay resident in memory. You will find two different versions of PhxAss in this distribution: 1. PhxAss: The standard 680x0,FPU,MMU macro assembler. 2. GigaPhxAss: Identical to PhxAss, but source codes are not limited to 65535 lines. Quite useful for assembling huge Reassembler outputs. CHANGES SINCE PHXASS V4.38 (last Aminet release): Fixed Bugs: o Some severe bugs, enforcer hits and crashes (when using local symbols, for example) from V4.38 were fixed. This version was crap... :) o Fixed (Rn.s) bug in 020+ addressing modes (another 4.38-only bug). o .x(Rn) and (.x,Rn) generated a syntax error in 020+ mode. The local symbols/registers were erroneously treated as extensions (and yes, this is another 4.38-only bug!). New Features: o Access on local symbols from a different block as in AsmOne is possible by writing: GlobalSym/.LocalSym o MOVEM accepts numeric constants as register list. Example: movem.l :$7fff,-(sp)