QUICK REFERENCE CHARTS
Jump to navigation
Jump to search
The following are the quick reference charts to the Devpac Assembler, Debugger and Linker. As with the rest of the Devpac docs on this disk, it was typed by the Animal House and edited by Sewer Rat. DEVPAC ASSEMBLER ================ Stand-alone assembler ===================== Command line format: <mainfile> <-options> [options] <mainfile> extension defaults to .S Options: B No binary file created C Case insensitive labels D Debug L GST linkable code L2 DRI linkable code O Specify output filename (follows immediately) P Specify listing filename (follows immediately) Q Pause after assembly X Extended debugging Ctrl-S - Pause screen output Ctrl-Q - Resume screen output Ctrl-C - Quit assembly Binary file types ================= .PRG GEM type application .TOS TOS type application .TTP TOS type application with command line .ACC Desk accessory file .BIN Non-executable file for linking with GST format files .O Non-executable file for linking with DRI format files Assembler statement format ========================== Labels - If not starting at column 1, then must be followed by a colon. Labels are case-sensitive by default. Any label that begins with a full stop is a local label, attached to the last non-local label. Mnemonics - Mnemonics are case-insensitive. Operands - Operands are case-insensitive. Comments - Comments are anything in the fourth column or any line which starts with a * or a ; Expressions =========== Operators: -+ (unary plus/minus) ~ (NOT) << >>(Shifts) &!^ (AND,OR,XOR) */ (Multiply,Divide) +- (Add,Subtract) =<> (Comparisons) plus parentheses Numbers: no prefix Decimal $ Hex @ Octal % Binary ' or " Character (up to 4 bytes) * is the (relative) value of the program counter Any symbol using absolute short addressing must be enclosed by brackets: move.l vector.w,d0 becomes move.l (vector).w,d0 Assembler directives ==================== END - flags end of text. Not needed. INCLUDE <filename> -pulls a source code file off disc and assembles it. INCBIN <filename> -includes a binary file (data) OPT -assembly options: C Case sensitivity (+-) Label significance (n) D Debugging information (+-) L L+ GST linkable L2 DRI linkable M Macro expansions (+-) O Optimising (+-) (1 - optimise branches) (2 - optimise addressing) (no number=both) OW Optimisation warnings (+-) P Check for position independence S Produce symbol table (+-) T Type checking (+-) W Warnings (+-) X Extended debug (+-) EVEN -force even address CNOP <off>,<align> -align the PC using the given offset and alignment DC.B <byte list> -include byte constant(s) DC.W <word list> -include word constant(s) DC.L <long list> -include long constant(s) DS.B <expression> -reserve block of bytes DS.W <expression> -reserve block of words DS.L <expression> -reserve block of longwords DCB.B <num>,<value> -reserve constant block of <number> values DCB.W <num>,<value> -reserve constant block of <number> values DCB.L <num>,<value> -reserve constant block of <number> values FAIL -causes assembly to fail OUTPUT <filename> -defines output filename __G2 -reserved symbol to detect whether the assembly is due to the IFD conditional REPT <expression> -start of repeat loop ENDR -end of repeat loop LIST -turns on listing NOLIST -turns off listing LIST+ -increments list flag LIST- -decrements list flag PLEN <expression> -set page length of assembly listing LLEN <expression> -set line width of assembly listing TTL <string> -set title of assembly listing SUBTTL <string> -set sub title of assembly listing SPC <expression> -output blank lines PAGE -new listing page LISTCHAR <char list>-output the following chars to the printer FORMAT 0 -enable/disable (+-) line numbers FORMAT 1 -enable/disable (+-) section name/number and PC FORMAT 2 -enable/disbale (+-) hax data EQU <expression> -sets a label to a defined value = -same as EQU EQUR <register> -gives a register a user-defined label SET -same as EQU, only can be modified by further SETs REG <reg-list> -give a label for a register list (MOVEM) RS.B <expression> -as DS.B, only gives a relative label RS.W <expression> -as DS.W, only gives a relative label RS.L <expression> -as DS.L, only gives a relative label RSRESET -resets counter used by above instructions RSSET <expression> -gives a value to counter used by above instructions. __RS -reserved symbol having the value of the current RS counter IFEQ <expression> -assemble if =0 IFNE <expression> -assemble if <>0 IFGT <expression> -assemble if >0 IFGE <expression> -assemble if >=0 IFLT <expression> -assemble if <0 IFLE <expression> -assemble if <=0 IFD <label> -assemble if label defined IFND <label> -assemble if label not defined IFC <str1>,<str2> -assemble if two strings equal IFNC <str1>,<str2> -assemble if two strings not equal ELSEIF -toggle conditional assembly ENC -end of current level of conditional assembly IIF <expression> -one line IFNE MACRO -start of macro ENDM -end of macro MEXIT -premature end of macro NARG -reserved symbol, giving the number or arguments passed. MODULE <name> -set module name for linker SECTION <name> -set current section name (TEXT/DATA/BSS) XDEF <label list> -set export list for labels XREF <label list> -set import list for labels XREF.L (label list> -set import list for constants COMMENT -ignore ORG <expression> -forces position dependent code at <expression> OFFSET <expression> -generate absoulute labels (at expression,if given) __LK -reserved symbol - 0=executable 1=GST linkable 2=DRI linkable Macro parameters: \1 to \9, \A to \Z, \a to \z \0 size appended to macro call \@ generate "_nnn" for unique labels DEVPAC MONITOR INFO =================== Tab - Cycle windows Alt-<n> - Select window Ctrl-Z - Single step Ctrl-Y - Single step Alt-B - Set breakpoint ,= is a count breakpoint ,* is a permanent breakpoint ,? <expression> is a conditional breakpoint ,- clears a breakpoint else a simple breakpoint is produced Ctrl-R - Run/Return to program V - Switch screens Alt-Z - Zoom/Shrink window Esc - Abort Alt-P - Dump window Alt-A - Change window address Ctrl-C - Terminate current program Alt-E - Edit window (Tab=toggle mode,Esc=quit) Alt-F - Font size Alt-L - Lock window Alt-O - Show other Alt-P - Printer dump Alt-R - Register set Alt-S - Split windows Alt-T - Change type (window 4 only) Ctrl-O - Other screen mode Shift-Alt-Help - Interrupt program Help - Show info U - Go until Ctrl-K - Kill all set breakpoints Ctrl-A - Set breakpoint just after PC then execute Ctrl-D - BDOS breakpoint H - Show history buffer Ctrl-L - Load executable program B - Load binary file S - Save binary file A - Load ASCII file Ctrl-T - Single step, skipping calls and traps R - Run G Go S Slowly I Instruction (needs instruction count) U Until (expression is true) G - Search memory N - Find next Ctrl-P - Set preferences I - Intelligent copy L - List labels W - Fill memory with P - Dissassembe to printer/disc M - Modify address O - Show other bases D - Change current drive and directory TEXT,DATA,BSS,END,SP,SR,SSP - Reserved symbols {} - Indirection \ - Prefix for decimal (hex is default) DEVPAC LINKER INFO ================== Command line format: <filename> <-options> <filename> <-options> Options: B Generate a BSS section D Generate debug info F Force linker pass 2 L Specify that all following are library filenames M Dump a map file O Specify object code filename Q 'quiet' mode (?) S Dump a symbol table listing X Generate extended debug info W Specify control file filename If the command line is started with a > character followed by a filename, then all screen output is redirected to that file. Control file commands: INPUT <filename> - read input file OUTPUT <filename> - specify output file LIBRARY <filename> - specify library file SECTION <sect name> - force specific section ordering DEBUG - include debugging information XDEBUG - include extended debugging information DATA <size> - set BSS segment size BSS <section name> - place named section in BSS area * is replaced by the first filename on the command line ************************************************************************ That concludes this small doc, so for comprehensive explanations on each of the above, read the entire Devpac docs on this Sewer Doc Disk 8. There is also a quick reference chart for the Editor on this disk and a few other general purpose files for Devpac. Overall, the files total a huge 320K, typed single-handedly by the Animal House