scummvm/engines/sci
Colin Snover cfda8b9ecd SCI32: Fix broken Remap implementation
Remap would crash SCI2.1early games with 19 remap slots, and
did not actually work in most cases in SCI2.1mid+ games.

The SCI16 implementation was moved to its own separate file but
was otherwise touched as little as possible, so may still have
similar problems to the SCI32 code.

1. Split SCI16 and SCI32 code into separate files
2. Use -32 prefixes for SCI32 code and no prefix for SCI16 code,
   where possible, to match other existing code
3. Avoid accidental corruption of values from the VM that may be
   valid when signed or larger than 8 bits
4. Added documentation
5. Add missing remap CelObj calls
6. Inline where possible in performance-critical code paths
7. Fix bad `matchColor` function, and move it from GfxPalette to
   GfxRemap32 since it is only used by GfxRemap32
8. Fix bad capitalisation in getCycleMap
9. Remove unnecessary initialisation of SingleRemaps
10. Update architecture to more closely mirror how SSCI worked
11. Clarify the purpose of each type of remap type (and
    associated variable names)
12. Split large `apply` function into smaller units
13. Fix buffer overrun when loading a SCI2.1early game with remap
14. Remove use of `#define` constants
15. Warn instead of crashing with an error on invalid input (to
    match SSCI more closely)
16. Change the collision avoidance mechanism between the RemapType
    enum and remap kernel functions
17. Add save/load function
2016-06-26 12:42:58 -05:00
..
engine SCI32: Fix broken Remap implementation 2016-06-26 12:42:58 -05:00
graphics SCI32: Fix broken Remap implementation 2016-06-26 12:42:58 -05:00
parser SCI: Use uint32 instead of unsigned int 2016-03-01 01:12:58 +02:00
sound SCI32: Fix hang when playing auto-play audio channels 2016-06-26 10:56:36 -05:00
video SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
configure.engine CONFIGURE: Introduced new engine dependency: highres 2016-03-05 14:25:56 +01:00
console.cpp SCI32: Implement line drawing (kAddLine/kUpdateLine/kRemoveLine) 2016-06-21 08:14:12 -05:00
console.h SCI32: Add debugger command to view screen items in the visible plane list 2016-03-07 16:46:25 -06:00
debug.h SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
decompressor.cpp SCI: Use uint32 instead of unsigned int 2016-03-01 01:12:58 +02:00
decompressor.h SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
detection.cpp SCI: Separate the demos of QFG4, PQ4 and GK1 from their full versions 2016-03-08 20:36:02 +02:00
detection_tables.h Merge pull request #753 from OmerMor/atari 2016-05-10 12:17:23 +02:00
event.cpp SCI32: Implement kEditText 2016-03-06 21:34:43 -06:00
event.h SCI32: Implement kEditText 2016-03-06 21:34:43 -06:00
module.mk SCI32: Fix broken Remap implementation 2016-06-26 12:42:58 -05:00
POTFILES I18N: Move specification of engine specific files to enginedir/POTFILES. 2013-08-12 17:54:31 +02:00
resource.cpp SCI: Add an explanation about LRU removals when fetching resources 2016-06-21 08:17:28 -05:00
resource.h SCI32: Rewrite digital audio engine 2016-06-20 21:02:21 -05:00
resource_audio.cpp SCI: Assert on seeks past the end of audio resource bundles 2016-06-22 13:05:18 -05:00
resource_intern.h SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
sci.cpp SCI32: Fix broken Remap implementation 2016-06-26 12:42:58 -05:00
sci.h SCI: Add getGameObjectName to fix compilation 2016-06-25 23:59:46 +02:00
util.cpp SCI: WIP GfxText32 code 2016-02-18 13:18:02 -06:00
util.h SCI: WIP GfxText32 code 2016-02-18 13:18:02 -06:00