I am not certain.
>Or must I make my own "Line" call using a zillion PSET's?
If one must it won't be hard. Let me know if you need help.
By the way, after I learned to use the above routine
I never missed GET/PUT. It is fast enough for my purposes, and
considerably less quirky and error-prone than GET/PUT.
P.S. (note added 04/20/06)
Here's a simple XOR-able line drawer.
Code:
'XORline by E.W. Menzel, Jr. 'based on Bill Sandall's 1994 XORPix, in PBEXTRA 'for PB-DOS sub linedraw (x1 as single,y1 as single,x2 as single,y2 as single,colour as long,stepsize as single,XORmode as long) dim dx as single, dy as single, d as single dim ix as single, iy as single if stepsize <1 then stepsize =1 dx=x2-x1 dy=y2-y1 d=sqr(dx^2+dy^2) if d<1 then exit sub 'avoid div by zero IF XorMode = 1 THEN 'if XOR mode is wanted OUT &H3CE, 3 OUT &H3CF, 24 ELSEIF XorMode = 2 THEN 'AND mode OUT &H3CE, 3 OUT &H3CF, 8 ELSEIF XorMode = 3 THEN 'OR mode OUT &H3CE, 3 OUT &H3CF, 16 END IF PSET (x1,y1),colour PSET (x2,y2),colour ix=dx/d 'increment in x at each step iy=dy/d 'increment in y for i=0 to d step stepsize pset (x1+i*ix, y1+i*iy),colour next end sub 'demo --PB-DOS dim x1 as single,y1 as single,x2 as single,y2 as single dim colour as long,stepsize as single,XORmode as long screen 12 x1=450: y1=300 x2=50: y2=180 colour=14 stepsize=5 XORmode=1 circle (x1,y1),3: circle(x2,y2),10 'draw call linedraw(x1,y1,x2,y2,colour,stepsize,XORmode) a$=input$(1) 'erase (if XORmode=1) call linedraw(x1,y1,x2,y2,colour,stepsize,XORmode)
[This message has been edited by Emil Menzel (edited April 20, 2006).]
Leave a comment: