X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=rmac;a=blobdiff_plain;f=amode.c;h=875c324d6175ffe77304c157ab2cb29ff7dcb8f5;hp=b721491dc4d58e4ce2245295fa532370dd010918;hb=d0c28c349ddfb8393568037f68bddbe8979ce0df;hpb=d09274f3e3d4dca122c308a621ea8edc100b7d99 diff --git a/amode.c b/amode.c index b721491..875c324 100644 --- a/amode.c +++ b/amode.c @@ -3,7 +3,7 @@ // AMODE.C - Addressing Modes // Copyright (C) 199x Landon Dyer, 2011 Reboot and Friends // RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986 -// Source Utilised with the Kind Permission of Landon Dyer +// Source utilised with the kind permission of Landon Dyer // #include "amode.h" @@ -18,34 +18,34 @@ #include "mntab.h" // Address-mode information -int nmodes; // Number of addr'ing modes found -int am0; // Addressing mode -int a0reg; // Register -TOKEN a0expr[EXPRSIZE]; // Expression -VALUE a0exval; // Expression's value -WORD a0exattr; // Expression's attribute -int a0ixreg; // Index register -int a0ixsiz; // Index register size (and scale) -TOKEN a0oexpr[EXPRSIZE]; // Outer displacement expression -VALUE a0oexval; // Outer displacement value -WORD a0oexattr; // Outer displacement attribute -SYM * a0esym; // External symbol involved in expr - -int am1; // Addressing mode -int a1reg; // Register -TOKEN a1expr[EXPRSIZE]; // Expression -VALUE a1exval; // Expression's value -WORD a1exattr; // Expression's attribute -int a1ixreg; // Index register -int a1ixsiz; // Index register size (and scale) -TOKEN a1oexpr[EXPRSIZE]; // Outer displacement expression -VALUE a1oexval; // Outer displacement value -WORD a1oexattr; // Outer displacement attribute -SYM * a1esym; // External symbol involved in expr +int nmodes; // Number of addr'ing modes found +int am0; // Addressing mode +int a0reg; // Register +TOKEN a0expr[EXPRSIZE]; // Expression +VALUE a0exval; // Expression's value +WORD a0exattr; // Expression's attribute +int a0ixreg; // Index register +int a0ixsiz; // Index register size (and scale) +TOKEN a0oexpr[EXPRSIZE]; // Outer displacement expression +VALUE a0oexval; // Outer displacement value +WORD a0oexattr; // Outer displacement attribute +SYM * a0esym; // External symbol involved in expr + +int am1; // Addressing mode +int a1reg; // Register +TOKEN a1expr[EXPRSIZE]; // Expression +VALUE a1exval; // Expression's value +WORD a1exattr; // Expression's attribute +int a1ixreg; // Index register +int a1ixsiz; // Index register size (and scale) +TOKEN a1oexpr[EXPRSIZE]; // Outer displacement expression +VALUE a1oexval; // Outer displacement value +WORD a1oexattr; // Outer displacement attribute +SYM * a1esym; // External symbol involved in expr // -// Parse Addressing Mode +// Parse addressing mode // int amode(int acount) { @@ -84,7 +84,8 @@ int amode(int acount) if (acount == 0 || *tok != ',') return 1; - ++tok; // Eat comma + // Eat the comma + tok++; // Parse second addressing mode #define AnOK a1ok @@ -116,7 +117,7 @@ int amode(int acount) // -// Parse Register List +// Parse register list // int reglist(WORD * a_rmask) { @@ -126,10 +127,9 @@ int reglist(WORD * a_rmask) 0x0100, 0x0200, 0x0400, 0x0800, 0x1000, 0x2000, 0x4000, 0x8000 }; - WORD rmask; - int r, cnt; - rmask = 0; + WORD rmask = 0; + int r, cnt; for(;;) { @@ -140,7 +140,7 @@ int reglist(WORD * a_rmask) if (*tok == '-') { - ++tok; + tok++; if (*tok >= KW_D0 && *tok <= KW_A7) cnt = *tok++ & 15; @@ -161,10 +161,11 @@ int reglist(WORD * a_rmask) if (*tok != '/') break; - ++tok; + tok++; } *a_rmask = rmask; return OK; } +