You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 1add308
Browse filesBrowse the repository at this point in the historyBrowse files
Other builds (for example the US retail executable) have not been tested and
165
-
will not work without changes. The app checks the file at startup and says so
166
-
instead of crashing; `NFSU2_ANY_EXE=1` skips the check.
165
+
The app checks the file at startup and says so instead of crashing;
166
+
`NFSU2_ANY_EXE=1` skips the check.
167
+
168
+
### Game versions
169
+
170
+
The recompiled code and the addresses in the runtime belong to one executable,
171
+
so every other build of `SPEED2.EXE` needs its own lifting pass and address
172
+
table. The game *data* is a separate matter (see the note under the table).
173
+
174
+
|`SPEED2.EXE`| Size | SHA-256 | Status |
175
+
|---|---|---|---|
176
+
| European v1.2, no CD check | 4,788,224 |`8f6a9ae2c4cfa01181d2fd755d99c6f4b7103f60273908ea1de1e719dfe2a297`|**Supported**|
177
+
| North American v1.2, no CD check (the build most PC mods target) | 4,800,512 |`f9dd86c054878ce6276beb07c1fd61874f7a1e4bf1f241b084c65b73e24168a7`| Not supported yet. Same Feb 9 2005 build; the data addresses match ours, the code is shifted by small amounts. Planned. |
178
+
| US v1.0 retail disc | 5,987,981 |`2cbd698fee8338a13d1891bc17d27e6641b4b9dd40580de818594b9140222899`|**Cannot be supported.** Protected by SafeDisc: the code section is encrypted on disc and only decrypted at run time, so there is nothing to recompile. |
179
+
180
+
The retail disc executable carries the disc's copy protection, and the official
181
+
v1.2 patch most likely keeps it (not verified here). A static recompiler needs
182
+
readable machine code, so the port cannot use a protected executable, and this
183
+
project does not remove copy protection.
184
+
185
+
**Data from the discs.** The US discs and the European release share 1,218 of
186
+
their ~1,250 files byte for byte. The differences are the region's cars (the US
187
+
release has `CARS/CIVIC` and `CARS/RSX`; the European one has `CARS/CORSA` and
188
+
`CARS/PEUGOT106`), the per-language movies, `FRONTEND/FrontB.lzc` and
189
+
`server.dll`.
190
+
191
+
**US data works with the supported executable.** The game's region is a
192
+
constant in the executable (`0` in the US build, `6` in the European one), and
193
+
it decides which of the region-only cars exist. Left at the European value, US
194
+
data hangs on the "Loading" screen as soon as a race picks a Corsa or a 106. The
195
+
runtime therefore looks at the data at startup: if `CARS/CIVIC` and `CARS/RSX`
196
+
are there but `CARS/CORSA` and `CARS/PEUGOT106` are not, it switches the game to
197
+
the US region (log line `region: North American data`). Tested on US disc data:
198
+
races load, the Civic is in the Quick Race car list and the Mazda is called
199
+
Miata, as in the US release; the region check hides the Corsa and 106.
200
+
`NFSU2_REGION=na` or `eu` forces either region.
201
+
202
+
### Installing from the PC discs on a Mac
203
+
204
+
The discs hold the game in plain zip files, so the Windows installer is not
205
+
needed. With the two disc images (`.cue`/`.bin`, `.iso`, or the disc folders):
206
+
207
+
```bash
208
+
brew install sevenzip # only needed for .bin/.iso images
0 commit comments