PureBasic 6.00 released !

Developed or developing a new product in PureBasic? Tell the world about it.
Fred
Administrator
Administrator
Posts: 16619
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

PureBasic 6.00 released !

Post by Fred »

Hello Everybody,

The final version is available on your accounts ! It's been a long journey, more than a year and half to create the update, but the support of new processors (and new OS), the upgrade of some core libraries, many bug fixes and new features included will make it worthwhile ! Thanks a lot for your patience, and looking forward for future versions !

- Beta 10 is available, with some more some improvements:

Code: Select all

- reverted the changes from beta 9 about timeout
- Beta 9 is available, with some more some improvements:

Code: Select all

- Added: Timeout options for HttpRequest commands
- Changed: InitNetwork() is no more needed to use network functions (deprecated)
- Standalone debugger is now DPI Aware (Windows)
- Beta 8 is out, with some more changes and improvements:

Code: Select all

- Changed the Mouse library on Windows to use RawInput instead of DirectX to support HighDPI mouse
- Added auto DPI support for Menu and ToolBar library (Windows)
- Fixed the IDE for High DPI (Windows)
- Removed ToolBarStandardButton() as it doesn't support high DPI and is very bad looking
- Beta 7 is out ! It brings French and German docs, as well as some libs updates and fixes:

Code: Select all

- Changed the Movie library on Raspberry to use libVLC as xine doesn't work on it
- Upgraded the Movie library on OS X to support modern OS X version
- Added backface culling for sprite OpenGL subsystem to be faster and be in line with DirectX9/11
- Updated SQLite to 3.38.2
- Updated zlib to 1.12.12
- Updated libpq (PostgreSQL) to 14.2
- Beta 6 is out ! It should be the last beta, it now includes the doc in english so be sure to test it so we won't have any surprises for the final release ! Change log:

Code: Select all

- Added  english documentation for all new features and commands
- Changed: the default subsystem for screen/sprite is now OpenGL on Windows for more consistency. DirectX9 is still  available as a subsystem.
- Changed: OGRE only supports OpenGL now, which ease the porting to Linux/OSX and allow to focus on only GLSL for shaders
- Beta 5 is ready to test ! It features a brand new Raspberry 64-bit version :). Here is the change log, with quite some 3D additions:

Code: Select all

- Added Raspberry 64-bit support !
- Added CreateShader(), CreateShaderMaterial(), MaterialShaderAutoParameter(), MaterialShaderParameter(), MaterialShaderTexture()
- Added optional parameter to MeshFace() to create a quad
- Added optional force vector to WorldGravity()
- Added optional position mode to ApplyEntityForce()
- Added GetEntityMesh(), CreateCubicTexture(), CreateAnimatedMaterial()
- Added new mode to CreateDataMesh(): #PB_Mesh_DiagonalShortestLength, #PB_Mesh_DiagonalClosestNormal, #PB_Mesh_DiagonalAlternate, #PB_Mesh_DiagonalRegular1, #PB_Mesh_DiagonalRegular2
- Added new structure: Vector3, Vector4
- Added predefined shaders: #PB_Material_ColorShader, #PB_Material_PerpixelShader, #PB_Material_BumpShader, #PB_Material_SkyShader, #PB_Material_WaterShader, #PB_Material_WaterShaderRTT, #PB_Material_OceanShader,
- Added new modes for SetMaterialAttribute(): #PB_Material_PointSprite, #PB_Material_DepthBias

- Changed: renamed structures PB_MeshFace -> MeshFace and PB_MeshVertex -> MeshVertex
- Changed: SetMaterialColor() can now use several colortype at once using '|'
- Beta 4 is out ! Here is the change log:

Code: Select all

- Added new optional 'Color' parameter to CreateMaterial()
- Added new optional 'SpecularColor' parameter to MaterialShininess()
- Added new optional 'u' and 'w' parameter to MeshTextureCoordinate()
- Added new optional 'Lod' parameter to CreateCamera()
- Added new mode for AddMaterialLayer(): #PB_Material_ModulateX2, #PB_Material_ModulateX4, #PB_Material_AddSigned, #PB_Material_Substract, #PB_Material_BlendDiffuseAlpha, #PB_Material_BlendCurrentAlpha
- Beta 3 is available, don't hesitate to test it, we are getting closer to final release ! Change log:

