Open main menu

Difference between revisions of "Tinsel/TODO"

1,533 bytes removed ,  22:24, 3 October 2020
Issues with BE systems and 64-bit compatibility have been identified and fixed
(Update TODO, add TODO for DW1 Mac)
(Issues with BE systems and 64-bit compatibility have been identified and fixed)
 
(6 intermediate revisions by the same user not shown)
Line 6: Line 6:


== TODO ==
== TODO ==
* The AdLib music does not sound right. I'm speculating that we would need to use the SAMPLE.* files from the original for Adlib instruments. Here is a description of the format probably used by SAMPLE.BNK:  http://www.descent2.com/ddn/specs/bnk/ . The adlib.diff patch could possibly provide a starting point.
* Return to launcher is currently impossible, because the game uses a ton of global variables to keeps its state. These are not reset when one exits one Tinsel game to the launcher and then starts another Tinsel game (possibly the same). A quick way to fix it would be the following:
*# Identify all global variables (this includes "static" variables hidden inside function bodies).
*# Optionally, remove the inline initialization for all of them. This way, [http://valgrind.org/ Valgrind] can detect if they are used uninitialized, which may help in tracking down problematic vars.
*# Initialize each global variable (or at least each that needs it) in an InitFILENAME() method in each file, which is to be called by the TinselEngine constructor or some other appropriate place.
*# On the long run, turning all these variables into members of to-be-added classes (i.e. objectifying the engine) is preferable, but the above seems to be the easiest and quickest solution.
* Check engine code for any 64-bit system incompatible code.
* Check engine code for endian issues, specifically Big Endian issues (most issues should be fixed by now).


* The following (minor) bugs were found in a Discworld 1 playthrough on 2012-05-27. It is suspected, but unconfirmed that they occur in the original interpreter. If so, they should be moved to [[Tinsel/Bugs]].
* The following (minor) bugs were found in a Discworld 1 playthrough on 2012-05-27. It is suspected, but unconfirmed that they occur in the original interpreter. If so, they should be moved to [[Tinsel/Bugs]].
Line 27: Line 18:


== Discworld 1 Mac (demo / full) TODO ==
== Discworld 1 Mac (demo / full) TODO ==
* The music is skipped for now, as it isn't MIDI
* Some stray black pixels are shown in some sprites (palette glitch, or an issue with our graphics function implementation)
* There are palette issues (some black colors are substituted with white ones)
* The sprite drawing graphics functions are missing, so no sprites are drawn
1,489

edits