PureBasic 6.00 released !

Developed or developing a new product in PureBasic? Tell the world about it.
User avatar
netmaestro
PureBasic Bullfrog
PureBasic Bullfrog
Posts: 8425
Joined: Wed Jul 06, 2005 5:42 am
Location: Fort Nelson, BC, Canada

Re: PureBasic 6.00 Alpha 2 released !

Post by netmaestro »

That should be fine.
BERESHEIT
Axolotl
Enthusiast
Enthusiast
Posts: 435
Joined: Wed Dec 31, 2008 3:36 pm

Re: PureBasic 6.00 Alpha 2 released !

Post by Axolotl »

spacebuddy wrote: Mon Jun 21, 2021 5:18 pm I am getting this error in A 2 release

POLINK: fatal error: File not found: 'C:\Program.obj'

How to continue to test?
Moving temporarilly the Installation to a dir without spaces. I.e. c:\Purebasic600
Mostly running PureBasic <latest stable version and current alpha/beta> (x64) on Windows 11 Home
User avatar
DeanH
Enthusiast
Enthusiast
Posts: 223
Joined: Wed May 07, 2008 4:57 am
Location: Adelaide, South Australia
Contact:

Re: PureBasic 6.00 Alpha 2 released !

Post by DeanH »

Just tried it and an error appeared when compiling. The error is "Can't assign a pointer to a float or double item."
It is in the Printer_Lib library, which I use to manage printouts. This compiles and runs perfectly in 5.73.
The error involves a pointer that is part of a Windows structure OUTLINETEXTMETRIC.
*otmpFamilyName is where the error occurs but there are also 3 other pointers within the structure, too.
The statement in Printer_Lib where the error occurs is res=OTM\otmpFamilyName within a large Select statement.
The variable is declared as res.d within the ipprint_GetTextMetrics() function.

I was able to work around this by declaring res as an integer instead of double, then having rev.d=res to reassign the int to a double, then returning rev from the procedure. It was the only spot that stopped compiling.
Procedure.d ipprint_GetOutlineTextMetrics(Type.l)
Protected res.i,rev.d,size,OTM.OUTLINETEXTMETRIC ;,px,py changed res.d to res.i and added rev.d
...
rev=res
ProcedureReturn rev
EndProcedure

Also, I checked the SQLite verison. It is 3.33. 3.35 onwards contains a useful new DROP COLUMN function. Is the embedded SQLite to be updated as well?
User avatar
Saki
Addict
Addict
Posts: 830
Joined: Sun Apr 05, 2020 11:28 am
Location: Pandora

Re: PureBasic 6.00 Alpha 2 released !

Post by Saki »

Hi, does anyone know a solution for the C Backend ?

Code: Select all

