elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  [Consulta] Prototipos de funciones para include.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Consulta] Prototipos de funciones para include.  (Leído 3,807 veces)
The Swash

Desconectado Desconectado

Mensajes: 194


Programmer


Ver Perfil WWW
[Consulta] Prototipos de funciones para include.
« en: 3 Junio 2012, 02:29 am »

Hola,

Hoy vengo a molestaros con una pequeña consulta y es referido a MASM, y es la siguiente:
Yo tengo un número de funciones que hice y quisiera poder hacer un solo archivo que contenga esas funciones para posteriormente incluirlo en mis otros proyectos. Mi duda recae en que mis funciones van así:

Código
  1. proc MyFunc1, Param..
  2.  
  3. end proc

Pero no he logrado que funcione o no al menos con un include MyProcs.asm.
Creo que debo declarar de alguna forma las funciones en cabecera o algo, si alguien sabe agradecería me deis una pequeña manita.

Un saludo,
Iván Portilla.


En línea

_Enko


Desconectado Desconectado

Mensajes: 538



Ver Perfil WWW
Re: [Consulta] Prototipos de funciones para include.
« Respuesta #1 en: 3 Junio 2012, 03:32 am »

Eso se parece más a la sintaxis de fasm que masm.

En masm creo que es asi:
Código:
myFunc1 PROC Param1: DWORD, Param2: Dword
    ;............
    ret
myFunc1  ENDP

Tambien no se si es importante, pero por ahí conviene meterlo en un archivo ".inc".

Y luego, creo que el include lo deberás hacer en el segmento .code
Saludos.


« Última modificación: 3 Junio 2012, 03:53 am por _Enko » En línea

Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: [Consulta] Prototipos de funciones para include.
« Respuesta #2 en: 3 Junio 2012, 05:17 am »

En un archivo *.inc declaro los prototipos (si deseas en el principal)

Ejemplo:
xChangeValue PROTO :WORD, :BYTE
TopXY PROTO   :DWORD,:DWORD

Para qué hacer esto?
Para poder usar la directiva invoke, solo de esa manera puedo usar

invoke TopXY dwParam1, dwParam2

En un *.asm aparte del principal puedes hacer esto
.data
[...]
.code
TopXY proc wDim:DWORD, sDim:DWORD

    shr sDim, 1      ; divide screen dimension by 2
    shr wDim, 1      ; divide window dimension by 2
    mov eax, wDim    ; copy window dimension into eax
    sub sDim, eax    ; sub half win dimension from half screen dimension

    return sDim

TopXY endp
 
Luego en un el *.inc principal al final lo puedes incluir:

;#### Inserted modules ####

        include xtra.asm
   include SplashScreen.asm
   include ChanceCell.asm

y listo en el main, lo puedes llamar normalmente sin problemas

Nox.
En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
The Swash

Desconectado Desconectado

Mensajes: 194


Programmer


Ver Perfil WWW
Re: [Consulta] Prototipos de funciones para include.
« Respuesta #3 en: 3 Junio 2012, 06:20 am »

Hola,

@_Enko muchas gracias y tienes razón, la sintaxis que utilicé es correspondiente a FASM. En realidad llevaba mucho sin utilizar MASM y me he confundido de manera enorme.

@Nox muchas gracias todo me ha quedado claro y funcionando.

Un saludo a ambos,
Iván Portilla.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
consulta sobre generador de funciones con eeprom
Electrónica
gallet 0 3,070 Último mensaje 5 Abril 2006, 15:55 pm
por gallet
Apple busca un jefe de seguridad para que no se pierdan más prototipos
Noticias
wolfbcn 0 1,524 Último mensaje 7 Septiembre 2011, 15:21 pm
por wolfbcn
Subastan en eBay los prototipos de tabletas con Windows 8
Noticias
wolfbcn 0 1,708 Último mensaje 22 Septiembre 2011, 02:02 am
por wolfbcn
consulta sobre Funciones de manejo de errores [c++] « 1 2 »
Programación C/C++
xkiz ™ 10 7,178 Último mensaje 11 Octubre 2011, 06:24 am
por Karman
Consulta; Necesito armar una consulta para saber si una fecha ha caido dentro...
Bases de Datos
astinx 6 6,391 Último mensaje 23 Diciembre 2011, 20:34 pm
por astinx
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines