Jump to content
IGNORED

new to Atari 2600 programing, but I generaly grasp it


grafixbmp

Recommended Posts

Hello all. To start things off, I originaly programed for the commodore 64 with basic and some ML. I then tried to understand some of the Apple II and commodore 128 basic vs. 8.00. I later took some classes in Assembler for the old popular motorola processor and at least passed my final for it. After this, I moved on to C++ and took a class in it as well. It sure seemed harder than I thought without line numbers LOL. And at this point, I tried about 1 or 2 years ago to learn (for God knows why (on my own)) the ML virtual command set for the standard of DVD players in hopes to use it to create decent games for home DVD players. And finally this led me here. I have been out of practice coding for some years now. I have repeatedly read through the tutorial workshops and such but haven't been able to get started coding. Basicaly because I can't seem to find the kind of code editor I want to use in conjuction with DASM. I was wondering about a no frills code editor that will interface directly with DASM and the emulator of choice. As for the debug mode in Stella, someone said use ~, but I am just an idiot and can't seem to get the clock by clock process to work. Just want some help geting started. I have a great, albeit complicated game idea that I would like to have a crack at.

 

For this game, I have designed its working around the Atari architecture and in the process, wanted the challenge of taking on one of the harder things to get the Atari to do.... sidescroll. This may not be such an issue being that the game scrolls very slowly. And asymetrical play fields are only located on the top and bottom of the gamefield area. I also thought about another thing that could help for needing extra clock cycles to preform certain tasks and that is doing it in widescreen. In effect, have the top and bottom 6 lines or so do nothing graphicaly being the background is black. I would still conform to the necessary scanline needs but keep the graphics confined a little more tward the middle. I feel that for this game, sub kernels are the key and branching kept to a minimum so the stack doesn't overwhelm the memory.

 

For the center of the screen where most action takes place, (lots of horizontal scrolling) The background registers in the TIA are just repeated on the right so there is no refresh of them for the right side and they are not refreshed at all untill every fourth scanline. I am hoping that this will give me plenty of room to display several sprites, balls, and missles over the majority of the middle of the screen. This is going to be hard but I frown on sayings like "It can't be done" I still want to try. This is actualy a clone of a very popular arcade game from the 16 bit era and I think with tons of elbow grease, the atari can pull it off. If anyone can help get me started coding, I will tell you which game it is.

Many thanks in advance

 

(I'm only asking for help seting up my environment on my PC so I can get started, not help coding the game, unless you find it intresting to assist)

Link to comment
Share on other sites

Welcome to Atari 2600 programming!

 

My editor of choice is Textpad, with some setup to start the assembler and jump to an error easier. I am no Stella debugger expert, so you may ask someone else here.

 

Your kernel sounds doable, finding time for repositioning will become most likely the most difficult part.

Link to comment
Share on other sites

I can't seem to find the kind of code editor I want to use in conjuction with DASM. I was wondering about a no frills code editor that will interface directly with DASM and the emulator of choice.

If you're using Windows, there's a free, frilly IDE called Crimson Editor that interfaces directly with DASM and an emulator.

 

If you're serious about no frills, there's a free IDE that was written for batari Basic called 2600IDE, which can be set up to bypass the batari Basic compiler and compile straight-assembly programs with DASM-- but it truly is a no-frills editor, e.g., it doesn't have search, or search-and-replace.

 

And there's a free DOS-based IDE called ADEV that was written a few years back, that has the look and feel of the Windows/DOS EDIT.COM editor, except it uses DASM to compile programs, and runs them in your chosen emulator-- which is no longer available from the DASM web site (although the description and broken link are still there), but I have a copy I can send you if you're interested.

 

There are others, of course, including shareware and commercialware, but those are the freeware IDEs that I've used for Atari 2600 programming, listed in reverse chronological order.

 

Michael

Link to comment
Share on other sites

I can't seem to find the kind of code editor I want to use in conjuction with DASM. I was wondering about a no frills code editor that will interface directly with DASM and the emulator of choice.

If you're using Windows, there's a free, frilly IDE called Crimson Editor that interfaces directly with DASM and an emulator.

 

Michael

This one should work. There are some features I would love but don't think any editor supports but , we just can't have everything the way we want it now can we?

 

On a side note, does anyone have or know any subroutines that would be efficient at setting the origin of a ball or missle locked to another moving object on the screen? or possibly several moving objects and the ball or missle randomly comes from them all one at a time ? just wondering if anyone has any experience with this kind of event in a game?

Link to comment
Share on other sites

Is there anyone here that is farmiliar with coderoar? I had tried to se if I could use it once but didn't understand some of its features probably due to it being geared for other things besides ASM. I decided to try and use crimson cause it seems to be less of a headache then coderoar. I have stella and DASM on my computer just need to know what needs to be done to point them to working with each other.

 

Oh well, I just can't resist any longer. My game is a "clone" so it is called C-Type after R-Type the classic arcade game. I have a mock screen. I have done art work for many games and diffrent platforms, staying close to each of their limitations. I hope everyone likes how this looks and hopefully some will let me know If they think it can be done, atleast in part. I figured that a 8K or 16K cart would be necessary.

 

post-10601-1171906204_thumb.jpg

Link to comment
Share on other sites

Looks like a nice idea, and seems possible (with a lot of flicker on the aliens). The kernel will probably be similar to the Paradroid demo that was posted by Thomas a while back (though this demo uses Supercharger RAM). It might be better to start with a simpler project though at first?

 

Chris

 

Is there anyone here that is farmiliar with coderoar? I had tried to se if I could use it once but didn't understand some of its features probably due to it being geared for other things besides ASM. I decided to try and use crimson cause it seems to be less of a headache then coderoar. I have stella and DASM on my computer just need to know what needs to be done to point them to working with each other.

 

Oh well, I just can't resist any longer. My game is a "clone" so it is called C-Type after R-Type the classic arcade game. I have a mock screen. I have done art work for many games and diffrent platforms, staying close to each of their limitations. I hope everyone likes how this looks and hopefully some will let me know If they think it can be done, atleast in part. I figured that a 8K or 16K cart would be necessary.

 

post-10601-1171906204_thumb.jpg

Link to comment
Share on other sites

I have stella and DASM on my computer just need to know what needs to be done to point them to working with each other.

Do you mean with Coderoar, or with Crimson Editor? Were you able to set up the user tools, one to compile programs with DASM, and the other to run programs with Stella? I can help with that if you need it, but not with Coderoar.

 

Michael

Link to comment
Share on other sites

I have stella and DASM on my computer just need to know what needs to be done to point them to working with each other.

Do you mean with Coderoar, or with Crimson Editor? Were you able to set up the user tools, one to compile programs with DASM, and the other to run programs with Stella? I can help with that if you need it, but not with Coderoar.

 

Michael

I decided I like Crimson better. Code roar is too much of a mess for me. so go to user tools in crimson to set the oter parts up. ok.

 

I was only wondering if anyone here ever heard of code roar? or attempted to use it before?

Link to comment
Share on other sites

I have stella and DASM on my computer just need to know what needs to be done to point them to working with each other.

set up the user tools, one to compile programs with DASM, and the other to run programs with Stella? I can help with that if you need it

 

Michael

so go to user tools in crimson to set the other parts up. ok.

 

Uh... I can't make heads or tails of what this preferences window wants. Menu text? Command? argument? initial directory? And I don't care for hot keys.

Do I need to put this info into that mess: "dasm kernel.asm -lkernel.txt -f3 -v5 -okernel.bin" or a variant of this? some of it I understand is swithches that tells DASM what we want.

 

Any who, This is one of the things that discourages me from programing or anything else. The software has SO MANY FEATURES trying to cater to everyone but ultimately just making it too complexed to understand without spending atleast a year learning the software you are using well before you learn the language you are programing in for a totaly difrent system all together.

 

I once found a great code editor that was just so awesome and would be what I would love for this but, alas, it was for gameboy games only.

Link to comment
Share on other sites

I can't make heads or tails of what this preferences window wants. Menu text? Command? argument? initial directory? And I don't care for hot keys.

It's actually very simple, but unfortunately (and as is too often the case with software) the help documentation leaves a lot to be desired.

 

The "Menu Text" field is where you type the text that you want to be displayed on the menu for the user tool that you're configuring-- e.g., "Compile with DASM."

 

The "Command" field is where you type the command that you want to execute whenever you select the user tool that you're configuring. You might be tempted to enter the entire command line here, including all of the different switches and parameters, but that would be a mistake. All you want and need here is the path and name of the executable. The best way to fill in this field is to click the "..." button, browse to the drive and directory where the executable is, and select it, which will put the full directory path and executable program name in the field. This could be a compiler, an emulator, or some kind of programming utility (e.g., a file comparison program, a hex editor, or any program that performs some kind of function that isn't provided within Crimson Editor).

 

