-------------------------------------------------- [ DMA Info and Theories by InvadeR ] -------------------------------------------------- ----------------------------- [What will be covered] ------------------------------------------------ 1[ DMA - Dynamic Memory Allocation ] 2[ Defeating DMA ] ----------------------- ------------------------------ [What this is made for] ------------------------------ This tutorial was designed for beginner to moderate gamehackers that have experience with gamehacking and are experienced with TSearch. So i'm using simpilar methods of defeating it. Once you get more experienced you will get into SoftIce and Code Injection which is fun stuff. :) ----------------------------------------------- 1 [DMA - Dynamic Memory Allocation] ----------------------------------------------- In gamehacking you will find 2 kinds of address's: Those that are allocated Staticly ,i.e.: The info we are looking for will remain in the same location everytime we start the game. And those that are allocated Dynamically. Most new games allocate the memory dynamically. Which means when the game starts up it will find the closest open space of memory to allocate the information. Which means every time the game is restarted and/or the computer is restarted the game will re-allocate the memory to the closest open space. It is a rare occasion when the memory allocates it to the same place as the last time it was restarted. ---------------------- 2 [ Defeating DMA] ---------------------- To defeat DMA so that everytime we open the game up we can use the same address to edit our option, we must find the base/root address. The base/root address is what effects the allocated memory. The basic principle is: Since we can't edit the same address everytime we restart our game because the root/base address allocates the information that we want to edit somewhere else everytime, we must change how the base/root address acts. So to do that we must find that base/root address and chance how it operates. Finding the base/root address: What we must do is find our allocated memory address(what address the root/base allocated the info to) and *Since i'm going to assume your beginner and beginners use TSearch* set our TSearch to Autohack the allocated memory address, and then watch to see what location effects it. Then we will need to effect the allocated memory address in the game some how and that will cause your base/root addres to then send new information to it and bamm! we have her. If you then go to the AutoHack window you will see what address caused what effect on the allocated address. Now in TSearch you can select the root/address and change its operation manually (change how it acts). But if we want to make a trainer out of this we will need to poke to it. Normally if you are using TSearch you will find that the most common method of defeating the base/root address is to NOP it. When we NOP it we will cause it to stop everything. To NOP our root/base address so that it will cause nothing to happen(i.e.: instead of it telling the allocated address to use our last life and kill us, it will do nothing and we live forever!) we must poke 90(the OPcode for NOP) into the address. But becareful to make sure that if the current OPcode for the address has 5 OPcodes that we replace it with 5 90's. The good part is that with TSearch and Autohack all you have to do is select the address in the AutoHack window and go to TMK > Button Script and it will give you the exact Poke to NOP that address. All you have to do is make sure that in the future you have that exact amount of OPCodes in the poke or the game WILL crash. And there, you have defeated DMA a simple but effective way. :) ---------------------- [ Ending Words ] ---------------------- Once you get used to finding your way around DMA with simple tools like TSearch stepping up to using SoftICE and using Code Injection to defeat DMA is easier then you would think and will allow you to do alot more with gamehacking. --------- [ Visit ] --------- Devious - http://devious.tsongkie.com -tcb- - http://tcb-hacks.com CES - http://gamehacking.com CC - http://cheat-core.com ------------ [ greetz ] ----------- DEVIOUS & TCB ---------- [ Date ] ---------- 9th Of July, 2003 Best viewed in Arial, Regular, 9