Case study
Underworld Exhumed: reconstructing Ultima Underworld I and II
Pairs reconstructed DOS sources with native ports of Ultima Underworld I and II. The upstream documents Exhume-based byte-matching builds, routine-level comparisons and recorded-session replay against DOS.
Requirements and limitations
- Native ports target macOS, Windows and Linux. Playing and checking against the originals requires your own matching game files (the README targets GOG releases); byte-matching builds additionally require the documented Turbo C++ 1.01 and TASM 2.0 inputs. Native-port compilation itself does not require game data.
- The MIT license covers the project’s own tools, documentation and added annotations/structure. NOTICE explicitly excludes rights in the original games and derived game code; optional MT-32 playback requires separately obtained ROMs.
- Recorded sessions and routine tests provide bounded upstream evidence, not an independent whole-game equivalence result. Full tests require licensed inputs absent from the public repository. This review did not build, run or compare the games; no REA integration is established.
About this entry
- Type
- Case study
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Targets
- Binary · Game
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · abedegno/underworld-exhumed · Revision e5deadd
- docs/PORT.md GitHub · abedegno/underworld-exhumed · Revision e5deadd
- docs/BUILDING.md GitHub · abedegno/underworld-exhumed · Revision e5deadd
- LICENSE GitHub · abedegno/underworld-exhumed · Revision e5deadd
- NOTICE GitHub · abedegno/underworld-exhumed · Revision e5deadd
- Makefile GitHub · abedegno/underworld-exhumed · Revision e5deadd