Advertisement
Guest User

Untitled

a guest
Apr 24th, 2017
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.10 KB | None | 0 0
  1. .macro setup_random
  2. li $v0, 30
  3. syscall
  4. move $a1, $a0
  5. li $a0, 0
  6. li $v0, 40
  7. syscall
  8. .end_macro
  9.  
  10. .macro get_random_number(%max, %where)
  11. li $a1, %max
  12. li $a0, 0
  13. li $v0, 42
  14. syscall
  15. move %where, $a0
  16. .end_macro
  17.  
  18. .macro GetAIPlaceMacro(%where)
  19. jal GetAIPlace
  20. move %where, $v0
  21. .end_macro
  22.  
  23.  
  24. GetAIPlace:
  25. addi $sp, $sp, -4
  26. sw $ra, 0($sp)
  27. get_random_number(2,$t0)
  28. beq $t0, 0 GetAIPlaceCenter
  29. get_random_number(2,$t0)
  30. beq $t0, 0 GetAIPlace1_5
  31. get_random_number(2,$t0)
  32. beq $t0, 0 GetAIPlace2_4
  33. j GetAIPlace0_6
  34.  
  35. GetAIPlaceCenter:
  36. li $v0, 3
  37. j GetAIPlaceReturn
  38.  
  39. GetAIPlace0_6:
  40. get_random_number(2,$t0)
  41. beq $t0, 0 GetAIPlace6
  42. li $v0, 0
  43. j GetAIPlaceReturn
  44. GetAIPlace6:
  45. li $v0, 6
  46. j GetAIPlaceReturn
  47.  
  48. GetAIPlace1_5:
  49. get_random_number(2,$t0)
  50. beq $t0, 0 GetAIPlace5
  51. li $v0, 1
  52. j GetAIPlaceReturn
  53. GetAIPlace5:
  54. li $v0, 5
  55. j GetAIPlaceReturn
  56.  
  57. GetAIPlace2_4:
  58. get_random_number(2,$t0)
  59. beq $t0, 0 GetAIPlace4
  60. li $v0, 2
  61. j GetAIPlaceReturn
  62. GetAIPlace4:
  63. li $v0, 4
  64. j GetAIPlaceReturn
  65.  
  66. GetAIPlaceReturn:
  67. lw $ra, 0($sp)
  68. addi $sp, $sp, 4
  69. jr $ra
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement