| |
|
|
| Cuestión: Como sieht entonces mi ASM-Rutina de, el Yo a Profano tiempo2ccp einbinde , si yo ellos como Inline nutzen möchte para Borland 5.5 ?
So rufe Yo esta en : z&=Call(xpia_getprocaddressm(xpia_hmodule&,rgb_farbe),b#,c#,groesse&)
If 0
AsmStart rgb_farbe
Parámetros 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
.mientras que ecx<=gr
mov ebx,para2
mov al,[ebx+ecx]
.if al>5
jmp más
.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
.if al>250
mov eax,255
.romper
.endif
mov al,g
.if al>250
mov eax,255
.romper
.endif
mov al,r
.if al>250
mov eax,255
.romper
.endif
más:
add ecx,4
.endw
AsmEnd(z&)
endif
Gracias.
mfg |
|
|
| |
|
|
|
Sebastian König | ¡Hola Peter,
Yo el Cuestión veces en una eigenen Contribución movido.
Peter Bierbachh
Cuestión: Como sieht entonces mi ASM-Rutina de, el Yo a Profano tiempo2ccp einbinde , si yo ellos como Inline nutzen möchte para Borland 5.5 ?
So rufe Yo esta en : z&=Call(xpia_getprocaddressm(xpia_hmodule&,rgb_farbe),b#,c#,groesse&) (...)
Der Rahmen wäre prinzipiell:
Aunque glaube Yo kaum, dass Usted el código así simplemente komplett tomar kannst, porque Inline-Asm en C++ es en el Regel para kurze Abschnitte, el direkt a el Punto en el Code, a el ellos posición, eingebunden voluntad, pensamiento. Das Definieren de Características, el Usted entonces de otro Punto con Call() aufrufen kannst, va bastante sicher no. Ohne lo ahora getestet a haben vermute Yo auch, dass No el volle Anzahl de Makros usw. disponible haben wirst.
Fazit: Usted puede veces con el oben beschriebenen Schablone experimentieren, aber para größere ASM-Codes es XPIA bastante sicher el bequemere Alternative.
MfG
Sebastian |
|
|
| |
|
|
|
| Das Yo me fast pensamiento. XPIA restos el Solución längere Call-Características.
mfg |
|
|
| |
|
|