| |
|
|
- Page 1 - |
|
 Jens-Arne Reumschüssel | good evening together,
i'm recent over the trouble stumbled, that XPSE a quite large Quelldatei of I do not More process could. variables get suddenly as not definiert gemeldet and others "erratische" Problems More. I could me present, that this on it lying, that XPSE Keywords in windows-Atoms manages. there's sometime Schluss (with something between 60.000 and 70.000 Piece, where one deliberating must, that XPSE The windows-API with vorhält). Perhaps is But something integrally other, I can Yes not whom "Maschinenraum" of XPSE look.
anyway stayed me, there XPSE not any more taken care of becomes, nothing other spare, as the nachzubauen. the Result is JRPC3.
----- Features:
*reasonable Message of Fehlern *direct display the Programmablaufes in XProfEd (sofern the under erhältliche aufgebohrte XProfEd is used) *Umsetzung the middle-aged Profan-Syntax for Operators and old Containerfunktionen *extreme speedy native fbPROCs, sofern one FreeBasic installs has (free, see Help) *with fbPROCs can additionally Inline-Assembler too to XProfan X4 realized go *extreme speedy native pbPROCs, sofern one PureBasic installs has *Echtzeitverfolgung of Variableninhalten *simple Zeitmessungen in the Programmablauf *Profan-Kompilerdirektiven functions finally sensible (z.B. Verschachtelung) *eingebettete variables functions too with Arrays *most WIN32-API-functions are already vordefiniert included *API-Aufrufe over @external(...) go automatically in @call(...)-Aufrufe umgesetzt *Einrückungsanalyse to that find of vertrackten Verschachtelungsfehlern *Klammeranalyse to that find of vertrackten Klammerfehlern *ENUMERATE-Funktionalität *Assert to Fehlerkontrolle *it can arbitrary DLLs into XProfan-EXE integrate go, so tappt im dunkeln not delivered go must (see {$WrapDll}) *simple Killen Pixel JRPC3 launched Programs (interprets, .prc launched, .exe launched) *extreme quick (and therefore naturally not XProfan written, there a interpretierte Language this natural plenty too slow is) *at Start of JRPC3 already available .prc-Files can to that started and left used go (it'll one Info displayed, that it itself for a altes Compilations deals) *the Profan-Compiler can to Beschleunigung with high Prozessorpriorität called go *eingebauter Update-Checker with Download, if it one Update gives (Help --> online to Updates search) *64- or 32-bit-Version available (simply JRPC3_64.exe or JRPC_32.exe as Interpreter in XProfEd deposit [Options --> general Settings] and JRPC3 with F7 started) - deference, The 64-bit-Version created naturally no 64-bit-XProfan-programs, there XProfan the not can, separate JRPC3 self becomes as 64-bit-Program carryed out *XProfan X4-Syntax available (möglicherweise not yet everything, I presumably not everything of it use, but I have me circa Vollständigkeit ready - anyway are z.B. HASH-Arrays and QUADINTs thereby) *Interpreter, PRCs and EXEs can with Kommandozeilenparametern carryed out go *Interpreter, PRCs, EXEs and XPSE can with Administratorrechten carryed out go *Procedures, The in the actually Program of course include are, but not uses go, go from the umgesetzten File removes, around the Filesize the Kompilats possible small To hold *variables, The in the actually Program of course include are, but not uses go, go from the umgesetzten File removes, around the Filesize the Kompilats possible small To hold and the Speicherverbrauch To optimize *nPROCs from XPSE go automatically with XPE to a DLL umgesetzt and the Aufrufe the nPROCs in the program properly adjusted, sofern XPSE present is *almost everything from XPSE functions too in JRPC3 ({$NOERR}, {$(PRE)BATCH}, {$PUSHKEYWORD}, Interpreter, Runtime and compiler determine, Shorties, ...) *XProfEd_JR with View source-AutoComplete *XProfEd_JR with View source-Memory-function (Markierungen, To them zurückgesprungen go can)
Einschränkungen: -no XPSE-Inline-Assembler, well but XProfan-Inline-Assembler (therein though no tests on Korrektheit the Codes) -ABER: one can XPSE from JRPC3 out Call, so these Funktionalität furthermore available is, sofern one XPSE own (new Shorty: {$x}) -variables, The in a procedure not declared are, separate "aus the aufrufenden procedure übernommen werden", are standardmäßig not registered (XProfan allows the, but such a thing is just as mortal How GOTO-instructions). Please any To nutzenden Inputs as Parameter transfer, and if something from the aufrufenden Programmteil changed go must, when calling as Parameter z.B. @addr(x&) use and the procedure parameters x# and LONG x#,0=y& benefit. If one but absolutely "vererbte" variables benefit would like, can this with the Kompilerdirektive {$Declare...} do.
*as Hommage on XPSE sounds The Endung the Ausgabedatei ".enh3"
an genauere explanation the individual Features is the chm-Helpfile To entnehmen, The in the program under Help --> Helpfile Show or with F1 available is.
----- /Features
Download and install: JRPC3 can under Downloaded go (setup_jrpc3.exe or as ZIP-File). as Installationsverzeichnis Please the XProfan-Stammverzeichnis indicate, means the one, in the The Files PROFAN.EXE, PROFCOMP.EXE, PRFRUN32.EXE etc. lying. alternatively can The ZIP-File Downloaded and its Content manually in that XProfan-Stammverzeichnis copies go.
facility: JRPC3_64.exe or JRPC_32.exe as Interpreter in XProfEd deposit [Options --> general Settings] and JRPC3 with F7 started.
any command are with the commands "h" How "Hilfe" abrufbar and should selbsterklärend his.
for many erweitere Features, The XProfEd concern, How z.B. jenes, The row, in the one Error auftrat, directly in XProfEd Show to, is the mitinstallierte XProfEd_JR necessary. For this must one means XProfEd_JR.exe instead of XProfEd.exe as editor using. as "goody" there moreover, that at On- and Zufalten of Programs one Fortschrittsanzeiger integrate is (the can with large Programs Yes known a little bit last).
it likes his, that not yet everything perfect functions. I Please this circa clemency. my programs can umsetzen, but the must yet long not hot, that this with Programs another Authors, The eachone so your Eigenheiten having, too functions.
Fehlermeldungen and Verbesserungsvorschläge gladly on jreumsc@web.de or here in the Forum.
best Regards, Jens-Arne |
 | 2.665 kB | | Bezeichnung: | JRPC3 | | Version: | 10.40 | | Kurzbeschreibung: | JRPC3-Installer | | Hochgeladen: | 02/15/21 | | Downloadcounter: |  | | | Download | | | | 1.699 kB | | Bezeichnung: | XProfEd_JR | | Version: | 5.2 | | Kurzbeschreibung: | old Version without AutoComplete to safety | | Hochgeladen: | 02/15/21 | | Downloadcounter: |  | | | Download | | | | 4.065 kB | | Bezeichnung: | JRPC3 | | Version: | 10.40 | | Kurzbeschreibung: | ZIP-File instead of Installer | | Hochgeladen: | 04/02/21 | | Downloadcounter: |  | | | Download |
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 02/16/21 ▲ |
|
|
|
| |
|
- Page 11 - |
|
 |
« this Posting watts as Solution marked. » |
|
- Page 15 - |
|
 Jens-Arne Reumschüssel | there's a new Version, The differently with the internen Messagehandling bypassing. Please probier The time from. Perhaps is the trouble so fixed. |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 09/24/22 ▲ |
|
|
 |
|
|
 Jens-Arne Reumschüssel | here incidentally another example, How one with Arrays umzugehen had. this is namely something tricky (byte Pointer instead of Integer Pointer use, see Statement in the example, otherwise wundert one itself integrally awful, which Speicherplätze addressed go).
{$FBSYNTAX ON}
declare a%[2]
fbPROC fbArrayTest1(ByVal p As byte Pointer) As Integer export poke integer,p+0,100 'here p always circa 4 raise, there p as byte Pointer definiert is and FreeBasic therefore at Pointer always one byte weiterzählt poke integer,p+4,101 'the corresponds to the intuitive Vorgehen, if one Integers in a Speicherbereich writes poke integer,p+8,102 return 0 ENDPROC
fbPROC fbArrayTest2(ByVal p As Integer Pointer) As Integer export poke integer,p+0,103 'here p always only circa 1 raise, there p as Integer Pointer definiert is and FreeBasic white, How many Bytes in each element stick (namely 4 per Integer) poke integer,p+1,104 'this is *not* absolutely intuitiv; i'd something like avoid and rather byte Pointer for Arrays using poke integer,p+2,105 return 0 ENDPROC
cls fbArrayTest1(@addr(a%[0])) print a%[0] print a%[1] print a%[2] print fbArrayTest2(@addr(a%[0])) print a%[0] print a%[1] print a%[2] waitinput end
|
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 01/17/22 ▲ |
|
|
|
|
 Jens-Arne Reumschüssel | To your question above (nullterminierte gepushte String-Memory-Variables):
the goes unfortunately momentarily not. there should I SharedInFbProcs strain. in the principle possible, but I white not, whether the end The Lesbarkeit the Codes really correct. then should one remember, that is a Memory-Variable really only for definiert has.
I take once on, You want many Strings at a single blow transfer. gentry The Adressen simply in a Own Memory-Variable and übergib these a the fbProc. then extract You from it The Strings.
{$FBSYNTAX on}
declare b1#,b2#,b3#,uebergabe#
fbProc fb3Strings(ByVal uebergabe As Any Pointer) As Integer export dim As ZString Pointer s1,s2,s3 s1=peek(ZString Pointer,uebergabe) s2=peek(ZString Pointer,uebergabe+4) s3=peek(ZString Pointer,uebergabe+8) screenres(400,300) print *s1 print *s2 print *s3 return 0 ENDPROC
cls dim b1#,10000 dim b2#,10000 dim b3#,10000 string b1#,0="String 1" string b2#,0="String 2" string b3#,0="String 3" dim uebergabe#,12 long uebergabe#,0=b1# long uebergabe#,4=b2# long uebergabe#,8=b3# fb3Strings(uebergabe#) waitinput dispose uebergabe#,b1#,b2#,b3# end
|
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 01/17/22 ▲ |
|
|
|
|
 Jens-Arne Reumschüssel | Perhaps goes it with the Arrays such a thing rather, without Gepoke:
{$FBSYNTAX on}
declare a%[10],i%
fbProc fbArrayTest(ByVal p As Any Pointer) As Integer export dim i As byte dim a(10) As Integer Pointer for i=0 to 10 a(i)=p+(i*4) 'address the Elements settle *a(i)=i 'the element a worth allocate next i return 0 ENDPROC
cls fbArrayTest(@addr(a%[0])) for i%,0,10 print a%[i%] endfor waitinput end
|
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 01/17/22 ▲ |
|
|
|
|
 funkheld | thanks Jens-Arne have me again in kürze 10 km weitergeholfen. your Examples are wonderful Verfolgbar.
How You it supra show , need I this not any more : ------------------------------- nullterminierte gepushte Strings-Memory-Variables -------------------------------
with the reaches and the aray is it plainer To manage.
Thank you. greeting |
|
|
| |
|
|
|
 funkheld | 
Hello Jens-Arne, i'm a Error Message noticed (see Image) with the commands : LoadBmp name$,0,0; 0
greeting
|
|
|
| |
|
|
|
 Jens-Arne Reumschüssel | Yes, this is solid and has whom reason, that the commands antiquated is.
the standing moreover in the XProfan-Help:
"Dieser commands becomes in künftigen XProfan-versions not any more supported. instead is the commands DrawPic To use."
Greeting, Jens-Arne |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 01/18/22 ▲ |
|
|
|
|
 funkheld | thanks for Info. I thought in XProfanx4 are The ollen Kamellen not any more drin.
means with such Fehlermeldungen first time look whether so one Murx yet drin is, whom not More give should.
greeting |
|
|
| |
|
|
|
 Jens-Arne Reumschüssel | one can now too "endfor" instead of "next" in fbProcs write. the I had with whom "Konzessionen" forget. |
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 01/18/22 ▲ |
|
|
|
|
 funkheld | thanks for Info.
leaves You this XPSE still in your Description drin? i'd the XPSE there now rausnehmen. find for no rückfragen of Hilfestellungen etc. More.
I yourself have me of it too dismisses and use now this FreeBasic for extensions.
greeting |
|
|
| |
|
|
|
 p.specht
 | Einspruch, I need The Assembler-Opportunities and api-Konstanten of XPSE. on the side notice, Jens-Arne is berufstätig. amazing, that it itself so much Time for Rückfragen takes - simply cool! |
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 01/19/22 ▲ |
|
|
|
|
 funkheld | well finally reports itself time of/ one since langer Time for XPSE , class. I thought The species are extinct and already in the sky.
I grüße you You XPSE fan.
my interest is now to FreeBasic gone to expansion the XProfanx4.
How Jens-Arne written has is this XPSE not so slight To tame and has always further neueProbleme bereitet.
I have already some program for me and be thereby my own XPSE-programs umzustellen to FreeBasic.
greeting |
|
|
| |
|
|
|
 Jens-Arne Reumschüssel | Assembler remaining XPSE-Domäne. API-Konstanten are JRPC3 too drin. If which are missing, Please always since so, The can I dazupacken.
though know I gladly once, whether Assembler really so plenty faster is as FreeBasic. latter becomes Yes directly in Maschinensprache Translated, means letztlich in Assembler - and it alights with XPSE in a DLL, The then of XProfan-Program called becomes, very How with FreeBasic with JRPC3. naturally make Hochsprachen there always some something less optimal, as if one its routines directly and self in Assembler writes (I not can), but How big is there the Difference? Peter, can You, the with opportunity test times?
Greeting, Jens-Arne |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 01/19/22 ▲ |
|
|
|