Kodewerx

Our culture has advanced beyond all that you could possibly comprehend with one hundred percent of your brain.
It is currently Thu Mar 28, 2024 6:29 am

All times are UTC - 8 hours [ DST ]




Post new topic Reply to topic  [ 152 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next
Author Message
 Post subject:
PostPosted: Mon Mar 12, 2007 1:14 pm 
Offline
Kommunist
Kommunist

Joined: Mon Jan 29, 2007 2:23 pm
Posts: 313
^ raises a good point. also, posting snippets of ASM from an area of a game that you are hacking sounds like it would fall in that gray area too. I'm not sure though.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Mar 12, 2007 2:19 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Yes, in most cases, taking an educational point-of-view will side-step most liability. But some things just can't take that defense. (In an extreme example, "educational purposes" is not a valid defense for obtaining photos of nude children; it's still child pornography and still highly illegal. And no, I am not likening game hacking with child pornography.)

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Mar 12, 2007 2:55 pm 
Offline
Kommunist
Kommunist

Joined: Mon Feb 12, 2007 4:24 pm
Posts: 29
Twilight Spectre wrote:
For the title:
GameHacking 101b (That's 5 in decimal!)


GameHacking 110b or GameHacking v110b


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Mar 12, 2007 2:59 pm 
Offline
Komrade
Komrade
User avatar

Joined: Mon Oct 02, 2006 5:56 pm
Posts: 1978
Title: Mr. Bitches
^Heh, we've been over this. This is an entirely different document.

_________________
Image
Image
<EggWerx> MetalOverlord: Dsman and lemmayoshi will be used for taco meat, ask mo he knows me.
jleemero wrote:
Being required to learn Java for a Comp Sci MAJOR is like being required to shit on a lawnmower to be an astronaut.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Mar 15, 2007 3:27 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:46 pm
Posts: 2331
Location: *poof*
Title: The Mad Hacker
I assume the tests are important, Parasyte, so I won't move them but I almost did! ;p
[edit]Heh, it's cool, thanks Parasyte. ^_^[/edit]

"GameHacking 101b (That's 5 in decimal!)"
And my title didn't have anything to do with the first one... It was like a class and section ID (101b). But since 101b is also 5 in decimal, I thought the second half was a funny sub-title. Heh, I thought it was good. ;(

_________________
Image


Last edited by James0x57 on Thu Mar 15, 2007 4:17 pm, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Mar 15, 2007 3:36 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Yeah, sorry about that. Something is wrong with our sendmail. Since this thread had a few accounts watching it, I could just reply here to help debug the problem. I still haven't found a solution, so still debugging...

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Mar 20, 2007 10:13 am 
Offline
Kommunist
Kommunist
User avatar

Joined: Sat Oct 21, 2006 3:26 pm
Posts: 366
Location: USA
Title: Ancient Code Sage
Sorry to keep everyone waiting...I have tried several times to reach Mike aka Stinky about getting release or permission to this problem we have created for ourselves in still having the copyright pointing to the now defunct gscentral.com . I just now sent another email to Mike imploring him to reply with either release and turnover of the copyright to who and whatever or at the very least formally granting permssion to use the content within the Text. I have deliver and read receipts attached...I already have a positive on the delivery...and I am waiting for the read receipt and reply. The last step I am considering is calling his home...but I tend to resist this notion for now as he is NOT home but away at college. Calling his home might scare the dickens out of his parents...but then again...maybe I am just "worrying to much" about things...right RUNE? Or was that RUIN?

_________________
Ancient Code Sage


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Mar 30, 2007 11:27 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
I wonder if there's room for simple ROM hacking info? Any real ASM hacks of ROMs, at least when I do them, generally involves finding a RAM address first. In N64 games you can often "port" ASM codes to ROM hacks by just searching the ROM for ~16 bytes around the area being patched, and making the same change there, that's probably worth noting.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 8:28 am 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Oct 02, 2006 7:47 am
Posts: 336
Location: Amish Redneck Country, PA
Title: Crazy Snake
HyperHacker wrote:
I wonder if there's room for simple ROM hacking info? Any real ASM hacks of ROMs, at least when I do them, generally involves finding a RAM address first. In N64 games you can often "port" ASM codes to ROM hacks by just searching the ROM for ~16 bytes around the area being patched, and making the same change there, that's probably worth noting.


Yeah, I wanted to mention that, along with some info on hooking places in the ROM to get hacks working on compressed games. I still wanna know how the fuck the emulators know that ASM is being updated by decompression routines, but won't update when I change something by using ASM to write the same area the same way. Fucking dynarec.

Para - A thought on your guidelines. Do you want long lines in the source broken intentionally, or should the writer use wordwrap in their editor?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 10:12 am 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
I think I would prefer that word wrap is used if you don't like horizontal scrolling. Intentionally breaking lines will cause problems with indentation and keeping the same 'hard break column' while editing. The original txt document suffers greatly from the latter. Some lines are broken at column 80, some at 90, 120, ... And some are completely unbroken!

We did have a nice brainstorming session on the guidelines doc a few weeks back, but none of that was ever put into it. (The help I was asking for at the time was seeing if anyone wanted to actually work on the sections of the doc. But we ended up just discussing what each section should contain, and nothing more... Meh.)

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 11:31 am 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Oct 02, 2006 7:47 am
Posts: 336
Location: Amish Redneck Country, PA
Title: Crazy Snake
Ok. I have another issue now. I've been trying to figure out the best way to align assembly examples. <pre> is ugly and not included in the guidelines (for good reason), but formatting some of these long ASM examples so they're lined up/spaced properly is gonna be a bitch. Any ideas?

Code:
<div class="section">
   <h3>Another Example Of Targeting A Specific Player</h3>
   <p>
      Super Smash Brothers - Invincible/Untouchable P1<br />
      <br />
      Some of the player data in SSB changes location based on what arena/mode is being played, etc. This is a problem for those of us hacking the game, but it's not a huge problem in this case. To get started, take a known location of the invincibility status modifier for P1. Peach's castle (vs mode) is 8025E6FF, for example. Setting a BPW on this yields 800E8AD8.<br />
      <img src="n64_ssb_inv1.png" alt="" /><br />
      Looks simple enough, but BPX on it to find that it's not reading only P1. It reads ALL players. Now note the pointer (base address) it's loading from when reading P1's invincible status ($a1=8025E150). Do a 32-bit RAM search for that value to find possible pointers, then check other levels to verify which pointer address accurately points to P1's data all the time (80130D84). Now back on our routine that's reading invincible status, find a place to jump out. There's a branch right where this is taking place, so a jump would need to occur a few opcodes before this. Keeping in mind that $a1 needs to be set to a player pointe, so it can be checked by out new code. Scroll up a few opcodes to find where $a1 was set. It's at 800E8AC0. Also notice that ugly bit of code at 800E8AC8. It loads $ra there, so doing a JAL after that won't work out too well. Let's just jump from 800E8AC0 then. Remember to load $a1 in this subroutine first though, since we're replacing that op.<br />
      <br />
      .ORG      000E8AC0
      JAL       00000060
      .ORG      00000060
      LW        $a1,001C($sp)
      LUI       $at,8013
      LW        $at,0D84($at)     ;load the consistant P1 pointer
      ADDIU     $a0,$zero,0002    ;set the value to write to P1's invincibility status
      BEQL      $a1,$at,00000078  ;compare the current pointer to P1's pointer. Only write invincible if this is P1.
      SW        $a0,05AC($a1)     ;write invincible
      JR        $ra
      NOP
      <br />
      That's one way to do it. Looking back on this hack, it wasn't a very good one, but it works. It can be done shorter by simply loading the P1 pointer and storing to it.<br />
      <br />
      .ORG      000E8AC0
      JAL       00000060
      .ORG      00000060
      LUI       $at,8013
      LW        $at,0D84($at)     ;load the consistant P1 pointer
      ADDIU     $a0,$zero,0002    ;set the value to write to P1's invincibility status
      SW        $a0,05AC($at)     ;write invincible
      JR        $ra
      LW        $a1,001C($sp)
      <br />
      This ends up 14 lines of codes vs 17. It could possibly be done even shorter on some games by setting a BPR on that constant P1 pointer address (80130D84) and finding a routine that only reads P1. It won't work that way on this game though because there aren't any constant reads. Something to keep in mind on other games though.
   </p>
</div>

_________________
Be a real programmer. Program without the .SHIT Framework.
Check out my movie collection
Quote:
<ThePhantom> What, would you prefer I keep track of it with fucking binary shifting, like you probably did? Hell no.
<ThePhantom> A hedgehog's asshole could understand my code, N-O-B-O-D-Y B-U-T Y-O-U C-A-N U-N-D-E-R-S-T-A-N-D Y-O-U-R-S
<Parasyte> Nobody has to understand it
<Parasyte> Plus, bitwise shifting owns
<Parasyte> A lot
<ThePhantom> Nobody has to understand it?
<Parasyte> Correct...
<ThePhantom> Write code like it's for your job, ass. :P
<Parasyte> No way.
<ThePhantom> Either provide fucking documentation or don't write it like a deranged circus chimp on crack.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 12:11 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
You could use <code>. I think it behaves the same as <pre>, but then you'd be free to customize the two separately with CSS.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 1:01 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Oct 02, 2006 7:47 am
Posts: 336
Location: Amish Redneck Country, PA
Title: Crazy Snake
maybe.

Oh, Para. I remember you talking about the usage of "you" etc in IRC. Could you elaborate on that here for people writing guides? Are we just avoiding giving instruction as if talking directly to the reader, or is saying "In my experience..." or "I tend to prefer this method" a bad idea too?


Last edited by Viper on Sat Mar 31, 2007 1:19 pm, edited 2 times in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 1:07 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Fri Oct 20, 2006 9:20 pm
Posts: 506
Location: New York
Title: I masturbate turtles
You shutup, yes you.

Edit - This all looks interesting, I'm intrigued now.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 1:17 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
How about:
Code:
<table width="100%" cellpadding="0" cellspacing="0" class="asm">
   <tr>
      <td width="80">Inst</td>
      <td width="200">Operands</td>
      <td width="*">Comments</td>
   </tr>

   <tr>
      <td class="instruction">.ORG</td>
      <td class="operand">0x000E8AC0</td>
      <td class="comment"></td>
   </tr>

   <tr>
      <td class="instruction">JAL</td>
      <td class="operand">0x00000060</td>
      <td class="comment"></td>
   </tr>

   <tr>
      <td class="instruction">&nbsp;</td>
      <td class="operand"></td>
      <td class="comment"></td>
   </tr>

   <tr>
      <td class="instruction">.ORG</td>
      <td class="operand">0x00000060</td>
      <td class="comment"></td>
   </tr>

   <tr>
      <td class="instruction">LW</td>
      <td class="operand">$a1, 0x001C($sp)</td>
      <td class="comment"></td>
   </tr>

   <tr>
      <td class="instruction">LUI</td>
      <td class="operand">$at, 0x8013</td>
      <td class="comment"></td>
   </tr>

   <tr>
      <td class="instruction">LW</td>
      <td class="operand">$at, 0x0D84($at)</td>
      <td class="comment">;load the consistant P1 pointer</td>
   </tr>
</table>


It looks fairly good with and without CSS:
Code:
table.asm td.instruction {
   font-family: "courier new", monospace;
   font-weight: bold;
   color: #0000FF;
}
table.asm td.operand {
   font-family: "courier new", monospace;
   font-weight: bold;
   color: #00007F;
}
table.asm td.comment {
   font-family: "courier new", monospace;
   font-weight: bold;
   color: #007F00;
}


And yes, I recognize that it's not easy to import assembly sources into a format like that, but it will be well worth it. And if you want additional syntax highlighting, just use <span> classes. In the CSS: table.asm td.operands span.register { ... } etc.

There's nothing wrong with using <pre>, I mean hell, I used it in the authoring guidelines in a few places, and also commented on its use. It's not the best thing ever, as you can see by looking at the XHTML. But at least it preserves the tab-stops in the rendered page, which CSS won't support itself until version 3. :\

It was dlong who suggested avoiding the use of 1st- and 2nd-person language. And I believe it does make sense to do this. Documentation should not really involve the readers or authors directly. (I know, this seems a bit counterintuitive.) Rather than saying things like, "You should..." or, "I like to..." in documentation, I think using things like, "It is best to..." would be the best option if you absolutely must. A good reason for this is localization and internationalization; translating the text into another language becomes easier when more generic terms (especially unisex terms) are used.

_________________
I have to return some video tapes.

Feed me a stray cat.


Last edited by Parasyte on Sat Mar 31, 2007 5:32 pm, edited 3 times in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 1:21 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Oct 02, 2006 7:47 am
Posts: 336
Location: Amish Redneck Country, PA
Title: Crazy Snake
Hmm. Not bad. I was thinking tables too, it's just...work. ;) I could always edit the Code Disassembler in Renegade to output that format for me. lol

btw, Dlong asked how we will credit people's work for this? Are we wanting just one huge credits section, or should individual tutorial authors leave their names on their section? If not, I'd probably suggest comments in the source so we always know who wrote what.

_________________
Be a real programmer. Program without the .SHIT Framework.
Check out my movie collection
Quote:
<ThePhantom> What, would you prefer I keep track of it with fucking binary shifting, like you probably did? Hell no.
<ThePhantom> A hedgehog's asshole could understand my code, N-O-B-O-D-Y B-U-T Y-O-U C-A-N U-N-D-E-R-S-T-A-N-D Y-O-U-R-S
<Parasyte> Nobody has to understand it
<Parasyte> Plus, bitwise shifting owns
<Parasyte> A lot
<ThePhantom> Nobody has to understand it?
<Parasyte> Correct...
<ThePhantom> Write code like it's for your job, ass. :P
<Parasyte> No way.
<ThePhantom> Either provide fucking documentation or don't write it like a deranged circus chimp on crack.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 1:26 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Whoops, I edited the last paragraph about the language usage after you had already replied. Be sure to read that, since I tried to answer one of your questions there.

Credits should be placed in the page history. See the guidelines for an example. ;)

Also, your hexadecimal is not prefixed. That's one of the things we want to watch for, and something that needs to go into the guidelines.

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 1:35 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Oct 02, 2006 7:47 am
Posts: 336
Location: Amish Redneck Country, PA
Title: Crazy Snake
I see.

Another thing that needs added to Dlong's TOC is a downloads section. Any tools referred to within tutorials should be linked to their respective anchor (like downloads.html#gncrd) rather than doing any direct file linking. This keeps all the URLs that might change due to new versions, hosting or whatever in one place for easy updating.

Parasyte wrote:
Also, your hexadecimal is not prefixed. That's one of the things we want to watch for, and something that needs to go into the guidelines.


0xF0CC ;)

I would hope addresses are acceptable as is. 0x80130D84 seems a little bleh.


Last edited by Viper on Sat Mar 31, 2007 2:24 pm, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 2:10 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
It's very obvious to skilled hackers that addresses are written in hexadecimal notation nearly 100% of the time. So between hackers, the use of any notation on addresses is quite redundant. However, and to paraphrase dlong, never assume the readers know what you are talking about. Making everything as clear and as strict as possible is an important milestone.

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Mar 31, 2007 2:17 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Oct 02, 2006 7:47 am
Posts: 336
Location: Amish Redneck Country, PA
Title: Crazy Snake
bah. fine

Oh, Para. Could you fill me in on which method each of the N64 GS codes to disable the expansion pack use to do it (CC/DD/EE)?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Apr 01, 2007 11:43 am 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Oct 02, 2006 7:47 am
Posts: 336
Location: Amish Redneck Country, PA
Title: Crazy Snake
Can someone give a decent explanation for uncached writes (A0/A1 codes) on N64? Still need to know the specific function of the CC/DD/EE code types too.

Also, the F0/F1 code type. Does it only work on boot, or can it be used with an activator?

I believe we also need info about the keycodes (boot modes?) on Xploder64. We never figured out what the 3C code is for either.

p.s. Do we need to put the registered trakemark symbol with "Gameshark" "Action Replay" etc to cover our asses legally?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Apr 01, 2007 1:54 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Uncached writes are are simple: 80000000 - 80400000 is cached memory. All reads/writes to that area of memory will first be placed into the CPU's data cache until it is flushed. The cache block that is flushed is then dumped to physical memory at A0000000 - A0400000. Because of this, the CPU cache and physical memory (at A0000000) can contain different data. If the cache is flushed, it will ignore the 'A0/A1' GS code you use (due to overwriting physical memory with cached memory). If instead it invalidates the cache, it will ignore the 80/81 GS codes you use (due to clearing cache memory and refreshing with physical memory).

The CC/DD/EE codes, who knows... They were some how capable of tricking games into believing there was no expansion pack, however. I believe they would change certain bytes and words in low memory (80000000 - 80000400 or so) which defines how much memory is available to the console. May be worth experimenting with RAM dumps with and without those codes active. (They do not have any operands as far as I know. Just all zeros following the code types.)

F0/F1 only works on boot, but they are handled AFTER the CIC checksums are calculated (allowing the codes to patch the executable code without causes a checksum failure, interrupting the boot process. There is a lot of great information about the N64 CIC chips here: http://n64.icequake.net/mirror/www.elit ... /main.html

Registered trademark when using a trademarked name? No. MadCatz used threatened legal action against GSC for using their trademark as a representation of a group. InterAct did the same thing to the GSCCC. But for nominative use, trademark infringement is pretty much an impossibility.

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sun Apr 01, 2007 2:37 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Oct 02, 2006 7:47 am
Posts: 336
Location: Amish Redneck Country, PA
Title: Crazy Snake
Parasyte wrote:
The CC/DD/EE codes, who knows... They were some how capable of tricking games into believing there was no expansion pack, however. I believe they would change certain bytes and words in low memory (80000000 - 80000400 or so) which defines how much memory is available to the console. May be worth experimenting with RAM dumps with and without those codes active. (They do not have any operands as far as I know. Just all zeros following the code types.)


Wasn't there some code required to allow dumping the part of the memory where the GS is (807xxxxx?)? I seem to remember one, but I can't find it anywhere. Maybe that was just to allow viewing it in the memory editor?

Oh, yes. Do you prefer people use "8 bit" or "8-bit" ? We should have a guideline for that.

Also, if anyone can provide pictures of AR/GS (old version and Pro showing the port on the back), Xploder64, or other cheat devices, please post them or something. I'm thinking we can use them in this. Just make sure they're public domain or you're taking them yourself. Don't steal them like most peple do. LOL


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Apr 02, 2007 2:20 am 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Yes, it was only for the internal memory viewer. The PC tools could be hacked to allow dumping all memory, or GSCC2K2 already could. This is the original document that CMX wrote about it.

Code:
******************************************************************
       GGG         SSSSS        CCCC        CCCC        CCCC     
     GGGGGGG     SSSSSSSSS    CCCCCCCC    CCCCCCCC    CCCCCCCC   
    GGGGGGGGG   SSSSS   SSS  CCC    CCC  CCC    CCC  CCC    CCC   
    GGG          SSSSS       CCC         CCC         CCC         
    GGG  GGGGG     SSSSS     CCC         CCC         CCC         
    GGG   GGG        SSSSS   CCC         CCC         CCC         
    GGGGGGGGG   SSS   SSSSS  CCC    CCC  CCC    CCC  CCC    CCC   
     GGGGGGG     SSSSSSSSS    CCCCCCCC    CCCCCCCC    CCCCCCCC   
       GGG         SSSSS        CCCC        CCCC        CCCC     
------------------------------------------------------------------
      Game      Software        Code      Creators      Club     
------------------------------------------------------------------

Faq written by Code Master
Bryan Black - [email protected] - President
******************************************************************
Hack Your N64 GameShark Pro FAQ!! - Last Updated On 09-28-00
******************************************************************
Allow In-Game Memory Editor To Read From 80000000 To 807FFFFF
F1791E02 0000
F1791E06 807F

This will work for ANY GAME!! Turn the codes on, and turn the
Code Generator ON, and then hit the GS Button, goto the Ram
Editor, and goto this address to verify its working: 80794AEC
(For the people just starting out, this is the address of the code
that is called every vblanc by the GS Pro 3.0 & Higher). If you
wish to verify that this address is right, goto 80000180 in the Ram
Editor and look at that coding in a disassembler, it should look
something like....

lui $k0,8079
ori $k0,$k0,4AEC
jr $k0
nop

So now you know where  to 'Goto work at'.... 80794AEC

******************************************************************
And There You Have It...
******************************************************************
 There you have it!! Hack the planet!! And now hack  your N64 GS
Pro.. I'm also working on codes to allow the reading of memory
while the game is in Hi-Resolution mode, who knows when I'll have
time to finish it though, let alone how many codes it would be :)

P.S. GSCC 2000 is capable of reading 80400000 to 807FFFFF. But
it does no good without having the game running in Hi-Resolution mode.

******************************************************************
Credits & Greetz!!
******************************************************************
Credits:
 FAQ 100% Written By Code Master (So Far)
  Game Software Code Creators Club
  http://www.cmgsccc.com/
Proofreading Credits:
 Y2Kola
--------
Greetz:
  GSCCC Members:
  - ViperByte, NiteStash, Infected, Cain, Netsewn, Crono, Chaotic,
  - CzarDragon, CodeShark, Alanlav, Raysurx, Number 12, FNG
  - (http://www.cmgsccc.com/)
  GSC Members:
  - Kong, ShadowKnight, Crocc, Macrox, FoxDie, Zapdos, AdultLink
  -(http://www.gscentral.com/)
(I know I have missed a lot of members, but those are the ones I know :))
  Other:
  - Thunder2

*************************************************************************
-------------------------------------------------------------------------
         Game      Software        Code      Creators      Club         
-------------------------------------------------------------------------
*************************************************************************
If you find any mistakes in this FAQ, Spelling, Methods, Or Have anything
to add to it, please send the updates to [email protected]. So I can add
them. Yes, your name will be in the credits and you will get credit for
your new ideas. If its just a spelling error, I guess I can add a credit
for "Spelling Errors Fixed"? LOL
-------------------------------------------------------------------------
If you like this FAQ, and would find more FAQ's like these useful in the
future, please email your thoughts to [email protected] and GSCCC might
write some more FAQ's in the future.
-------------------------------------------------------------------------
So, until next time, keep those PC's hacking and Cheat Devices cracking.
And Most of ALL, THANX FOR SUPPORTING GSCCC!!!
*************************************************************************
----------------- http://www.cmgsccc.com --------------------------------
*************************************************************************


I prefer the '8-bit' terminology, myself. Because it coincides with the 16-bit consoles era, where everything was literally plastered with "16-BIT" in the advertising.

I only have a GameShark Pro, but I could probably grab some high resolution images of it. (About 7.1 megapixels.)

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Apr 02, 2007 8:23 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
I can take some pictures of my various cheat devices, but they're not in very good condition.
All devices (895k), GCN AR Max and NDS AR closeup (270k).

Also, quick map of the N64 GS 3.3 menus.
Quote:
Main Menu

Start Game
-Start Game With Selected Codes
-Start Game Without Codes
-Code Generator (ON/OFF)
-Cancel

Select Cheat Codes
-list of games

Options
-Change Background
-Scroll Background (On/Off)
-Menu Scrolling (On/Off)
-Sound (Enabled/Disabled)
-Exit

Key Codes
-Mario World 64 & Others
-Diddy, 1080, Banjo, Griffey
-Yoshis, F-Zero, C'World
-Zelda

Memory Card Manager


Game list
-Press Z to open menu: Add New Game, Save [this game's] Codes To Memory Card, Load Codes From Memory Card, Exit.
-Press C-Left to delete.
-Use dpad to navigate, L/R skip pages. Press A to view codes.

Code list
-A toggles a code. Z edits. Otherwise same as game list menu.
-Bug: After editing a code, you must return to the game list and move to another game and back, or else the wrong codes will be active when you start the gane.

Edit code:
-Left is lines of the code. You can add more than 15 and it will scroll as you move up/down.
-Options:
-Default (On/Off) - whether this code is on by default when you select the game.
-Exit & Save, Exit & Discard
-Move up to edit code or game name.
-C-left deletes a line.
If any codes were active from the Code Generator last time you used the device, they will be listed at the right. C-right switches between this list and the hex input. A replaces the current line with the selected one.

Memory Card Manager
2 boxes listing all controllers with memory cards plus "GamePak". A=Select, B=Exit, L=Format, R=Re-read. Use dpad to select an item.
When item selected: A=Copy, Z=Delete, L=Format, R=Re-read.


In-Game Meu

Codes Are (ON/OFF) - toggle codes, obviously

Code Generator
-Return To Game
-Exit To Main Menu (in-game menu)
-Known Value Search
-Return To Game
-Exit To Main Menu
-Reset Code Generator
-Equal To (0-255)
-Unknown Value Search
-Return To Game
-Exit To Main Menu
-Reset Code Generator
-Start (appears only before doing a search)
[after doing a search]
-Greater Than Last
-Less Than Last
-Different To Last
-Equal To Last
-(8/16) Bit Search

Memory Editor
Lets you edit RAM. Displays a typical hex editor interface (address, values, ASCII) at 8 bytes per line, 0x60 bytes per page, that usually gets cut off the edges of the screen. Dpad or stick moves (only individual digits are selected). C Up/Down modifies the selected digit. L/R skip by 0x60 bytes. Z switches to edit the ASCII instead. A displays a menu: Goto Address, Text Search, Back To Editor, Return To Game. Text search is case insensitive. Display starts at 80010000 and can go from 80000400 to 803FFFFF.

View GFX Memory
Lets you view video memory. Typically it shows the last frame displayed. You can scroll around using the dpad or joystick. C buttons scale, L/R change resolution, A restores normal size/resolution, Start exits.

Return To Game


In the Code Generator menus, after doing a search, View Search Results is shown. First 100 results are displayed. Dpad selects, A activates, Start returns to game, B exits menu. C-Up opens the Memory Editor (but not to the selected address), Z toggles hex/decimal. Activated codes (not including those selected from the main menu) are shown at the right. C-Left removes, C-Right lets you edit the value.
The data displayed here is similar to actual codes, but is just a list of addresses and values. Notice the values are not padded and the prefix is not 81 for 16-bit codes.
V3.2 had a bug/feature; after switching to hex view, input for the Equal To search was also in hex. This was fixed in V3.3.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Apr 02, 2007 9:13 pm 
Offline
Kommunist
Kommunist

Joined: Mon Jan 29, 2007 2:23 pm
Posts: 313
I am going to look into some editors tomorrow and see what I can find. I would like to find an editor that supports templates so we can create templates for those who cant write the xhtml (like me). Oxygenxml looks decent but I haven't had time to check it out yet. I would like to spend most of my time on the tutorials rather than formatting and learning xhtml.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Mon Apr 02, 2007 11:29 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
If you know any HTML at all, it will be extremely simple to get used to XHTML. It's just a more strict version of HTML (never mind it's based on XML instead of SGML) which provides quality assurance above all else. Take a look at the XHTML for the guidelines or any other file that others have worked on to get an idea of how to write it, and pay attention to the guidelines for the rest (even though they are currently incomplete).

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Apr 03, 2007 4:17 am 
Offline
Komrade
Komrade
User avatar

Joined: Mon Oct 02, 2006 5:56 pm
Posts: 1978
Title: Mr. Bitches
I found that the only differences between XHTML and HTML were:
-Write clean code n00b
and
-Use CSS.

CSS has been taken care of, and if you know HTML it should be a matter of writing clean code.

_________________
Image
Image
<EggWerx> MetalOverlord: Dsman and lemmayoshi will be used for taco meat, ask mo he knows me.
jleemero wrote:
Being required to learn Java for a Comp Sci MAJOR is like being required to shit on a lawnmower to be an astronaut.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Apr 03, 2007 5:39 am 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Oct 02, 2006 7:47 am
Posts: 336
Location: Amish Redneck Country, PA
Title: Crazy Snake
Anyone have a basic description of Xploder64, along with boot modes, etc? btw, what the hell was Gamebuster?

HyperHacker wrote:
I can take some pictures of my various cheat devices, but they're not in very good condition.
All devices (895k), GCN AR Max and NDS AR closeup (270k).

Also, quick map of the N64 GS 3.3 menus.


Thanks, HH. btw, someone will need to put together GB/GBC info. You're probably one of the most knowledgable people we have on the subject, so if you have time maybe you can start putting together some info. One thing I wondered about is the off code types I've seen in the code archives. We don't have 90/91(?) listed in our old info. Do those do something?

kickenchicken57 wrote:
I am going to look into some editors tomorrow and see what I can find. I would like to find an editor that supports templates so we can create templates for those who cant write the xhtml (like me). Oxygenxml looks decent but I haven't had time to check it out yet. I would like to spend most of my time on the tutorials rather than formatting and learning xhtml.


We're doing it all via reliable text editors. The guidelines are fairly simple. Catch us in IRC and we can show you what we're working on. You'll find there's really only <h#> tags and <div>, and <p> to worry about. The ASM/code breakdowns are done with tables though. The important thing is to follow the general format. We can perfect the source for submissions as needed.

For those who aren't XHTML inclined enough for this, plain text submissions are welcome. Just spellcheck the shit and don't talk directly at the reader (no "you", "i", etc). It shouldn't take us much work to get most things into our format.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Apr 03, 2007 8:54 am 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Kenobi RE'd the GBC GameShark at one point. It had only three or four actual code types, and the rest were interpreted as the default 8-bit constant write.

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 152 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next

All times are UTC - 8 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 188 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group