IMPLEMENTATION ISSUES AND PROBLEMS I. IMPLEMENTATION ISSUES 1. The assembler requires sections to be defined in the following order: TEXT DATA BSS After the first occurrences, remaining section directives may appear in any order. 2. It is advisable to give the 0 addresses in all three sections a global label, so they can be referred to by code and data. The header file "syscalnr.h" defines the system call numbers and the sections in the correct order. It also supplies the initial labels "TxtSectHd" and "DaSecHd". Therefore, all requirements are automatically met if syscalnr.h is included in the first line of the (first) source file. 3. All label, variable and constant names must be unique across all source files. 4. Line numbers mentioned by the assembler in case of errors and warnings are with respect to the ".$" file. This means, for example, that the position of the error in the ".s" file will be 20 lines lower when the file with system call numbers "syscalnr.s" is included in the first line. II. KNOWN BUGS 1. There is a problem in the overflow flag and the carry flag in the IMUL. 2. Far jumps and calls generate segmentation faults and must not be used. 3. In instructions with segment override, the source list pointer in the tracer misses one instruction, and in the segment register change, the stack window loses track of where it is. We intend to correct problems with the segment registers in forthcoming versions.