I've just downloaded masm32 ver 7.....I'm just pulling my hair out over how to set up a compile of any old asm file in the bundled quick editor. Is the only way to set the name of the asm file you want to compile through a makefile in the same directory? or via some environment variable somewhere? I'd rather not command line all the time :-)

i.e running compile (in qeditor) on anycode.asm (in whatever dir) gives: (i.e the default is obviously my.asm)

Assembling: C:\masm32\my.asm
MASM : fatal error A1000: cannot open file : C:\masm32\my.asm

Volume in drive C has no label
Volume Serial Number is 3422-19E3
Directory of C:\masm32

MY EXE 1,536 10-09-02 10:41a my.exe
1 file(s) 1,536 bytes
0 dir(s) 22,173.16 MB free

I've had a look around to try and find out what the problem is, but can't find anything....can anybody point me in the right direction to go about fixing this?


Posted on 2002-10-14 22:16:20 by kernel_sanders
Are you sure that you installed correctly the Masm32 package?
An interesting observation,how you are able to get your EXE output, while the assembler is refusing to compile?


Posted on 2002-10-15 04:54:23 by Vortex
The last time I used qeditor was over a year ago. It didn't do much for me... As I recall some of the filenames/directory paths were hardwired in the batch files.

Sounds like you're the kind of guy who'd appreciate a good IDE. I suggest taking a look at RadASM in the IDE forum.
Posted on 2002-10-15 05:02:25 by MArtial_Code

Greate nick, I like it.

Usually the problem of building an asm source that is not in MASM32 format has to do with the name of the resource file. MASM32 names every resource file as RSRC.RC so if you build directly from Qeditor with the standard build options, if your resource file has a different name, it will not work.

In the short term, rename the resource file to RSRC.RC and change it in the code as well and it will probably build OK.

Just make sure you have the following directives at the top of the source file before any other directive or code.

.486 ; create 32 bit code
.model flat, stdcall ; 32 bit memory model
option casemap :none ; case sensitive

Without these you will get a lot of errors because the case sensitive option is not set.

Regards and good luck with it.

Posted on 2002-10-15 05:03:14 by hutch--
Is your code in a directory called "my code" or "my asm stuff", or anything with "my" followed by a space (ASCII char 0x20)?

The editor calls ML using the line:
\masm32\bin\ml /c /coff %1.asm

And for those of us with a long and varied MS-DOS based history, %1 is the first argument, where arguments are delimited by spaces (or tabs, or returns). As such, the parser picks up the space in "my code", and thinks "C:\masm32\my" is argument 1, and the rest are arguments 2, 3, etc.

If you want to use qeditor, put your code in directories & sub-directories which do not have spaces in them.

Posted on 2002-10-15 05:30:39 by Mirno
I suspected it might be something stupid.....i.e turned out to be the spaces :-) thanx mirno :-)

I should have have put 2 and 2 together after seeing 'masm32\bin\ml /c /coff %1.asm'.

vortex: sorry i shouldn't have put the exe stuff in there....It was just a result of me doing a compile on my.asm :-).........

Yours in ineptitude,

KS :-)
Posted on 2002-10-15 09:17:31 by kernel_sanders

Mirno is right, the distribution of MASM32 had the old batch files that did not place quotes around the file names that allows spaces like normal.

I posted a complete set of modified batch files here in the MASM32 forum that handle long file and path names normally. Once you copy these over the old ones, you can use any legal path and file name you like.


Posted on 2002-10-15 17:00:23 by hutch--