//
int d_noclear(void)
{
+ warn("CLR.L opcode ignored...");
return 0;
}
if ((scattr & SBSS) != 0)
return error("illegal initialization of section");
+ // Do an auto_even if it's not BYTE sized (hmm, should we be doing this???)
if ((siz != SIZB) && (sloc & 1))
auto_even();
+ // Check to see if we're trying to set LONGS on a non 32-bit aligned
+ // address in a GPU or DSP section, in their local RAM
+ if ((siz == SIZL) && (orgaddr & 0x03)
+ && ((rgpu && (orgaddr >= 0xF03000) && (orgaddr <= 0xF03FFFF))
+ || (rdsp && (orgaddr >= 0xF1B000) && (orgaddr <= 0xF1CFFFF))))
+ warn("depositing LONGs on a non-long address in local RAM");
+
for(;; ++tok)
{
// dc.b 'string' [,] ...
if (eval + 0x100 >= 0x200)
{
sprintf(buffer, "%s (value = $%X)", range_error, eval);
-// return error(range_error);
return error(buffer);
}
// o everything else
if (equtyp == EQUREG)
{
-//Linko's request to issue a warning on labels that equated to the same register
-//would go here. Not sure how to implement it though. :-/
+//Linko's request to issue a warning on labels that equated to the same
+//register would go here. Not sure how to implement it though. :-/
/*
Maybe like this way:
have an array of bools with 64 entries. Whenever a register is equated, set the
-corresponding register bool to true. Whenever it's undef'ed, set it to false. When
-checking to see if it's already been equated, issue a warning.
+corresponding register bool to true. Whenever it's undef'ed, set it to false.
+When checking to see if it's already been equated, issue a warning.
*/
// Check that we are in a RISC section
if (!rgpu && !rdsp)
#define MAJOR 1 // Major version number
#define MINOR 3 // Minor version number
-#define PATCH 8 // Patch release number
+#define PATCH 9 // Patch release number
#endif // __VERSION_H__