Advertisement
BitEmE

GTA V - ASM PPC [PS3] - GetEntityType

Jun 22nd, 2014
338
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. seg001:011F8330 # =============== S U B R O U T I N E =======================================
  2. seg001:011F8330
  3. seg001:011F8330
  4. seg001:011F8330 GetEntityType:                          # CODE XREF: sub_12039C4+2D4p
  5. seg001:011F8330                                         # sub_12039C4+330p ...
  6. seg001:011F8330                 clrlwi    r5, r4, 24
  7. seg001:011F8334                 lis       r6, aUnknownType@h # "Unknown Type"
  8. seg001:011F8338                 clrlwi    r4, r3, 16
  9. seg001:011F833C                 addic     r3, r6, aUnknownType@l # "Unknown Type"
  10. seg001:011F8340                 cmpwi     cr1, r4, 6
  11. seg001:011F8344                 cmpwi     cr6, r4, 5
  12. seg001:011F8348                 cmpwi     cr7, r4, 4
  13. seg001:011F834C                 bgt       cr1, loc_11F8380
  14. seg001:011F8350                 beq       cr1, loc_11F8484
  15. seg001:011F8354                 beq       cr6, loc_11F8464
  16. seg001:011F8358                 beq       cr7, loc_11F8444
  17. seg001:011F835C                 cmpwi     r4, 3
  18. seg001:011F8360                 beq       loc_11F8424
  19. seg001:011F8364                 cmpwi     r4, 2
  20. seg001:011F8368                 beq       loc_11F8404
  21. seg001:011F836C                 cmpwi     r4, 1
  22. seg001:011F8370                 beq       loc_11F83E4
  23. seg001:011F8374                 cmpwi     r4, 0
  24. seg001:011F8378                 beq       loc_11F83C4
  25. seg001:011F837C                 b         locret_11F858C
  26. seg001:011F8380 # ---------------------------------------------------------------------------
  27. seg001:011F8380
  28. seg001:011F8380 loc_11F8380:                            # CODE XREF: GetEntityType+1Cj
  29. seg001:011F8380                 cmpwi     r4, 0xE
  30. seg001:011F8384                 beq       loc_11F84E4
  31. seg001:011F8388                 cmpwi     r4, 0xD
  32. seg001:011F838C                 beq       loc_11F8570
  33. seg001:011F8390                 cmpwi     r4, 0xC
  34. seg001:011F8394                 beq       loc_11F8550
  35. seg001:011F8398                 cmpwi     r4, 0xB
  36. seg001:011F839C                 beq       loc_11F8544
  37. seg001:011F83A0                 cmpwi     r4, 0xA
  38. seg001:011F83A4                 beq       loc_11F8524
  39. seg001:011F83A8                 cmpwi     r4, 9
  40. seg001:011F83AC                 beq       loc_11F8504
  41. seg001:011F83B0                 cmpwi     r4, 8
  42. seg001:011F83B4                 beq       loc_11F84C4
  43. seg001:011F83B8                 cmpwi     r4, 7
  44. seg001:011F83BC                 beq       loc_11F84A4
  45. seg001:011F83C0                 b         locret_11F858C
  46. seg001:011F83C4 # ---------------------------------------------------------------------------
  47. seg001:011F83C4
  48. seg001:011F83C4 loc_11F83C4:                            # CODE XREF: GetEntityType+48j
  49. seg001:011F83C4                 cmpwi     r5, 0
  50. seg001:011F83C8                 beq       loc_11F83D8
  51. seg001:011F83CC                 lis       r3, aScript_automob@h # "SCRIPT_AUTOMOBILE"
  52. seg001:011F83D0                 addic     r3, r3, aScript_automob@l # "SCRIPT_AUTOMOBILE"
  53. seg001:011F83D4                 b         loc_11F83E0
  54. seg001:011F83D8 # ---------------------------------------------------------------------------
  55. seg001:011F83D8
  56. seg001:011F83D8 loc_11F83D8:                            # CODE XREF: GetEntityType+98j
  57. seg001:011F83D8                 lis       r3, aAutomobile@h # "AUTOMOBILE"
  58. seg001:011F83DC                 addic     r3, r3, aAutomobile@l # "AUTOMOBILE"
  59. seg001:011F83E0
  60. seg001:011F83E0 loc_11F83E0:                            # CODE XREF: GetEntityType+A4j
  61. seg001:011F83E0                 b         locret_11F858C
  62. seg001:011F83E4 # ---------------------------------------------------------------------------
  63. seg001:011F83E4
  64. seg001:011F83E4 loc_11F83E4:                            # CODE XREF: GetEntityType+40j
  65. seg001:011F83E4                 cmpwi     r5, 0
  66. seg001:011F83E8                 beq       loc_11F83F8
  67. seg001:011F83EC                 lis       r3, aScript_bike@h # "SCRIPT_BIKE"
  68. seg001:011F83F0                 addic     r3, r3, aScript_bike@l # "SCRIPT_BIKE"
  69. seg001:011F83F4                 b         loc_11F8400
  70. seg001:011F83F8 # ---------------------------------------------------------------------------
  71. seg001:011F83F8
  72. seg001:011F83F8 loc_11F83F8:                            # CODE XREF: GetEntityType+B8j
  73. seg001:011F83F8                 lis       r3, aBike@h   # "BIKE"
  74. seg001:011F83FC                 addic     r3, r3, aBike@l # "BIKE"
  75. seg001:011F8400
  76. seg001:011F8400 loc_11F8400:                            # CODE XREF: GetEntityType+C4j
  77. seg001:011F8400                 b         locret_11F858C
  78. seg001:011F8404 # ---------------------------------------------------------------------------
  79. seg001:011F8404
  80. seg001:011F8404 loc_11F8404:                            # CODE XREF: GetEntityType+38j
  81. seg001:011F8404                 cmpwi     r5, 0
  82. seg001:011F8408                 beq       loc_11F8418
  83. seg001:011F840C                 lis       r3, aScript_boat@h # "SCRIPT_BOAT"
  84. seg001:011F8410                 addic     r3, r3, aScript_boat@l # "SCRIPT_BOAT"
  85. seg001:011F8414                 b         loc_11F8420
  86. seg001:011F8418 # ---------------------------------------------------------------------------
  87. seg001:011F8418
  88. seg001:011F8418 loc_11F8418:                            # CODE XREF: GetEntityType+D8j
  89. seg001:011F8418                 lis       r3, aBoat@h   # "BOAT"
  90. seg001:011F841C                 addic     r3, r3, aBoat@l # "BOAT"
  91. seg001:011F8420
  92. seg001:011F8420 loc_11F8420:                            # CODE XREF: GetEntityType+E4j
  93. seg001:011F8420                 b         locret_11F858C
  94. seg001:011F8424 # ---------------------------------------------------------------------------
  95. seg001:011F8424
  96. seg001:011F8424 loc_11F8424:                            # CODE XREF: GetEntityType+30j
  97. seg001:011F8424                 cmpwi     r5, 0
  98. seg001:011F8428                 beq       loc_11F8438
  99. seg001:011F842C                 lis       r3, aScript_door@h # "SCRIPT_DOOR"
  100. seg001:011F8430                 addic     r3, r3, aScript_door@l # "SCRIPT_DOOR"
  101. seg001:011F8434                 b         loc_11F8440
  102. seg001:011F8438 # ---------------------------------------------------------------------------
  103. seg001:011F8438
  104. seg001:011F8438 loc_11F8438:                            # CODE XREF: GetEntityType+F8j
  105. seg001:011F8438                 lis       r3, aDoor@h   # "DOOR"
  106. seg001:011F843C                 addic     r3, r3, aDoor@l # "DOOR"
  107. seg001:011F8440
  108. seg001:011F8440 loc_11F8440:                            # CODE XREF: GetEntityType+104j
  109. seg001:011F8440                 b         locret_11F858C
  110. seg001:011F8444 # ---------------------------------------------------------------------------
  111. seg001:011F8444
  112. seg001:011F8444 loc_11F8444:                            # CODE XREF: GetEntityType+28j
  113. seg001:011F8444                 cmpwi     r5, 0
  114. seg001:011F8448                 beq       loc_11F8458
  115. seg001:011F844C                 lis       r3, aScript_heli@h # "SCRIPT_HELI"
  116. seg001:011F8450                 addic     r3, r3, aScript_heli@l # "SCRIPT_HELI"
  117. seg001:011F8454                 b         loc_11F8460
  118. seg001:011F8458 # ---------------------------------------------------------------------------
  119. seg001:011F8458
  120. seg001:011F8458 loc_11F8458:                            # CODE XREF: GetEntityType+118j
  121. seg001:011F8458                 lis       r3, aHeli@h   # "HELI"
  122. seg001:011F845C                 addic     r3, r3, aHeli@l # "HELI"
  123. seg001:011F8460
  124. seg001:011F8460 loc_11F8460:                            # CODE XREF: GetEntityType+124j
  125. seg001:011F8460                 b         locret_11F858C
  126. seg001:011F8464 # ---------------------------------------------------------------------------
  127. seg001:011F8464
  128. seg001:011F8464 loc_11F8464:                            # CODE XREF: GetEntityType+24j
  129. seg001:011F8464                 cmpwi     r5, 0
  130. seg001:011F8468                 beq       loc_11F8478
  131. seg001:011F846C                 lis       r3, aScript_object@h # "SCRIPT_OBJECT"
  132. seg001:011F8470                 addic     r3, r3, aScript_object@l # "SCRIPT_OBJECT"
  133. seg001:011F8474                 b         loc_11F8480
  134. seg001:011F8478 # ---------------------------------------------------------------------------
  135. seg001:011F8478
  136. seg001:011F8478 loc_11F8478:                            # CODE XREF: GetEntityType+138j
  137. seg001:011F8478                 lis       r3, ((aObject+0x10000)@h) # "OBJECT"
  138. seg001:011F847C                 addic     r3, r3, -0xA18 # aObject
  139. seg001:011F8480
  140. seg001:011F8480 loc_11F8480:                            # CODE XREF: GetEntityType+144j
  141. seg001:011F8480                 b         locret_11F858C
  142. seg001:011F8484 # ---------------------------------------------------------------------------
  143. seg001:011F8484
  144. seg001:011F8484 loc_11F8484:                            # CODE XREF: GetEntityType+20j
  145. seg001:011F8484                 cmpwi     r5, 0
  146. seg001:011F8488                 beq       loc_11F8498
  147. seg001:011F848C                 lis       r3, aScript_ped@h # "SCRIPT_PED"
  148. seg001:011F8490                 addic     r3, r3, aScript_ped@l # "SCRIPT_PED"
  149. seg001:011F8494                 b         loc_11F84A0
  150. seg001:011F8498 # ---------------------------------------------------------------------------
  151. seg001:011F8498
  152. seg001:011F8498 loc_11F8498:                            # CODE XREF: GetEntityType+158j
  153. seg001:011F8498                 lis       r3, ((aPed_1+0x10000)@h) # "PED"
  154. seg001:011F849C                 addic     r3, r3, -0xA20 # aPed_1
  155. seg001:011F84A0
  156. seg001:011F84A0 loc_11F84A0:                            # CODE XREF: GetEntityType+164j
  157. seg001:011F84A0                 b         locret_11F858C
  158. seg001:011F84A4 # ---------------------------------------------------------------------------
  159. seg001:011F84A4
  160. seg001:011F84A4 loc_11F84A4:                            # CODE XREF: GetEntityType+8Cj
  161. seg001:011F84A4                 cmpwi     r5, 0
  162. seg001:011F84A8                 beq       loc_11F84B8
  163. seg001:011F84AC                 lis       r3, aScript_pickup@h # "SCRIPT_PICKUP"
  164. seg001:011F84B0                 addic     r3, r3, aScript_pickup@l # "SCRIPT_PICKUP"
  165. seg001:011F84B4                 b         loc_11F84C0
  166. seg001:011F84B8 # ---------------------------------------------------------------------------
  167. seg001:011F84B8
  168. seg001:011F84B8 loc_11F84B8:                            # CODE XREF: GetEntityType+178j
  169. seg001:011F84B8                 lis       r3, aPickup@h # "PICKUP"
  170. seg001:011F84BC                 addic     r3, r3, aPickup@l # "PICKUP"
  171. seg001:011F84C0
  172. seg001:011F84C0 loc_11F84C0:                            # CODE XREF: GetEntityType+184j
  173. seg001:011F84C0                 b         locret_11F858C
  174. seg001:011F84C4 # ---------------------------------------------------------------------------
  175. seg001:011F84C4
  176. seg001:011F84C4 loc_11F84C4:                            # CODE XREF: GetEntityType+84j
  177. seg001:011F84C4                 cmpwi     r5, 0
  178. seg001:011F84C8                 beq       loc_11F84D8
  179. seg001:011F84CC                 lis       r3, aScript_pickup_@h # "SCRIPT_PICKUP_PLACEMENT"
  180. seg001:011F84D0                 addic     r3, r3, aScript_pickup_@l # "SCRIPT_PICKUP_PLACEMENT"
  181. seg001:011F84D4                 b         loc_11F84E0
  182. seg001:011F84D8 # ---------------------------------------------------------------------------
  183. seg001:011F84D8
  184. seg001:011F84D8 loc_11F84D8:                            # CODE XREF: GetEntityType+198j
  185. seg001:011F84D8                 lis       r3, aPickup_placeme@h # "PICKUP_PLACEMENT"
  186. seg001:011F84DC                 addic     r3, r3, aPickup_placeme@l # "PICKUP_PLACEMENT"
  187. seg001:011F84E0
  188. seg001:011F84E0 loc_11F84E0:                            # CODE XREF: GetEntityType+1A4j
  189. seg001:011F84E0                 b         locret_11F858C
  190. seg001:011F84E4 # ---------------------------------------------------------------------------
  191. seg001:011F84E4
  192. seg001:011F84E4 loc_11F84E4:                            # CODE XREF: GetEntityType+54j
  193. seg001:011F84E4                 cmpwi     r5, 0
  194. seg001:011F84E8                 beq       loc_11F84F8
  195. seg001:011F84EC                 lis       r3, aScript_glass_p@h # "SCRIPT_GLASS_PANE"
  196. seg001:011F84F0                 addic     r3, r3, aScript_glass_p@l # "SCRIPT_GLASS_PANE"
  197. seg001:011F84F4                 b         loc_11F8500
  198. seg001:011F84F8 # ---------------------------------------------------------------------------
  199. seg001:011F84F8
  200. seg001:011F84F8 loc_11F84F8:                            # CODE XREF: GetEntityType+1B8j
  201. seg001:011F84F8                 lis       r3, aGlass_pane@h # "GLASS_PANE"
  202. seg001:011F84FC                 addic     r3, r3, aGlass_pane@l # "GLASS_PANE"
  203. seg001:011F8500
  204. seg001:011F8500 loc_11F8500:                            # CODE XREF: GetEntityType+1C4j
  205. seg001:011F8500                 b         locret_11F858C
  206. seg001:011F8504 # ---------------------------------------------------------------------------
  207. seg001:011F8504
  208. seg001:011F8504 loc_11F8504:                            # CODE XREF: GetEntityType+7Cj
  209. seg001:011F8504                 cmpwi     r5, 0
  210. seg001:011F8508                 beq       loc_11F8518
  211. seg001:011F850C                 lis       r3, aScript_plane@h # "SCRIPT_PLANE"
  212. seg001:011F8510                 addic     r3, r3, aScript_plane@l # "SCRIPT_PLANE"
  213. seg001:011F8514                 b         loc_11F8520
  214. seg001:011F8518 # ---------------------------------------------------------------------------
  215. seg001:011F8518
  216. seg001:011F8518 loc_11F8518:                            # CODE XREF: GetEntityType+1D8j
  217. seg001:011F8518                 lis       r3, aPlane@h  # "PLANE"
  218. seg001:011F851C                 addic     r3, r3, aPlane@l # "PLANE"
  219. seg001:011F8520
  220. seg001:011F8520 loc_11F8520:                            # CODE XREF: GetEntityType+1E4j
  221. seg001:011F8520                 b         locret_11F858C
  222. seg001:011F8524 # ---------------------------------------------------------------------------
  223. seg001:011F8524
  224. seg001:011F8524 loc_11F8524:                            # CODE XREF: GetEntityType+74j
  225. seg001:011F8524                 cmpwi     r5, 0
  226. seg001:011F8528                 beq       loc_11F8538
  227. seg001:011F852C                 lis       r3, aScript_submari@h # "SCRIPT_SUBMARINE"
  228. seg001:011F8530                 addic     r3, r3, aScript_submari@l # "SCRIPT_SUBMARINE"
  229. seg001:011F8534                 b         loc_11F8540
  230. seg001:011F8538 # ---------------------------------------------------------------------------
  231. seg001:011F8538
  232. seg001:011F8538 loc_11F8538:                            # CODE XREF: GetEntityType+1F8j
  233. seg001:011F8538                 lis       r3, aSubmarine@h # "SUBMARINE"
  234. seg001:011F853C                 addic     r3, r3, aSubmarine@l # "SUBMARINE"
  235. seg001:011F8540
  236. seg001:011F8540 loc_11F8540:                            # CODE XREF: GetEntityType+204j
  237. seg001:011F8540                 b         locret_11F858C
  238. seg001:011F8544 # ---------------------------------------------------------------------------
  239. seg001:011F8544
  240. seg001:011F8544 loc_11F8544:                            # CODE XREF: GetEntityType+6Cj
  241. seg001:011F8544                 lis       r3, ((aPlayer+0x10000)@h) # "PLAYER"
  242. seg001:011F8548                 addic     r3, r3, -0x1680 # aPlayer
  243. seg001:011F854C                 b         locret_11F858C
  244. seg001:011F8550 # ---------------------------------------------------------------------------
  245. seg001:011F8550
  246. seg001:011F8550 loc_11F8550:                            # CODE XREF: GetEntityType+64j
  247. seg001:011F8550                 cmpwi     r5, 0
  248. seg001:011F8554                 beq       loc_11F8564
  249. seg001:011F8558                 lis       r3, aScript_trailer@h # "SCRIPT_TRAILER"
  250. seg001:011F855C                 addic     r3, r3, aScript_trailer@l # "SCRIPT_TRAILER"
  251. seg001:011F8560                 b         loc_11F856C
  252. seg001:011F8564 # ---------------------------------------------------------------------------
  253. seg001:011F8564
  254. seg001:011F8564 loc_11F8564:                            # CODE XREF: GetEntityType+224j
  255. seg001:011F8564                 lis       r3, aTrailer@h # "TRAILER"
  256. seg001:011F8568                 addic     r3, r3, aTrailer@l # "TRAILER"
  257. seg001:011F856C
  258. seg001:011F856C loc_11F856C:                            # CODE XREF: GetEntityType+230j
  259. seg001:011F856C                 b         locret_11F858C
  260. seg001:011F8570 # ---------------------------------------------------------------------------
  261. seg001:011F8570
  262. seg001:011F8570 loc_11F8570:                            # CODE XREF: GetEntityType+5Cj
  263. seg001:011F8570                 cmpwi     r5, 0
  264. seg001:011F8574                 beq       loc_11F8584
  265. seg001:011F8578                 lis       r3, aScript_train@h # "SCRIPT_TRAIN"
  266. seg001:011F857C                 addic     r3, r3, aScript_train@l # "SCRIPT_TRAIN"
  267. seg001:011F8580                 b         locret_11F858C
  268. seg001:011F8584 # ---------------------------------------------------------------------------
  269. seg001:011F8584
  270. seg001:011F8584 loc_11F8584:                            # CODE XREF: GetEntityType+244j
  271. seg001:011F8584                 lis       r3, aTrain@h  # "TRAIN"
  272. seg001:011F8588                 addic     r3, r3, aTrain@l # "TRAIN"
  273. seg001:011F858C
  274. seg001:011F858C locret_11F858C:                         # CODE XREF: GetEntityType+4Cj
  275. seg001:011F858C                                         # GetEntityType+90j ...
  276. seg001:011F858C                 blr
  277. seg001:011F858C # End of function GetEntityType
  278. seg001:011F858C
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement