DrawV_Reason

John Tytgat John.Tytgat at aaug.net
Tue Feb 19 00:36:51 GMT 2008


Hi,

I noticed that the DrawV reason codes in R8 are not enumerated.  Could
following patch address this ?

--8<--
Index: Source/User/oslib/Draw.swi
===================================================================
--- Source/User/oslib/Draw.swi	(revision 299)
+++ Source/User/oslib/Draw.swi	(working copy)
@@ -150,6 +150,16 @@
    Error_DrawDrawNeedsGraphicsMode = .Bits: &98B,
    Error_DrawUnimplementedDraw = .Bits: &9FF;
 
+TYPE
+   DrawV_Reason = .Int;
+CONST
+   DrawV_ProcessPath   = DrawV_Reason: 0x00,
+   DrawV_Fill          = DrawV_Reason: 0x02,
+   DrawV_Stroke        = DrawV_Reason: 0x04,
+   DrawV_StrokePath    = DrawV_Reason: 0x06,
+   DrawV_FlattenPath   = DrawV_Reason: 0x08,
+   DrawV_TransformPath = DrawV_Reason: 0x0A;
+
 SWI
    Draw_ProcessPath =
    (  NUMBER 0x40700 "Main Draw SWI",
@@ -255,5 +265,5 @@
       )
    );
 
-SWI DrawV = (NUMBER 0x34, ENTRY (R8 = .Int: draw_swi, R9 # &20 "Draw
+SWI DrawV = (NUMBER 0x34, ENTRY (R8 = DrawV_Reason: draw_swi, R9 # &20 "Draw
       module vector - arguments as given Draw SWI"), ABSENT)
--8<--

Based on PRM 1-99.

I don't know if I can add DrawV_FillClipped and DrawV_StrokeClipped as
the Iyonix documentation doesn't seem to explicitly say that those
corresponding SWIs are vectored as well.  And I don't believe the Draw
sources have been made available via ROOL so we can't check that either.

Ok to check this in ?

John.
-- 
John Tytgat, in his comfy chair at home                                 BASS
John.Tytgat at aaug.net                             ARM powered, RISC OS driven



More information about the oslib-user mailing list