Jump to content
IGNORED

Programming for the 7800 on Mac OS X?


DracIsBack

Recommended Posts

I got interested in doing 2600 development about a week ago on my mac (panther). There are a bunch of 2600 programming resources available through atariage, but I haven't been able to find much on os x specific stuff. If you search the web you'll come across tools like rasm, which want to work with MPW which is obviously defunt for many of us. dasm, distributed here : http://www.atari2600.org/dasm/ contains a mac os x binary, but it doesn't seem to want to assemble even the most simple 2600 asm source (at line 1, "processor 6502", it immediately fails to recognize the 6502 mnemonic). I'm not sure what's going on .... as I said, I've been looking into this a very short time and only actually tried to invoke dasm for the first time last night.

 

If I had any 7800 information I'd pass it along, but I've only looked at 2600 stuff at this point.

Link to comment
Share on other sites

dasm, distributed here : http://www.atari2600.org/dasm/ contains a mac os x binary, but it doesn't seem to want to assemble even the most simple 2600 asm source (at line 1, "processor 6502", it immediately fails to recognize the 6502 mnemonic). I'm not sure what's going on

 

:idea: Be sure to download the Atari 2600 Support Files from the DASM site and put 'em in your project directory. They're VCS.h and macro.h.

 

And it is possible to use MPW on OSX. Runs fine in classic mode.

 

Jason

Link to comment
Share on other sites

  • 3 weeks later...

The only other tool besides DASM that's really used for 7800 dev at this point is a78sign. I recall it being a bit annoying to build, so I put up my binary here.

 

There's a tool floating around for creating .a78 headers as well, but I was never able to find the source to it and eventually just stuck raw header data into my assembly files. There's a thread about that someplace.

 

And MPW under OS X? Ugh! God, why? =]

Link to comment
Share on other sites

A while back I converted my old 6502 and Z-80 assemblers to C, so that I could do everything short of using a ROM burner on a Powerbook. I found my original Stella CD tonight, and I was surprised to find an older version of my 6502 assembler on it, from before I added macro parameters.

 

So I just now spent a couple of hours cleaning up the new code. I haven't given it much serious use, because I've mostly been doing Colecovision stuff since the C conversion. But it works fine on some basic tests.

 

http://xi6.com/files/asm6502-1.5.tgz

http://xi6.com/files/makerom.tgz

 

It's straight ANSI C and compiles just fine under xcode.

Link to comment
Share on other sites

  • 1 year later...
...If you search the web you'll come across tools like rasm, which want to work with MPW which is obviously defunt for many of us. dasm, distributed here : http://www.atari2600.org/dasm/ contains a mac os x binary, but it doesn't seem to want to assemble even the most simple 2600 asm source (at line 1, "processor 6502", it immediately fails to recognize the 6502 mnemonic). I'm not sure what's going on ....

 

Hi all,

 

I'm trying to find DASM for OS X now, and http://atari2600.org/dasm is giving me a 404 - anybody know what happened to Davies' page? More immediately, anybody know where I can get a copy of the OS X binary or the source so I can build it myself?

 

Thanks,

Jacob

Link to comment
Share on other sites

  • 2 months later...

I bring this topic back from the dead!

 

Okay, I have DASM for Mac OSX, but when I run it, all I get is:

 

DASM sourcefile [options]

-f#      output format

-oname  output file

-lname  list file

-Lname  list file, containing all passes

-sname  symbol dump

-v#      verboseness

-t#      Symbol Table sorting preference (#1 = by address.  default #0 = alphabetic)

-Dname=exp  define label

-Mname=exp  define label as in EQM

-Idir    search directory for include and incbin

-p#      max number of passes

-P#      max number of passes, with less checks

Fatal assembly error: Check command-line format.

logout

[Process completed]

 

And that's it. I can't figure out how to *do* anything with it.

 

-DS-

Link to comment
Share on other sites

