GenesisFan64

Castlevania Genesis notes

Oct 5th, 2020 (edited)
428
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.10 KB | None | 0 0
  1. $FF9300 | Controller buffer
  2. > $00 - Port 1 ID
  3. > $01 - Port 2 ID
  4. > $0B - [PORT 1] 6pad flag ($00/$01)
  5. > $0C,$0D - [PORT 1] SACBRLDU Hold,Press
  6. > $0E,$0F - [PORT 1] 000000XYZ Hold,Press (MODE is ignored)
  7. > $23 - [PORT 2] 6pad flag ($00/$01)
  8. > $24,$25 - [PORT 2] SACBRLDU Hold,Press
  9. > $26,$27 - [PORT 2] 000000XYZ Hold,Press (MODE is ignored)
  10. $FF9060 (WORD) - controller inputs SACBRLDU ($hold|press)
  11. $FF9062 (WORD) - controller inputs XYZ ($hold|press)
  12. $FF9CA0 (WORD) - Player actions (routines at $1099C)
  13. - $07 move right on ladder
  14. - $08 move left on ladder
  15. - $0F turn to left on ladder
  16. - $10 turn to right on ladder
  17. $FF9F0A - Player data for frames(?)
  18. $FF9CBF (BYTE) - Player is-on-ladder flag
  19. $FF9C82 (WORD) - Player AnimFrame
  20. $FF9C86 (WORD) - Player AnimFrame oldnumber
  21. $FF9CCC (WORD) - Flag JumpOutTheLadder
  22. $FFAC00 - Alternate sprite list for the water
  23. $FFB280 -
  24. $FFB318 - Player Xpos (SCREEN position)
  25. $FFB31C - Player Ypos
  26. $FFB328 - Player animation ID
  27. $FFB32C - Player direction (1 - right, 0 - left)
  28. $FFB32D - Player YFlip
  29. $FFB34E (LONG) - Animation data pointer
  30. -- $0106C2 standing
  31. -- $0106CA walking
  32. -- $0106FE ladder climb up step 1
  33. -- $010706 ladder climb up step 2
  34. -- $01070E ladder climb down step 1
  35. -- $010716 ladder climb down step 2
  36. $FFEEB0 - DMA Sprite list
  37.  
  38. CODE:
  39. $00E99C - ROUTINE: Make Player sprite from pieces
  40. $0106C2 - ROUTINE: Set player animation
  41. $031F3A - ROUTINE: Build sprites (1)
  42. $0320D4 - ROUTINE: Build sprites (2)
  43.  
  44. $011002 - Player going up in ladder ($FF9CD4 WORD: index jump)
  45. $0113E2 - Player going down in ladder
  46. $060FD0 - Sprite piece pointer list (very large list)
  47.  
  48. examples:
  49. $068586 - ladderframe1 start
  50. + $00 - Xpos
  51. + $02 - Ypos
  52. + $04 - ?
  53. + $06 - ?
  54.  
  55. Animation data format (2 bytes):
  56. $(timer),$(frame)
  57. if $FFFF then loop
  58. if $0000 then finish
  59.  
  60. ids for the on-ladder sprite pieces:
  61. $0D,$0E,$09
  62. $0A,$0B,$0C
  63. $13,$14,$0F
  64. $10,$11,$12
  65.  
  66. off_0_EA7E data format
  67. dc.w piece_1 (list at: 060FD0, pz_id*2)
  68. dc.w piece_2
  69. dc.b ?
  70. dc.b ?,?,?,?,?
  71. rept 7
  72. dc.w ?
  73. dc.w ?
  74. dc.w ?
  75. endr
Add Comment
Please, Sign In to add comment