Super Mario 64

由一群聪明人带来的《超级马里奥 64》反编译。「A Super Mario 64 decompilation, brought to you by a bunch of clever folks.」

  • 所有者: n64decomp/sm64
  • 平台: Linux,Mac,Docker,Windows Subsystem for Linux (WSL)
  • 許可證: Creative Commons Zero v1.0 Universal
  • 分類:
  • 主題:
  • 喜歡:
    0
      比較:

Github星跟蹤圖

Super Mario 64

This repo contains a full decompilation of Super Mario 64 (J) and (U).
The source and data have been decompiled but complete naming and documentation
all of the code and data is still a work in progress. Decompiling the (E) ROM
is also an ongoing effort.

It builds the following ROMs:

  • sm64.jp.z64 sha1: 8a20a5c83d6ceb0f0506cfc9fa20d8f438cafe51
  • sm64.us.z64 sha1: 9bef1128717f958171a4afac3ed78ee2bb4e86ce

This repo does not include all assets necessary for compiling the ROMs.
A prior copy of the game is required to extract the required assets.

Installation

Linux

1. Copy baserom(s) for asset extraction

For each version (jp/us/eu) that you want to build a ROM for, put an existing ROM at
./baserom.<version>.z64 for asset extraction.

2. Install build dependencies

The build system has the following package requirements:

  • binutils-mips >= 2.27
  • python3 >= 3.6
  • libaudiofile
  • qemu-irix

Debian / Ubuntu

sudo apt install build-essential pkg-config git binutils-mips-linux-gnu python3 zlib1g-dev libaudiofile-dev

Arch Linux

sudo pacman -Sy base-devel python audiofile

Install the following AUR packages:

3. Install qemu-irix

  1. Options:
    1. Clone https://github.com/n64decomp/qemu-irix to somewhere and follow its install instructions in the README.
    2. Optionally, grab the prebuilt qemu-irix from the Releases section.
    3. (Arch) Use AUR package qemu-irix-git
  2. (For the first two options), copy executable qemu-irix from irix-linux-user to
    somewhere convenient with a relatively short path. e.g.:
mkdir -p /opt/qemu-irix/bin
cp irix-linux-user/qemu-irix /opt/qemu-irix/bin
  1. Define QEMU_IRIX environment variable in your ~/.bashrc to point to this qemu-irix executable.
export QEMU_IRIX=/opt/qemu-irix/bin/qemu-irix

4. Build ROM

Run make to build the ROM (defaults to VERSION=us). Make sure your path to the repo
is not too long or else this process will error, as the emulated IDO compiler cannot
handle paths longer than 255 characters.
Examples:

make VERSION=jp -j4       # build (J) version instead with 4 jobs
make VERSION=eu COMPARE=0 # non-matching EU version still WIP

Windows

For Windows, install WSL and a distro of your choice following
Windows Subsystem for Linux Installation Guide for Windows 10
We recommend either Debian or Ubuntu 18.04 Linux distributions under WSL.

Then follow the directions in the Linux installation section above.

macOS

macOS is currently unsupported as qemu-irix is unable to be built for macOS host.
The recommended path is installing a Linux distribution under a VM.

Contributing

Pull requests are welcome. For major changes, please open an issue first to
discuss what you would like to change.

Run clang-format on your code to ensure it meets the project's coding standards.

Official discord: https://discord.gg/27JtCWs

主要指標

概覽
名稱與所有者n64decomp/sm64
主編程語言C
編程語言Makefile (語言數: 10)
平台
許可證Creative Commons Zero v1.0 Universal
所有者活动
創建於2019-06-08 04:30:49
推送於2024-02-04 10:26:16
最后一次提交2023-08-17 09:21:59
發布數2
最新版本名稱irix2 (發布於 )
第一版名稱irix (發布於 )
用户参与
星數8.2k
關注者數239
派生數1.5k
提交數30
已啟用問題?
問題數0
打開的問題數0
拉請求數2
打開的拉請求數24
關閉的拉請求數53
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?