PureBasic 5.10 - Granted wishes release - is out !

Developed or developing a new product in PureBasic? Tell the world about it.
X
Enthusiast
Enthusiast
Posts: 311
Joined: Tue Apr 04, 2006 6:27 am

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by X »

Congrats! My eyes kind of blurred over the list as there were so many great things in it.

A quick question in case I have missed it, is it now possible to color 2d surfaces?
ebs
Enthusiast
Enthusiast
Posts: 557
Joined: Fri Apr 25, 2003 11:08 pm

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by ebs »

Hi Fred,

Thank you for all the work put in on this 5.10 beta release.

I'm doing some testing and I noticed something odd:
I'm running Windows XP SP3 and if I have the Windows Media Player running,
the PureBasic IDE will lock up on the initial splash screen and never gets to the IDE screen.
When I shut down WMP, the IDE loads successfully, but will lock up at random times if I restart WMP after loading.

I most often use jaPBe, so I don't know if this behavior is new, or if it is specific to my PC,
but I don't remember having this problem with the version 4.XX releases.

Regards,
Eric
User avatar
kenmo
Addict
Addict
Posts: 2033
Joined: Tue Dec 23, 2003 3:54 am

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by kenmo »

Finally I can play with the 5.10 beta.... I was thinking about it all week :lol: These are my personal favorites:
Fred wrote:

Code: Select all

- Added: CocoaMessage() for OS X
- Added: 'Check syntax' to only compile the code without build/running an executable (/CHECK switch or in the IDE compîler menu)
- Added: Multicharacter comparison in StringField()
- Added: Timeout, LocalIP$ and LocalPort parameter to OpenNetworkConnection()
- Added: GetSoundPosition(), SetSoundPosition(), SoundLength(), PauseSound(), ResumeSound(), SoundStatus()
- Added: #PB_All support for SoundVolume()
- Added: InputRequester() added #PB_InputRequester_Password flag
- Added: Support for FreeXXX(#PB_All) for all free commands
- Added: Compiler Constant: #PB_Compiler_IsIncludeFile, #PB_Compiler_IsMainFile, #PB_Compiler_Filename (filename without path)
- Added: Bool() compiler operator. Boolean operations are now forbidden without Bool().
- Added: CompilerElseIf
- Added: UpdateMesh(), EnableManualEntityBoneControl(), MoveEntityBone(), RotateEntityBone()
- Changed: disallow native type for pointers
Also:

Code: Select all

- Added: Line continuation feature, with the following operands: ',' '|' '+' And Or Xor
Any reason it's not enabled for '&' '*' '/' '-' etc? :?:
Poshu
Enthusiast
Enthusiast
Posts: 459
Joined: Tue Jan 25, 2005 7:01 pm
Location: Canada

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by Poshu »

°_°; Somehow, I feel like this 5.10 is a greater milestone than than the 5.00 was.

Well, if some ironing on the linux version of the IDE could be made, PB would be like... Perfect?
dige
Addict
Addict
Posts: 1391
Joined: Wed Apr 30, 2003 8:15 am
Location: Germany
Contact:

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by dige »

I'm confused a bit. The Pointer issue does not affects me, because structured pointer still possible. :-D
But an important note. New features initially had no constants but numbers as parameters. For example StrU ().
This should now be converted into the corresponding PB necessarily constants, since the assignments have changed.

Code: Select all

                  ; PB 5.10   ; PB 4.61
Debug #PB_Byte    ; 1         ; 0
Debug #PB_Ascii   ; 24        ; 8
Debug #PB_Word    ; 3         ; 1
Debug #PB_Unicode ; 25        ; 9
Debug #PB_Long    ; 5         ; 2
Debug #PB_Quad    ; 13        ; 4
"Daddy, I'll run faster, then it is not so far..."
sartic
Enthusiast
Enthusiast
Posts: 143
Joined: Thu Aug 26, 2010 8:26 am

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by sartic »

"Removed: SendNetworkFile(), RecieveNetworkFile(), #PB_NetworkEvent_File to avoid possible security hole"

do not like it i have one old program that use this 2 commands.
maybe it is time to rewrite it :(
Registered user of PB (on Linux Mint 21.1 & Win 10 64bit)
User avatar
Psychophanta
Always Here
Always Here
Posts: 5153
Joined: Wed Jun 11, 2003 9:33 pm
Location: Anare
Contact:

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by Psychophanta »

Many many many... THANKS Fred and ALL PB staff :!:
http://www.zeitgeistmovie.com

while (world==business) world+=mafia;
User avatar
grabiller
Enthusiast
Enthusiast
Posts: 309
Joined: Wed Jun 01, 2011 9:38 am
Location: France - 89220 Rogny-Les-Septs-Ecluses
Contact:

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by grabiller »

Thanks for the new release Fred.

And thanks for the UndefineMacro :-]
skywalk wrote:
dige wrote:Great release :-D Thanks Fred and the Team!
but .. "disallow native type for pointers" .. brings me a lot of work
Yes, this was a pain for me too, but I changed my C header converter from *pointer.nativetype to *pointer_nativetype. So really, not as bad as I initially thought.
I'm a bit puzzled though about the benefit to forbid *pointer.nativetype. I understand on your side it's useless, but on our side it is very useful when we create prototypes or procedure declarations when importing libraries. It's an elegant and simple way for us to keep track of what kind of data a pointer points to.

Now we have to embed the type in the name of the variable or write comments, which is far less efficient. With previous versions, it does not hurt to have *pointer.nativetype right ? Plus now it breaks consistency as we can use structure types on pointers but not atomic types anymore. Just.. why ?

This kind of sudden limitation makes us feel treated like children by a professor who decide rules to make him more comfortable, but forgot about the comfort of his students.

In short, what's the real benefit of this ? I see none. Only drawbacks (revisiting hundreds or even thousands of lines of code/interfaces/prototypes/procedures, time better spent to actually do coding).

Can you not put this as a compiler toggle/option or something ?
guy rabiller | radfac founder / ceo | raafal.org
itto
User
User
Posts: 12
Joined: Fri Jul 27, 2012 8:12 pm
Location: Italy
Contact:

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by itto »

mother of god *_*
Fred
Administrator
Administrator
Posts: 18162
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by Fred »

grabiller wrote:Thanks for the new release Fred.

And thanks for the UndefineMacro :-]
skywalk wrote:
dige wrote:Great release :-D Thanks Fred and the Team!
but .. "disallow native type for pointers" .. brings me a lot of work
Yes, this was a pain for me too, but I changed my C header converter from *pointer.nativetype to *pointer_nativetype. So really, not as bad as I initially thought.
I'm a bit puzzled though about the benefit to forbid *pointer.nativetype. I understand on your side it's useless, but on our side it is very useful when we create prototypes or procedure declarations when importing libraries. It's an elegant and simple way for us to keep track of what kind of data a pointer points to.

