AS86(1)

NAME
as86 - assembler for 8086/80386

SYNOPSIS
as86 [-03agjuw] [-b [bin]] [-lm [list]] [-n name] [-o obj] [-s sym] src

DESCRIPTION

  Overview
As86 is an assembler for 8086 or 80386 CPUs. Its syntax resembles rather the usual 8086 assembler syntax than the AT&T-like syntax as used by the system's assembler as(1).

It can also be compiled to support the Motorola 6809 CPU. The name as86 has only been chosen to make it distinct from the system's assembler.

  Options
-0  (the digit 0) start with 16-bit code segment
-3  start with 32-bit code segment
-a  enable partial compatibility with asld
-b  produce binary file, filename may follow (obsolete)
-g  only put global symbols in object file
-j  force all jumps to be long
-l  produce list file, filename may follow
-m  print macro expansions in listing
-n  name of module follows (goes in object instead of source name)
-o  produce object file, filename follows
-s  produce symbol file, filename follows (obsolete)
-u  take undefined symbols as imported-with-unspecified segment
-w  don't print warnings

The 6809 version does not support -0, -3, -a or -j.

  Defaults
Off or none except for these; no output is produced without a flag:
-0 | -3
    native, i. e. 80386
list
    stdout (beware of clobbering next arg)
name
    basename of the source name

  Input syntax
The following lists all acceptable names except the CPU instructions:
Register names
    bp, bx, di, si, eax, ebp, ecx, edi, edx, esi, esp, ax, cx, dx, sp, ah, al, bh, bl, ch, cl, dh, dl, cs, ds, es, fs, gs, ss, cr0, cr2, cr3, dr0, dr1, dr3, dr6, dr7, tr3, tr4, tr5, tr6, tr7, st.
Type sizes
    byte, dword, fword, far, ptr, pword, qword, tbyte, word.
Pseudo-operations
    else, elseif, elseifc, endif, if, ifc; .align, .ascii, .blkb, .blkw, block, .bss, .byte, comm, .comm, .data, .data1, .data2, .data4, db, dd, .define, dw, end, endb, enter, entry, equ, .even, export, extern, .extern, extrn, fail, .fail, fcb, fcc, fdb, get, .globl, ident, import, include, lcomm, .lcomm, .list, loc, .long, .maclist, macro, .map, org, .org, public, rmb, .rom, .sect, set, setdp, .short, .space, .text, use16, use32, .warn, .word, .zero.

SEE ALSO
as(1), bcc(1), ld86(1)

AUTHORS
This program has been developed by Bruce Evans.

BUGS
The -u and -w options are perhaps back to front because they are needed for cc1 output and Minix's make does the wrong thing with .s files left around. However, all assembler code not written by compilers should assemble with them turned off.