Go to file
2020-08-28 11:32:38 +06:00
dump_music - dump_music now extracts all PSX sounds including alpha builds 2020-03-28 02:13:37 +06:00
REDRIVER_2.rep - implement CheckForCorrectDisc, DiscSwapped, ReInitSystem, PlayFMV, PlayRender, ReportMode 2020-06-13 18:27:11 +06:00
src_rebuild - fix Lead AI FakeMotion not moving car 2020-08-28 01:27:47 +06:00
.gitignore - add TOMB5 emulator code 2020-03-31 22:56:49 +06:00
appveyor.yml - fix artifacts path, add cache 2020-07-24 23:16:34 +06:00
CONTRIBUTING.md - update CONTRIBUTING.md 2020-07-24 21:58:27 +06:00
dump.bat - initial commit 2019-02-19 00:49:19 +06:00
dump.h - initial commit 2019-02-19 00:49:19 +06:00
italian_dump.h - add italian symbols header dump (with labels) 2020-08-28 11:30:38 +06:00
LICENSE Create LICENSE 2020-07-08 16:23:47 +06:00
README.md - update README 2020-08-28 11:32:38 +06:00
REDRIVER_2.gpr - redone Ghidra project with TDR 2020-03-28 02:12:54 +06:00

REDRIVER2

PC (Windows): Build status

PSX: pending

Project attempting to reverse-engineer PS1 game Driver 2;

Goals

  • Rebuild all source code from assembly
  • Compile native version for PC (and for PSX later)
  • Make game playable from start to finish, all game modes should function properly
  • Fix all reverse-engineering bugs
  • Fix some existing critical bugs and performance issues
  • OpenDriver2? rewrite code, implement various cool stuff, PC rendering and audio engine, get rid of hard-coded stuff

How is it done?

  • All information (variables, types and function names) have been obtained from debugging symbols (.SYM), driver_psx_level and DLE
  • Ghidra project (based on Italian SYM) to deal with overlays, simple code complex branching - semi-auto decompilation
  • IDB based on Spanish SYM when dealing with things Ghidra can't handle properly - manual decompilation (mostly GTE code)

Usage

Assuming you have compiled the most recent code or got artifacts from Appveyor. Copy DRIVER2 folder from your game CD to location where compiled EXE is located.

Credits

  • Soapy - lead programmer
  • Fireboyd78 - code refactoring and improvements
  • Krishty, someone972 - formats decoding
  • Gh0stBlade - API-level PSY-Q libraries reimplementation (HLE PSX Emulator) (link)
  • Ben Lincoln - This Dust Remembers What It Once Was (TDR)
  • Stohrendorf - Symdump utility