Jump to content
IGNORED

Ok, so now what do I do? (programming question)


Cassidy Nolen

Recommended Posts

All right,

 

I have read all the sites, so I downloaded the editgfx and showgfx programs, and I have made every charachter in my machine into a smiley face. Simple.

 

Now I want to actually edit the hex code. I use DASM and then what? I do not know how to put it back together or what I am looking at/for. How do I change the color assignments? What are some of the basic commands I need for the program?

 

Thanks, and yes, I have no idea what I am doing. Be patient, I will make it worthwile (I can see new games on the horizon...)

 

Cassidy

Link to comment
Share on other sites

Have you looked at the stella programming manual?? I have tried to understand it for about a month now.. and I am nowhere...My pattern is.. Disassemble.. changes code... re-assemble.. than test to try and get a hold on what is where.. so far.... no success.. grrrrrrr..after all the "success" I have had so far.. I bow to those that came before me.. yet again...

 

Oh.. if you get a hold of this nightmare of programming on this.... i can help with anything that I can.. (which right now is jack and s%*t..) but I am just down the road..

 

[ 05-10-2002: Message edited by: smf_4ever ]

Link to comment
Share on other sites

quote:

Originally posted by Cassidy:

All right,

 

I have read all the sites, so I downloaded the editgfx and showgfx programs, and I have made every charachter in my machine into a smiley face. Simple.

Dead simple, right.

 

quote
Now I want to actually edit the hex code.  I use DASM and then what?  I do not know how to put it back together or what I am looking at/for.  How do I change the color assignments?  What are some of the basic commands I need for the program?

Well, how can I say this, without sounding arrogant?

Anyway, I try: The knowledge you need for hacking the graphics inside a 2600 binary is about 0.1% (or less) of the knowledge you need for programming that yourself.

 

Those games aren't written in hex codes, but in a machine depended language. It's called 6507 assembler. DASM can convert this assembler code into a binary.

 

But first you need that code. The easiest way to have a look at the code a game is based on, is using DiStella, which is a disassembler. It works perfect for games up to 4K.

 

So the first thing you would have to learn are the principals of the 6507 assembler langauge and then there still is the "famous" 2600 hardware.

 

Have a look at the output of DiStella or some commented disassemblies at The Dig! and you will soon find out, if you want to go that way.

 

quote
Thanks, and yes, I have no idea what I am doing.  Be patient, I will make it worthwile (I can see new games on the horizon...)

The might be a horizon, but I think it's veeery far away.

Link to comment
Share on other sites

You might want to start out learning 6502 on an Atari computer/emulator...the 2600 will drive you nuts if you are just beginning.

 

Think of 6502 programming as using a VERY fast car to deliver the mail...except... one... letter... at... a... time. That's machine language. Now imagine that the streets have stoplights on every intersection. That's the 2600. A little more planning is needed to get those green lights to line up. And it's that much easier if you've driven the stretch before (even though it had no stoplights).

 

Uh, I forgot what we were talking about...was it drag racing?

Link to comment
Share on other sites

quote:

Originally posted by Nukey Shay:

Now imagine that the streets have stoplights on every intersection. That's the 2600. A little more planning is needed to get those green lights to line up. And it's that much easier if you've driven the stretch before (even though it had no stoplights).

 

Nice analogy. Having programmed a game myself I'd take it a bit further... Not only are there stoplights on each intersection, you also have to judge your location by driving with your eyes closed, counting in your head how long you've been driving and at what speed, and riding the brakes at exactly the right moment to make sure you only go through lights when they're green.

 

Like on the '2600 if you get it wrong, you crash. :P

Link to comment
Share on other sites

quote:

Originally posted by Nukey Shay:

You might want to start out learning 6502 on an Atari computer/emulator...the 2600 will drive you nuts if you are just beginning.

Dumb question.. What is the best way/programm for this? (I have all the 800 emu.. plus a full working 130xe system (with APE).

Link to comment
Share on other sites

First off I'm absolutely NOT an expert at 2600 programming. My grand total output so far is a 75% complete River Raid editor. Writing the editor doesn't involve any REAL 2600 programming, only some minor edits of existing code. But if your next goal is more advanced hacking on an existing game some of what follows might be helpful.

 

I strongly recommend getting one of Thomas's commented dissasemblies from the Dig to work from. It's much easier to get the gist of what's happening when you have comments provided by an expert!

 

Along with that you'll need the Stella Programming manual and some information on the 6502 programming.

http://www.6502.org/tutorials/6502opcodes.htm has a good list of opcodes and what they do.

http://www.geocities.com/oneelkruns/asm1step.html Is a tutorial if you need more details.

 

Some basic familiarity with the contents of the Stella guide and 6502 opcodes along with commented source should see you in a position to make changes to an existing ROM without too many problems.

 

You can either make the changes directly onto the ROM with a hex editor or change the assembler source and re assemble with DASM. If you decide to change the ROM be prepared to spend some time turning parts of the source back into machine code to find the right spots to edit. Unless you're writing a game editor changing the assembly source is probably easier.

 

That said it's still not the easiest thing to do and a background in some form of programming and a knowledge of Hex and Binary arithmetic will be a real help.

 

Good luck.

 

Glenn

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