A tool to make Gecko codes for Super Mario Sunshine. https://pypi.org/project/supSMSGecko/
Find a file
sup39 f79b5d8bfb
[v0.1.0a5] updated symbols.py and ldscript/*.ld
- Updated symbols.py and ldscript/*.ld to include symbols with the same name
- Change `::` to `_` in symbols.py to match with ldscript/*.ld
2023-07-16 10:21:02 +09:00
src/supSMSGecko [v0.1.0a5] updated symbols.py and ldscript/*.ld 2023-07-16 10:21:02 +09:00
.gitignore init (v0.1.0a1) 2023-07-14 21:14:54 +09:00
CHANGELOG.md [v0.1.0a5] updated symbols.py and ldscript/*.ld 2023-07-16 10:21:02 +09:00
LICENSE init (v0.1.0a1) 2023-07-14 21:14:54 +09:00
MANIFEST.in init (v0.1.0a1) 2023-07-14 21:14:54 +09:00
pyproject.toml init (v0.1.0a1) 2023-07-14 21:14:54 +09:00
README.md [v0.1.0a5] updated symbols.py and ldscript/*.ld 2023-07-16 10:21:02 +09:00
setup.cfg [v0.1.0a5] updated symbols.py and ldscript/*.ld 2023-07-16 10:21:02 +09:00

supSMSGecko

A tool to make Gecko codes for Super Mario Sunshine.

Installation

pip install supSMSGecko

You also need devkitPro if you want to make C0/C2 codes.

Example

from supSMSGecko import make_xml, symbols, Button as B

def main(g, ver):
  S = symbols[ver]
  addr_inst = 0x26 + S['TMarDirector_direct']
  addr_input = S['mPadStatus']
  # code
  g.write16(addr_inst, 600)
  g.if16(addr_input, '==', B.B | B.DL)
  g.write16(addr_inst, 2400)
  g.if16(addr_input, '==', B.B | B.DR, endif=True)
  g.write16(addr_inst, 4800)
  g.endif()

# output the generated Gecko codes for all 4 versions to "@code.xml"
make_xml(main)

TODO

  • document of each function