-//Temp, for testing...
-//No doubt, this type of check will break all kinds of stuff... !!! FIX !!!
-//And it does! !!! FIX !!!
-//Let's remove this "fix" since it screws up more than it fixes.
-/* if (op_pointer > ((p0 & 0x000007FFFF000000LL) >> 21))
- return;*/
-
-// NOTE: The link address only replaces bits 3-21 in the OLP, and this replaces
-// EVERYTHING. !!! FIX !!! [DONE]
-#warning "!!! Link address is not linked properly for all object types !!!"
-#warning "!!! Only BITMAP is properly handled !!!"
- op_pointer &= 0xFFC00007;
- op_pointer |= (p0 & 0x000007FFFF000000LL) >> 21;
+
+ // OP bottom 3 bits are hardwired to zero. The link address reflects
+ // this, so we only need the top 19 bits of the address (which is
+ // why we only shift 21, and not 24).
+ op_pointer = (p0 & 0x000007FFFF000000LL) >> 21;
+