Procedure IsDPIaware_BF()
    CompilerIf #PB_Compiler_Backend=#PB_Backend_C
      MessageRequester(" C Backend hint", "Check PB Compiler option DPI aware"+#LF$+#LF$+"To time not supported")
      ProcedureReturn 0
    CompilerElse
      CompilerIf #PB_Compiler_OS=#PB_OS_Windows And #PB_Compiler_Version>=570
        Protected DPI_flag.l
        EnableASM
        MOV eax, dword [PB_Compiler_DPIAware]
        MOV DPI_flag, eax
        ProcedureReturn DPI_flag.l
        DisableASM
      CompilerEndIf 
      ProcedureReturn 0
    CompilerEndIf
  EndProcedure
  
地球上の平和
User avatar
mk-soft
Always Here
Always Here
Posts: 5335
Joined: Fri May 12, 2006 6:51 pm
Location: Germany

Re: PureBasic 6.00 Alpha 2 released !

Post by mk-soft »

Code: Select all

! extern int PB_Compiler_DPIAware;
Debug PB_Compiler_DPIAware
At time inside module

Code: Select all

Procedure DPIAware()
  ! extern int PB_Compiler_DPIAware;
  ! return PB_Compiler_DPIAware;
EndProcedure

PB_Compiler_DPIAware = DPIAware()

Debug PB_Compiler_DPIAware
Complet

Code: Select all


CompilerIf Not Defined(PB_Compiler_Backend, #PB_Constant)
  #PB_Compiler_Backend = 0
  #PB_Backend_C = 1
  #PB_Backend_Asm = 0
CompilerEndIf

Procedure IsDPIaware_BF()
  CompilerIf #PB_Compiler_Backend=#PB_Backend_C
    ! extern int PB_Compiler_DPIAware;
    ! return PB_Compiler_DPIAware;
  CompilerElse
    CompilerIf #PB_Compiler_OS=#PB_OS_Windows And #PB_Compiler_Version>=570
      Protected DPI_flag.l
      EnableASM
      MOV eax, dword [PB_Compiler_DPIAware]
      MOV DPI_flag, eax
      ProcedureReturn DPI_flag.l
      DisableASM
    CompilerEndIf 
    ProcedureReturn 0
  CompilerEndIf
EndProcedure

Debug IsDPIaware_BF()
Last edited by mk-soft on Thu Jun 24, 2021 8:46 pm, edited 1 time in total.
My Projects ThreadToGUI / OOP-BaseClass / EventDesigner V3
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
User avatar
Psychophanta
Addict
Addict
Posts: 4975
Joined: Wed Jun 11, 2003 9:33 pm
Location: Lípetsk, Russian Federation
Contact:

Re: PureBasic 6.00 Alpha 2 released !

Post by Psychophanta »

Axolotl wrote: Thu Jun 24, 2021 12:07 am
spacebuddy wrote: Mon Jun 21, 2021 5:18 pm I am getting this error in A 2 release

POLINK: fatal error: File not found: 'C:\Program.obj'

How to continue to test?
Moving temporarilly the Installation to a dir without spaces. I.e. c:\Purebasic600
Can't surpass that inconvenience => can't test 6.00 a2
http://www.zeitgeistmovie.com

While world=business:world+mafia:Wend
Will never leave this forum until the absolute bugfree PB :mrgreen:
User avatar
Saki
Addict
Addict
Posts: 830
Joined: Sun Apr 05, 2020 11:28 am
Location: Pandora

Re: PureBasic 6.00 Alpha 2 released !

Post by Saki »

@mk-soft
Many thanks for your code !
地球上の平和
gekkonier
User
User
Posts: 78
Joined: Mon Apr 23, 2007 9:42 am

Re: PureBasic 6.00 Alpha 2 released !

Post by gekkonier »

Psychophanta wrote: Thu Jun 24, 2021 8:39 pm Can't surpass that inconvenience => can't test 6.00 a2
Me too, I'm waiting for the next alpha - this bug is fixed.
User avatar
Saki
Addict
Addict
Posts: 830
Joined: Sun Apr 05, 2020 11:28 am
Location: Pandora

Re: PureBasic 6.00 Alpha 2 released !

Post by Saki »

gekkonier wrote: Fri Jun 25, 2021 7:36 am
Psychophanta wrote: Thu Jun 24, 2021 8:39 pm Can't surpass that inconvenience => can't test 6.00 a2
Me too, I'm waiting for the next alpha - this bug is fixed.
Hi
Install simple in your User Folder, that is all, more is not needed
地球上の平和
User avatar
marcoagpinto
Addict
Addict
Posts: 939
Joined: Sun Mar 10, 2013 3:01 pm
Location: Portugal
Contact:

Re: PureBasic 6.00 Alpha 2 released !

Post by marcoagpinto »

Does anyone know if the C backend will support UTF-8 characters above decimal 65535 out of the box?

Thanks!
User avatar
mk-soft
Always Here
Always Here
Posts: 5335
Joined: Fri May 12, 2006 6:51 pm
Location: Germany

Re: PureBasic 6.00 Alpha 2 released !

Post by mk-soft »

UTF8 characters always consist of 1 to 6 bytes.

PB internal is Unicode (UC16). So always from 0 to 65535.
When UTF8 is read in, it is converted to Unicode.
My Projects ThreadToGUI / OOP-BaseClass / EventDesigner V3
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
User avatar
marcoagpinto
Addict
Addict
Posts: 939
Joined: Sun Mar 10, 2013 3:01 pm
Location: Portugal
Contact:

Re: PureBasic 6.00 Alpha 2 released !

Post by marcoagpinto »

mk-soft wrote: Thu Jul 01, 2021 8:45 am UTF8 characters always consist of 1 to 6 bytes.

PB internal is Unicode (UC16). So always from 0 to 65535.
When UTF8 is read in, it is converted to Unicode.
But, won't the C Backend fix that limitation of 65535?
juergenkulow
Enthusiast
Enthusiast
Posts: 544
Joined: Wed Sep 25, 2019 10:18 am

Re: PureBasic 6.00 Alpha 2 released !

Post by juergenkulow »

Hello marcoagpinto,

Code: Select all

; Unicode >$FFFF Mathematical Alphanumeric Symbols with or without C Backend 
Declare.s UnicodeChr(Number.i)

For i=$1D400 To $1D7FF 
  Text$+UnicodeChr(i) 
  If i%52=51
    Text$+#CRLF$
  EndIf 
Next i 
SetClipboardText(Text$)

ExamineDesktops()
If OpenWindow(0, 0, 0, DesktopWidth(0), DesktopHeight(0),"Unicode Math $1D400-$1D7FF", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  CanvasGadget(0, 0, 0, DesktopWidth(0), DesktopHeight(0))
  LoadFont(0, "Cambria Math", 20)
    If StartVectorDrawing(CanvasVectorOutput(0))
      VectorFont(FontID(0), 20)
      DrawVectorParagraph(Text$,DesktopWidth(0), DesktopHeight(0))       
    StopVectorDrawing()
  EndIf
  MessageRequester("Unicode $1D400-$1D7FF",Text$) 
  CloseWindow(0) 
EndIf 
End 

Procedure.s UnicodeChr(Number.i)
  Protected Buffer.q
  If Number <= $FFFF
    Buffer = Number
    ProcedureReturn PeekS(@Buffer, -1, #PB_Unicode)
  Else
    Buffer = (Number-$10000)>>10 | ((Number-$10000)&$3FF)<<16 + $DC00D800
    ProcedureReturn PeekS(@Buffer, -1, #PB_Unicode)
  EndIf
EndProcedure

; Clipboard Text$: 
; 𝐀𝐁𝐂𝐃𝐄𝐅𝐆𝐇𝐈𝐉𝐊𝐋𝐌𝐍𝐎𝐏𝐐𝐑𝐒𝐓𝐔𝐕𝐖𝐗𝐘𝐙𝐚𝐛𝐜𝐝𝐞𝐟𝐠𝐡𝐢𝐣𝐤𝐥𝐦𝐧𝐨𝐩𝐪𝐫𝐬𝐭𝐮𝐯𝐰𝐱𝐲𝐳
; 𝐴𝐵𝐶𝐷𝐸𝐹𝐺𝐻𝐼𝐽𝐾𝐿𝑀𝑁𝑂𝑃𝑄𝑅𝑆𝑇𝑈𝑉𝑊𝑋𝑌𝑍𝑎𝑏𝑐𝑑𝑒𝑓𝑔𝑕𝑖𝑗𝑘𝑙𝑚𝑛𝑜𝑝𝑞𝑟𝑠𝑡𝑢𝑣𝑤𝑥𝑦𝑧
; 𝑨𝑩𝑪𝑫𝑬𝑭𝑮𝑯𝑰𝑱𝑲𝑳𝑴𝑵𝑶𝑷𝑸𝑹𝑺𝑻𝑼𝑽𝑾𝑿𝒀𝒁𝒂𝒃𝒄𝒅𝒆𝒇𝒈𝒉𝒊𝒋𝒌𝒍𝒎𝒏𝒐𝒑𝒒𝒓𝒔𝒕𝒖𝒗𝒘𝒙𝒚𝒛
; 𝒜𝒝𝒞𝒟𝒠𝒡𝒢𝒣𝒤𝒥𝒦𝒧𝒨𝒩𝒪𝒫𝒬𝒭𝒮𝒯𝒰𝒱𝒲𝒳𝒴𝒵𝒶𝒷𝒸𝒹𝒺𝒻𝒼𝒽𝒾𝒿𝓀𝓁𝓂𝓃𝓄𝓅𝓆𝓇𝓈𝓉𝓊𝓋𝓌𝓍𝓎𝓏
; 𝓐𝓑𝓒𝓓𝓔𝓕𝓖𝓗𝓘𝓙𝓚𝓛𝓜𝓝𝓞𝓟𝓠𝓡𝓢𝓣𝓤𝓥𝓦𝓧𝓨𝓩𝓪𝓫𝓬𝓭𝓮𝓯𝓰𝓱𝓲𝓳𝓴𝓵𝓶𝓷𝓸𝓹𝓺𝓻𝓼𝓽𝓾𝓿𝔀𝔁𝔂𝔃
; 𝔄𝔅𝔆𝔇𝔈𝔉𝔊𝔋𝔌𝔍𝔎𝔏𝔐𝔑𝔒𝔓𝔔𝔕𝔖𝔗𝔘𝔙𝔚𝔛𝔜𝔝𝔞𝔟𝔠𝔡𝔢𝔣𝔤𝔥𝔦𝔧𝔨𝔩𝔪𝔫𝔬𝔭𝔮𝔯𝔰𝔱𝔲𝔳𝔴𝔵𝔶𝔷
; 𝔸𝔹𝔺𝔻𝔼𝔽𝔾𝔿𝕀𝕁𝕂𝕃𝕄𝕅𝕆𝕇𝕈𝕉𝕊𝕋𝕌𝕍𝕎𝕏𝕐𝕑𝕒𝕓𝕔𝕕𝕖𝕗𝕘𝕙𝕚𝕛𝕜𝕝𝕞𝕟𝕠𝕡𝕢𝕣𝕤𝕥𝕦𝕧𝕨𝕩𝕪𝕫
; 𝕬𝕭𝕮𝕯𝕰𝕱𝕲𝕳𝕴𝕵𝕶𝕷𝕸𝕹𝕺𝕻𝕼𝕽𝕾𝕿𝖀𝖁𝖂𝖃𝖄𝖅𝖆𝖇𝖈𝖉𝖊𝖋𝖌𝖍𝖎𝖏𝖐𝖑𝖒𝖓𝖔𝖕𝖖𝖗𝖘𝖙𝖚𝖛𝖜𝖝𝖞𝖟
; 𝖠𝖡𝖢𝖣𝖤𝖥𝖦𝖧𝖨𝖩𝖪𝖫𝖬𝖭𝖮𝖯𝖰𝖱𝖲𝖳𝖴𝖵𝖶𝖷𝖸𝖹𝖺𝖻𝖼𝖽𝖾𝖿𝗀𝗁𝗂𝗃𝗄𝗅𝗆𝗇𝗈𝗉𝗊𝗋𝗌𝗍𝗎𝗏𝗐𝗑𝗒𝗓
; 𝗔𝗕𝗖𝗗𝗘𝗙𝗚𝗛𝗜𝗝𝗞𝗟𝗠𝗡𝗢𝗣𝗤𝗥𝗦𝗧𝗨𝗩𝗪𝗫𝗬𝗭𝗮𝗯𝗰𝗱𝗲𝗳𝗴𝗵𝗶𝗷𝗸𝗹𝗺𝗻𝗼𝗽𝗾𝗿𝘀𝘁𝘂𝘃𝘄𝘅𝘆𝘇
; 𝘈𝘉𝘊𝘋𝘌𝘍𝘎𝘏𝘐𝘑𝘒𝘓𝘔𝘕𝘖𝘗𝘘𝘙𝘚𝘛𝘜𝘝𝘞𝘟𝘠𝘡𝘢𝘣𝘤𝘥𝘦𝘧𝘨𝘩𝘪𝘫𝘬𝘭𝘮𝘯𝘰𝘱𝘲𝘳𝘴𝘵𝘶𝘷𝘸𝘹𝘺𝘻
; 𝘼𝘽𝘾𝘿𝙀𝙁𝙂𝙃𝙄𝙅𝙆𝙇𝙈𝙉𝙊𝙋𝙌𝙍𝙎𝙏𝙐𝙑𝙒𝙓𝙔𝙕𝙖𝙗𝙘𝙙𝙚𝙛𝙜𝙝𝙞𝙟𝙠𝙡𝙢𝙣𝙤𝙥𝙦𝙧𝙨𝙩𝙪𝙫𝙬𝙭𝙮𝙯
; 𝙰𝙱𝙲𝙳𝙴𝙵𝙶𝙷𝙸𝙹𝙺𝙻𝙼𝙽𝙾𝙿𝚀𝚁𝚂𝚃𝚄𝚅𝚆𝚇𝚈𝚉𝚊𝚋𝚌𝚍𝚎𝚏𝚐𝚑𝚒𝚓𝚔𝚕𝚖𝚗𝚘𝚙𝚚𝚛𝚜𝚝𝚞𝚟𝚠𝚡𝚢𝚣
; 𝚤𝚥𝚦𝚧𝚨𝚩𝚪𝚫𝚬𝚭𝚮𝚯𝚰𝚱𝚲𝚳𝚴𝚵𝚶𝚷𝚸𝚹𝚺𝚻𝚼𝚽𝚾𝚿𝛀𝛁𝛂𝛃𝛄𝛅𝛆𝛇𝛈𝛉𝛊𝛋𝛌𝛍𝛎𝛏𝛐𝛑𝛒𝛓𝛔𝛕𝛖𝛗
; 𝛘𝛙𝛚𝛛𝛜𝛝𝛞𝛟𝛠𝛡𝛢𝛣𝛤𝛥𝛦𝛧𝛨𝛩𝛪𝛫𝛬𝛭𝛮𝛯𝛰𝛱𝛲𝛳𝛴𝛵𝛶𝛷𝛸𝛹𝛺𝛻𝛼𝛽𝛾𝛿𝜀𝜁𝜂𝜃𝜄𝜅𝜆𝜇𝜈𝜉𝜊𝜋
; 𝜌𝜍𝜎𝜏𝜐𝜑𝜒𝜓𝜔𝜕𝜖𝜗𝜘𝜙𝜚𝜛𝜜𝜝𝜞𝜟𝜠𝜡𝜢𝜣𝜤𝜥𝜦𝜧𝜨𝜩𝜪𝜫𝜬𝜭𝜮𝜯𝜰𝜱𝜲𝜳𝜴𝜵𝜶𝜷𝜸𝜹𝜺𝜻𝜼𝜽𝜾𝜿
; 𝝀𝝁𝝂𝝃𝝄𝝅𝝆𝝇𝝈𝝉𝝊𝝋𝝌𝝍𝝎𝝏𝝐𝝑𝝒𝝓𝝔𝝕𝝖𝝗𝝘𝝙𝝚𝝛𝝜𝝝𝝞𝝟𝝠𝝡𝝢𝝣𝝤𝝥𝝦𝝧𝝨𝝩𝝪𝝫𝝬𝝭𝝮𝝯𝝰𝝱𝝲𝝳
; 𝝴𝝵𝝶𝝷𝝸𝝹𝝺𝝻𝝼𝝽𝝾𝝿𝞀𝞁𝞂𝞃𝞄𝞅𝞆𝞇𝞈𝞉𝞊𝞋𝞌𝞍𝞎𝞏𝞐𝞑𝞒𝞓𝞔𝞕𝞖𝞗𝞘𝞙𝞚𝞛𝞜𝞝𝞞𝞟𝞠𝞡𝞢𝞣𝞤𝞥𝞦𝞧
; 𝞨𝞩𝞪𝞫𝞬𝞭𝞮𝞯𝞰𝞱𝞲𝞳𝞴𝞵𝞶𝞷𝞸𝞹𝞺𝞻𝞼𝞽𝞾𝞿𝟀𝟁𝟂𝟃𝟄𝟅𝟆𝟇𝟈𝟉𝟊𝟋𝟌𝟍𝟎𝟏𝟐𝟑𝟒𝟓𝟔𝟕𝟖𝟗𝟘𝟙𝟚𝟛
; 𝟜𝟝𝟞𝟟𝟠𝟡𝟢𝟣𝟤𝟥𝟦𝟧𝟨𝟩𝟪𝟫𝟬𝟭𝟮𝟯𝟰𝟱𝟲𝟳𝟴𝟵𝟶𝟷𝟸𝟹𝟺𝟻𝟼𝟽𝟾𝟿
Image
Wikibooks Unicode 1D000-1DFFF
Please ask your questions, because switch on the cognition apparatus decides on the only known life in the universe.Wersten :DDüsseldorf NRW Germany Europe Earth Solar System Flake Bubble Orionarm
Milky Way Local_Group Virgo Supercluster Laniakea Universe
Fred
Administrator
Administrator
Posts: 16619
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: PureBasic 6.00 Alpha 3 released !

Post by Fred »

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 !
User avatar
DoubleDutch
Addict
Addict
Posts: 3219
Joined: Thu Aug 07, 2003 7:01 pm
Location: United Kingdom
Contact:

Re: PureBasic 6.00 Alpha 3 released !

Post by DoubleDutch »

re alpha 3: My >60,000 line program compiles and works on both the asm and c compilers! :)

@Fred, it would be good if the 'compilation in progress' window let the programmer know what was going on after the initial 'Creating executable file' - as it can take some time, especially if optimisation has been turned on.
https://deluxepixel.com <- My Business website
https://reportcomplete.com <- School end of term reports system
Post Reply