This chapter describes the TOS output module which can be selected with
the '-Ftos' option.

1 Legal
=======

This module is written in 2009-2014 by Frank Wille and is covered by the
vasm copyright without modifications.

2 Additional options for this version
=====================================

'-monst'
     Write Devpac "MonST"-compatible symbols.
'-tos-flags=<flags>'
     Sets the flags field in the TOS file header.  Defaults to 0.
     Overwrites a TOS flags definition in the assembler source.

3 General
=========

This module outputs the TOS executable file format, which is used on
Atari 16/32-bit computers with 68000 up to 68060 CPU. The symbol table
uses the DRI format.

4 Restrictions
==============

   - All symbols must be defined, otherwise the generation of the
     executable fails.  Unknown symbols are listed by vasm.
   - The only relocations allowed in this format are 32-bit absolute.
   Those are restrictions of the output format, not of vasm.

5 Known Problems
================

Some known problems of this module at the moment:

   - None.

6 Error Messages
================

This module has the following error messages:

   - 3004: section attributes <attr> not suppported
   - 3005: reloc type %d, size %d, mask 0x%lx (symbol %s + 0x%lx) not
     supported
   - 3006: reloc type %d not supported
   - 3007: undefined symbol <%s>
   - 3008: output module doesn't allow multiple sections of the same
     type
   - 3010: section <%s>: alignment padding (%lu) not a multiple of %lu
     at 0x%llx
   - 3011: weak symbol <%s> not supported by output format, treating as
     global
