Hollywood 7 Bug no fixed

Report any Hollywood bugs here
Post Reply
sinisrus
Posts: 347
Joined: Tue Apr 21, 2015 5:43 pm

Hollywood 7 Bug no fixed

Post by sinisrus »

- New: RotateBrush(), TransformBrush() as well as all other functions that rotate images now use
dedicated code to handle the special cases of a rotation by 90, 180, 270, and 360 degrees to
transform the image data; this is much faster and the transformation is also done in a lossless
way (requested by Tony Canazza)
I tested no fixed

- Fix: When using #FILLGRADIENT fill style and #ANTIALIAS and #SHADOW form style with one of the
Arc(), Circle(), Ellipse() or Box() with round corners commands, the gradient wasn't drawn
correctly (reported by Tony Canazza)
I tested with #ANTIALIAS and #SHADOW (ok fixed)
I tested with #ANTIALIAS and #EDGE (no fixed)
User avatar
airsoftsoftwair
Posts: 5433
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: Hollywood 7 Bug no fixed

Post by airsoftsoftwair »

Code please... the snippets you posted with the bug report definitely work correctly now but maybe there is still a problem in different contexts but I need to see demo code to tell you more...
sinisrus
Posts: 347
Joined: Tue Apr 21, 2015 5:43 pm

Re: Hollywood 7 Bug no fixed

Post by sinisrus »

For RotateBrush()

Os4 (ok fixed)
O3.9 WinUAE (No fixed)

Code: Select all

/* Created with BuildOther v1.0 */
/* By Sinisrus © 2014 */

/* Nouveau projet Hollywood */

 

  CreateBrush(1,50,50,#WHITE)
  SelectBrush(1)

  FOR i=0 TO 50 STEP 2  
  Line(0,i,50,i,#RED)
  NEXT
  EndSelect

RotateBrush(1,90)
RotateBrush(1,90)
RotateBrush(1,90)

DisplayBrush(1,50,50)

 

/* Boucle infinie */
Repeat
        WaitEvent
Forever
sinisrus
Posts: 347
Joined: Tue Apr 21, 2015 5:43 pm

Re: Hollywood 7 Bug no fixed

Post by sinisrus »

For Gradient and Edge

Os4 (no fix)
Os3.9 WinUAE (no fix)

Code: Select all

/* Test Gradient and EDGE */

SetFormStyle(#ANTIALIAS)
SetFillStyle(#FILLGRADIENT, #CONICAL, $00FF00, $000000)

;SetFormStyle(#SHADOW, $A9A9A9, 21, #SHDWSOUTHEAST)
SetFormStyle(#EDGE, $000000, 1)

/**********************************************************************************/

CreateBrush(1,350,100,#WHITE)

SelectBrush(1)
BOX(50,#CENTER,50,50,#BLACK)
Circle(#CENTER,#CENTER,25,#BLACK)

v = {}
v[0] = 0 ;X1
v[1] = 50 ;Y1
v[2] = 25 ;X2
v[3] = 0 ;Y2
v[4] = 50 ;X3
v[5] = 50 ;Y3
v[6] = 0 ;X4
v[7] = 50 ;Y4

Polygon(#RIGHT-50, #CENTER, v, 4, #BLACK)
EndSelect

/**********************************************************************************/

DIST=0 ROT=0

Function p_Loop()

;SetFormStyle(#SHADOW, $A9A9A9, DIST, #SHDWSOUTHEAST)
SetFormStyle(#EDGE, $000000, DIST)

CreateBrush(1,350,100,#WHITE)
SelectBrush(1)
BOX(50,#CENTER,50,50,#BLACK)
Circle(#CENTER,#CENTER,25,#BLACK)

v = {}
v[0] = 0 ;X1
v[1] = 50 ;Y1
v[2] = 25 ;X2
v[3] = 0 ;Y2
v[4] = 50 ;X3
v[5] = 50 ;Y3
v[6] = 0 ;X4
v[7] = 50 ;Y4

Polygon(#RIGHT-50, #CENTER, v, 4, #BLACK)
EndSelect

DisplayBrush(1,#CENTER,#CENTER)

IF (ROT=0)&(DIST<50)
DIST=DIST+5
IF (DIST=50) THEN ROT=1
ENDIF

IF (ROT=1)&(DIST>0)
DIST=DIST-5
IF (DIST=0) THEN ROT=0
ENDIF

EndFunction

/**********************************************************************************/

SetInterval(1, p_Loop, 1000/25)

/**********************************************************************************/

/* Boucle infinie */
Repeat
WaitEvent
Forever
User avatar
airsoftsoftwair
Posts: 5433
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: Hollywood 7 Bug no fixed

Post by airsoftsoftwair »

I can confirm that the second issue still shows problems but not the first issue (rotation). Can you provide a screenshot of what it looks like on OS3? It looks good here both on OS4 and OS3.
User avatar
airsoftsoftwair
Posts: 5433
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: Hollywood 7 Bug no fixed

Post by airsoftsoftwair »

Hmm, still can't reproduce the rotate brush problem. Can you post the script you used for the screenshot? It looks a little different than your original script.
sinisrus
Posts: 347
Joined: Tue Apr 21, 2015 5:43 pm

Re: Hollywood 7 Bug no fixed

Post by sinisrus »

I solved this problem => rotate no good work with Hollywood OS3FPU
I tested with Hollywood Os3 no FPU => OK

Code: Select all

/* Created with BuildOther v1.0 */
/* By Sinisrus © 2014 */

/* Nouveau projet Hollywood */

@DISPLAY 1, {WIDTH=300,HEIGHT=150}

t=GetVersion()
Textout(#CENTER,5,"Hollywood v"..t.version.." "..t.platform)
Textout(#CENTER,20,"- Test of Rotation 90° -")
 
CreateBrush(1,50,50,#WHITE)
SelectBrush(1)

FOR i=0 TO 50 step 2
Line(0,i,50,i,#BLACK)
NEXT
EndSelect

;********************************

Function p_Rota()

RotateBrush(1,90)
DisplayBrush(1,#CENTER,60)

EndFunction

;********************************

SetInterval(1, p_Rota, 1000/5)

EscapeQuit(True)

/* Boucle infinie */
Repeat
        WaitEvent
Forever
User avatar
airsoftsoftwair
Posts: 5433
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: Hollywood 7 Bug no fixed

Post by airsoftsoftwair »

Ah, that explains it all. Of course WinUAE's FPU emulation isn't as precise as the original chip so it can get you in trouble.
Post Reply