I bring this topic back from the dead!

 

Okay, I have DASM for Mac OSX, but when I run it, all I get is:

 

DASM sourcefile [options]

-f#      output format

.

.

.

Fatal assembly error: Check command-line format.

logout

[Process completed]

 

And that's it. I can't figure out how to *do* anything with it.

 

-DS-

904266[/snapback]

 

Assuming you have an ASM file for the 2600 , the magic formula is:

 

dasm game.asm -f3 -ogame.bin

 

If it succeeds, that'll produce a ROM file called game.bin. Why -f3? No idea. But it works. =)

Link to comment
Share on other sites

If it succeeds, that'll produce a ROM file called game.bin. Why -f3? No idea. But it works. =)

 

-f3 causes dasm to write a flat ROM image without any additional information. There are two other output file formats, iirc one of them has a load address in its first two bytes or something like that.

Link to comment
Share on other sites

Assuming you have an ASM file for the 2600 , the magic formula is:

 

dasm game.asm -f3 -ogame.bin

 

If it succeeds, that'll produce a ROM file called game.bin. Why -f3? No idea. But it works. =)

904314[/snapback]

 

I have an ASM file, but it's still not working.

 

When I run DASM from the finder, I just get the gibberish I already quoted. When I typed what you suggested (substituting the file name for "game.asm", of course), all I get is "-bash: dasm: command not found".

 

The shell isn't recognizing the program, and the program isn't recognizing the ASM file.

 

Edit: And, yeah, I'm in the right directory. The ls command shows that dasm is in the current directory, but it's not running it when I type the command.

 

-DS-

Edited by Raiu
Link to comment
Share on other sites

And, yeah, I'm in the right directory. The ls command shows that dasm is in the current directory, but it's not running it when I type the command.

 

Then on your system the current dirtectory (.) probably isn't in the shell's search path (on most unix systems it isn't by default, for good reason).

 

Try this:

 

./dasm game.asm -f3 -ogame.bin

Link to comment
Share on other sites

  • 5 months later...

Is MESS the only emulator for OS X that is suitable for homebrew development? I really want to program some 7800 stuff, but... I don't have an EPROM burner so emulation is really the only way for me to do it. CC2 is a little out of my starving college student budget.

Link to comment
Share on other sites

Is MESS the only emulator for OS X that is suitable for homebrew development? I really want to program some 7800 stuff, but... I don't have an EPROM burner so emulation is really the only way for me to do it. CC2 is a little out of my starving college student budget.
MESS is the only 7800 emulator on OS X that is suitable for anything. But for 7800 development, really no emulator on any OS is suitable for homebrew development, because I'm pretty sure that none of them implement MARIA DMA cycle stealing or MARIA DMA running out of cycles at the end of a scan line. Both can bite you pretty hard if you never use the real hardware. Edited by Bruce Tomlin
Link to comment
Share on other sites

Is MESS the only emulator for OS X that is suitable for homebrew development? I really want to program some 7800 stuff, but... I don't have an EPROM burner so emulation is really the only way for me to do it. CC2 is a little out of my starving college student budget.
MESS is the only 7800 emulator on OS X that is suitable for anything. But for 7800 development, really no emulator on any OS is suitable for homebrew development, because I'm pretty sure that none of them implement MARIA DMA cycle stealing or MARIA DMA running out of cycles at the end of a scan line. Both can bite you pretty hard if you never use the real hardware.

999675[/snapback]

Unfortunately that’s true for all existing emulators :(

But if you keep the limitations in mind they are still useful for development.

Link to comment
Share on other sites

Well that sucks. Guess I'll try to throw together an EPROM burner.

 

...by MARIA cycle stealing, are you saying the emulators leave the 6502 running during MARIA DMA?

999820[/snapback]

Well I am not sure about that but the emulators don't count MARIA cycles so they let you draw more gfx than MARIA is able to handle.

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...