The "Argument" field is where you type any and all of the arguments (switches and parameters) that you want the executable program to use. If the executable doesn't require arguments, you can leave this field blank. But in the case of a compiler, you want to pass the name of your source file to the compiler, so that will need to go here. However, you want the user tool to be useful for compiling any program with DASM, hence you want to use a variable or variables in the arguments list, rather than typing the name of a specific file. If you click the ">" button that's to the right of this field, it will pop up a menu that has several things you can choose from, but the four at the top are the ones you're interested in-- File Path, File Directory, File Name, and File Title. When you select one of these, it will insert a variable name into the arguments list. "File Path" will insert the entire path and name of the file that's in the currently-active text window. "File Directory" will insert just the path, without the file name. "File Name" will insert just the file name, without the path. And "File Title" will insert the file name without the file extension. I'll come back to this in a moment.

 

The "Initial Dir" field is where you specify the directory that you want the executable to start in, or the current directory. If the executable doesn't need to start out in any particular directory-- e.g., if the arguments list includes any directories that will be needed-- then you can leave this field blank. But if the executable needs to be able to find other files, either in the current directory or in some directory that has a particular relationship (e.g., parent directory or child directory) to the current directory, then you would type the desired current or "start in" directory here, or else click the ">" button and then browse for it.

 

The "Hot Key" field is where you can define a hot key for the user tool, if you wish.

 

You should set the four check boxes which are below the fields to whatever preferences you want. If you're setting up a compiler, then I suggest that you uncheck the "Close on exit" box, check the "Capture output" box, uncheck the "Use short filename" box, and check the "Save before execute" box. That way, you can see the success messages or error messages when you compile.

 

Okay, let's suppose that you want to set up the first user tool to compile your program with DASM, and set up the second user tool to run your program with Stella.

 

First, let's set up DASM:

 

-- Click "Tools," then "Conf. User Tools..."

-- Click on the first "- Empty -" slot.

-- Click in the "Menu Text" field and type "Compile with DASM."

-- Click the "..." button next to the "Command" field, browse to wherever dasm.exe is, and 'open' it.

-- Click in the "Argument" field. This is where things get interesting.

-- Click the ">" button and select "File Path," to tell DASM which program to compile.

-- Type " -f3 -o" (space minus ef three space minus oh).

-- Click the ">" button again, but this time select "File Directory."

-- Type "\" (backslash).

-- Click the ">" button again, but now select "File Title."

-- Type ".bin" (dot bin) to finish.

-- The "Argument" field should now say "$(FilePath) -f3 -o$(FileDir)\$(FileTitle).bin" (* see below).

-- Uncheck "Close on exit."

-- Check "Capture output."

-- Uncheck "Use short filename."

-- Check "Save before execute."

-- Click "OK."

 

* You can also say "$(FilePath) -f3 -o$(FilePath).bin" if you want, but then ".bin" will be added to your entire file name-- e.g., source "C:\Atari\program.asm" and binary "C:\Atari\program.asm.bin"!

 

Now let's set up Stella:

 

-- Click "Tools," then "Conf. User Tools..."

-- Click on the next "- Empty -" slot.

-- Click in the "Menu Text" field and type "Run with Stella."

-- Click the "..." button next to the "Command" field, browse to wherever stella.exe is, and 'open' it.

-- Click the ">" button next to the "Argument" field, and select "File Directory."

-- Type "\" (backslash).

-- Click the ">" button again, but now select "File Title."

-- Type ".bin" (dot bin) to finish.

-- The "Argument" field should now say "$(FileDir)\$(FileTitle).bin".

-- This time, check "Close on exit."

-- Uncheck "Capture output."

-- Uncheck "Use short filename."

-- Uncheck "Save before execute."

-- Click "OK."

 

Now open one of your assembly programs. Click "Tools" and select the "Compile with DASM" option that now appears on the "Tools" menu. Your program compiles!

 

Now click "Tools" and select the "Run with Stella" option. Your program runs!

 

I hope this was enough to help get you started. :)

 

Michael

