Super Mario 64s source code (from a leak on 4chan so be careful)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.2 KiB

6 years ago
  1. .include "macros.inc"
  2. .section .data
  3. .macro demo name
  4. .word (\name - gDemoInputs), (\name\()_end - \name)
  5. .endm
  6. # Whomp's Fortress has the wrong size. The original entries probably manually
  7. # input the sizes, but we opt for macros for cleanliness.
  8. .macro demo2 name
  9. .word (\name - gDemoInputs), ((\name\()_end + 0x170) - \name)
  10. .endm
  11. .macro demofile name
  12. \name:
  13. .incbin "assets/demos/\name\().bin"
  14. \name\()_end:
  15. .endm
  16. glabel gDemoInputs
  17. .word (demo_entry_end - demo_entry_start) / 8 # number of entries
  18. .align 3, 0x00
  19. demo_entry_start:
  20. .ifdef VERSION_US
  21. demo bitdw # Bowser in the Dark World
  22. .endif
  23. demo2 wf # Whomp's Fortress (the size is too large, but the demo ends before it can use the PSS demo inputs.)
  24. demo ccm # Cool Cool Mountain
  25. demo bbh # Big Boo's Haunt
  26. demo jrb # Jolly Rodger's Bay
  27. demo hmc # Hazy Maze Cave
  28. demo pss # Princess Secret Slide
  29. demo_entry_end:
  30. demofile bbh
  31. demofile ccm
  32. demofile hmc
  33. demofile jrb
  34. demofile wf
  35. demofile pss
  36. demofile unused # might be an unused demo, but it doesn't define a header, so it cant be
  37. # normally called. speculation: "blooper" take for CCM. Mario runs into
  38. # the sign and aligns himself as if it were a mistake.
  39. .ifdef VERSION_US
  40. demofile bitdw
  41. .endif