/*****************************************************************************/
/* */
-/* global.c */
+/* global.c */
/* */
-/* Global variables for the da65 disassembler */
+/* Global variables for the da65 disassembler */
/* */
/* */
/* */
-/* (C) 2000-2003 Ullrich von Bassewitz */
+/* (C) 2000-2006 Ullrich von Bassewitz */
/* Römerstrasse 52 */
/* D-70794 Filderstadt */
/* EMail: uz@cc65.org */
/*****************************************************************************/
-/* Data */
+/* Data */
/*****************************************************************************/
/* File names */
-const char* InFile = 0; /* Name of input file */
-const char* OutFile = 0; /* Name of output file */
+const char* InFile = 0; /* Name of input file */
+const char* OutFile = 0; /* Name of output file */
/* Default extensions */
-const char OutExt[] = ".dis"; /* Output file extension */
-const char CfgExt[] = ".cfg"; /* Config file extension */
+const char OutExt[] = ".dis"; /* Output file extension */
+const char CfgExt[] = ".cfg"; /* Config file extension */
/* Flags and other command line stuff */
unsigned char DebugInfo = 0; /* Add debug info to the object file */
-unsigned char FormFeeds = 0; /* Add form feeds to the output? */
-unsigned char PassCount = 2; /* How many passed do we do? */
-long StartAddr = -1; /* Start/load address of the program */
+unsigned char FormFeeds = 0; /* Add form feeds to the output? */
+unsigned char UseHexOffs = 0; /* Use hexadecimal label offsets */
+unsigned char PassCount = 2; /* How many passed do we do? */
+signed char NewlineAfterJMP = -1; /* Add a newline after a JMP insn? */
+signed char NewlineAfterRTS = -1; /* Add a newline after a RTS insn? */
+long StartAddr = -1L; /* Start/load address of the program */
+long InputOffs = -1L; /* Offset into input file */
+long InputSize = -1L; /* Number of bytes to read from input */
/* Stuff needed by many routines */
-unsigned char Pass = 0; /* Disassembler pass */
-
-/* Page formatting */
-unsigned PageLength = 0; /* Length of a listing page */
-unsigned MIndent = 9; /* Mnemonic indent */
-unsigned AIndent = 17; /* Argument indent */
-unsigned CIndent = 49; /* Comment indent */
-unsigned TIndent = 81; /* Text bytes indent */
-unsigned BytesPerLine = 8; /* Max. number of data bytes per line */
-
+unsigned Pass = 0; /* Disassembler pass */
+char Now[128]; /* Current time as string */
+/* Comments */
+unsigned Comments = 0; /* Add which comments to the output? */
+/* Page formatting */
+unsigned PageLength = 0; /* Length of a listing page */
+unsigned LBreak = 7; /* Linefeed if labels exceed this limit */
+unsigned MCol = 9; /* Mnemonic column */
+unsigned ACol = 17; /* Argument column */
+unsigned CCol = 49; /* Comment column */
+unsigned TCol = 81; /* Text bytes column */
+unsigned BytesPerLine = 8; /* Max. number of data bytes per line */