aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NEWS5
-rw-r--r--TODO29
-rw-r--r--scumm/gfx.h26
3 files changed, 36 insertions, 24 deletions
diff --git a/NEWS b/NEWS
index 9eac6a30fb..b6a7bf8cdf 100644
--- a/NEWS
+++ b/NEWS
@@ -10,7 +10,7 @@ For a more comprehensive changelog for the latest experimental CVS code, see:
- Added support for FLAC (lossless) encoded audio files
- Added an 'On Screen Display' to the SDL backend
- Partially rewrote the backend API
- - Comments in config files are preserved now
+ - Comments and the order of section in config files are preserved now
- Updated AdvMame scalers based on scale2x 2.0 - AdvMame3x looks nicer now,
and AdvMame2x is MMX accelerated
- Added MMX i386 assembler versions of the HQ2x and HQ3x scalers
@@ -23,10 +23,13 @@ For a more comprehensive changelog for the latest experimental CVS code, see:
- Removed the old zak256 target, use zakTowns instead
- Added native support for Macintosh versions using a special container
file. This removes the need for using the 'RESCUMM' program
+ - Added smooth horizontal scrolling for The Dig, Full Throttle and COMI
+ (matching the original engine)
- Partially rewrote the text engine, fixing various bugs, especially in
newer games (The Dig, COMI)
- Fixed actor drawing glitches in V1 Maniac and Zak
- Fixed ship-to-ship graphic glitches in COMI
+ - Fixed palette glitches in COMI
Queen:
- Fixed some issues with the Dreamcast backend.
diff --git a/TODO b/TODO
index cebee01353..9c2aca3342 100644
--- a/TODO
+++ b/TODO
@@ -59,14 +59,19 @@ README / Manual
- Contacting the developers
- Reporting bugs
+ Supported Platforms
+ - Windows, Linux, Mac OS X, WinCE, PalmOS, Dreamcast, ...
+ One section for each, indicating basic installation & usage.
+ Actually, we may not need this chapter at all, rather the
+ "Installation" and "Running ScummVM" chapters might be subdivided
+ as needed...
+ Supported Games
- - Copy Protection
- - Simon
- - BS notes
- - Using mac data files
+ Here we list *all* supported games, with some information on each
+ like known problems, which versions are supported precisely,
+ where to get cutscene packs etc.
+ Getting started
- How to get ScummVM (binary, source)
- - Compiling (with more detail than now)
+ - Compiling (with more detail than now); pointer to
+ the to-be-written "Developer's Guide to ScummVM"
- First steps (basic setup, getting a first game to run)
+ Running ScummVM
- Command line options
@@ -81,6 +86,16 @@ README / Manual
+ Credits
+ Index? (would be nice, for example 'fullscreen' would link to the hotkey,
the config file setting, and the command line option)
+* Independant of that, create a "Developer's Guide to ScummVM"
+ which explains the ScummVM framework, and also the engines, i.e.
+ - stuff in common/, like the config manager etc.
+ - the backend API, and how to create new backends
+ - the sound system
+ - how to create a new engine
+ - a chapter for each engine, with as many/little details as the resp.
+ engine teams deem appropriate...
+ - ...
+
Web site
========
@@ -189,6 +204,8 @@ GUI
most other bitmap fonts have it on the right, though). To this end, we maybe
should backup the background before drawing the caret, and restore it when
erasing the caret.
+* Eye candy: add a nice credits scroller to the AboutDialog class, which then
+ displays (scrolling) all the ScummVM credits...
Launcher
========
@@ -225,8 +242,6 @@ SCUMM
* Add support for TFMX music format in Amiga version of Monkey Island 1
Check http://darkstar.tabu.uni-bonn.de/~neo/audio.html for music format
details
-* V7-8 games: Implement smooth horizontal scrolling (instead of scrolling in
- increments of 8 pixels). See bug #629417.
* Add tool and support for compress *.la* file resources (ex. sounds) to fit
on small devices
* Fix codec44 for nut fonts
diff --git a/scumm/gfx.h b/scumm/gfx.h
index 2477e1b7de..ba5d1179af 100644
--- a/scumm/gfx.h
+++ b/scumm/gfx.h
@@ -295,23 +295,17 @@ public:
};
-// If you want to try buggy hacked smooth scrolling support in The Dig, enable
-// the following preprocessor flag by uncommenting it.
-//
-// Note: This is purely experimental, NOT WORKING COMPLETLY and very buggy.
-// Please do not make reports about problems with it - this is only in CVS
-// to get it fixed and so that really interested parties can experiment it.
-// It is NOT FIT FOR GENERAL USAGE! You have been warned.
-//
-// Doing this correctly will be complicated. Basically, with smooth scrolling,
-// the virtual screen strips don't match the display screen strips. Hence we
-// either have to draw partial strips (but that'd be rather cumbersome). Or the
-// alternative (and IMHO more elegant) solution is to simply use a screen pitch
-// that is 8 pixel wider than the real screen width, and always draw one strip
-// more than needed to the backbuf. This will still require quite some code to
-// be changed but should otherwise be relatively easy to understand, and using
-// VirtScreen::pitch will actually clean up the code.
+// We now have mostly working smooth scrolling code in place for V7+ games
+// (i.e. The Dig, Full Throttle and COMI). It seems to work very well so far.
+// One area which still may need some work are the AKOS codecs (except for
+// codec 1, which I already updated): their masking code may need adjustments,
+// similar to the treatment codec 1 received.
//
+// To understand how we achieve smooth scrolling, first note that with it, the
+// virtual screen strips don't match the display screen strips anymore. To
+// overcome that problem, we simply use a screen pitch that is 8 pixel wider
+// than the actual screen width, and always draw one strip more than needed to
+// the backbuf (of course we have to treat the right border seperately). This
#define V7_SMOOTH_SCROLLING_HACK