PlayBASIC V1.48 _Retail Patch_ is Now Available

Started by kevin, August 31, 2006, 06:04:44 PM

Previous topic - Next topic

kevin

PlayBASIC V1.48 _Retail Patch_ is Now Available

This release patches the existing PB1.089c / PB1.33 & PB1.44 retail releases, plus all of the subsequent retail patches (v1.11 up to 1.47b) to the current retail release version of PBV1.48.

Release PB1.48 includes the latest editor / compiler and runtimes.   This update mainly focuses on fixes, and various runtime opt's.   Code executed from the IDE now is just about as fast as the release runtime.

For more information about PlayBasic, please visit the Play Basic home page, download the demo and dive right on in..

Url: www.PlayBasic.com


History

Changes snice PBv1.44


Version Date Dizzy
-------- ---- -----

  1.48     29th,Aug,2006

* Fixes
- CallDLL return values were hard coded to not return
 from 'set dest value' in Runtime VM. Breaking the return
 stack


  1.47b     25/28th,Aug,2006

* Fixes
- made various tweaks to the shape library
- remove possible rounding issues from pointinshape.
- MergeShape now refreshs the edge counters of two source
                               shapes prior To merge.  

- ShapeHitShape impacts only tested shape1 was inside shape2,
 so shape 2 could be inside shape 1 not register a hit

- Optexpression could break type reads that exported the
 incorrect data type.

- Delete Type didn't dealloc string arrays correctly.
- Copy Type didn't support static arrays

* Changes
- OptExpressions is now enabled by default





  1.47     18th,Aug,2006

* Bugs
- on Variable goto/gosub were broken in VM
- fixed Z issue with triangles in Translate mesh to scene

*removed
- Ripped the mesh polygon splitter, since it wasn't in use
- Ripped overflow/underflow safety code from the stack



  1.466     10/11th,Aug,2006

* New Commands
- Degrees# =AngleDifference(Angle1#,angle2#)
- Angle# =RotateToPoint(objectx#,objecty#,objectangle#,pointx#,pointy#,Tolerance#)
- Direction# =TurnDirection(ViewerAngle#,ObjectAngle#,Tolerance#)

* Bugs
- GetAngle2D now only Return positive angles in degrees
- Timer() was returning a float !

* Added
- Expression opt can now handle int/float variable assignment to
 PB build in & user defined functions.




  1.465     25july to 4th,Aug,2006
*changes
- Poke StringRef Pointers can now dealloc null string
 writes.

*Updated
- Update the Mesh to the buffer function to support
                                near/far plane clipping and triangles.

*New Command
- CameraClippingPlane ThisCamera,NearPlane,FarPLane
- CameraSceneSort ThisCamera,Flag



*Bugs
- Peek?PokeBankString were using inclusive clipping




  1.46     23/24th,July,2006
* Bugs
- corrected a logic issue in the expression parser that
 miss-read the length of bracketed expressions.

  NOTE -  This should also correct the previous bug with
  with the OptExpressions compile mode ! However it
  remains an optional mode until more testing has been
                          done



  1.45     19/22nd,July,2006

* Bugs

- Fixed a bug in the VM start code not allocating the DATA
 buffer correctly.
- Fixed safe code removal issue with GetSpriteLocalFloat in runtime
- Restored the VM Select/Case opcodes to support the 'next' opcode
 opt.
- Fixed a clipping issue with filled shapes in viewports
- ReadData could lock up if no data was found
- ValidShape didn't set shape index during runtime error

* New Commands
- Address=GetSpriteLocalPtr(ThisSprite)

- OptExpressions Flag  (Turn Last write optimization on for
                 expression parser

* Changes
- Stripping out some more dead tidbits.. :)




 


kevin

#1
Play Basic V1.48c BETA (Retail Compiler Only Beta) - (Avail for Registered Users ONLY)

 PB1.48c is the current WIP of  PB.  Latest additions are support for 32bit Alpha channels, more array command improvements, some bug fixes and performance tweaks.



History



  1.48c     6/12th,Sep,2006

* New Commands
- FreeCell Array(), Index
- Index = GetFreeCell(Array())

- ThisColour = ARGB(A,R,G,B)
- AlphaChannel = RGBA(ThisRGB)
- PrepareAFXImage ThisIMage (create a image 32bit ARGB image)

* Changes
- Added some support for ARGB FX surfaces to read/write
 pixel& spans


* Bugs
- Fixed buffer locking issue with Tile + Grid image


  1.48b     1/4th,Sep,2006

* Fixes
- RotateToPOint's caller was broken in the VM

* Changes
- Dot&Point callers now cast to integer
- BoxHitSpritePixels is now RectHitSpritePixels

