12/12 :  PPL 1.10 has been released

  

ArianeSoft Inc. is proud to announce that Pocket Programming Language version 1.10 has just been released.

This version is a big improvement over version 1.0x. Many new features have been implemented and numerous bugs have been fixed. Here are some of the new features to expect in 1.10:

- New easy-to-use TCP/IP, Bluetooth and Infrared libraries.
- New simplified database libraries based on the powerful SQLite module and ADO/CE.
- Powerful component viewer to allow fast code navigation.
- Support for .OGG sound format playback.
- Game Level Editor support particles and layers for more advanced game development.
- Major particle engine enhancements, including 28 new particle functions to offer more control.
- New Windows Registry library.
- New and enhanced Package functions.
- Ability to load sprites, surfaces and sound from memory.
- And so much more...


Download PPL 1.10 from : http://www.arianesoft.ca/download.php?view.21

Mirror : http://www.arianesoft.ca/e107_files/downloads/ppl110.exe


Here is the complete change log:

 - Removed all functions from Windows.ppl and moved them to Swapi.ppl library.
 - Fixed %c in printf() and sprintf() functions.
 - New CacheText() function to optimize truetype font drawing by painting to a sprite.
 - New SetSpriteLifeTime() and SpriteLifeTime() functions to set the sprite time to exists in milliseconds.
 - New SetSpriteAnimVel() and SpriteAnimVel() functions to set the animation speed relative to velocity.
 - Fixed GetText() and SetText() functions to use WM_GETTEXT and WM_SETTEXT messages instead of GetWindowText() and SetWindowText() api functions.
 - Added GetDoubleClickTime to Windows.ppl library.
 - Changed NewParticle to use particle options.
 - New particle options: PO_PHYSIC, PO_FREESPRITE, PO_COLLIDE, PO_DIE, PO_LOOP, PO_ROTATE.
 - New particle events: WM_PARTICLELOOP, WM_PARTICLEDIE.
 - New Explode() function to split a sprite into multiple sprites.
 - Fixed memory leak bug introduced in 1.08.
 - Fixed DelSprites() to flag the sprites in the deleted sprites list too.
 - Fixed DelSprite() to delete the sprite from memory.
 - 28 new particle functions to get and set each particle properties.
 - New Simplified Windows Socket API with TCP/IP, Bluetooth and Infrared support.
 - PIDE: Allow to change default editor font.
 - New AddList() function to add a list to another.
 - New ADO database library.
 - New AdoTest demo program using the new ADODB.PPL library.
 - Get and Set procedures are now supported in all variable types (list, structs, objects...).
 - New Console Skeleton code in users menu.
 - New Registry.ppl library to access Windows registries.
 - New RegistryTest.ppl demo.
 - New parameter in MakeEXE() function to force target compilation type.
 - New (PIDE) navigation treeview that lists all procs/funcs, variables, includes, classes ...
 - New support for particles groups in Game Level Editor.
 - Added OnEraseBackground event to common control event list.
 - Fixed g_suspend bug when focus on application is lost.
 - Fixed bug when SO_CHECKCOLLIDE was not specified.
 - Fixed bug in g_shut() when back buffer was still open for drawing.
 - ProcessParticles() and RenderParticles() are done automatically by the game engine now.
 - New GameParticles() function to override game engine settings for particles processing and rendering.
 - New FORCELINK function statement to force the linker not to remove the proc or func.
 - Fixed numerous #namespace bugs.
 - Fixed Game Level Editor selection of the game map.
 - Maximum and minimum frame count in some sprite's functions are checked.
 - New SetVar() function to set a variable value by using its name as a string, in the same manner as the GetVar() function.
 - New .OGG compressed music file support added.
 - New support for #namespace in Visual Form Editor in the PIDE.
 - Optimized collision detection and fixed memory leak.
 - Fixed evaluation of expression or code bug where file pointers were lost on opened files.
 - Sort() function has a case sensitive parameter now.
 - Fixed PIDE Visual Form Builder, loader to support any caption values.
 - Fixed button color drawing in PIDE Visual Form Builder.
 - PIDE, when temporary dialog appears (run,compile), make destination text control focused.
 - Fixed error 103 when running a form on the PocketPC more than once.
 - Fixed error after compiling or running on the PocketPC and form and then switching target to PC.
 - Add Control_Enable, Control_Disable and Control_Enabled functions in Swapi.ppl
 - Fixed Arrays in structures used with strings bug.
 - Fixed StrToList() and StrToListEx() functions.
 - Fixed Form_Repaint, Form_Refresh, Control_Repaint and Control_Refresh functions in swapi.ppl.
 - New LoadSpriteFromMem() function to load a sprite image from memory.
 - New LoadSoundFromMem() function to load a music or a sound from memory.
 - New LoadSurfaceFromMem() function to load an image from memory.
 - PIDE, new option to run the PPL runtime IDE.
 - PIDE, new option to access the package manager utility.
 - Fixed PIDE source code formatter to have better support for ~ & |
 - Runtime error when trying to access a private variable outside a class.
 - Fixed interpreter to automatically free objects from memory.
 - Fixed Cos360, Cos256, Sin360 and Sin256 functions to work even without the GameAPI initialized.
 - Fixed IncAngle() and IncAngleRad() functions bug.
 - Fixed bug in TDIM().
 - Checks range out of bounds for array index values. ex: dim(a$, 10, 10); a$[11, 10] = 10; will give an error in range check mode.
 - Fixed debugger on PocketPC.
 - Fixed debugger users entry watch window to support namespaces.
 - Random() now supports double type values.
 - Added support for WM_MOUSEHOVER, WM_MOUSELEAVE and WM_MOUSEACTIVATE in Windows.ppl.
 - Added support to run Autorun.ppc file, not just Autorun.ppl.
 - Fixed mouse events on sprite to calculate origin positions properly for wParam$ and lParam$.
 - Fixed debug when used with form, not saving code properly.
 - New ExtractFileFromPackageEx() function.
 - Fixed SavePackage to support NULL in Filename and Key parameters.
 - New AddFileToPackageEx() function to allow specifying a package file name.
 - New support for custom layer in Game Level Editor.
 - Fixed Add() to support adding a structure variable to a list.
 - Fixed Find() to support FO_NUMERIC properly.
 - Fixed bug in Find() field index support.
 - Fixed ArrayToList to support strings.
 - Fixed ArrayToList to support arrays of custom sizes.
 - New compiler error message if a Func or Proc is embedded in another one.
 - New IsPointer() function to know if an address is storing a pointer or not.
 - New InputBoxDemo.ppl demo for InputBox and InputQuery functions.
 - Update InputBox.ppl library file.
 - Fixed ShowModal on PC to center form correctly.
 - Fixed VelLimitLow and VelLimitHigh in Game Level Editor.
 - New SpriteVelLimitLow() and SpriteVelLimitHigh() functions.
 - Fixed bugs in Redim().
 - PIDE, ability to use namespaces or not in Visual form editor.
 - Fixed number of arguments checking in = operator. When used with a$, b$, c$ = "ABC" / 3 it now works.