Advertisement
owa-owa

SNES LoROM Address <-> PC Address Conversion script

Dec 14th, 2016
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.32 KB | None | 0 0
  1. ;----------------------------------------------------------
  2. ; SNES LoRom -> PcAddress conversion
  3. ;
  4. ; You must set 2 labels:
  5. ; - BEGIN ROM (LABEL 1021)
  6. ; - END ROM (LABEL 1022)
  7. ;
  8. ; [Usage]
  9. ; - SNES Addr -> PC Addr -
  10. ; m #addr w0
  11. ; bra 820
  12. ; ; you can get pc addr from w0
  13. ;
  14. ; - PC Addr -> SNES Addr -
  15. ; m #addr w0
  16. ; bra 830
  17. ; ; you can get snes addr from w0
  18. ;
  19. ;----------------------------------------------------------
  20.  
  21. ;---------------------------------------
  22. ; SNES Addr -> PC Addr
  23. ;---------------------------------------
  24. :820
  25. bra 822 ; header check
  26. r0
  27.  
  28. m w0 w1
  29. n #0x7fff & w1
  30. n #0x7f0000 & w0
  31. n #1 > w0
  32. n w1 | w0
  33. c #0 w4
  34. beq 821
  35. a #0x200 w0
  36. :821
  37. r
  38.  
  39. ;--- header include check sub routine
  40. :822
  41. ; header include check
  42. m l1022 w4
  43. s l1021 w4
  44. n #0x8000 $ w4
  45. r
  46.  
  47. ;---------------------------------------
  48. ; PC Addr -> SNES Addr
  49. ;---------------------------------------
  50. :830
  51. bra 822 ; header check
  52. r0
  53.  
  54. c #0 w4
  55. beq 831
  56. s #0x200 w0
  57. :831
  58. m w0 w1
  59. n #0x7fff & w1
  60. n #0x8000 | w1
  61. n #1 < w0
  62. n #0x7f0000 & w0
  63. n w1 | w0
  64. r
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement