//
// RMAC - Reboot's Macro Assembler for all Atari computers
// AMODE.C - Addressing Modes
-// Copyright (C) 199x Landon Dyer, 2011-2017 Reboot and Friends
+// Copyright (C) 199x Landon Dyer, 2011-2018 Reboot and Friends
// RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986
// Source utilised with the kind permission of Landon Dyer
//
SYM * bf0esym; // External symbol involved in expr
// Function prototypes
-int check030bf(void);
+int Check030Bitfield(void);
//
// it's a bitfield instruction--check the parameters inside the {} block
// for validity
if (*tok == '{')
- if (check030bf() == ERROR)
+ if (Check030Bitfield() == ERROR)
return ERROR;
if ((acount == 0) || (*tok != ','))
// It's a bitfield instruction--check the parameters inside the {} block
// for validity
if (*tok == '{')
- if (check030bf() == ERROR)
+ if (Check030Bitfield() == ERROR)
return ERROR;
// At this point, it is legal for 020+ to have a ':'. For example divu.l
tok++; //eat the colon
if ((*tok >= KW_D0) && (*tok <= KW_D7))
- {
a2reg = (*tok++) & 7;
- }
else if ((*tok >= KW_FP0) && (*tok <= KW_FP7))
- {
a2reg = (*tok++) & 7;
- }
else
return error("a data or FPU register must follow a :");
}
// Error messages:
badmode:
return error("addressing mode syntax");
-
- //unmode:
- //return error("unimplemented addressing mode");
}
int fpu_reglist_right(WORD * a_rmask)
{
static WORD msktab_plus[] = {
- 0x0001, 0x0002, 0x0004, 0x0008,
- 0x0010, 0x0020, 0x0040, 0x0080
+ 0x0080, 0x0040, 0x0020, 0x0010,
+ 0x0008, 0x0004, 0x0002, 0x0001
};
WORD rmask = 0;
// bfxxx <ea>{param1,param2}
// param1/2 are either data registers or immediate values
//
-int check030bf(void)
+int Check030Bitfield(void)
{
PTR tp;
CHECK00;