* New Commands
- LoadFXIMage Filename$,ImageIndex
- CreateFXIMage ImageIndex,width,height
- ImageINdex=NewFXIMage(width,height)


  1.48     29th,Aug,2006

* Fixes
- CallDLL return values were hard coded to not return
 from 'set dest value' in Runtime VM. Breaking the return
 stack




 GetFreeCell() + Freecell() example


Type obj
status,x,y,angle#,colour
EndType

Dim Ships(0) as obj


Do

cls 0
For item=0 to getarrayelements(ships().obj,1)

if Ships(item).status
angle#=ships(item).angle#
x#=CosNewValue(ships(item).x,angle#,2)
y#=SinNewValue(ships(item).y,angle#,2)

if PointInBox(x#,y#,0,0,800,600)=false
freecell Ships().obj,Item
continue
endif

circlec x#,y#,10,true,Ships(item).Colour
ships(item).x=x#
ships(item).y=y#

endif
next

if Spacekey()
  Item=GetFreecell(Ships().obj)
Ships(Item).status=true
ships(item).x =rnd(800)
ships(item).y =rnd(600)
ships(item).angle =rnd(360)
ships(item).colour=rndrgb()
flushkeys
endif
Sync
loop


kevin

#2
PlayBasic V1.49 _Retail Patch_ is Now Available

 This release patches the existing PB1.089c / PB1.33 & PB1.44 retail releases, plus all of the subsequent retail patches (v1.11 up to 1.48b) to the current retail release version of PBV1.49.

 Release PB1.49 includes the latest EDITOR / HELP Files / Compiler and Release Runtime.    Recent additions have been support for 32bit Alpha channels, more array command improvements plus the regular bug  and performance tweaks.

Warning  No DEBUG runtime is included in this patch!  (So don't compile your apps to DEBUG mode- they won't work !)     This omission has occurred as we're currently unable to build the debug version successfully !  The RELEASE runtime is working fine though.


 For more information about PlayBasic, please visit the Play Basic home page, download the demo and dive right on in..

  Url: www.PlayBasic.com






History

Changes since PB1.44


Version Date Dizzy
-------- ---- -----
  1.49     16th,Sep,2006
Building new patch + Demos




  1.48d     13/14th,Sep,2006

* Changes
- ReDim can now dim a previously undimmed array



  1.48c     6/14th,Sep,2006

* New Commands
- FreeCell Array(), Index
- Index = GetFreeCell(Array())

- ThisColour = ARGB(A,R,G,B)
- AlphaChannel = RGBA(ThisRGB)
- PrepareAFXImage ThisIMage (create a image 32bit ARGB image)

* Changes
- Added some support for ARGB FX surfaces to read/write
 pixel& spans


* Bugs
- Fixed buffer locking issue with Tile + Grid image


  1.48b     1/4th,Sep,2006

* Fixes
- RotateToPOint's caller was broken in the VM

* Changes
- Dot&Point callers now cast to integer
- BoxHitSpritePixels is now RectHitSpritePixels

* New Commands
- LoadFXIMage Filename$,ImageIndex
- CreateFXIMage ImageIndex,width,height
- ImageINdex=NewFXIMage(width,height)








  1.48     29th,Aug,2006

* Fixes
- CallDLL return values were hard coded to not return
 from 'set dest value' in Runtime VM. Breaking the return
 stack


  1.47b     25/28th,Aug,2006

* Fixes
- made various tweaks to the shape library
- remove possible rounding issues from pointinshape.
- MergeShape now refreshs the edge counters of two source
                               shapes prior To merge.  

- ShapeHitShape impacts only tested shape1 was inside shape2,
 so shape 2 could be inside shape 1 not register a hit

- Optexpression could break type reads that exported the
 incorrect data type.

- Delete Type didn't dealloc string arrays correctly.
- Copy Type didn't support static arrays

* Changes
- OptExpressions is now enabled by default





  1.47     18th,Aug,2006

* Bugs
- on Variable goto/gosub were broken in VM
- fixed Z issue with triangles in Translate mesh to scene

*removed
- Ripped the mesh polygon splitter, since it wasn't in use
- Ripped overflow/underflow safety code from the stack



  1.466     10/11th,Aug,2006

* New Commands
- Degrees# =AngleDifference(Angle1#,angle2#)
- Angle# =RotateToPoint(objectx#,objecty#,objectangle#,pointx#,pointy#,Tolerance#)
- Direction# =TurnDirection(ViewerAngle#,ObjectAngle#,Tolerance#)

* Bugs
- GetAngle2D now only Return positive angles in degrees
- Timer() was returning a float !

* Added
- Expression opt can now handle int/float variable assignment to
 PB build in & user defined functions.




  1.465     25july to 4th,Aug,2006
*changes
- Poke StringRef Pointers can now dealloc null string
 writes.

*Updated
- Update the Mesh to the buffer function to support
                                near/far plane clipping and triangles.

*New Command
- CameraClippingPlane ThisCamera,NearPlane,FarPLane
- CameraSceneSort ThisCamera,Flag



*Bugs
- Peek?PokeBankString were using inclusive clipping




  1.46     23/24th,July,2006
* Bugs
- corrected a logic issue in the expression parser that
 miss-read the length of bracketed expressions.

  NOTE -  This should also correct the previous bug with
  with the OptExpressions compile mode ! However it
  remains an optional mode until more testing has been
                          done



  1.45     19/22nd,July,2006

* Bugs

- Fixed a bug in the VM start code not allocating the DATA
 buffer correctly.
- Fixed safe code removal issue with GetSpriteLocalFloat in runtime
- Restored the VM Select/Case opcodes to support the 'next' opcode
 opt.
- Fixed a clipping issue with filled shapes in viewports
- ReadData could lock up if no data was found
- ValidShape didn't set shape index during runtime error

* New Commands
- Address=GetSpriteLocalPtr(ThisSprite)

- OptExpressions Flag  (Turn Last write optimation on for
                 expression parser - WARNING THIS IS DEBUG + BUGGY !)

* Changes
- Stripping out some more dead tidbits.. :)




 GetFreeCell() + Freecell() example


