Jump to content
IGNORED

[SOLVED] Issues with DASM


Recommended Posts

Hey everybody!

Recently I've been looking into programming the Atari 2600, and I think that I'm starting to understand the basics of it thanks to Mr. Andrew Davie's excellent tutorials. But I have met one major roadblock that prevents me from getting into it for real: I can't get DASM to work correctly, and thus I can't even assemble my codes to see what progress I eventually have made. I've been using v. 2.20.11 (which seems to be the latest one according to this page), it seems to assemble everything correctly except that it doesn't seem to recognize neither "VCS.h" nor "MACRO.h" no matter where I place the files. I've heard that DASM can have som issues on Windows 7 (which I have). Might this be the problem? Or is it just me being to simple-minded to figure it out? Any help will be greatly appreciated!

 

EDIT:

Here is the code file that I've been using to test DASM (download at the bottom of the first post): http://atariage.com/forums/viewtopic.php?t=27194

And this is the command line I've been in Command Prompt to get DASM to assemble the source code:

C:\*PATH* dasm.exe C:\*PATH*kernel.txt -lkernel.txt -f3 -v5 -okernel.bin
Edited by Ideka
Link to comment
Share on other sites

Hmm... Although that does seem to change the result to the better, it doesn't seem to be the source of the problem. DASM still doesn't output any file, and by the looks of the message it doesn't even seem to read the file:

 

P2rzyvY.png

 

Maybe it's my version of DASM? All of the topics I've read have pointed me to a domain called http://atari2600.org/dasm, but this link is down and therefore I have no clue on what version I really should download. I'm really sorry for bothering you people so much, but making my own 2600 game has been a dream of mine for a long time. Thanks for understanding!

Edited by Ideka
Link to comment
Share on other sites

Dasm works fine for Windows 7. I added it to the registry as a right-click "open with" option for .asm files. After browsing to and assigning Dasm.exe to .asm normally, I used regedit to change the command data to "C:\Bin\dasm.exe" "%1" -f3 -o"%1".bin -lReport.txt

I suggest using the command prompt program (installed in accessories), going directly to the subdirectory you are working in (literally type in cd.. multiple times to get to the root directory, then cd followed by the subdirectory name you are using for Dasm), and trying Dasm there manually to help narrow down what the issue is. Once you discover that, you can automate your process like I did above.

Edited by Nukey Shay
Link to comment
Share on other sites

Was a listing created (that'd be the kernel.lst file)? If so, open it up and search for "error".

 

Also post your kernel.asm file, there might be something wrong with it like having:

processor 6502

instead of:

    processor 6502

The code won't compile if that line is not indented.

 

I believe the current version of DASM is found at http://dasm-dillon.sourceforge.net - that's the link I provide in my presentation about writing 2600 homebrews.

Edited by SpiceWare
Link to comment
Share on other sites

There should be an update to DASM in a month or two, bringing together a number of fixes submitted over the years. The atari2600.org domain is/was mine, and unfortunately DASM disappeared from that URL due to actions by Atari's lawyers. I never got around to restoring it. As noted, the source forge location is currently the correct place from which to obtain DASM.

Cheers

A

Link to comment
Share on other sites

Thanks for all of these answers, it really helped me a lot! I just wanted to let you know that I've finally solved my issue, which seemed to be a cause of a little mistake in my assembly file (as you people suggested!) and me simply not knowing that DASM actually output any files since they for some reason are placed in a rather obscure directory (the "Users" folder). Nevertheless I'll hopefully be able to start coding some 2600 games soon, thanks to you people!

Link to comment
Share on other sites

Thanks for all of these answers, they really helped me a lot! I just wanted to let you know that I've finally solved my issue, which seemed to be a cause of a little mistake in my assembly file (as you people suggested!) and me simply not knowing that DASM actually output any files since they for some reason are placed in a rather obscure directory (the "Users" folder). Nevertheless I'll hopefully be able to start coding some simple 2600 games soon, all thanks to you people!

Edited by Ideka
Link to comment
Share on other sites

Glad it's working, but you're still not doing things quite right if output files are going to a different folder.

Assuming you are running this from a command line, in the directory where the input files are (which is what you SHOULD be doing) then the output files should be dumped in the same directory you're in.

For example...

 

c:\something\something2\dasmlocation\dasm.exe sourcefile.asm -llistingfile.txt -f3 -ssymboltablefile.sym -ooutputfile.bin

 

That should look for the dasm executable in directory "c:\something\something2\dasmlocation\"

It should run the executable ("dasm.exe")

It will use "sourcefile.asm" as the source file (your assembler code)

It will output a listing file to the file "listingfile.txt" in the current directory

it will output a symbol table listing to the file "symboltablefile.sym" in the current directory

It will create an output binary "outputfile.bin" in the current directory.

 

So, hoping the above is what you see when you follow the instructions carefully. Of course, your file names may vary -- but not the location of the output files!!

Remember, you need to run this command from within the directory where your source files are, and dasm can live anywhere but you need to specifically mention its location as in the above.

Cheers

A

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...