I need real help :)

Could someone send me zipped simple, dummy masm32 project built by radasm which links from MORE THAN ONE .asm file

i.e Project should contain

main.asm
module1.asm
module2.asm

then

main.asm calls func1 from module1.asm
main.asm calls func2 from module2.asm

Besides, I know that:

include module1.asm
include module2.asm in main.asm would help, but I don't like this way.

Normaly IDE's should compile and link more than one asm file. Now I get an "unresolved externals" errors.
Posted on 2004-04-16 02:52:17 by Ulterior
Hi Ulterior,

In the help file there is a page on how to use modules in RadASM. Depending on the assembler you are using you may be required to create prototypes for the functions in the other asm files.

For regular multiple asm files, compiled into a single object you have to watch for dependancies. You can go to my website for examples of this, UpdateManager uses multiple asm files.
Posted on 2004-04-16 03:10:08 by donkey
Hi Ulterior

Here is an masm example.

KetilO
Posted on 2004-04-16 03:19:10 by KetilO
Microsoft (R) Windows (R) Resource Compiler, Version 5.00.1823.1 - Build 1823

Copyright (C) Microsoft Corp. 1985-1998. All rights reserved.


Using codepage 1257 as default
Creating Module.RES

RC: RCPP -CP 1257 -f E:\Incomming\Asm\module\Module\RCa10424 -g E:\Incomming\Asm\module\Module\RDa10424 -DRC_INVOKED -D_WIN32 -pc\:/ -E -I. -I .

Module.rc.
Writing DIALOG:101, lang:0x409, size 180.
Writing VERSION:1, lang:0x409, size 320

Make finished.
C:\Masm32\Bin\ML.EXE /c /coff /Cp /nologo /I"C:\Masm32\Include" "Module.asm"
Assembling: Module.asm
C:\Masm32\Bin\LINK.EXE /SUBSYSTEM:WINDOWS /RELEASE /VERSION:4.0 /LIBPATH:"C:\Masm32\Lib" *.obj "Module.res"
Microsoft (R) Incremental Linker Version 5.12.8078
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.


Make error(s) occured.
ERROR On Build: Version Number Was Not Increased.

Strange, but build produced module1.exe file ??? ( shouldn't it be module.exe ) and what are these make errors?
Posted on 2004-04-16 03:37:50 by Ulterior
Use Project Options and change Link:

5,OT,$B\LINK.EXE /SUBSYSTEM:WINDOWS /RELEASE /VERSION:4.0 /LIBPATH:"$L" /OUT:"$5" *.obj,4

KetilO
Posted on 2004-04-16 04:12:24 by KetilO
Thanks, now everythings ok.

But why I didn;t have /out directive in my project options? Or have I missed something when updating version? I just unpacked radasm files and haven't changed anything since first install.

Ulterior
Posted on 2004-04-16 04:17:41 by Ulterior
Hi Ulterior

New RadASM versions does not affect build options on old projects.

KetilO
Posted on 2004-04-16 04:39:57 by KetilO
So, to sum up everything posted here, I think we need an option to restore default project options to the latest. Could you add this feature, please?
Posted on 2004-04-16 04:45:58 by Ulterior