Es fácil, te hago una miniguía, si la entiendes... adelante. Sino entiendes de lo que te hablo mejor no sigas o búscate el cómo en Google.
Los cheats no son más de direcciónes en memoria y el valor a introducir.
Después tenemos los "motores de cheats", como el Action Replay; que tienen su propio lenguaje para realizar opciones más avanzadas como buscar un valor en memoria y sustituir por otro, buscar un evento y cuando ocurra realizar tal acción, o detectar pulsaciones de teclas o diferentes estados. Con esto se consigue por ejemplo que el juego sólo ejecute un cheat cuando estamos en un combate, o cuando sea necesario; o en vez de restarnos vida nos de, etc.
Los cheats o codigos constan de: "[memoria] [codigo]"
Por ejemplo: 0xAH27FE (dirección de memoria a donde ir) 0x000009 (valor a introducir). Con esto estamos indicando que en la dirección de memoria 0xAH27FE introduca el valor 0x000009; que puede ser el nivel de experiencia que tenemos en el juego.
El "truco" consiste en descubrir la dirección en memoria donde se guarda los valores para lo que queramos hacer. Como estamos hablando de Action Replay DS... pues te tienes que "bajar" la suite para realizar estos trucos; o bien descargar las herramientas del japonés que las publicó en gbadev.org para realizar cheats para DipStar (compatible con AR). Con ese programa y un emulador se puede pillar los cheats fácilmente.
La forma de conseguirlos sería por ejemplo, arrancar un juego, tengo 100 de vida. Busco en el programa creador de cheats el valor 100 en memoria (hex, bynario, bit4, bit2, bit8, float, double, random; todos los tipos de escrituras conocidos para almacenar valores en memoria). Y una vez encontrado tantísimos... pues bajamos nuestra vida un poco; por ejemplo a 90. Sin perder nuestra anterior búsqueda realizamos una continuación buscando el valor 90. Por lo que la lista de posibles direcciones de memoria disminuye. Hacemos esto varias veces y obtendremos la dirección de memoria donde se guarda el valor a editar.
Pues ya estaría todo.
Tan sólo haría falta introducir la dirección de memoria y el valor a editar. FIN.
Esto es una miniguía para los que entienden; si no entiendes...