| |
|
|
Claus Santa | XPIA: No Externe DLL! ici encore kleine Veränderungs-Tips... Ansonsten ist XPIA bien. Assembly direct codieren et pas uber DLL, car CALL funktion ist SCHNELLER!
1. Vorteil: ReverseEnginiering avec DLL ist Kinderleicht, quoi mal ist pour Datenverschlüsselung. ;(
2. Vorteil: Direktes einbinden dans sourcecode, comment:
si getfocus( hb_MakeSomting& ) whileloop 10 imprimer your cpu said: +AMSMcall MeineASMproc, MyText, ... ) endwhile
3. Vorteil: Rückgabe de 0-Terminated Cordes ist possible [!]. ensuite ginge oui aussi cela:
imprimer AssemblyFunk() retruns: > +string( AssemblyFunk#, 0 ) +<
4. Vorteil: un weiterer Vorteil ist ensuite aussi externe Module handling (comment: PLUGIN-MODULES) -> MORE IMPLIMENTATIONS. ;)
blockread( #1, ExternalModule#, 0, getfilesize( #1 ) ) ... call( ExternalModule# ) -> call_addr = addr( ExternalModule# )
5. Vorteil: objet Orientiertes Assembling - important pour MS Foundation Classes!
ASMcode$ contains suff of MemoryAddress# class A = ASMcode$[ SIZE ], ....
AObject# est un objet qui super A (dans diesem Besipiel) call( AObject#, ... )
Syntax-Vorschlag:
s'il te plaît pas sur Paramètres, là mal/verwirrend pour alle ANFÄNGER! Es soll entier PROFANE (simple?) rester!
--- ROOT SOURCE --- ASMproc WhatEverItMakes( params ) return ? ASMendproc
ASMcall( WhatEverItMakes, [params..] )
--- PATCHED SOURCE --- on app init dim WhatEverItMakes#, (SizeOfObj) byte WhatEverItMakes#, 0 = ...code source...
somewhere dans your app call( WhatEverItMakes# )
on uninit dispose WhatEverItMakes#
--- appendix --- je hab une page dans allemande avec OpCodes juste beigefügt - BESSER ALS MEIN DEUTSCH!. ;/
Genereller BinaryCode: offsetdescription +1 byteopération code +?operands ->byte = +1 ->single word = +1 ->double word = +1 ->quard word = +1
qui Struktur sollte ensuite so air pour une ASM-Funktion (e.g. WhatEverItMakes#):
[ on call ] offsetvalue/datacontentasm code +1$E9buffer skip jumpjmp +4?? ?? ?? ??WhatEverItMakes# + RetrunSize(WhatEverItMakes# + RetrunSize) +(RetSz-Offs)$90reserved data buffernop +??...your stuff here......
[ on return ] offsetvalue/datacontentasm code +RetSz?WhatEverItMakes# + RetrunSize [return data] ( Habe fleisig im Deutschprachigen Chats geübt. Hoffe c'est lesbar... [thx2sabine*] ) |
|
|
| Snoozel, [[StA/oXr]] // life is just'n bugfree, cos coding is life | 30.10.2005 ▲ |
|
|
|
|
Frank Abbing | Hi,
> XPIA: No Externe DLL! > ici encore kleine Veränderungs-Tips... Ansonsten ist XPIA bien. > Assembly direct codieren et pas uber DLL, car CALL funktion ist SCHNELLER!
Mag son, seulement hat cela ziemliche Nachteile. je zähl la fois quelques sur, qui mir spontan envahir:
- APIs marcher so seulement très aufwendig. - aucun Hight-Level-Syntax - aucun Library-Unterstützung - compliquée paramètre- et Variablenübergabe - aucun Makro-Unterstützung - aucun Debugging-Unterstützung - aucun MASM32 Erweiterungen (MASM32.lib)
> 3. Vorteil: > Rückgabe de 0-Terminated Cordes ist possible [!]. ensuite ginge oui aussi cela: > > imprimer AssemblyFunk() retruns: > +string( AssemblyFunk#, 0 ) +<
Dll-Funktionen transfert chez STDCALL grundsätzlich seulement Long-Werte. Deswegen peux du mais den aiguille eines Cordes transfert, wohin ist cela Problem?
> 5. Vorteil: > objet Orientiertes Assembling - important pour MS Foundation Classes! > > ASMcode$ contains suff of MemoryAddress# > class A = ASMcode$[ SIZE ], .... > > AObject# est un objet qui super A (dans diesem Besipiel) > call( AObject#, ... ) >
je suis bekennender OOP Gegner. OOP et Assembler, cela beisst sich eh de vornherein.
> Syntax-Vorschlag: > > s'il te plaît pas sur Paramètres, là mal/verwirrend pour alle ANFÄNGER! Es soll entier PROFANE (simple?) rester! > > > --- ROOT SOURCE --- > ASMproc WhatEverItMakes( params ) > return ? > ASMendproc > > ASMcall( WhatEverItMakes, [params..] ) > > > --- PATCHED SOURCE --- > on app init > dim WhatEverItMakes#, (SizeOfObj) > byte WhatEverItMakes#, 0 = ...code source... > > somewhere dans your app > call( WhatEverItMakes# ) > > on uninit > dispose WhatEverItMakes# > > > --- appendix --- > je hab une page dans allemande avec OpCodes juste beigefügt - BESSER ALS MEIN DEUTSCH!. ;/ > > Genereller BinaryCode: > offset description > +1 byte opération code > +? operands > ->byte = +1 > ->single word = +1 > ->double word = +1 > ->quard word = +1 > > > qui Struktur sollte ensuite so air pour une ASM-Funktion (e.g. WhatEverItMakes#): > > [ on call ] > offset value/data content asm code > +1 $E9 buffer skip jump jmp > +4 ?? ?? ?? ?? WhatEverItMakes# + RetrunSize (WhatEverItMakes# + RetrunSize) > +(RetSz-Offs) $90 reserved data buffer nop > +? ? ...your stuff here... ... > > [ on return ] > offset value/data content asm code > +RetSz ? WhatEverItMakes# + RetrunSize > [return data] la fois honnête! tu as erwähnt, Profan sei une Anfängersprache et alles sollte léger son. Hälst du deinen dessus angeführten Code pour léger verständlich? alors je pas. là finde je mon Prozeduren-artige Syntax pour erheblich Débutant-approprié... qui (optionale) simplification qui Parameterangabe dedans des Assembleraufrufs ziehe je mais volontiers dans Erwägung. |
|
|
| |
|
|
|
Claus Santa | Hmm...
Fieleicht la hâte Du droite... là bleibt seulement une SourceConverter trop écrivons.
...et cela veux quelque chose heisen - je suis un wirklicher LazyDog! tant pis, mais quand même merci! |
|
|
| Snoozel, [[StA/oXr]] // life is just'n bugfree, cos coding is life | 03.11.2005 ▲ |
|
|
|
|
Frank Abbing | Hi,
Source-Converter, oui? L'idée scheint plus verbreitet trop son, comme du peut-être ahnst...
je suis Neuerungen mais durchweg pas négative geneigt et begrüsse solche Propositions, qui du ici gebracht la hâte. si vous mir sinnvoll erscheinen et si vous realisierbar sommes, ensuite bau je vous aussi un. Lass toi alors pas rebuter.
Cooles Cape! |
|
|
| |
|
|
|
Claus Santa | vois je aussi so. mais si seulement comme Zusatz - XProfan soll XProfan rester, okey?
P.S.: DEBIAN CAP nimby rulers (=für selberfummler) |
|
|
| Snoozel, [[StA/oXr]] // life is just'n bugfree, cos coding is life | 05.11.2005 ▲ |
|
|
|
|
Melanie Brayer | ...(M)une objektive attitude...
( )`·.¸¸.-> Sicherheit: malheureusement muss je Frank droite donner, là cela API-Handling (besonders chez XP) vraie mal ist - Windos-like plan. tu as zwar droite avec Deiner Safe-Is-Safe-Einstellug, mais vergiss pas cela Anwender qui Software benutzen et pas Hardliner comment Du! --> Hardware ist HARD et Software plan SOFT! pourquoi benutzt du pas Votre PMC, cela klappt aussi under Windows!
( )`·.¸¸.-> dans-Runtime: dans-Runtime-DLL blähen qui Runtime unnötig sur et qui dans-Source-DLL peux pas modifié volonté. comme Beispiel dient une PLUG-IN-Funktion, nommé RenderScene. nous voulons unsere Runtime mais flexibel faire et DirectX et OpenGL rendern. en supplément soll chaque PLUG-IN qui Funktion RenderScene besitzen, quoi avec dans-Runtime-Code pas allez... cet Problem peux on mais avec Externen .PRC-Fichiers lösen! un Aufruf pourrait ensuite z.B. so aus voyons: Drehfux32.exe opengl.prc RenderScene -mem $0000.
Tut mir wirklich leid Sani, mais wohin Frank droite hat, ...
PS: Dein deutch ist 1000x besser comme avant einem 3/4 l'an. |
|
|
| mele (¯`·.¸¸.{ WinXP Pro, XProfan9, XPIA }.¸¸.·´¯)
<Bugs zählen ist besser als Schafe zählen, da der Computer nur so schlau ist wie der der Mensch der ihn bedient.> | 08.11.2005 ▲ |
|
|
|
|
Frank Abbing | Hi,
dans-Runtime-Dlls avec XPIA muss on oui pas einsetzen. XPIA erzeugt oui qui Dll aussi separat et den Quellcode en supplément. |
|
|
| |
|
|
|
Frank Abbing | Claus, je hab une deiner Anregungen la fois aufgegriffen. qui prochain XPIA-Version wird, zusätzlich zur herkömmlichen forme, aussi une Kurzform qui paramètre- et Rückgabevariablen connaître. ici un Beispiel: KompilierenMarqueSéparation P.S.: iFs Syntaxbuilder venez avec dem Code (encore) pas bien sûr. là doit il wohl encore nachbessern... |
|
|
| |
|
|
|
| So qui Community erkennt Votre syntaktische Erweiterung maintenant et reagiert entsprechend. |
|
|
| |
|
|
|
Frank Abbing | Super, merci. |
|
|
| |
|
|
|
Claus Santa | ( Damn good! ) Habe vielen Dank!! |
|
|
| Snoozel, [[StA/oXr]] // life is just'n bugfree, cos coding is life | 18.11.2005 ▲ |
|
|
|
|
Michael Dell | allô Frank,
qui neue Parameterübergabe venez vraie bien! là rester à peine encore Wünche offen, une hab je mais encore. quelquefois volonté spezielle Funktionen seulement zur internen Anwendung nécessaire et devrait alors pas Exportiert volonté.
Ist es possible une commutateur einzubauen qui XPIA sagt cela une Funktion pas dans qui Export- Tabelle est? Bislang mach je cela oui de main mais es wär joli wenns aussi Automatisch ginge etwa dans qui Art:
AsmStart Test (p1&,p2&) I I steht ici naturellement pour interne. |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 22.11.2005 ▲ |
|
|
|