Type obj
status,x,y,angle#,colour
EndType

Dim Ships(0) as obj


Do

cls 0
For item=0 to getarrayelements(ships().obj,1)

if Ships(item).status
angle#=ships(item).angle#
x#=CosNewValue(ships(item).x,angle#,2)
y#=SinNewValue(ships(item).y,angle#,2)

if PointInBox(x#,y#,0,0,800,600)=false
freecell Ships().obj,Item
continue
endif

circlec x#,y#,10,true,Ships(item).Colour
ships(item).x=x#
ships(item).y=y#

endif
next

if Spacekey()
  Item=GetFreecell(Ships().obj)
Ships(Item).status=true
ships(item).x =rnd(800)
ships(item).y =rnd(600)
ships(item).angle =rnd(360)
ships(item).colour=rndrgb()
flushkeys
endif
Sync
loop






kevin

#3
Play Basic V1.49 Demo Release -  Unlimited Days of Coding Fun !

  Those who've downloaded previous PB Demos would have noticed the 30day trial period.   Which sounds like a long time to an experienced programmer!,  But what if your not ?   As for many PlayBasic is often one the first game programming language they've used.   So in order to allow new users  time to learn, experiment and grow with PB, we've removed the trial period.   Have fun !

 Download Current PlayBasic (V1.64) Demo


Read News Item







kevin

#4
PlayBasic V1.49 Example Pack For Retail Users

 Here's the latest edition of the PB example pack for PlayBasic retail users.   This is the same version that comes with the PB1.49 Demo, so demo users need not install it.

Visit PlayBasic Downloads for example pack downloads (old & new)

kevin

#5
PlayBasic V1.50 _Retail Patch_ is Now Available

 This release patches the existing PB1.089c / PB1.33 & PB1.44 retail releases, plus all of the subsequent retail patches (v1.11 up to 1.49) to the current retail release version of PBV1.50.

 Release PB1.49b/1.50 includes the latest EDITOR / HELP Files / Compiler and Release + Debug Runtimes.    Most recent major additions has been support for passing pointers IN/OUT of functions..  

 For more information about PlayBasic, please visit the Play Basic home page, download the demo and dive right on in..

Url: www.PlayBasic.com




History

Changes since PB1.49



Version Date Dizzy
-------- ---- -----
  1.50     24/29th,Sep,2006
* Added
- Parser now supports returning pointers from functions

* Changes
- EndFunction parser no longer supports expressions
- Fine Tuned VM to now the DEbug edition works again.


  1.49d    22nd,Sep,2006
* Added
- Int() function can now recast pointers to integer
* Changes
- type parser now imports Nested types names as UDT pointers




  1.49c    19/20th,Sep,2006
*Added
- Basic Pointers can now be declared as FUNCTION inputs

I.e.
 Function Test(p as pointer)
print *intptr(p)
 EndFunction

- User defined type pointer no longer require the deref symbol



  1.49b   18/19th,Sep,2006
*Fixes
- CopyArrayCells didn't get the typed variables array pointer
 correctly
- fixed VM error in SortArray+GetArrayDimensions  

- Possible Fix for looping digital music tracks

*Changes
- Param matcher allows Type Variable to be passed as typed arrays