Star Fox 2 (SNES, 1996/2017), with modifications for easier creation of ROM hacks and general ease-of-use.
- This codebase is difficult to work with.
- In the source code, the Normal, Hard and Expert difficulties are referred to as Easy, Normal, and Hard.
- A lot of source files use the DOS (CP437) encoding.
- The assembler will fail to assemble files with Unix (LF) line endings. Make sure your editor is configured for DOS/Windows (CRLF) line endings.
- PAL version support, change
pal
to 1 inVARS.INC
(StarWing 2 Logo by Josete2k, edited by Sunlitspace542) - File structure reorganized to make the codebase somewhat easier to work with
- Kando was involved
Requirements: Microsoft Windows
Download repo as ZIP and extract somewhere, or clone the repo with git via the command line.
To build ROM, run build.cmd
.
To build ROM with Logging, run build to log.cmd
.
To clean, run clean.cmd
.
After building, a debug symbol map will be created at SYMBOLS.TXT
, and a bank space report at BANKS.CSV
.
NOTE: this was tested on WSL with Ubuntu installed. Your mileage may vary.
Requirements: Ubuntu (might work with other distros) snap, DOSBox-X, git
Install snapstore: sudo apt install snapd
Install DOSBOX-X from snap: sudo snap install dosbox-x
Clone repository: git clone https://github.com/Sunlitspace542/ultrastarfox2
To build ROM, run make
.
To build ROM with logging, run make log
.
To clean, run make clean
.
After building, a debug symbol map will be created at SYMBOLS.TXT
, and a bank space report at BANKS.CSV
.
Uses USB2SNES-cli fork by Hyphen-ated. A prebuilt windows EXE is provided.
Download QUSB2SNES.
Extract it somewhere and run it. Set it up for an SD2SNES/FXPak Pro.
QUSB2SNES must be running in the background for uploading to function.
You can then run send2snes.cmd
or build and send to snes.cmd
to either upload the current ROM to the SNES or rebuild and upload the freshly built ROM.
ultrastarfox2
├── BIN: exe files needed to assemble game code
├── SF2: Main source code is located here
│ ├── ASM: Main game code located here (65816)
│ ├── BANK: Bank data\ASM files
│ ├── DATA: GFX files
│ │ └── COL: Palette files and Palette Packer
│ ├── EXT: .ext files needed by several .asm files
│ ├── FONT: .bin font files
│ ├── INC: .inc files, arc tangent table
│ ├── MAPS: map scripts
│ ├── MARIO: .MC MARIO chip (SuperFX) code
│ ├── MSG: Message files for English and Japanese
│ ├── MSPRITES: contains 7 BIN files (interleaved textures)
│ ├── PATH: contains all PATH language code
│ ├── SHAPES: contains all shape files
│ ├── SOUND: sound/music data
│ └── STRAT: Code for Strategies (Object behaviors)
├── TOOLS: tools such as PACKER and SHAPED
├── DOCS: .md format text files covering various aspects of Star Fox 2
├── OPTIONALSTUFF: optional graphics files
└── OTHER: Files for building MSPRITES /bin files