Code: Select all

- Changed the name of the /EXE commandline flag to /OUTPUT be more coherent (still work for backcompatibilty but not documented anymore)
- Changed the short version of /CONSTANT from '-o' to '-co' as '-o' is now used for /OUTPUT
- OSVersion(): added support for Windows 11
- Added #PB_Compiler_Optimizer which is set to #True if the optimizer is enabled
- Dropped x86 version of PureBasic for OS X as it's no more supported since OS X Catalina (Minimum supported OS X is now 10.10 - released in 2014).

IDE:
- New contextual constant display for AutoComplete (Fr34k - https://github.com/fantaisie-software/purebasic/pull/183)
- 3 new triggers for custom tools: "OpenFile - Non-PB binary file", "OpenFile - Non-PB text file", "OpenFile - with specific extension" (HeX0R101 - https://github.com/fantaisie-software/purebasic/pull/195)
- New 'Replace' shortcut (CTRL+H) which opens the find dialgo with replace enable (ChrisRfr - https://github.com/fantaisie-software/purebasic/pull/184)
- Bug fixes, thanks to all other contributors !
- Beta 2 is out, all reported bugs have been corrected, don't hesitate to test it with your usual projects ! Change log:

Code: Select all

- Changed the way the map elements are created when using passive syntax, to be more consistent. There is no more a dummy element.
- OSVersion(): added support for OS X 11 and 12
- Beta 1 is now available, we are getting closer to the final release. Feel free to test it with your projects, as we need to Check out what's new:

Code: Select all

- Brand new Raspberry version ! You need to install Raspberry OS to use it, which should run on any Raspberry PI (used a PI 2 for the build)
- Brand new Apple M1 (arm64) version !
- Reworked Linux versions as explained in the blog post: https://www.purebasic.fr/blog/?p=521
- All MacOS X packages are now properly notarized, which means you should be able to install PureBasic easily on any recent OS X.
- Added the C Backend compilers on all PureBasic versions (Linux x86, x64 and OS X x86, x64)
- Alpha 5 is out and includes now DLL creation and the x86 (32-bit) version for Windows ! It also includes newer import libs for Windows on both x86 and x64 so if you needed to import newer Windows functions, it should now be recognized. The 32-bit linker has been as well updated and now support newer lib formats. Don't hesitate to test as usual, the C backend should be good enough for a wider trial.

- Alpha 4 is ready to test ! We fixed almost all reported bugs (except one), so we hope we are closer to a beta release. Next step is adding DLL support and building the C compiler on Linux and OS X. Don't hesitate to give it a try, and report any differences between the ASM and C backend.

- Alpha 3 is available ! This is big milestone for us, as the IDE fully compile and run using the C backend ! It should be a great step over a stable version, we will continue to work on it and iron up all the reported bugs. Thanks to all the testers !

- Alpha is 2 is out ! Thank you a lot to have spent time to test the new version, we have fixed most of the reported bugs, so don't hesistate to give it another try to make it as good as possible. Please also test the regular compiler (ASM backend) to ensure there is no regression on this compiler. Here are the alpha 2 change list:

Code: Select all

- Removed #PB_Compiler_C constant and replaced it with #PB_Compiler_Backend, with #PB_Backend_C and #PB_Backend_Asm values
- Added Purifier support
- Updated fasm, polink, polib and porc to lastest versions
After months of development, we are very proud to release the next generation of PureBasic ! As shared on the blog (https://blog.purebasic.com), we added a new C backend to solve the problem of new CPU architectures.

For now, only the Windows x64 version is available for testing. It's an alpha-version, so don't expect your big programs to compile and run fawlessly on it. The main purpose for now is to squash all the remaining bugs (and it will have probably a ton) to have the C backend at the same level than the current ASM backend. For this, we opened a new specific forum to report C related backend.

How to proceed:
- In the IDE, add a new compiler (File -> Preferences -> Compiler -> Choose 'pbcompilerc' file with the file requester -> Add). It should now appear in the list. In the 'Compiler options', you should be able to select it in the combobox.
- Compile a small program. If something is wrong, try to reduce the faulty code to the smallest snippet and post it in the bug forum.
- Also please test your large programs with the regular ASM backend compiler to ensures everything still work, as we modified a lot of code in it as well.

C Backend limitations:

Code: Select all

- No Label address in datasection (?Label)
- No Label operation in 'Debug' output window
- No DLL creation support (in progress)
- Empty Structure are not supported (may be add a compiler error on PB side ?)
- Float to long rounding are not exactly the same (use bankerrounding)
New stuffs:

Code: Select all

- Added /OPTIMIZER flag to the commandline, and a 'Use code optimizer' checkbox in IDE 'Compiler Options' to turn on C optimizations
- Added #PB_Compiler_32Bit, #PB_Compiler_64Bit and #PB_Processor_C constants
Don't hesitate to play with it and send you feedback ! Of course, don't use it in production, it's an alpha version and could lead to disastrous bugs.

You can download it on your online account.

Have fun !

The Fantaisie Software Team
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: PureBasic 6.00 Alpha 1 released !

Post by StarBootics »

Hello everyone,

I wish I could help but I don't have a computer with Windows x64. But as soon as the Linux version will be available I will. I hope it will be soon. :wink:

I guess we need to start somewhere.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
BarryG
Addict
Addict
Posts: 3292
Joined: Thu Apr 18, 2019 8:17 am

Re: PureBasic 6.00 Alpha 1 released !

Post by BarryG »

Cool, I will try it ASAP. Thanks!
Marc56us
Addict
Addict
Posts: 1477
Joined: Sat Feb 08, 2014 3:26 pm

Re: PureBasic 6.00 Alpha 1 released !

Post by Marc56us »

Installed and tested with some of my (horrible) programs: everything works and the compilation doesn't seem to be slower (but my biggest project is only 11000 lines)

I'm Happy, thanks Fred and Team 8)
User avatar
STARGÅTE
Addict
Addict
Posts: 2067
Joined: Thu Jan 10, 2008 1:30 pm
Location: Germany, Glienicke
Contact:

Re: PureBasic 6.00 Alpha 1 released !

Post by STARGÅTE »

I try to start the IDE but I receive the following error:
---------------------------
Error
---------------------------
An Error has been detected in the IDE!

Error: Invalid memory access

File : c:\purebasic\svn\v5.80\GitHub\purebasic-dev\PureBasicIDE\AddTools.pb

Line : 270



IDE build on 05/19/2021 [10:32] by Fred

Branch: Revision:
---------------------------
OK
---------------------------
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Lizard - Script language for symbolic calculations and moreTypeface - Sprite-based font include/module
User avatar
RSBasic
Moderator
Moderator
Posts: 1218
Joined: Thu Dec 31, 2009 11:05 pm
Location: Gernsbach (Germany)
Contact:

Re: PureBasic 6.00 Alpha 1 released !

Post by RSBasic »

Great! Thank you for your new version!
Image
Image
User avatar
STARGÅTE
Addict
Addict
Posts: 2067
Joined: Thu Jan 10, 2008 1:30 pm
Location: Germany, Glienicke
Contact:

Re: PureBasic 6.00 Alpha 1 released !

Post by STARGÅTE »

Now, I tried to use the current IDE and added the C-compiler, but than I get, just with a simple "Debug 1":
---------------------------
PureBasic - Assembler error
---------------------------
gcc: error: CreateProcess: No such file or directory


---------------------------
OK
---------------------------
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Lizard - Script language for symbolic calculations and moreTypeface - Sprite-based font include/module
Little John
Addict
Addict
Posts: 4519
Joined: Thu Jun 07, 2007 3:25 pm
Location: Berlin, Germany

Re: PureBasic 6.00 Alpha 1 released !

Post by Little John »

Cool. 8) This is exciting news!
Fred
Administrator
Administrator
Posts: 16619
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: PureBasic 6.00 Alpha 1 released !

Post by Fred »

Marc56us wrote: Wed May 19, 2021 10:38 am Installed and tested with some of my (horrible) programs: everything works and the compilation doesn't seem to be slower (but my biggest project is only 11000 lines)

I'm Happy, thanks Fred and Team 8)
It looks suspicious :). Are you sure you are using the new C backend ? You need to change it manually in Compiler Options.
Marc56us
Addict
Addict
Posts: 1477
Joined: Sat Feb 08, 2014 3:26 pm

Re: PureBasic 6.00 Alpha 1 released !

Post by Marc56us »

Now, I tried to use the current IDE and added the C-compiler, but than I get, just with a simple "Debug 1":
In the IDE (6.00) , add a new compiler (File -> Preferences -> Compiler -> Choose 'pbcompilerc' file with the file requester -> Add

As a beta version, install v6 in another directory of 5.x :wink:

Edit: I was wrong, using 6.00 compiler (so ASM) not C backend
Last edited by Marc56us on Wed May 19, 2021 11:20 am, edited 1 time in total.
Fred
Administrator
Administrator
Posts: 16619
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: PureBasic 6.00 Alpha 1 released !

Post by Fred »

STARGÅTE wrote: Wed May 19, 2021 10:52 am Now, I tried to use the current IDE and added the C-compiler, but than I get, just with a simple "Debug 1":
---------------------------
PureBasic - Assembler error
---------------------------
gcc: error: CreateProcess: No such file or directory


---------------------------
OK
---------------------------
It means it doesn't find 'as.exe' mostly. Did you just copy the old IDE in the new 6.00 directory ?
wombats
Enthusiast
Enthusiast
Posts: 663
Joined: Thu Dec 29, 2011 5:03 pm

Re: PureBasic 6.00 Alpha 1 released !

Post by wombats »

Fred wrote: Wed May 19, 2021 11:01 am
STARGÅTE wrote: Wed May 19, 2021 10:52 am Now, I tried to use the current IDE and added the C-compiler, but than I get, just with a simple "Debug 1":
---------------------------
PureBasic - Assembler error
---------------------------
gcc: error: CreateProcess: No such file or directory


---------------------------
OK
---------------------------
It means it doesn't find 'as.exe' mostly. Did you just copy the old IDE in the new 6.00 directory ?
I get the same error. I posted in the bug forum.
Marc56us
Addict
Addict
Posts: 1477
Joined: Sat Feb 08, 2014 3:26 pm

Re: PureBasic 6.00 Alpha 1 released !

Post by Marc56us »

Fred wrote: Wed May 19, 2021 11:00 am
Marc56us wrote: Wed May 19, 2021 10:38 am Installed and tested with some of my (horrible) programs: everything works and the compilation doesn't seem to be slower (but my biggest project is only 11000 lines)

I'm Happy, thanks Fred and Team 8)
It looks suspicious :). Are you sure you are using the new C backend ? You need to change it manually in Compiler Options.
Oui, tu as raison, c'était 6.00 et pas C backend :cry:
User avatar
STARGÅTE
Addict
Addict
Posts: 2067
Joined: Thu Jan 10, 2008 1:30 pm
Location: Germany, Glienicke
Contact:

Re: PureBasic 6.00 Alpha 1 released !

Post by STARGÅTE »

Fred wrote: Wed May 19, 2021 11:01 am
STARGÅTE wrote: Wed May 19, 2021 10:52 am Now, I tried to use the current IDE and added the C-compiler, but than I get, just with a simple "Debug 1":
---------------------------
PureBasic - Assembler error
---------------------------
gcc: error: CreateProcess: No such file or directory


---------------------------
OK
---------------------------
It means it doesn't find 'as.exe' mostly. Did you just copy the old IDE in the new 6.00 directory ?
I make a fresh installation of the PB 6.00 version, and deleted also all app-data entries.
The Location is: "C:\Program Files\PureBasic600\Compilers"
Normal Compiler works.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Lizard - Script language for symbolic calculations and moreTypeface - Sprite-based font include/module
Marc56us
Addict
Addict
Posts: 1477
Joined: Sat Feb 08, 2014 3:26 pm

Re: PureBasic 6.00 Alpha 1 released !

Post by Marc56us »

gcc: error: CreateProcess: No such file or directory
I think we have to add gcc.exe PATH somewhere (PB IDE ? Win PATH ?)
:wink:

Edit
Yes, solved for me
added PB Compiler path to windows env PATH
Last edited by Marc56us on Wed May 19, 2021 12:31 pm, edited 2 times in total.
Post Reply