Commit graph

22 commits

Author SHA1 Message Date
Filippos Karapetis
d8eb52a2cb DGDS: Clean up includes 2025-03-10 18:53:20 +02:00
Matthew Duggan
1a374b66aa DGDS: Start to implement Willy Beamish CD version heads
Still quite broken but making some progress.
2024-12-16 18:23:29 +11:00
Filippos Karapetis
94403bd3a9 DGDS: Raise debuglevel of all debug statements to at least 1
This reduces the chatty debug output, which isn't of any use to
regular users
2024-11-16 18:44:46 +02:00
Matthew Duggan
4bb1410079 DGDS: Fix ADS move ops again
These move operations appear to actually work off the index of the sequence
within the list, not the sequence number.  This finally fixes the drawing of
the clothes in Blade's apartment without breaking the tap.

Still need to test through the games to make sure but I think this will now
give the correct execution order.
2024-10-21 15:27:15 +11:00
Matthew Duggan
f476dfcec1 DGDS: Avoid temp strings to make coverity happier 2024-09-23 17:37:53 +10:00
Matthew Duggan
b2fa3fea3b DGDS: Update to GPL3 to match the rest of ScummVM 2024-07-02 09:59:59 +10:00
Matthew Duggan
a80ea4c525 DGDS: Implement more required features for Willy Beamish
Added ttm 'gosub' instruction and scaled blit support.
2024-06-30 22:49:18 +03:00
Matthew Duggan
15f8a90b31 DGDS: Refactor to split into smaller files
Split TTM and ADS logic into their own files, and separate palette management
from image loading.

Also refactor scene types a bit to be more objecty.
2024-06-30 22:49:18 +03:00
Matthew Duggan
cd1aba710a DGDS: Fix ADS while handling and improve debug messages 2024-06-30 22:49:18 +03:00
Matthew Duggan
1c9ea68069 DGDS: More ADS fixes, now mostly working
ADS files now seem to basically execute correctly!  Now to move on to fixing
TTMs - currently screen updates are broken.
2024-06-30 22:49:18 +03:00
Matthew Duggan
c72cca34e3 DGDS: ADS and TTM implementation
* Rename TTM objects to match original ideas of environment and sequence
* Implement more ADS stuff in line with original - states etc
* Implement sceneop 4 which changes ADS states

Currently this breaks everything (no scenes execute) but the implementation is
far closer to the original, so it's a necessary step to get to a correct
reimplementation.
2024-06-30 22:49:18 +03:00
Matthew Duggan
0d3d6caa30 DGDS: Rename some op lists to better names, call some on scene change 2024-06-30 22:49:18 +03:00
Matthew Duggan
d2186d863d DGDS: Correct request parsing and test on more games 2024-06-30 22:49:18 +03:00
Matthew Duggan
bda43200f5 DGDS: Read page count for ttm scripts 2024-06-30 22:49:18 +03:00
Filippos Karapetis
9f72cad6e7 DGDS: Refactor the TTM and ADS player and remove external data and state 2024-06-30 22:49:18 +03:00
Matthew Duggan
6f1df860d9 DGDS: Fix decompressor usage 2024-06-30 22:49:18 +03:00
Matthew Duggan
b13a34d7a0 DGDS: Add REQ file parsing and refactor parsing a bit overall 2024-06-30 22:49:18 +03:00
Filippos Karapetis
9383f1f827 DGDS: Added a wrapper to read resource streams
This simplifies reading from resource files, and allows us to
encapsulate some of the resource file loading logic inside
the DgdsChunk class
2024-06-30 22:49:18 +03:00
Matthew Duggan
ed1062d63e DGDS: Implement full SDS (Scene data) parsing
Still a lot of unnkown data being read, but at least we now have proper
dialogue parsing so a bunch of hacks can be removed.
2024-06-30 22:49:18 +03:00
Matthew Duggan
b813fbd719 DGDS: Refactors and cleanups to remove globals. 2024-06-30 22:49:18 +03:00
Matthew Duggan
348c6aca5a DGDS: Update and rebase engine
* Added VQT image parsing for DOS games.
* Refactor slightly for better type and const correctness
* Re-enable sound for DOS games
2024-06-30 22:49:18 +03:00
Filippos Karapetis
3845931407 DGDS: Initial import
This is the initial import of the sources from vcosta's implementation.
Work has progressed on that base, so that it forms into an actual engine.
There has been heavy refactoring into classes, but there's still loads of
work to be done.

The status is almost the same the original vcosta's engine: it's possible
to play the intro Rise of the Dragon, and parts of the intro of Heart of
China and Willy Beamish. The DOS VQT images are still not decoded, so only
the Mac versions work for now - or the DOS versions with the Mac images
as patches
2024-06-30 22:49:18 +03:00