Now we have to embed the type in the name of the variable or write comments, which is far less efficient. With previous versions, it does not hurt to have *pointer.nativetype right ? Plus now it breaks consistency as we can use structure types on pointers but not atomic types anymore. Just.. why ?

This kind of sudden limitation makes us feel treated like children by a professor who decide rules to make him more comfortable, but forgot about the comfort of his students.

In short, what's the real benefit of this ? I see none. Only drawbacks (revisiting hundreds or even thousands of lines of code/interfaces/prototypes/procedures, time better spent to actually do coding).

Can you not put this as a compiler toggle/option or something ?
We don't change things if it's not necessary, or only to annoy you. The problem was than it was confusing for beginners, as they didn't understand the difference between *Pointer.l and *Pointer.f. And for a good reason: there is none. Now, you will have to use the long syntax if you want to keep track of pointed thing, and while it's a bit longer to type, it also makes sens, which is the main goal for us: be consistent. You can write: *Pointer.Long and *Pointer.Float.
User avatar
IceSoft
Addict
Addict
Posts: 1682
Joined: Thu Jun 24, 2004 8:51 am
Location: Germany

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by IceSoft »

Fred wrote:We don't change things if it's not necessary, or only to annoy you. The problem was than it was confusing for beginners, as they didn't understand the difference between *Pointer.l and *Pointer.f. And for a good reason: there is none. Now, you will have to use the long syntax if you want to keep track of pointed thing, and while it's a bit longer to type, it also makes sens, which is the main goal for us: be consistent. You can write: *Pointer.Long and *Pointer.Float.
But It is not consistent for ProcedureReturn pointers.
Belive! C++ version of Puzzle of Mystralia
<Wrapper>4PB, PB<game>, =QONK=, PetriDish, Movie2Image, PictureManager,...
Little John
Addict
Addict
Posts: 4777
Joined: Thu Jun 07, 2007 3:25 pm
Location: Berlin, Germany

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by Little John »

IceSoft wrote:But It is not consistent for ProcedureReturn pointers.
What do you mean with "ProcedureReturn pointers"?
Could you please provide some small code that illustrates your point?

Thanks, Little John
User avatar
IceSoft
Addict
Addict
Posts: 1682
Joined: Thu Jun 24, 2004 8:51 am
Location: Germany

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by IceSoft »

Little John wrote:
IceSoft wrote:But It is not consistent for ProcedureReturn pointers.
What do you mean with "ProcedureReturn pointers"?
Could you please provide some small code that illustrates your point?

Thanks, Little John
I can not define the pointer type as return value.

Here a pseudo code example:

Code: Select all

Declare.<pointer of structure> myProcedure()
This example raising an syntax check error (of course, it is a structure as return value not a <structure pointer>)

Code: Select all

Declare.Long test()
Belive! C++ version of Puzzle of Mystralia
<Wrapper>4PB, PB<game>, =QONK=, PetriDish, Movie2Image, PictureManager,...
User avatar
niijel
User
User
Posts: 24
Joined: Sun Oct 30, 2005 7:55 pm

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by niijel »

thank-you Fred :)
User avatar
STARGÅTE
Addict
Addict
Posts: 2226
Joined: Thu Jan 10, 2008 1:30 pm
Location: Germany, Glienicke
Contact:

Re: PureBasic 5.10 - Granted wishes release - is out !

Post by STARGÅTE »

thx for #PB_Compiler_IsIncludeFile and #PB_Compiler_IsMainFile!
Now I can add a sample code in the include, and it will not compile if it is included, only if the include run alone.
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
Post Reply