Author Id: 15014 Author Name: Cheve_X Post Content: ¡Hola Chicos! Al fin pude hacer algo útil en ASM :3 Me siento muy bien! Bueno, miren, les diré como funciona la rutina (Lo unico malo que tiene, por ahora, es que solo chequea el Primer Pokémon que Guardamos si guardamos el shiny segundo, será como que no haya ninguno (Cuando pueda lo arreglo, que ahora estoy emocionado) Funciona así: Carga los valores de la OTID1 y la OTID2 y hace XOR, y guarda el resultado. Carga los valores de la ID y SID y hace XOR, y guarda el resultado. Hace XOR entre los resultados guardados y guarda ese resultado en la variable LASTRESULT :3 Bueno, aquí la rutina: .text .align 2 .thumb .thumb_func .global lesson1 main: push {r0-r4, lr} ldr r4, .PKMN_DATA ldrh r0, [r4] ldrh r2, [r4, #0X2] EOR r0, r2 ldr r4, .PKMN_DATA2 ldrh r3, [r4] ldr r4, .PKMN_DATA3 ldrh r2, [r4] EOR r3, r2 EOR r0,r3 ldr r1, .VAR strh r0, [r1] pop {r0-r1, pc} .align 2 .PKMN_DATA: .word 0x20286D0 .PKMN_DATA2: .word 0x2024EB0 .PKMN_DATA3: .word 0x2024EAE .VAR: .word 0x0201E8C2 + (0x800D * 2) Para aquellos con problemas en pasarla a HEX... 1F B5 06 4C 20 88 62 88 50 40 05 4C 23 88 05 4C 22 88 53 40 58 40 04 49 08 80 03 BD D0 86 02 02 B0 4E 02 02 AE 4E 02 02 DC E8 02 02 Deben copiar ese código en un Offset vacío que termine en 0, 4, 8 o C, luego deberan usar un callasm a esa direccion+1 Si por ejemplo lo ponen en 0x700000 un script simple con ésto funcionando sería así: #include std.rbh #DYNAMIC 0x800000 #org @Inicio callasm 0x700001 compare LASTRESULT 0x8 if B_> call @NoShiny msgbox @sms1 MSG_NORMAL end #org @NoShiny msgbox @sms2 MSG_NORMAL '"o hay un Shiny" end #org @sms1 = Hay un Shiny #org @sms2 = No hay un Shiny RECUERDEN QUE ES SOLO PARA RUBY