Jump to content
IGNORED

Disassembled Atari Pacman


Captain Cozmos

Recommended Posts

I was burned out with Diablo and needed to take 5

 

So today I disassembled, cleaned up the code within reason and have come up with a 100% version that you can assemble with a drag and drop on TNIASM

 

I found as many data pointers I could within a day including all the pattern tables, sound, sprites, colors.

 

If I missed or mislabeled something feel free to update and let me know so I can update the source.

 

So, the reason why I do these things are so you can study the code and discover how it was done in order to write your own.

 

Whomever wrote this did not use a single BIOS call.
Everything went through the OUT Ports and is a great exercise on how you can write a game by taking over every resource.  Just you and the Colecovision.
 

If have not moved anything around so toy at your own risk

 

If you find this useful then feel free to buy me a pizza one day or better yet Thanks, Trophies.....

 

ATARI Pacman v1.asm ATARI Pacman v1.rom

Edited by Captain Cozmos
  • Like 2
  • Thanks 1
Link to comment
Share on other sites

Revisiting the code I have discovered that the eyes used by the ghosts are actually patterns that wander the maze while the sprite bodies are superimposed over them.

Now that is cool no matter how you slice it.

 

Going back to Smurf, Donkey Kong and a few others.

 

I have identified several other pointer structures.  Particularly the Object Routines which I am currently studying to incorporate in upcoming projects.

13 bytes defines the screen, the x and y, the type of event if you want to or it into the background or superimpose over it.

After the setup you call Activate to put it on screen.

 

I would love to make a routine that does all of that without setting up the tables

 

Here is the way of things for inhouse Coleco Games, at least the first ones.

Set the screen mode with registers 0 and 1

Set the initial addresses in vram with the init_table command.

Init Table does not just set the vram and register.  It also sets up pointers in order to use the PutOBJ and other things like Complex and Mobile

So, you can not just setup the registers then use these BIOS commands.

 

Smurf heavily relies on this so I will update the code when I find more free time.

 

  • Like 1
Link to comment
Share on other sites

You do a really great job , i love all that dissembled code!   Very interresting , and just the fact you can re-assemble it directly... just love it.?

 

Would you be able to do that for  Turbo , Cosmic Avenger  and Zaxxon?  in fact i know you will be able to do that,  the question is would you have some time to do that?

 

 

Link to comment
Share on other sites

16 minutes ago, youki said:

You do a really great job , i love all that dissembled code!   Very interresting , and just the fact you can re-assemble it directly... just love it.?

 

Would you be able to do that for  Turbo , Cosmic Avenger  and Zaxxon?  in fact i know you will be able to do that,  the question is would you have some time to do that?

 

 

Working on a lot more roms than this.
 

My biggest issue is trying to identify code that nothing points to.
Is it data?  Code?
 

A lot of these games use index registers that will load one part of the index from a buffer in ram.
So, I have to have a running disassembler to find and label the pointer so it can be recompiled.
 

I am using professional software which is meant for modern computers, it just happens to support Z80 but so far none of the updates tackle this issue of mine.
 

Link to comment
Share on other sites

Few years ago , i had starter to do some code analysis on some ZX Spectrum games.

 

In order to determine what is DATA or Code , in fact i had modified an open source emulator that logged all the read and write from and to memory , code execution.

 

So, i have just to play the game in the emulator and then as result i add report of most of the  data location and code.

 

 

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