Huge Easter Egg: PureBasic 3.90 just eclosed !
What a nice surprise!
Thank you to Fred and all of the PureBasic team.
No viruses found using "a squared" antivirus.
The continuous improvement in PureBasic always surprise me and the smartupdate (a great tool) is unuseful for me because I look every two/three days at www.purebasic/news to see if Fred has cooked something for me.
It's delicious to often look at this page. It's like a search for a particular girl thtat you hope to reencounter. When the news page tell me that a new release is downloadable is like I've found that girl.
Ciao
Alberto
Thank you to Fred and all of the PureBasic team.
No viruses found using "a squared" antivirus.
The continuous improvement in PureBasic always surprise me and the smartupdate (a great tool) is unuseful for me because I look every two/three days at www.purebasic/news to see if Fred has cooked something for me.
It's delicious to often look at this page. It's like a search for a particular girl thtat you hope to reencounter. When the news page tell me that a new release is downloadable is like I've found that girl.
Ciao
Alberto
-
- User
- Posts: 84
- Joined: Sat Jul 19, 2003 6:45 pm
- Location: UK
- NoahPhense
- Addict
- Posts: 1999
- Joined: Thu Oct 16, 2003 8:30 pm
- Location: North Florida
Re: Huge Easter Egg: PureBasic 3.90 just eclosed !
Thanks guys.. very sweet.. ok time to break it.. (jk)Fred wrote:Hi folks !
Here we go, the final v3.90 is finally out and I must said it was a big work to finish all this while the sun shined in Paris. Thankfully, Berikco, Fr34k and Andre helped a lot to make it possible, so kudos to all of them !
Grab it while it's hot:
http://www.purebasic.com
Have fun,
Fred.
PS: time to sleep
Just incase anyone didn't know, Berikco's VD is already outdated.

