| |
|
|
| Frage: comment sieht ensuite mon ASM-Routine aus, qui je zur Zeit avec Profan2ccp einbinde , si je vous comme Inline nutzen voudrais pour Borland 5.5 ?
So appelle je cet sur : z&=Call(xpia_getprocaddressm(xpia_hmodule&,rgb_farbe),b#,c#,groesse&)
Si 0
AsmStart rgb_farbe
Paramètres b#,c#,groesse&
LOCAL r :BYTE
LOCAL g :BYTE
LOCAL b :BYTE
LOCAL gr :DWORD
LOCAL bb :DWORD
LOCAL cc :DWORD
mov eax,para3
mov gr,eax
mov eax,para2
mov cc,eax
mov eax,para1
mov bb,eax
mov ecx,0
.tandis que ecx<=gr
mov ebx,para2
mov al,[ebx+ecx]
.si al>5
jmp plus
.endif
mov ebx,para1
mov al,[ebx+ecx]
mov r,al
mov al,[ebx+ecx+1]
mov g,al
mov al,[ebx+ecx+2]
mov b,al
mov al,b
.si al>250
mov eax,255
.pause
.endif
mov al,g
.si al>250
mov eax,255
.pause
.endif
mov al,r
.si al>250
mov eax,255
.pause
.endif
plus:
add ecx,4
.endw
AsmEnd(z&)
endif
merci.
mfg |
|
|
| |
|
|
|
Sebastian König | allô Peter,
j'ai qui Frage la fois dans une eigenen Beitrag déménagé.
Peter Bierbachh
Frage: comment sieht ensuite mon ASM-Routine aus, qui je zur Zeit avec Profan2ccp einbinde , si je vous comme Inline nutzen voudrais pour Borland 5.5 ?
So appelle je cet sur : z&=Call(xpia_getprocaddressm(xpia_hmodule&,rgb_farbe),b#,c#,groesse&) (...)
qui cadre wäre prinzipiell:
Allerdings glaube je à peine, dass Du den Code so simple komplett prendre peux, car Inline-Asm dans C++ ist dans qui règle pour kurze Abschnitte, qui direct à qui Stelle im Code, à qui vous stehen, eingebunden volonté, gedacht. cela définir de Funktionen, qui Du ensuite de anderer Stelle avec Call() appel peux, allez assez sûrement pas. sans es maintenant getestet trop avons vermute je aussi, dass Du pas qui volle Anzahl de Makros usw. zur Disposition avons wirst.
Fazit: tu peux la fois avec qui dessus beschriebenen pochoir experimentieren, mais pour größere ASM-Codes ist XPIA assez sûrement qui bequemere Alternative.
MfG
Sebastian |
|
|
| |
|
|
|
| cela habe je mir presque gedacht. XPIA bleibt qui Solution pour längere Call-Funktionen.
mfg |
|
|
| |
|
|