Purebasic 4.30 Beta 1 est arrivé..haaaaaaaaaarg
Publié : lun. 15/sept./2008 18:45
Incroyable elle est là elle est sortie :
http://www.purebasic.fr/english/viewtop ... 142#259142
http://www.purebasic.fr/english/viewtop ... 142#259142
Code : Tout sélectionner
- new PureBasic 64bit Windows version
- new PureBasic x86 version for OSX
- Ogre update, and many new commands (see below)
- Complete restructuring of the Debugger for better stability and support of the new platforms
- Added: OnError support for all platforms
- Added: Support for multiple Joysticks
- Added: Compiler warning support
- Added: Debugger warning support
- Added: Language support for Compiler and Debugger (only the compiler is translated in beta 1)
- Added: support for And/Or in CompilerIf statements
- Added: Compiler constant: #PB_Compiler_Processor (= #PB_Processor_x86, ..._x64, ..._PowerPC, ..._mc68000)
- Added: New integer type ".i" which is long/quad for 32bit/64bit respectively
- Added: Improved memory allocation for LinkedList and some other libraries
New features in the Libraries:
- Added: ArraySize()
- Added: CatchModule()
- Added: UseJPEG2000ImageDecoder() and UseJPEG2000ImageEncoder()
- Added: DesktopX(), DesktopY()
- Added: Semaphore commands (CreateSemaphore(), FreeSemaphore(), SignalSemaphore(), WaitSemaphore(), TrySemaphore())
- Added: Window events #PB_Event_WindowMaximize, #PB_Event_WindowMinimize, #PB_Event_WindowRestore
- Added: WindowBounds() to set the minimum/maximum Window size
- Added: #PB_Ignore support to AddStatusBarField()
- Changed: new style parameter for FontRequester()
- Changed: InitScintilla() parameter is now optional
- Changed: Hex(), Bin() have an optional type parameter (use #PB_Long, #PB_Quad) to change the behavior for negative numbers
Incompatible changes:
- Renamed: CountList() to ListSize()
- Renamed: ClearGadgetItemList() to ClearGadgetItems()
- Renamed: CameraProjection() to CameraProjectionMode()
- Renamed: #Byte, #Long, #Word etc to #PB_Byte, #PB_Long, #PB_Word (for StrU, Hex, Bin)
- Removed: CreateGadgetList() - OpenWindow() now calls this implicitly. UseGadgetList() can be used for API windows
- Removed: ChangeListIconGadgetDisplay() - use SetGadgetAttribute(#Gadget, #PB_ListIcon_DisplayMode, Mode) instead
- Removed: StrQ(), HexQ(), BinQ(), ValQ(), IntQ(). Just use Str(), Hex(), Bin(), etc. instead, they now work with quad
- Removed: Backward compatibility behavior in ButtonImageGadget() (now works as documented since 4.20 only)
- Changed: AddElement() and similar LinkedList functions return the data pointer now (not the list header)
- Changed: OnError lib rewritten, with some commands renamed or remove (see below)
- Changed: RotateEntity(), RotateCamera() and RotateBillboard() x,y rotation axis
- Changed: The Joystick commands have an extra #Joystick parameter now. InitJoystick() returns the number of available Joysticks
- Changed: The ComboBoxGadget() "Height" parameter now affects the entry field height, not the dropdown box.
- Changed: Read now does not determine its type by the variable used, but as other commands with "Read.l", "Read.s" etc.
NOTE: "Read x.b" will now read a long, as the default type will be used for the Read, and then converted to byte!
Renamed and new OnError library commands:
OnErrorExit() - Exit the program if an error occurs
OnErrorCall(@ErrorHandler()) - Call the given error handler if an error occurs
OnErrorGoto(?LabelAddress) - Continue execution at the given label if an error occurs
OnErrorDefault() - Uninstall any error handler so the default OS action is taken on further errors
ErrorCode() - Returns the current error code
ErrorMessage([ErrorNumber]) - Returns a string message for the current error or the given error number
ErrorLine() - Returns the line number at which the current error occured
ErrorFile() - Returns the source filename in which the current error occured
ErrorAddress() - get the Code address at which the error happened
ErrorTargetAddress() - get the Memory address for a memory access error.
ErrorRegister(Register) - get the content of a register at the time of the error
RaiseError(ErrorNumber) - Raise the given error and call the error handler or exit
- Note: Resuming the code after the OnErrorCall() handler is no longer possible
Commands removed from the OnError lib wihout replacement:
OnErrorResume()
DisASMCommand()
GetDisASMString()
GetCurrentEIP()
GoToEIP()
ClearError()
GetErrorDLL()
GetErrorCounter()