Jump to content

Photo

Need Help With Hacking Robot Tank, Please


6 replies to this topic

#1 Jamcat Reloaded OFFLINE  

Jamcat Reloaded

    Star Raider

  • 85 posts

Posted Sat Feb 9, 2019 7:36 PM

I want to do a hack of Activision's Robot Tank. I want to change the "TANK" text sprite to another word. Using Bithacker, I was able to find where the "TANK" text is in the code, but part of the "T" is missing. I've attached a image below. The red boxes show most of the word, and just a part of the "T" in the code. The blue boxes show the rest of the "T" graphic that is missing. Nothing above lines up to match the missing part segment of the "T". So with that, might anybody know where the missing "T" segment might be in the code? Thanks!

 

sprite-data.png



#2 Nukey Shay OFFLINE  

Nukey Shay

    Sheik Yerbouti

  • 21,857 posts
  • Location:The land of Gorch

Posted Sun Feb 10, 2019 3:18 AM

Use Stella's debugger to find stuff:

 

First, enter the debugger when the gfx you want are onscreen.  Right-click the image at the height of where it appears and choose "fill to scanline".  The disassembly window will then be displaying the routine that draws the image onscreen.  From the screenshot below, you can see that the routine is grabbing its sprite values from indirect addresses 86-87, 88-89, 8a-8b, 8c-8d, 8e-8f, and 90-91.  The left half of T (i.e. the second sprite to be displayed on each scanline) is fetched from ram addresses 88-89...which hold the vector $FEB0.  $0Eb0 in a bithacker.

Attached Thumbnails

  • tank.jpg


#3 Nukey Shay OFFLINE  

Nukey Shay

    Sheik Yerbouti

  • 21,857 posts
  • Location:The land of Gorch

Posted Sun Feb 10, 2019 3:31 AM

Keep in mind that due to limited space in a Rom cartridge, many programs reuse values for other gfx or data tables (especially if they are drawing straight lines or blank spaces).  A disassembly is required to "unshare" such data, in that case.



#4 Jamcat Reloaded OFFLINE  

Jamcat Reloaded

    Star Raider

  • Topic Starter
  • 85 posts

Posted Thu Feb 14, 2019 12:28 AM

Yes, I found out the text "BONUS" shares letters "O" and "N" with the text "SQUADRON". So I just replaced "SQUADRON" with "RAID" and changed the "B" to a "+". 

 

As for the section of "T" in the "TANK" text, I couldn't find it. So I made do and just turned the other half of the "T" into a "A". 

 

I was tempted to say hell with it and leave the "TANK" text, but I know somebody would have said "If you're supposed to be driving a car, why does it say tank???".



#5 Nukey Shay OFFLINE  

Nukey Shay

    Sheik Yerbouti

  • 21,857 posts
  • Location:The land of Gorch

Posted Thu Feb 14, 2019 6:00 AM

As for the section of "T" in the "TANK" text, I couldn't find it.

??

 

Same page you quoted...just a bit further down.

 

Notice that all the surrounding bytes have the low bit set, tho.  Makes me suspect that this entire area is shared to do something else, too.  Keep the rightmost bit set if you do change them, I'd guess.

Attached Thumbnails

  • tank.jpg


#6 Jamcat Reloaded OFFLINE  

Jamcat Reloaded

    Star Raider

  • Topic Starter
  • 85 posts

Posted Thu Feb 14, 2019 4:43 PM

Well, I'll look again.



#7 Jamcat Reloaded OFFLINE  

Jamcat Reloaded

    Star Raider

  • Topic Starter
  • 85 posts

Posted Thu Feb 14, 2019 5:08 PM

Ok. Found it, fixed it, and updated the .BIN file. Thanks! 

 

AutoBattle03.jpg

 

Attached File  AutoBattle.BIN   8KB   1 downloads

 

 






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users