Skip to content

Commit e253426

Browse files
committed
2.2.2 update
1 parent e8235b1 commit e253426

58 files changed

Lines changed: 7886 additions & 2540 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
/donor/
2+
bin/
23
build/
34
__pycache__/
45
*.pyc
6+
/server/save.bin

README.md

Lines changed: 22 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -8,37 +8,32 @@ version 2. See `LICENSE` for more information.
88
This project provides a framework for developing modifications to *Super Mario
99
64* that utilise an Internet connection.
1010

11-
## How to use
12-
**If you are hosting a server,** follow the instructions for the server
13-
installation and usage. Run the server on a separate machine as the client
14-
you join with, as running the client may cause interference with the server.
11+
## How to play
12+
Download the latest release from the
13+
[Releases](https://github.com/devwizard64/sm64net/releases/) tab. Extract
14+
`SM64Net.zip`, then run `SM64NetGUI.exe`. Fill out the information required,
15+
then click `Launch` while your emulator is running.
16+
17+
We strongly recommend using [Parallel Launcher](https://parallel-launcher.ca/),
18+
as that works best with this project. Before running, open the settings menu,
19+
then check `Show advanced ROM options`, then click OK. Then, with your SM64 ROM
20+
selected, check `Use Interpreter Core`.
21+
**If you do not do this step, SM64Net will not work.**
22+
23+
## Using the Server
24+
Use WSL to compile the server on Windows. Run the server on a separate machine
25+
as the client you join with, as running the client may cause interference with
26+
the server.
1527

16-
**If you are joining a server,** download the latest release from the Releases
17-
tab: https://github.com/devwizard64/sm64net/releases/ (`SM64Net.zip`) and follow
18-
the instructions below:
19-
20-
We strongly recommend using the latest nightly build of Project64 from 64DD.com,
21-
as that works best with this project. Download it here:
22-
https://64dd.org/downloads.html (Click the link that says `64DD.org Build
23-
[date]` to download it as a portable ZIP.)
24-
25-
When running SM64Net for the first time on Windows, a dialogue box from Windows
26-
Firewall will appear asking you if you want to allow network access to SM64Net.
27-
Check **both** boxes on the bottom, then click 'Allow access.'
28-
29-
## Server
30-
31-
Use WSL to compile the server on Windows.
32-
33-
### Dependencies (Server)
28+
### Dependencies
3429
* `apt install make gcc-mips-linux-gnu`
35-
* `pip install windows-curses` **(Windows)**
30+
* `pip install windows-curses` **(Windows, no WSL)**
3631

37-
## Client
32+
## Using the Client
3833

3934
### Dependencies
4035
* `apt install make gcc` **(Native)**
41-
* `apt install make gcc-mingw-w64-i686` **(Windows cross-compile)**
36+
* `apt install make gcc-mingw-w64-x86-64` **(Windows cross-compile)**
4237

4338
### Usage
4439
`./sm64net <proc> <addr> <port> [nff ...]`
@@ -47,8 +42,8 @@ Use WSL to compile the server on Windows.
4742
* `port` - Server port, default is `4352`
4843
* `nff` - Optional NFF file to read, you may specify multiple
4944

50-
## USB (experimental)
45+
## Using the USB Client (experimental)
5146

5247
### Dependencies
5348
* `apt install make gcc gcc-mips-linux-gnu libftdi1-dev`
54-
* An English SM64 ROM - Name it `UNSME0.z64` and place it in `donor/`.
49+
* An English SM64 ROM - Name it `UNSME00.z64` and place it in `donor/`.

client/makefile

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,21 @@
33
# This project is licensed under the terms of the GNU General
44
# Public License version 2. See LICENSE for more information.
55

6-
build/sm64net: src/main.c src/net.c src/mem.c
6+
.PHONY: default
7+
default: bin/sm64net bin/sm64net.exe bin/sm64net_usb
78

8-
build/sm64net.exe: src/main.c src/net.c src/mem.c
9-
build/sm64net.exe: CC := i686-w64-mingw32-gcc -mconsole -D_WIN32_WINNT=0x0600
10-
build/sm64net.exe: LIB := -lws2_32
9+
include ../include/sm64net.mk
1110

12-
build/sm64net_usb: src/main.c src/net.c src/mem_usb.c
13-
build/sm64net_usb: LIB := -lftdi
11+
W32_ARCH := -mconsole -D_WIN32_WINNT=0x0600
1412

15-
include ../include/native.mk
13+
bin/sm64net: src/main.c src/memory.c
14+
@mkdir -p $(dir $@)
15+
$(CC) $(CCFLAG) -s -o $@ $^
16+
17+
bin/sm64net.exe: src/main.c src/memory.c
18+
@mkdir -p $(dir $@)
19+
$(W32_CC) $(W32_CCFLAG) -s -o $@ $^ -lws2_32
20+
21+
bin/sm64net_usb: src/main.c src/memory_usb.c
22+
@mkdir -p $(dir $@)
23+
$(CC) $(CCFLAG) -s -o $@ $^ -lftdi

0 commit comments

Comments
 (0)