PureBasic 6.00 released !
- netmaestro
- PureBasic Bullfrog
- Posts: 8425
- Joined: Wed Jul 06, 2005 5:42 am
- Location: Fort Nelson, BC, Canada
Re: PureBasic 6.00 Alpha 2 released !
Moving temporarilly the Installation to a dir without spaces. I.e. c:\Purebasic600spacebuddy 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?
Mostly running PureBasic <latest stable version and current alpha/beta> (x64) on Windows 11 Home
- DeanH
- Enthusiast
- Posts: 223
- Joined: Wed May 07, 2008 4:57 am
- Location: Adelaide, South Australia
- Contact:
Re: PureBasic 6.00 Alpha 2 released !
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?
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?
Re: PureBasic 6.00 Alpha 2 released !
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
地球上の平和
Re: PureBasic 6.00 Alpha 2 released !
Code: Select all
! extern int PB_Compiler_DPIAware;
Debug PB_Compiler_DPIAware
Code: Select all
Procedure DPIAware()
! extern int PB_Compiler_DPIAware;
! return PB_Compiler_DPIAware;
EndProcedure
PB_Compiler_DPIAware = DPIAware()
Debug PB_Compiler_DPIAware
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
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
- Psychophanta
- Addict
- Posts: 4975
- Joined: Wed Jun 11, 2003 9:33 pm
- Location: Lípetsk, Russian Federation
- Contact:
Re: PureBasic 6.00 Alpha 2 released !
Can't surpass that inconvenience => can't test 6.00 a2Axolotl wrote: ↑Thu Jun 24, 2021 12:07 amMoving temporarilly the Installation to a dir without spaces. I.e. c:\Purebasic600spacebuddy 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?
http://www.zeitgeistmovie.com
While world=business:world+mafia:Wend
Will never leave this forum until the absolute bugfree PB
While world=business:world+mafia:Wend
Will never leave this forum until the absolute bugfree PB
Re: PureBasic 6.00 Alpha 2 released !
Me too, I'm waiting for the next alpha - this bug is fixed.Psychophanta wrote: ↑Thu Jun 24, 2021 8:39 pm Can't surpass that inconvenience => can't test 6.00 a2
Re: PureBasic 6.00 Alpha 2 released !
Higekkonier wrote: ↑Fri Jun 25, 2021 7:36 amMe too, I'm waiting for the next alpha - this bug is fixed.Psychophanta wrote: ↑Thu Jun 24, 2021 8:39 pm Can't surpass that inconvenience => can't test 6.00 a2
Install simple in your User Folder, that is all, more is not needed
地球上の平和
- marcoagpinto
- Addict
- Posts: 939
- Joined: Sun Mar 10, 2013 3:01 pm
- Location: Portugal
- Contact:
Re: PureBasic 6.00 Alpha 2 released !
Does anyone know if the C backend will support UTF-8 characters above decimal 65535 out of the box?
Thanks!
Thanks!
Re: PureBasic 6.00 Alpha 2 released !
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.
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
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
- marcoagpinto
- Addict
- Posts: 939
- Joined: Sun Mar 10, 2013 3:01 pm
- Location: Portugal
- Contact:
-
- Enthusiast
- Posts: 544
- Joined: Wed Sep 25, 2019 10:18 am
Re: PureBasic 6.00 Alpha 2 released !
Hello marcoagpinto,
Wikibooks Unicode 1D000-1DFFF
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$:
; 𝐀𝐁𝐂𝐃𝐄𝐅𝐆𝐇𝐈𝐉𝐊𝐋𝐌𝐍𝐎𝐏𝐐𝐑𝐒𝐓𝐔𝐕𝐖𝐗𝐘𝐙𝐚𝐛𝐜𝐝𝐞𝐟𝐠𝐡𝐢𝐣𝐤𝐥𝐦𝐧𝐨𝐩𝐪𝐫𝐬𝐭𝐮𝐯𝐰𝐱𝐲𝐳
; 𝐴𝐵𝐶𝐷𝐸𝐹𝐺𝐻𝐼𝐽𝐾𝐿𝑀𝑁𝑂𝑃𝑄𝑅𝑆𝑇𝑈𝑉𝑊𝑋𝑌𝑍𝑎𝑏𝑐𝑑𝑒𝑓𝑔𝑖𝑗𝑘𝑙𝑚𝑛𝑜𝑝𝑞𝑟𝑠𝑡𝑢𝑣𝑤𝑥𝑦𝑧
; 𝑨𝑩𝑪𝑫𝑬𝑭𝑮𝑯𝑰𝑱𝑲𝑳𝑴𝑵𝑶𝑷𝑸𝑹𝑺𝑻𝑼𝑽𝑾𝑿𝒀𝒁𝒂𝒃𝒄𝒅𝒆𝒇𝒈𝒉𝒊𝒋𝒌𝒍𝒎𝒏𝒐𝒑𝒒𝒓𝒔𝒕𝒖𝒗𝒘𝒙𝒚𝒛
; 𝒜𝒞𝒟𝒢𝒥𝒦𝒩𝒪𝒫𝒬𝒮𝒯𝒰𝒱𝒲𝒳𝒴𝒵𝒶𝒷𝒸𝒹𝒻𝒽𝒾𝒿𝓀𝓁𝓂𝓃𝓅𝓆𝓇𝓈𝓉𝓊𝓋𝓌𝓍𝓎𝓏
; 𝓐𝓑𝓒𝓓𝓔𝓕𝓖𝓗𝓘𝓙𝓚𝓛𝓜𝓝𝓞𝓟𝓠𝓡𝓢𝓣𝓤𝓥𝓦𝓧𝓨𝓩𝓪𝓫𝓬𝓭𝓮𝓯𝓰𝓱𝓲𝓳𝓴𝓵𝓶𝓷𝓸𝓹𝓺𝓻𝓼𝓽𝓾𝓿𝔀𝔁𝔂𝔃
; 𝔄𝔅𝔇𝔈𝔉𝔊𝔍𝔎𝔏𝔐𝔑𝔒𝔓𝔔𝔖𝔗𝔘𝔙𝔚𝔛𝔜𝔞𝔟𝔠𝔡𝔢𝔣𝔤𝔥𝔦𝔧𝔨𝔩𝔪𝔫𝔬𝔭𝔮𝔯𝔰𝔱𝔲𝔳𝔴𝔵𝔶𝔷
; 𝔸𝔹𝔻𝔼𝔽𝔾𝕀𝕁𝕂𝕃𝕄𝕆𝕊𝕋𝕌𝕍𝕎𝕏𝕐𝕒𝕓𝕔𝕕𝕖𝕗𝕘𝕙𝕚𝕛𝕜𝕝𝕞𝕟𝕠𝕡𝕢𝕣𝕤𝕥𝕦𝕧𝕨𝕩𝕪𝕫
; 𝕬𝕭𝕮𝕯𝕰𝕱𝕲𝕳𝕴𝕵𝕶𝕷𝕸𝕹𝕺𝕻𝕼𝕽𝕾𝕿𝖀𝖁𝖂𝖃𝖄𝖅𝖆𝖇𝖈𝖉𝖊𝖋𝖌𝖍𝖎𝖏𝖐𝖑𝖒𝖓𝖔𝖕𝖖𝖗𝖘𝖙𝖚𝖛𝖜𝖝𝖞𝖟
; 𝖠𝖡𝖢𝖣𝖤𝖥𝖦𝖧𝖨𝖩𝖪𝖫𝖬𝖭𝖮𝖯𝖰𝖱𝖲𝖳𝖴𝖵𝖶𝖷𝖸𝖹𝖺𝖻𝖼𝖽𝖾𝖿𝗀𝗁𝗂𝗃𝗄𝗅𝗆𝗇𝗈𝗉𝗊𝗋𝗌𝗍𝗎𝗏𝗐𝗑𝗒𝗓
; 𝗔𝗕𝗖𝗗𝗘𝗙𝗚𝗛𝗜𝗝𝗞𝗟𝗠𝗡𝗢𝗣𝗤𝗥𝗦𝗧𝗨𝗩𝗪𝗫𝗬𝗭𝗮𝗯𝗰𝗱𝗲𝗳𝗴𝗵𝗶𝗷𝗸𝗹𝗺𝗻𝗼𝗽𝗾𝗿𝘀𝘁𝘂𝘃𝘄𝘅𝘆𝘇
; 𝘈𝘉𝘊𝘋𝘌𝘍𝘎𝘏𝘐𝘑𝘒𝘓𝘔𝘕𝘖𝘗𝘘𝘙𝘚𝘛𝘜𝘝𝘞𝘟𝘠𝘡𝘢𝘣𝘤𝘥𝘦𝘧𝘨𝘩𝘪𝘫𝘬𝘭𝘮𝘯𝘰𝘱𝘲𝘳𝘴𝘵𝘶𝘷𝘸𝘹𝘺𝘻
; 𝘼𝘽𝘾𝘿𝙀𝙁𝙂𝙃𝙄𝙅𝙆𝙇𝙈𝙉𝙊𝙋𝙌𝙍𝙎𝙏𝙐𝙑𝙒𝙓𝙔𝙕𝙖𝙗𝙘𝙙𝙚𝙛𝙜𝙝𝙞𝙟𝙠𝙡𝙢𝙣𝙤𝙥𝙦𝙧𝙨𝙩𝙪𝙫𝙬𝙭𝙮𝙯
; 𝙰𝙱𝙲𝙳𝙴𝙵𝙶𝙷𝙸𝙹𝙺𝙻𝙼𝙽𝙾𝙿𝚀𝚁𝚂𝚃𝚄𝚅𝚆𝚇𝚈𝚉𝚊𝚋𝚌𝚍𝚎𝚏𝚐𝚑𝚒𝚓𝚔𝚕𝚖𝚗𝚘𝚙𝚚𝚛𝚜𝚝𝚞𝚟𝚠𝚡𝚢𝚣
; 𝚤𝚥𝚨𝚩𝚪𝚫𝚬𝚭𝚮𝚯𝚰𝚱𝚲𝚳𝚴𝚵𝚶𝚷𝚸𝚹𝚺𝚻𝚼𝚽𝚾𝚿𝛀𝛁𝛂𝛃𝛄𝛅𝛆𝛇𝛈𝛉𝛊𝛋𝛌𝛍𝛎𝛏𝛐𝛑𝛒𝛓𝛔𝛕𝛖𝛗
; 𝛘𝛙𝛚𝛛𝛜𝛝𝛞𝛟𝛠𝛡𝛢𝛣𝛤𝛥𝛦𝛧𝛨𝛩𝛪𝛫𝛬𝛭𝛮𝛯𝛰𝛱𝛲𝛳𝛴𝛵𝛶𝛷𝛸𝛹𝛺𝛻𝛼𝛽𝛾𝛿𝜀𝜁𝜂𝜃𝜄𝜅𝜆𝜇𝜈𝜉𝜊𝜋
; 𝜌𝜍𝜎𝜏𝜐𝜑𝜒𝜓𝜔𝜕𝜖𝜗𝜘𝜙𝜚𝜛𝜜𝜝𝜞𝜟𝜠𝜡𝜢𝜣𝜤𝜥𝜦𝜧𝜨𝜩𝜪𝜫𝜬𝜭𝜮𝜯𝜰𝜱𝜲𝜳𝜴𝜵𝜶𝜷𝜸𝜹𝜺𝜻𝜼𝜽𝜾𝜿
; 𝝀𝝁𝝂𝝃𝝄𝝅𝝆𝝇𝝈𝝉𝝊𝝋𝝌𝝍𝝎𝝏𝝐𝝑𝝒𝝓𝝔𝝕𝝖𝝗𝝘𝝙𝝚𝝛𝝜𝝝𝝞𝝟𝝠𝝡𝝢𝝣𝝤𝝥𝝦𝝧𝝨𝝩𝝪𝝫𝝬𝝭𝝮𝝯𝝰𝝱𝝲𝝳
; 𝝴𝝵𝝶𝝷𝝸𝝹𝝺𝝻𝝼𝝽𝝾𝝿𝞀𝞁𝞂𝞃𝞄𝞅𝞆𝞇𝞈𝞉𝞊𝞋𝞌𝞍𝞎𝞏𝞐𝞑𝞒𝞓𝞔𝞕𝞖𝞗𝞘𝞙𝞚𝞛𝞜𝞝𝞞𝞟𝞠𝞡𝞢𝞣𝞤𝞥𝞦𝞧
; 𝞨𝞩𝞪𝞫𝞬𝞭𝞮𝞯𝞰𝞱𝞲𝞳𝞴𝞵𝞶𝞷𝞸𝞹𝞺𝞻𝞼𝞽𝞾𝞿𝟀𝟁𝟂𝟃𝟄𝟅𝟆𝟇𝟈𝟉𝟊𝟋𝟎𝟏𝟐𝟑𝟒𝟓𝟔𝟕𝟖𝟗𝟘𝟙𝟚𝟛
; 𝟜𝟝𝟞𝟟𝟠𝟡𝟢𝟣𝟤𝟥𝟦𝟧𝟨𝟩𝟪𝟫𝟬𝟭𝟮𝟯𝟰𝟱𝟲𝟳𝟴𝟵𝟶𝟷𝟸𝟹𝟺𝟻𝟼𝟽𝟾𝟿
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
Milky Way Local_Group Virgo Supercluster Laniakea Universe
Re: PureBasic 6.00 Alpha 3 released !
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 !
- DoubleDutch
- Addict
- Posts: 3219
- Joined: Thu Aug 07, 2003 7:01 pm
- Location: United Kingdom
- Contact:
Re: PureBasic 6.00 Alpha 3 released !
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.
@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
https://reportcomplete.com <- School end of term reports system