The Lurker Lounge Forums
A complete mapping between address ranges and source code file names for Diablo 1. - Printable Version

+- The Lurker Lounge Forums (https://www.lurkerlounge.com/forums)
+-- Forum: Lurker Games (https://www.lurkerlounge.com/forums/forum-6.html)
+--- Forum: Diablo (https://www.lurkerlounge.com/forums/forum-15.html)
+--- Thread: A complete mapping between address ranges and source code file names for Diablo 1. (/thread-16369.html)



A complete mapping between address ranges and source code file names for Diablo 1. - mewmew - 09-04-2015

A complete mapping between address ranges and source code file names for version 1.09b of Diablo 1 has been made available at https://github.com/sanctuary/notes. Note that the exact same address ranges are used in both version 1.09 and version 1.09b of the diablo.exe executable.

* Functions: function declarations.
* Global Variables (read-only): global variable declarations in the read-only data section.
* Global Variables (read-write): global variable declarations in the read-write data segment.
* Global Variables (uninitialized): global variable declarations in the uninitialized data segment.

The aim of this project is to organize and cross-reference a collection of notes related to the inner workings of the Diablo 1 game engine. The initial work has focused on creating a foundation and high-level structure (think documentation skeleton) for organizing these notes. A few function declarations and global variable declarations have already been documented, but mainly to provide a reference for how the structure of the documentation may look like. Future work will focus on documenting the remaining relevant function declarations, global variable declarations, structure definitions and enumerate definitions of the Diablo 1 game engine.

Anyone interested in contributing to the project may do so in whichever way they desire. This may include:

  1. Provide ideas on how to better structure the information
  2. Point out mistakes or inconsistencies in the notes
  3. Improve the existing notes
  4. Add documentation for new function declarations, global variable declarations, structure definitions or enumerate definitions of the Diablo 1 game engine.
  5. ...

The README of each sub-project tracks the progress for each of its source files.