Be sure to get it from his site..
http://www.purebasic.be/download.htm
- np
ps - any ETA on a full download? Or can we install the demo, and replace
the datakey file.. ?
After installing v3.90 and updating libs from purebasic.com/update ...
I'm still not able to compile my source. I have got this errors:
Any suggestions?
cya dige
I'm still not able to compile my source. I have got this errors:
Code: Select all
gadgetextension: multiple definition of _PB_AddGadgetColumn_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ButtonImageGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ButtonImageGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ChangeListIconGadgetDisplay_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_CloseTreeGadgetNode_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ContainerGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ContainerGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_EditorGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_EditorGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_GadgetToolTip_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_HyperLinkGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_HyperLinkGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ImageGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ImageGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_IPAddressGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ListIconGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ListIconGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_OpenTreeGadgetNode_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_PanelGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ProgressBarGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ProgressBarGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ScrollAreaGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ScrollAreaGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ScrollBarGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_ScrollBarGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_SpinGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_SplitterGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_SplitterGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_TrackBarGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_TrackBarGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_TreeGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_TreeGadget_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_WebGadget2_DEBUG
first definition is in file linkedlistexten
gadgetextension: multiple definition of _PB_WebGadget_DEBUG
first definition is in file linkedlistexten
Functions\Image .text: undefined reference to '_OleUninitialize@0'
Functions\Image .text: undefined reference to '_OleInitialize@4'
Functions\Image .text: undefined reference to '_CreateStreamOnHGlobal@12'
movie.obj .text: undefined reference to '_CoUninitialize@0'
cya dige
This part is from the OLE lib (we talked about this, I still don't know what can be happening):
Code: Select all
Functions\Image .text: undefined reference to '_OleUninitialize@0'
Functions\Image .text: undefined reference to '_OleInitialize@4'
Functions\Image .text: undefined reference to '_CreateStreamOnHGlobal@12'
movie.obj .text: undefined reference to '_CoUninitialize@0'
El_Choni
What userlib? I'm having the same thing happen
Except I get :
multiple definition of _PB_PeekB_DEBUG
multiple definition of _PB_PeekW_DEBUG
multiple definition of _PB_PeekL_DEBUG
multiple definition of _PB_PeekS_DEBUG
multiple definition of _PB_PeekS2_DEBUG
Except I get :
multiple definition of _PB_PeekB_DEBUG
multiple definition of _PB_PeekW_DEBUG
multiple definition of _PB_PeekL_DEBUG
multiple definition of _PB_PeekS_DEBUG
multiple definition of _PB_PeekS2_DEBUG
-Mitchell
Check out kBilling for all your billing software needs!
http://www.k-billing.com
Code Signing / Authenticode Certificates (Get rid of those Unknown Publisher warnings!)
http://codesigning.ksoftware.net
Check out kBilling for all your billing software needs!
http://www.k-billing.com
Code Signing / Authenticode Certificates (Get rid of those Unknown Publisher warnings!)
http://codesigning.ksoftware.net
Karbon:
that was a problem with the 'Misc' lib. get a new one here:
http://www.purebasic.com/update/
Timo
that was a problem with the 'Misc' lib. get a new one here:
http://www.purebasic.com/update/
Timo
quidquid Latine dictum sit altum videtur
- NoahPhense
- Addict
- Posts: 1999
- Joined: Thu Oct 16, 2003 8:30 pm
- Location: North Florida
..
What functions are in this particular Lib ?freak wrote:Karbon:
that was a problem with the 'Misc' lib. get a new one here:
http://www.purebasic.com/update/
Timo
- np
Hi Fred & Team,
Thanks a lot for v3.90.
Very COOL!
The SmartUpdater is also a TOP tool.
@Fred: May you have a look here: viewtopic.php?t=9194. Your tip has still some problems with ReplaceString() and RemoveString(). Are there any possibilities to fix this?
Greetings,
F.
Thanks a lot for v3.90.
Very COOL!
The SmartUpdater is also a TOP tool.
@Fred: May you have a look here: viewtopic.php?t=9194. Your tip has still some problems with ReplaceString() and RemoveString(). Are there any possibilities to fix this?
Code: Select all
Procedure SetStringManipulationBufferSize(Bytes)
PBStringBase.l = 0
PBMemoryBase.l = 0
!MOV eax, dword [PB_StringBase]
!MOV [esp+4],eax
!MOV eax, dword [PB_MemoryBase]
!MOV [esp+8],eax
HeapReAlloc_(PBMemoryBase, #GMEM_ZEROINIT, PBStringBase, Bytes)
!MOV dword [_PB_StringBase],eax
EndProcedure
; Set the buffer size for all strings to 1 MB.
SetStringManipulationBufferSize(1048576)
A$ = Space(1000000)+"abc d "
; CRASH - ReplaceString()
A$ = ReplaceString(A$,"abc","def")
Debug A$
F.
pIII@1Ghz, wXP, 512MB, pb3.93full
Re: Huge Easter Egg: PureBasic 3.90 just eclosed !
rest well, good knight. --jbFred wrote:PS: time to sleep
-
- New User
- Posts: 3
- Joined: Tue Jan 27, 2004 4:08 am
Removing features/functions too quickly?
We've just started using PureBasic for some commercial applications. It's a great product and it fits our needs nicely so far.
In reading through the history of changes for the lastest 3.90 version, I noticed that some working functions were removed, presumably because some new enhancements made them redundant or unnecessary.
From my perspective, it seems a bit radical to have to re-code an application just to get some of the other enhancements or bug fixes. It seems like there should be more time to update code before having to ditch it.
In other development tools I've used, features were eliminated over a period of time so that new replacement features could go through a shake-out period and give the developers a chance to learn how to do things the new way.
Now with all that said, I have little idea of what's involved in writing a language/compiler so I really don't know how easy it is to let old or outdated functions die slowly.
It's just concerning because I could see this becoming a major headache if something critical and tightly integrated into our application gets removed forcing a choice between re-writing or not using the latest and hopefully greatest libraries and compiler.
What I'm asking for seems to make sense but maybe I'm just being unreasonable or ignorant. I'm hoping for some guidance or feedback from the primary PureBasic developers on this.
-SM
In reading through the history of changes for the lastest 3.90 version, I noticed that some working functions were removed, presumably because some new enhancements made them redundant or unnecessary.
From my perspective, it seems a bit radical to have to re-code an application just to get some of the other enhancements or bug fixes. It seems like there should be more time to update code before having to ditch it.
In other development tools I've used, features were eliminated over a period of time so that new replacement features could go through a shake-out period and give the developers a chance to learn how to do things the new way.
Now with all that said, I have little idea of what's involved in writing a language/compiler so I really don't know how easy it is to let old or outdated functions die slowly.
It's just concerning because I could see this becoming a major headache if something critical and tightly integrated into our application gets removed forcing a choice between re-writing or not using the latest and hopefully greatest libraries and compiler.
What I'm asking for seems to make sense but maybe I'm just being unreasonable or ignorant. I'm hoping for some guidance or feedback from the primary PureBasic developers on this.
-SM
About long strings
Just some words about long strings ...
This confirms that some of us know much more than just use PB 'as it is' but have issues with regular PB commands :
I introduce here some code that shows it is possible to declare higher than 64K strings, but if you try to add any string management instruction upon it crashes.
BTW this shows a way 'how to do it'
Enjoy and play with ...
This confirms that some of us know much more than just use PB 'as it is' but have issues with regular PB commands :
I introduce here some code that shows it is possible to declare higher than 64K strings, but if you try to add any string management instruction upon it crashes.
BTW this shows a way 'how to do it'
Code: Select all
#Window_Main = 17
#Gadget_Button = 23
#Gadget_Editor = 24
#Event_Escape = 99
BasicString.s = " : Voyez le brick géant que j'examine près du wharf" + Chr(13) + Chr(10)
Len_BasicString = Len(BasicString) + 6
;
; InitString()
;
String_Size_Limit = $400000
! PUSH dword [v_String_Size_Limit] ; 64MB String init
! PUSH dword 8
! PUSH dword [PB_MemoryBase]
! CALL _HeapAlloc@12
! MOV [PB_StringBase],eax
LongString.s ; This declared string variable has a max length set to String_Size_Limit
*LongBuffer = AllocateMemory(String_Size_Limit)
i = 1
Repeat
PokeS(*LongBuffer + (i - 1) * Len_BasicString, RSet(Str(i), 7, " ") + BasicString)
If i % 1000 = 0
Debug Str(i) + " " + Str((i - 1) * Len_BasicString) + " " + RSet(Hex((i - 1) * Len_BasicString), 8, "0")
EndIf
i + 1
Until i * Len_BasicString > String_Size_Limit
LongString = PeekS(*LongBuffer)
FreeMemory(*LongBuffer)
Debug Str(i) + " " + Str(Len(LongString)) + " " + RSet(Hex(Len(LongString)), 8, "0")
;
; InitString()
;
String_Size_Limit = 64000
! PUSH dword [v_String_Size_Limit] ; PB Standard String init
! PUSH dword 8
! PUSH dword [PB_MemoryBase]
! CALL _HeapAlloc@12
! MOV [PB_StringBase],eax
ShortString.s
i = 1
Repeat
ShortString = ShortString + RSet(Str(i), 6, " ") + BasicString
If i % 1000 = 0
Debug Str(i) + " " + Str(Len(ShortString)) + " " + RSet(Hex(Len(ShortString)), 8, "0")
EndIf
i + 1
Until Len(ShortString) > 64000 - Len(BasicString) - 6 - 2
Debug Str(i) + " " + Str(Len(ShortString)) + " " + RSet(Hex(Len(ShortString)), 8, "0")
WindowXSize.l = 640
WindowYSize.l = 480
WindowTitle.s = "Long string test"
If OpenWindow(#Window_Main, 0, 0, WindowXSize, WindowYSize, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered, WindowTitle)
AddKeyboardShortcut(#Window_Main, #PB_Shortcut_Escape, #Event_Escape)
If CreateGadgetList(WindowID())
hEditorGadget = EditorGadget(#Gadget_Editor, 0, 0, WindowXSize, WindowYSize, #PB_Container_Raised)
EndIf
SetGadgetText(#Gadget_Editor, LongString)
lLongString = Len(LongString)
AddGadgetItem(#Gadget_Editor, -1, "Long string length is : " + Str(lLongString) + " (" + Hex(lLongString) + ")")
SetGadgetState(#Gadget_Editor, 100)
Quit = #FALSE
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Quit = #TRUE
Case #PB_EventMenu
Select EventMenuID()
Case #Event_Escape
Quit = #TRUE
EndSelect
Case #PB_EventGadget
Select EventGadgetID()
Case #Gadget_Editor
Result = SendMessage_(hEditorGadget, #EM_GETSEL, 0, 0)
w1 = (Result & $FFFF0000) >> 16
w2 = Result & $0000FFFF
Debug Str(w2) + " " + Str(w1) + " " + Str(w1 - w2)
Case #Gadget_Button
EndSelect
EndSelect
Until Quit
CloseWindow(0)
EndIf
End
My avatar is a small copy of the 4x1.8m image I created and exposed at 'Le salon international du meuble à Paris' january 2004 in Matt Sindall's 'Shades' designers exhibition. The original laminated print was designed using a 150 dpi printout.