Link to comment
Share on other sites

I can't make heads or tails of what this preferences window wants. Menu text? Command? argument? initial directory? And I don't care for hot keys.

It's actually very simple, but unfortunately (and as is too often the case with software) the help documentation leaves a lot to be desired.

/omit/

I hope this was enough to help get you started. :)

 

Michael

You have overly outdone yourself far beyond what I would have thought anyone here would do. I am overwhelmed at the time you spent on the detail for me. I would hope that others could benifit from this as well. Some others may not know exactly how to set it up too and this would be a big help.I just hope they find it. Many thanks to you. Lets just hope I don't make a habit of this.

Link to comment
Share on other sites

You have overly outdone yourself far beyond what I would have thought anyone here would do. I am overwhelmed at the time you spent on the detail for me. I would hope that others could benifit from this as well. Some others may not know exactly how to set it up too and this would be a big help.I just hope they find it. Many thanks to you. Lets just hope I don't make a habit of this.

No problem; I generally try to be helpful. I think I already posted some similar instructions on setting up Crimson Editor to work with batari Basic, but there were some differences in the fine details. I'd meant to post step-by-step instructions for setting up the user tools to compile 6502 assembly with DASM, so you just gave me the excuse I needed! :)

 

Michael

Link to comment
Share on other sites

You have overly outdone yourself far beyond what I would have thought anyone here would do. I am overwhelmed at the time you spent on the detail for me. I would hope that others could benifit from this as well. Some others may not know exactly how to set it up too and this would be a big help.I just hope they find it. Many thanks to you. Lets just hope I don't make a habit of this.

No problem; I generally try to be helpful. I think I already posted some similar instructions on setting up Crimson Editor to work with batari Basic, but there were some differences in the fine details. I'd meant to post step-by-step instructions for setting up the user tools to compile 6502 assembly with DASM, so you just gave me the excuse I needed! :)

 

Michael

 

I discovered one thing with some help from a friend. When setting up file paths through tools, if any of the directories have spaces in their path, then they will need quotes around each part in this fashion:

 

"$(FilePath)" -l"$(FileDir)\$(FileTitle).txt" -f3 -v5 -o"$(FileDir)\$(FileTitle).bin"

 

I required the quotes for my own setup because my .asm files are on my desktop which includes the "Documents and Settings" folder in its filepath. The usage of quotes to surround space-seperated items is necessary when using the dos prompt to enter commands. Hopefully pointing this out will help users from having as much frustration with this "learning curve" in the future.

Link to comment
Share on other sites

I discovered one thing with some help from a friend. When setting up file paths through tools, if any of the directories have spaces in their path, then they will need quotes around each part in this fashion:

 

"$(FilePath)" -l"$(FileDir)\$(FileTitle).txt" -f3 -v5 -o"$(FileDir)\$(FileTitle).bin"

 

I required the quotes for my own setup because my .asm files are on my desktop which includes the "Documents and Settings" folder in its filepath. The usage of quotes to surround space-seperated items is necessary when using the dos prompt to enter commands. Hopefully pointing this out will help users from having as much frustration with this "learning curve" in the future.

Yes, the quotes are needed if the directory path or file name contain one or more spaces, because otherwise DASM will think that the space is separating one command switch from another command switch, and it will not be able to parse the command switches and parameters correctly. And since it's okay to include the quotes even if they aren't needed, it's probably best to set up the user tool(s) with the quotes included, just in case. Thank you for posting this!

 

Michael

Link to comment
Share on other sites

  • 1 year later...

I decided to revisit an old post after running through the atari collection of games and ran across a nice jem that felt like it had alot more to offer in terms of R-type. Just as I once seen someone here on the forums refer an existing game as one to modify to resemble a decent port of Zaxxon. Which was Desert Falcon.

 

The game I found was Vanguard (1982) It seems to have some starter feel to R-type but would need some work.

 

What do you guys think?

Link to comment
Share on other sites

I decided to revisit an old post after running through the atari collection of games and ran across a nice jem that felt like it had alot more to offer in terms of R-type. Just as I once seen someone here on the forums refer an existing game as one to modify to resemble a decent port of Zaxxon. Which was Desert Falcon.

 

The game I found was Vanguard (1982) It seems to have some starter feel to R-type but would need some work.

 

What do you guys think?

 

Vanguard__1982___Atari_.bin

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