X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=rmac;a=blobdiff_plain;f=direct.c;h=49dbcb5968d4f26c017895ae4d0d3444f50e909b;hp=5628ef90f8226d59d064e0e9757634c3ac3d6852;hb=0b6363381c7619989725dfc5e41de4bfd5732626;hpb=2037569179a89c7ea99abf7c3e75f23448ff54ff diff --git a/direct.c b/direct.c index 5628ef9..49dbcb5 100644 --- a/direct.c +++ b/direct.c @@ -1077,9 +1077,9 @@ int d_ds(WORD siz) // Check to see if the value being passed in is negative (who the hell does // that?--nobody does; it's the code gremlins, or rum, what does it) - // N.B.: Since 'eval' is of type uint32_t, if it goes negative, it will + // N.B.: Since 'eval' is of type uint64_t, if it goes negative, it will // have its high bit set. - if (eval & 0x80000000) + if (eval & 0x8000000000000000) return error("negative sizes not allowed in DS"); // In non-TDB section (BSS, ABS and M6502) just advance the location @@ -1096,7 +1096,7 @@ int d_ds(WORD siz) just_bss = 1; // No data deposited (8-bit CPU mode) } - else if (cursect == M56001P || cursect == M56001X || cursect == M56001Y || cursect == M56001L) + else if (cursect & M56KPXYL) { // Change segment instead of marking blanks. // Only mark segments we actually wrote something @@ -1125,7 +1125,7 @@ int d_ds(WORD siz) } ErrorIfNotAtEOL(); - return 0; + return OK; }