Guest User

Pokémon Diamond (Telefang Power bootleg) -- Save loading bug

a guest
Jun 12th, 2015
314
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.69 KB | None | 0 0
  1. Jade/Power/Speed:
  2. ROM4:41C8 3E 10 ld a,10
  3. ROM4:41CA EA 96 CF ld (CF96),a
  4. ROM4:41CD 3E 0E ld a,0E
  5. ROM4:41CF EA E1 C3 ld (C3E1),a
  6. ROM4:41D2 C9 ret
  7.  
  8. All:
  9. ROM0:0476 F3 di
  10. ROM0:0477 EA 23 C4 ld (C423),a
  11. ROM0:047A FA 25 C4 ld a,(C425)
  12. ROM0:047D F5 push af
  13. ROM0:047E FA 23 C4 ld a,(C423)
  14. ROM0:0481 EA 00 20 ld (2000),a
  15. ROM0:0484 EA 25 C4 ld (C425),a
  16. ROM0:0487 FB ei
  17. ROM0:0488 CD 9D 04 call 049D
  18.  
  19. Diamond:
  20. ROM4:41C8 3E 10 ld a,10
  21. ROM4:41CA 21 80 47 ld hl,4780
  22. ROM4:41CD 3E 5D ld a,5D
  23. ROM4:41CF CD 76 04 call 0476
  24. ROM4:41D2 C9 ret
  25.  
  26. ROM0:049D E9 jp hl
  27.  
  28. RO5D:4780 18 15 jr 4797
  29.  
  30. RO5D:4797 78 ld a,b ;b = 0
  31. RO5D:4798 00 nop
  32. RO5D:4799 18 10 jr 47AB
  33.  
  34. RO5D:47AB F3 di
  35. RO5D:47AC 18 DE jr 478C
  36.  
  37. RO5D:478C 00 nop
  38. RO5D:478D 18 F4 jr 4783
  39.  
  40. RO5D:4783 3E 04 ld a,04
  41. RO5D:4785 C3 A2 47 jp 47A2
  42.  
  43. RO5D:47A2 F5 push af
  44. RO5D:47A3 18 0B jr 47B0
  45.  
  46. RO5D:47B0 18 16 jr 47C8
  47.  
  48. RO5D:47C8 3E 80 ld a,80
  49. RO5D:47CA 18 E7 jr 47B3
  50.  
  51. RO5D:47B3 21 21 9C ld hl,9C21 ;Address of a tile for D-Shot graphic
  52. RO5D:47B6 C3 DC 47 jp 47DC
  53.  
  54. RO5D:47DC E5 push hl ;hl=9C21
  55. RO5D:47DD CD 54 59 call 5954
  56.  
  57. ;==Begin obfuscated loop #1==
  58.  
  59. RO5D:5954 18 08 jr 595E ;What would have been wrong with call 595E?
  60.  
  61. RO5D:595E E1 pop hl ;The RETURN address is popped into hl (47E0).
  62. RO5D:595F 18 0F jr 5970
  63.  
  64. RO5D:5970 00 nop
  65. RO5D:5971 18 E4 jr 5957
  66.  
  67. RO5D:5957 C1 pop bc ;bc = 9C21
  68. RO5D:5958 18 20 jr 597A
  69.  
  70. RO5D:597A 00 nop
  71. RO5D:597B 18 E8 jr 5965
  72.  
  73. RO5D:5965 3E 04 ld a,04 ;What was the point of setting a=80 earlier if we
  74. ;overwrite it afterwards?
  75. RO5D:5967 C3 81 59 jp 5981
  76.  
  77. RO5D:5981 06 20 ld b,20
  78. RO5D:5983 0E 20 ld c,20
  79. RO5D:5985 18 3F jr 59C6
  80.  
  81. RO5D:59C6 0D dec c
  82. RO5D:59C7 C3 9A 59 jp 599A
  83.  
  84. RO5D:599A 20 E9 jr nz,5985 ;1 <= c <= 20
  85. RO5D:599C 18 F2 jr 5990 ;c == 0
  86.  
  87. RO5D:5985 18 3F jr 59C6
  88.  
  89. RO5D:5990 05 dec b
  90. RO5D:5991 18 19 jr 59AC
  91.  
  92. RO5D:59AC 20 D5 jr nz,5983 ;1 <= b <= 20
  93. RO5D:59AE 18 F6 jr 59A6 ;b == 0
  94.  
  95. RO5D:59A6 3D dec a
  96. RO5D:59A7 C3 BF 59 jp 59BF
  97.  
  98. RO5D:59BF 20 C0 jr nz,5981 ;1 <= a <= 4
  99. RO5D:59C1 C3 DB 59 jp 59DB ;a == 0
  100.  
  101. RO5D:59DB C5 push bc ;bc = 0000
  102. RO5D:59DC 18 D7 jr 59B5
  103.  
  104. RO5D:59B5 00 nop
  105. RO5D:59B6 18 18 jr 59D0
  106.  
  107. RO5D:59D0 E5 push hl ;hl = 47E0
  108. RO5D:59D1 18 CE jr 59A1
  109.  
  110. RO5D:59A1 00 nop
  111. RO5D:59A2 18 E4 jr 5988
  112.  
  113. RO5D:5988 C9 ret ;Go to 47E0
  114.  
  115. ;==End obfuscated loop #1==
  116.  
  117. RO5D:47E0 18 F0 jr 47D2
  118.  
  119. RO5D:47D2 E1 pop hl ;hl=0000
  120. RO5D:47D3 18 ED jr 47C2
  121.  
  122. RO5D:47C2 22 ldi (hl),a ;a=00; hl=0000; DISABLE EXTERNAL RAM!! (Yes, it was previously enabled)
  123. RO5D:47C3 18 F6 jr 47BB
  124.  
  125. RO5D:47BB C3 3B 48 jp 483B
  126.  
  127. RO5D:483B 18 01 jr 483E
  128.  
  129. RO5D:483E E5 push hl ;hl=0001
  130. RO5D:483F CD 54 59 call 5954 ;Back to obfuscated loop #1
  131.  
  132. RO5D:4842 E1 pop hl
  133. RO5D:4843 C3 EA 47 jp 47EA
  134.  
  135. RO5D:47EA 18 01 jr 47ED
  136.  
  137. RO5D:47ED F5 push af ;af=00C0
  138. RO5D:47EE 18 1E jr 480E
  139.  
  140. RO5D:480E 04 inc b ;b=01
  141. RO5D:480F 18 18 jr 4829
  142.  
  143. RO5D:4829 CB 20 sla b ;b=02
  144. RO5D:482B 18 D9 jr 4806
  145.  
  146. RO5D:4806 78 ld a,b ;a=02
  147. RO5D:4807 18 F2 jr 47FB
  148.  
  149. RO5D:47FB CB 20 sla b ;b=04
  150. RO5D:47FD 18 35 jr 4834
  151.  
  152. RO5D:4834 80 add b ;a=06
  153. RO5D:4835 18 E9 jr 4820
  154.  
  155. RO5D:4820 80 add b ;a=0A
  156. RO5D:4821 18 D1 jr 47F4
  157.  
  158. RO5D:47F4 80 add b ;a=0E
  159. RO5D:47F5 18 21 jr 4818
  160.  
  161. RO5D:4818 18 34 jr 484E
  162.  
  163. RO5D:484E 18 16 jr 4866
  164.  
  165. RO5D:4866 CB 30 swap b ;b=40
  166. RO5D:4868 18 E7 jr 4851
  167.  
  168. RO5D:4851 C5 push bc ;bc=4000
  169. RO5D:4852 C3 7C 48 jp 487C
  170.  
  171. RO5D:487C E1 pop hl ;hl=4000
  172. RO5D:487D 22 ldi (hl),a ;a=0E -- write 0E to 4000 (SRAM bank 0E) (INVALID?? RTC should only be from 08-0C)
  173. RO5D:487E 18 F0 jr 4870
  174.  
  175. RO5D:4870 CD 69 57 call 5769 ;Obfuscated loop #2
  176.  
  177. ;==Begin obfuscated loop #2==
  178.  
  179. RO5D:5769 18 01 jr 576C
  180.  
  181. RO5D:576C C5 push bc ;bc=4000
  182. RO5D:576D 06 30 ld b,30
  183. RO5D:576F 18 06 jr 5777
  184.  
  185. RO5D:5777 0E 20 ld c,20
  186. RO5D:5779 18 49 jr 57C4
  187.  
  188. RO5D:57C4 0D dec c
  189. RO5D:57C5 18 E9 jr 57B0
  190.  
  191. RO5D:57B0 00 nop
  192. RO5D:57B1 18 DD jr 5790
  193.  
  194. RO5D:5790 20 E7 jr nz,5779 ;1 <= c <= 20
  195. RO5D:5792 18 13 jr 57A7
  196.  
  197. RO5D:57A7 05 dec b
  198. RO5D:57A8 C3 9C 57 jp 579C
  199.  
  200. RO5D:579C 00 nop
  201. RO5D:579D 18 1B jr 57BA
  202.  
  203. RO5D:57BA 20 BB jr nz,5777
  204. RO5D:57BC 18 BE jr 577C
  205.  
  206. RO5D:577C C1 pop bc ;bc=4000
  207. RO5D:577D 18 23 jr 57A2
  208.  
  209. RO5D:57A2 00 nop
  210. RO5D:57A3 18 E2 jr 5787
  211.  
  212. RO5D:5787 C9 ret
  213.  
  214. ;==End obfuscated loop #2==
  215.  
  216. RO5D:4873 18 E9 jr 485E
  217.  
  218. RO5D:485E CD 69 57 call 5769 ;Obfuscated loop #2
  219. RO5D:4861 18 F4 jr 4857
  220.  
  221. RO5D:4857 C3 88 48 jp 4888
  222.  
  223. RO5D:4888 18 01 jr 488B
  224.  
  225. RO5D:488B 3C inc a ;a=0F
  226. RO5D:488C 18 1E jr 48AC
  227.  
  228. RO5D:48AC 22 ldi (hl),a ;hl=4000, a=0F; write 0F to 4000 (SRAM bank 0F) (INVALID?? RTC should only be from 08-0C)
  229. RO5D:48AD 18 19 jr 48C8
  230.  
  231. RO5D:48C8 CD EB 56 call 56EB
  232.  
  233. ;TODO: Finish this later
Advertisement
Add Comment
Please, Sign In to add comment