home *** CD-ROM | disk | FTP | other *** search
- Module version 1.01
- -------------------
-
- A problem was reported with the feature that uses the GDraw module.
-
- Investigating, it seems that there are two related problems. When
- the code passes on Draw module SWIs to GDraw, in order to enable
- anti-aliasing, it has to set some extra bits in register R1 which
- contain the fill style for the curve.
-
- The first problem is that, having changed R1, the code doesn't restore
- its value. I'm not aware of this bug upsetting anything, but it is now
- fixed.
-
- The main problem is that GDraw does not support a value of R1 = 0 to
- select a default fill style. Although this was handled for Draw_Stroke
- (by checking for zero and replacing it with a default style value),
- it was not done for Draw_Fill, and this is what caused the trouble.
-
- This is the bit of code in s.code that I'm talking about:
-
-
- str r1,dtemp1 ; save r1 for later
- teq r1,#0 ; is it zero?
- moveq r1,#&30 ; yes replace with the default style value
- orr r1,r1,#&80 ; enable aliasing
-
-
- David Pilling
-
-
-
- Module version 1.03
- -------------------
-
- There have been two further updates.
-
- The code was made 32-bit compliant to produce version 1.02.
-
- Justin Fletcher told me about a bug and how to fix it. This was
- that R14 was being corrupted by the interception of the Draw SWIs.
- Fixing this problem gives version 1.03.
-
-
- David Pilling
-
-
-
- Module version 1.04
- -------------------
-
- Previous versions of SFX passed almost all Draw stroke and fill calls
- on to GDraw. It has been pointed out to me by Martin Wuerthner that
- GDraw only supports a limited set of winding rules and fill options.
- The fix in this version is to limit the calls passed to GDraw to those
- it supports.
-
- In fact in the interests of simplicity SFX now only passes on the
- calls which can be antialiased, there are some rare cases which GDraw
- might be able to speed up but not alias (which are now not passed on).
-
- Doing this work highlighted the fact that SFX was not supporting the
- correct default behaviour for stroking - a bug much like the one fixed
- for filling in an earlier version. This is also fixed in this
- version.
-
-
- David Pilling
-