ORD4 = cast as 32bit integer.
BSR(x,1) simply meant x divided by 2. This is very comment coding idom back in those days when Compiler don't do any optimization and bitwise-shift is much faster than division.
The snippet in C would be:
pt.h = (r.left + (int32_t)r.right) / 2; pt.v = (r.top + (int32_t)r.bottom) / 2; pt.h -= (width / 2); pt.v -= (height / 2); pt.h = max(0, min(pt.h, fDoc.fCols - width)); pt.v = max(0, min(pt.v, fDoc.fRows - height)); if (width > fDoc.fCols) { pt.h -= (width - fDoc.fCols - 1) / 2; } if (height > fDoc.fRows) { pt.v -= (height - fDoc.fRows - 1) / 2; }
If I understand it correctly, it was calculating the top-left point of the bounding box.
ORD4 = cast as 32bit integer.
BSR(x,1) simply meant x divided by 2. This is very comment coding idom back in those days when Compiler don't do any optimization and bitwise-shift is much faster than division.
The snippet in C would be: