Link to home
Start Free TrialLog in
Avatar of CyrexCore2k
CyrexCore2kFlag for United States of America

asked on

MASM 6.14 Problems...

It's been awhile since I took my assembly class so maybe there's something I'm forgetting. I'm having trouble compiling one of my old projects. I'm 90% sure there's nothing wrong with the code although if necessary I will post it... (it's just really long) Anyway here's what happens.

I type ml rain.asm and I get the following message(s)

Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997. All Rights Reserved.

 Assembling: rain_new.asm
Microsoft (R) Incremental Linker Version 6.00.8168
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.

/z2
"rain_new.obj"
"rain_new.exe"
NUL
LINK : warning LNK4044: unrecognized option "z2"; ignored
LINK : error : Segment reference in fixup record
rain_new.obj : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt

I read a little on this error but frankly I have no idea what it means. o.o Could anyone steer me in the right direction? I'd like to get this running again if I can.
Avatar of CyrexCore2k
CyrexCore2k
Flag of United States of America image

ASKER

actually I typed

ml rain_new.asm

my bad.
Hi, is the code too lengthy ? If so, zip it and post it in a webfolder..

http://www11.rapidupload.com/


---
Harish
Just some more information... not sure if it's helpful

ml /Zm /c rain_new.asm  <---- works fine
ml /Zm rain_new.asm <---- error like above
Well, it gave the following errors:

rain.asm(115): error A2004: Redefinition of symbol
rain.asm(166): error A2004: Redefinition of symbol
rain.asm(197): error A2004: Redefinition of symbol
rain.asm(353): error A2004: Redefinition of symbol
rain.asm(7): error A2105: Expected: instruction or directive
rain.asm(8): error A2105: Expected: instruction or directive
rain.asm(9): error A2105: Expected: instruction or directive
rain.asm(10): error A2105: Expected: instruction or directive
rain.asm(11): error A2105: Expected: instruction or directive
rain.asm(12): error A2105: Expected: instruction or directive
rain.asm(13): error A2105: Expected: instruction or directive
rain.asm(15): error A2105: Expected: instruction or directive
rain.asm(16): error A2105: Expected: instruction or directive
rain.asm(17): error A2105: Expected: instruction or directive
rain.asm(18): error A2105: Expected: instruction or directive
rain.asm(19): error A2105: Expected: instruction or directive
rain.asm(38): error A2005: Symbol is multidefined: DRIPSLOOP
rain.asm(42): error A2026: Reference to multidefined symbol
rain.asm(46): error A2009: Symbol not defined: NEWDRIPFREQ
rain.asm(47): error A2026: Reference to multidefined symbol
rain.asm(49): error A2009: Symbol not defined: RAINHEAD
rain.asm(51): error A2005: Symbol is multidefined: NODRIP
rain.asm(55): error A2005: Symbol is multidefined: SKIPCOL
rain.asm(58): error A2026: Reference to multidefined symbol
rain.asm(84): error A2005: Symbol is multidefined: DRIPSLOOP
rain.asm(88): error A2026: Reference to multidefined symbol
rain.asm(91): error A2009: Symbol not defined: RAINHEAD
rain.asm(94): error A2009: Symbol not defined: RAINTAIL
rain.asm(96): error A2026: Reference to multidefined symbol
rain.asm(101): error A2009: Symbol not defined: MAXDRIPLEN
rain.asm(105): error A2009: Symbol not defined: TAILGROWFREQ
rain.asm(108): error A2009: Symbol not defined: RAINTAIL
rain.asm(109): error A2026: Reference to multidefined symbol
rain.asm(113): error A2005: Symbol is multidefined: CONTINUE
rain.asm(115): error A2005: Symbol is multidefined: SKIPCOL
rain.asm(118): error A2026: Reference to multidefined symbol
rain.asm(150): error A2026: Reference to multidefined symbol
rain.asm(153): error A2009: Symbol not defined: RAINHEAD
rain.asm(156): error A2009: Symbol not defined: RAINTAIL
rain.asm(158): error A2009: Symbol not defined: RAINHEAD
rain.asm(159): error A2026: Reference to multidefined symbol
rain.asm(164): error A2026: Reference to multidefined symbol
rain.asm(166): error A2005: Symbol is multidefined: CONTINUE
rain.asm(171): error A2009: Symbol not defined: DRIPMOVEFREQ
rain.asm(172): error A2026: Reference to multidefined symbol
rain.asm(177): error A2009: Symbol not defined: RAINTAIL
rain.asm(179): error A2026: Reference to multidefined symbol
rain.asm(181): error A2009: Symbol not defined: RAINTAIL
rain.asm(182): error A2026: Reference to multidefined symbol
rain.asm(187): error A2026: Reference to multidefined symbol
rain.asm(190): error A2009: Symbol not defined: RAINTAIL
rain.asm(192): error A2026: Reference to multidefined symbol
rain.asm(195): error A2009: Symbol not defined: RAINTAIL
rain.asm(197): error A2005: Symbol is multidefined: NODRIP
rain.asm(255): error A2009: Symbol not defined: DELAYAMOUNT
rain.asm(270): error A2009: Symbol not defined: KBDCHAR
rain.asm(271): error A2026: Reference to multidefined symbol
rain.asm(275): error A2009: Symbol not defined: OX
rain.asm(276): error A2026: Reference to multidefined symbol
rain.asm(277): error A2009: Symbol not defined: OY
rain.asm(278): error A2026: Reference to multidefined symbol
rain.asm(280): error A2026: Reference to multidefined symbol
rain.asm(287): error A2005: Symbol is multidefined: DONE
rain.asm(288): error A2009: Symbol not defined: ENDPROGRAM
rain.asm(319): error A2009: Symbol not defined: SEED
rain.asm(321): error A2009: Symbol not defined: SEED
rain.asm(337): error A2009: Symbol not defined: KBDCHAR
rain.asm(341): error A2009: Symbol not defined: OX
rain.asm(342): error A2009: Symbol not defined: OY
rain.asm(349): error A2009: Symbol not defined: ENDPROGRAM
rain.asm(351): error A2026: Reference to multidefined symbol
rain.asm(353): error A2005: Symbol is multidefined: DONE

  50284 + 432964 Bytes symbol space free

      0 Warning Errors
     73 Severe  Errors
Hi CyrexCore2k,

I think ml will be using an environment variable to locate the linker. It will then invoke the linker with its own, made up command line.

Sadly I dont know which environment variable it needs setting. Have you any documentation on masm that may help?

Paul
Ummm you're using a different version or something

rain.asm(7): error A2105: Expected: instruction or directive
rain.asm(8): error A2105: Expected: instruction or directive
rain.asm(9): error A2105: Expected: instruction or directive
rain.asm(10): error A2105: Expected: instruction or directive
rain.asm(11): error A2105: Expected: instruction or directive
rain.asm(12): error A2105: Expected: instruction or directive
rain.asm(13): error A2105: Expected: instruction or directive
rain.asm(15): error A2105: Expected: instruction or directive
rain.asm(16): error A2105: Expected: instruction or directive
rain.asm(17): error A2105: Expected: instruction or directive
rain.asm(18): error A2105: Expected: instruction or directive
rain.asm(19): error A2105: Expected: instruction or directive

If you look at those lines there's nothing wrong with the syntax there so I'm not sure what your assembler is talking about.
ASKER CERTIFIED SOLUTION
Avatar of PaulCaswell
PaulCaswell
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
CyrexCore2k, yes.. sorry.. I had used 5.0 version :)
Paul,

Yeah thats what I was thinking too since I do have VS 6.0 and VS .Net installed on this system as well... maybe it's trying to use one of their linkers.

I've looked around the files in the zip that I installed masm from but I'm really not sure where to look x_x

To my knowledge MS has released masm 6 as a free product so here's the zip if you feel like taking a look

http://drop.netortech.com/masm611.zip
YESSSS :D

Okay so I'm still not sure where that environment variable is but I just went ahead and ran ML with the compile only switch and then went directly to the directory with MASMs linker and told it to link the compiled object file and it works :)

I don't feel like trying to figure out all this path stuff so I'll probably just write a batch file to do that for me.

Thanks Paul!
Hi CyrexCore2k,

Here's a batch file that came with the old MSVC 3.1 called MSVCVARS.BAT.

@echo off
set TOOLROOTDIR=C:\MSVC
set PATH=C:\MSVC\BIN;%PATH%
set INCLUDE=C:\MSVC\INCLUDE;%INCLUDE%
set LIB=C:\MSVC\LIB;%LIB%

You will probably have to tinker with it. It might be of help.

Paul