1 - fixed code dependant on the order of evaluation. code like
2 *ptr++ = *ptr++ = *ptr++ = color;
3 is wrong, because there is no guarantee that ptr will be incremented
4 _between_ the assignment operations. it can be incremented after all
5 assignment operations as well. Because of this both of these are valid
6 implementations for a compiler:
7 a. assign, increment, assign, increment, assign, increment
8 b. assign, assign, assign, increment by 3
9 In case b. only the first memory location of the 3 will be modified, being
10 assigned 3 times the same value, while the other 2 remain unchanged.
11 For example egcs-2.91.66 (and possibly gcc-2.95.x too) implement this in
12 the second way (like in case b.)
13 Also the order in which the assignement is made is undefined (left to right
16 - added RMakeCenteredImage()
18 - Added code to draw pixels and lines. Both writing absolute values, or
19 offseting existing pixels with delta values are supported.
20 - Remade the beveling code to be simpler, using the RAlterLine() functions.
21 - Fixed some pixels in the bevels.
22 - Changed RAlter* functions to more generic ROperate*