Skip to content

Decompiled code for PC/MSDOS version of Ultima VI - The False Prophet

Notifications You must be signed in to change notification settings

leejeonghun/u6-decompiled

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

u6-decompiled

Decompiled code for PC/MSDOS version of Ultima VI - The False Prophet (version 4.5)

This project allows you to build GAME.EXE, with very few differences from the original. I have also decompiled most of the other executables, but I have to make the code more readable before releasing it.

The techniques used to decompile GAME.EXE is basically the same I used to decompile Ultima IV:

  • disassemble the executable
  • gather the tools/libraries that were originaly used (Borland Turbo C 2.0 in our case)
  • search for modules/functions separation in the code.
  • for each function, read assembly code and try to guess what was the original C code
  • build new code and compare the resulting binary with original binary
  • eventually correct code and build again
  • repeat 3 last steps until all the executable file has been reversed

Some years ago, someone released Ultima 6 Technical Documents online, which proved very helpful to understand some parts of the code, and to give a name to some functions/variables/macros. Be aware though that these documents refer to an earlier version of the game, and so they do not reflect exactly what is in the code.

Concerning the build process:
The original game was build with Borland Turbo C 2.0 for the part written in C language (most of the files). There are some asm files too, you will need tasm 2.0 and masm 3.0 to build them.

All you need to know for the build process is in the file SRC/doit.bat which uses MAKEFILE. Before that, you will need to launch SRC/OSILIB/doit.bat. I think I put most of the asm files in there.

The naming of the C files is not friendly at all, and I apologize for that. Maybe some renaming will take place in the future ?

Have a lot of decompiling fun!
2022/03/29 ergonomy_joe

PS: when I first decompiled this code, I posted some comments on a french abandonware related forum, you can take a look here.

About

Decompiled code for PC/MSDOS version of Ultima VI - The False Prophet

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 92.6%
  • Assembly 7.0%
  • Batchfile 0.4%