]> Shamusworld >> Repos - rmac/blobdiff - dsp56k_amode.h
Version bump for last commit. :-)
[rmac] / dsp56k_amode.h
index 03ae9620d0450ee05a542b090580c72aa8b338ba..5f2d53f1729bfd7e44242a0c4c6cf41c31ed6a89 100644 (file)
@@ -1,7 +1,7 @@
 //
-// RMAC - Reboot's Macro Assembler for the Atari Jaguar Console System
+// RMAC - Renamed Macro Assembler for the Atari Jaguar Console System
 // DSP56K_AMODE.H - Addressing Modes for Motorola DSP56001
-// Copyright (C) 199x Landon Dyer, 2011 Reboot and Friends
+// Copyright (C) 199x Landon Dyer, 2011-2021 Reboot and Friends
 // RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986
 // Source utilised with the kind permission of Landon Dyer
 //
 
 // DSP EA modes
 
-#define DSP_EA_POSTDEC  B8(00000000)
-#define DSP_EA_POSTINC  B8(00001000)
-#define DSP_EA_POSTDEC1 B8(00010000)
-#define DSP_EA_POSTINC1 B8(00011000)
-#define DSP_EA_NOUPD    B8(00100000)
-#define DSP_EA_INDEX    B8(00101000)
-#define DSP_EA_PREDEC1  B8(00111000)
-#define DSP_EA_ABS      B8(00110000)
-#define DSP_EA_IMM      B8(00110100)
+#define DSP_EA_POSTDEC  0b00000000
+#define DSP_EA_POSTINC  0b00001000
+#define DSP_EA_POSTDEC1 0b00010000
+#define DSP_EA_POSTINC1 0b00011000
+#define DSP_EA_NOUPD    0b00100000
+#define DSP_EA_INDEX    0b00101000
+#define DSP_EA_PREDEC1  0b00111000
+#define DSP_EA_ABS      0b00110000
+#define DSP_EA_IMM      0b00110100
 
 
 // Mnemonic table structure
@@ -95,41 +95,41 @@ MNTABDSP {
 };
 
 // Addressing mode variables, output of dsp_amode()
-int dsp_am0;                                   // Addressing mode
-int dsp_a0reg;                                 // Register
-int dsp_am1;                                   // Addressing mode
-int dsp_a1reg;                                 // Register
-int dsp_am2;                                   // Addressing mode
-int dsp_a2reg;                                 // Register
-int dsp_am3;                                   // Addressing mode
-int dsp_a3reg;                                 // Register
-
-TOKEN dsp_a0expr[EXPRSIZE];            // Expression
-uint64_t dsp_a0exval;                  // Expression's value
-WORD dsp_a0exattr;                             // Expression's attribute
-SYM * dsp_a0esym;                              // External symbol involved in expr
-LONG dsp_a0memspace;                   // Addressing mode's memory space (P, X, Y)
-LONG dsp_a0perspace;                   // Peripheral space (X, Y - used in movep)
-TOKEN dsp_a1expr[EXPRSIZE];            // Expression
-uint64_t dsp_a1exval;                  // Expression's value
-WORD dsp_a1exattr;                             // Expression's attribute
-SYM * dsp_a1esym;                              // External symbol involved in expr
-LONG dsp_a1memspace;                   // Addressing mode's memory space (P, X, Y)
-LONG dsp_a1perspace;                   // Peripheral space (X, Y - used in movep)
-TOKEN dsp_a2expr[EXPRSIZE];            // Expression
-uint64_t dsp_a2exval;                  // Expression's value
-WORD dsp_a2exattr;                             // Expression's attribute
-SYM * dsp_a2esym;                              // External symbol involved in expr
-TOKEN dsp_a3expr[EXPRSIZE];            // Expression
-uint64_t dsp_a3exval;                  // Expression's value
-WORD dsp_a3exattr;                             // Expression's attribute
-SYM * dsp_a3esym;                              // External symbol involved in expr
-int dsp_k;                                             // Multiplications sign
-TOKEN dspImmedEXPR[EXPRSIZE];  // Expression
-uint64_t dspImmedEXVAL;                        // Expression's value
-WORD  dspImmedEXATTR;                  // Expression's attribute
-SYM * dspImmedESYM;                            // External symbol involved in expr
-int  deposit_extra_ea;                 // Optional effective address extension
+extern int dsp_am0;                                    // Addressing mode
+extern int dsp_a0reg;                                  // Register
+extern int dsp_am1;                                    // Addressing mode
+extern int dsp_a1reg;                                  // Register
+extern int dsp_am2;                                    // Addressing mode
+extern int dsp_a2reg;                                  // Register
+extern int dsp_am3;                                    // Addressing mode
+extern int dsp_a3reg;                                  // Register
+
+extern TOKEN dsp_a0expr[EXPRSIZE];             // Expression
+extern uint64_t dsp_a0exval;                   // Expression's value
+extern WORD dsp_a0exattr;                              // Expression's attribute
+extern SYM * dsp_a0esym;                               // External symbol involved in expr
+extern LONG dsp_a0memspace;                    // Addressing mode's memory space (P, X, Y)
+extern LONG dsp_a0perspace;                    // Peripheral space (X, Y - used in movep)
+extern TOKEN dsp_a1expr[EXPRSIZE];             // Expression
+extern uint64_t dsp_a1exval;                   // Expression's value
+extern WORD dsp_a1exattr;                              // Expression's attribute
+extern SYM * dsp_a1esym;                               // External symbol involved in expr
+extern LONG dsp_a1memspace;                    // Addressing mode's memory space (P, X, Y)
+extern LONG dsp_a1perspace;                    // Peripheral space (X, Y - used in movep)
+extern TOKEN dsp_a2expr[EXPRSIZE];             // Expression
+extern uint64_t dsp_a2exval;                   // Expression's value
+extern WORD dsp_a2exattr;                              // Expression's attribute
+extern SYM * dsp_a2esym;                               // External symbol involved in expr
+extern TOKEN dsp_a3expr[EXPRSIZE];             // Expression
+extern uint64_t dsp_a3exval;                   // Expression's value
+extern WORD dsp_a3exattr;                              // Expression's attribute
+extern SYM * dsp_a3esym;                               // External symbol involved in expr
+extern int dsp_k;                                              // Multiplications sign
+extern TOKEN dspImmedEXPR[EXPRSIZE];   // Expression
+extern uint64_t dspImmedEXVAL;                 // Expression's value
+extern WORD  dspImmedEXATTR;                   // Expression's attribute
+extern SYM * dspImmedESYM;                             // External symbol involved in expr
+extern int deposit_extra_ea;                   // Optional effective address extension
 
 
 // Extra ea deposit modes