[Scummvm-git-logs] scummvm master -> a3b6aa316ec3073e14f46142e3e1e96f898f545e
AndywinXp
noreply at scummvm.org
Tue Jul 11 23:35:37 UTC 2023
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
a3b6aa316e JANITORIAL: SCUMM: Relabel bitmap compression types
Commit: a3b6aa316ec3073e14f46142e3e1e96f898f545e
https://github.com/scummvm/scummvm/commit/a3b6aa316ec3073e14f46142e3e1e96f898f545e
Author: AndywinXp (andywinxp at gmail.com)
Date: 2023-07-12T01:35:30+02:00
Commit Message:
JANITORIAL: SCUMM: Relabel bitmap compression types
Changed paths:
engines/scumm/gfx.cpp
engines/scumm/gfx.h
diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp
index f6fb681db86..648e8432025 100644
--- a/engines/scumm/gfx.cpp
+++ b/engines/scumm/gfx.cpp
@@ -2475,21 +2475,21 @@ void Gdi::drawBMAPBg(const byte *ptr, VirtScreen *vs) {
_decomp_mask = 0xFF >> (8 - _decomp_shr);
switch (code) {
- case 134:
- case 135:
- case 136:
- case 137:
- case 138:
+ case BMCOMP_NMAJMIN_H4:
+ case BMCOMP_NMAJMIN_H5:
+ case BMCOMP_NMAJMIN_H6:
+ case BMCOMP_NMAJMIN_H7:
+ case BMCOMP_NMAJMIN_H8:
drawStripHE(dst, vs->pitch, bmap_ptr, vs->w, vs->h, false);
break;
- case 144:
- case 145:
- case 146:
- case 147:
- case 148:
+ case BMCOMP_NMAJMIN_HT4:
+ case BMCOMP_NMAJMIN_HT5:
+ case BMCOMP_NMAJMIN_HT6:
+ case BMCOMP_NMAJMIN_HT7:
+ case BMCOMP_NMAJMIN_HT8:
drawStripHE(dst, vs->pitch, bmap_ptr, vs->w, vs->h, true);
break;
- case 150:
+ case BMCOMP_SOLID_COLOR_FILL:
fill(dst, vs->pitch, *bmap_ptr, vs->w, vs->h, vs->format.bytesPerPixel);
break;
default:
@@ -2663,121 +2663,121 @@ bool Gdi::decompressBitmap(byte *dst, int dstPitch, const byte *src, int numLine
_decomp_mask = 0xFF >> (8 - _decomp_shr);
switch (code) {
- case 1:
+ case BMCOMP_RAW256:
drawStripRaw(dst, dstPitch, src, numLinesToProcess, false);
break;
- case 2:
+ case BMCOMP_TOWNS_2:
unkDecode8(dst, dstPitch, src, numLinesToProcess); /* Ender - Zak256/Indy256 */
break;
- case 3:
+ case BMCOMP_TOWNS_3:
unkDecode9(dst, dstPitch, src, numLinesToProcess); /* Ender - Zak256/Indy256 */
break;
- case 4:
+ case BMCOMP_TOWNS_4:
unkDecode10(dst, dstPitch, src, numLinesToProcess); /* Ender - Zak256/Indy256 */
break;
- case 7:
+ case BMCOMP_TOWNS_7:
unkDecode11(dst, dstPitch, src, numLinesToProcess); /* Ender - Zak256/Indy256 */
break;
- case 8:
+ case BMCOMP_TRLE8BIT:
// Used in 3DO versions of HE games
transpStrip = true;
drawStrip3DO(dst, dstPitch, src, numLinesToProcess, true);
break;
- case 9:
+ case BMCOMP_RLE8BIT:
drawStrip3DO(dst, dstPitch, src, numLinesToProcess, false);
break;
- case 10:
+ case BMCOMP_PIX32:
// Used in Amiga version of Monkey Island 1
drawStripEGA(dst, dstPitch, src, numLinesToProcess);
break;
- case 14:
- case 15:
- case 16:
- case 17:
- case 18:
+ case BMCOMP_ZIGZAG_V4:
+ case BMCOMP_ZIGZAG_V5:
+ case BMCOMP_ZIGZAG_V6:
+ case BMCOMP_ZIGZAG_V7:
+ case BMCOMP_ZIGZAG_V8:
drawStripBasicV(dst, dstPitch, src, numLinesToProcess, false);
break;
- case 24:
- case 25:
- case 26:
- case 27:
- case 28:
+ case BMCOMP_ZIGZAG_H4:
+ case BMCOMP_ZIGZAG_H5:
+ case BMCOMP_ZIGZAG_H6:
+ case BMCOMP_ZIGZAG_H7:
+ case BMCOMP_ZIGZAG_H8:
drawStripBasicH(dst, dstPitch, src, numLinesToProcess, false);
break;
- case 34:
- case 35:
- case 36:
- case 37:
- case 38:
+ case BMCOMP_ZIGZAG_VT4:
+ case BMCOMP_ZIGZAG_VT5:
+ case BMCOMP_ZIGZAG_VT6:
+ case BMCOMP_ZIGZAG_VT7:
+ case BMCOMP_ZIGZAG_VT8:
transpStrip = true;
drawStripBasicV(dst, dstPitch, src, numLinesToProcess, true);
break;
- case 44:
- case 45:
- case 46:
- case 47:
- case 48:
+ case BMCOMP_ZIGZAG_HT4:
+ case BMCOMP_ZIGZAG_HT5:
+ case BMCOMP_ZIGZAG_HT6:
+ case BMCOMP_ZIGZAG_HT7:
+ case BMCOMP_ZIGZAG_HT8:
transpStrip = true;
drawStripBasicH(dst, dstPitch, src, numLinesToProcess, true);
break;
- case 64:
- case 65:
- case 66:
- case 67:
- case 68:
- case 104:
- case 105:
- case 106:
- case 107:
- case 108:
+ case BMCOMP_MAJMIN_H4:
+ case BMCOMP_MAJMIN_H5:
+ case BMCOMP_MAJMIN_H6:
+ case BMCOMP_MAJMIN_H7:
+ case BMCOMP_MAJMIN_H8:
+ case BMCOMP_RMAJMIN_H4:
+ case BMCOMP_RMAJMIN_H5:
+ case BMCOMP_RMAJMIN_H6:
+ case BMCOMP_RMAJMIN_H7:
+ case BMCOMP_RMAJMIN_H8:
drawStripComplex(dst, dstPitch, src, numLinesToProcess, false);
break;
- case 84:
- case 85:
- case 86:
- case 87:
- case 88:
- case 124:
- case 125:
- case 126:
- case 127:
- case 128:
+ case BMCOMP_MAJMIN_HT4:
+ case BMCOMP_MAJMIN_HT5:
+ case BMCOMP_MAJMIN_HT6:
+ case BMCOMP_MAJMIN_HT7:
+ case BMCOMP_MAJMIN_HT8:
+ case BMCOMP_RMAJMIN_HT4:
+ case BMCOMP_RMAJMIN_HT5:
+ case BMCOMP_RMAJMIN_HT6:
+ case BMCOMP_RMAJMIN_HT7:
+ case BMCOMP_RMAJMIN_HT8:
transpStrip = true;
drawStripComplex(dst, dstPitch, src, numLinesToProcess, true);
break;
- case 134:
- case 135:
- case 136:
- case 137:
- case 138:
+ case BMCOMP_NMAJMIN_H4:
+ case BMCOMP_NMAJMIN_H5:
+ case BMCOMP_NMAJMIN_H6:
+ case BMCOMP_NMAJMIN_H7:
+ case BMCOMP_NMAJMIN_H8:
drawStripHE(dst, dstPitch, src, 8, numLinesToProcess, false);
break;
- case 143: // Triggered by Russian water
- case 144:
- case 145:
- case 146:
- case 147:
- case 148:
+ case BMCOMP_CUSTOM_RU_TR: // Triggered by Russian water
+ case BMCOMP_NMAJMIN_HT4:
+ case BMCOMP_NMAJMIN_HT5:
+ case BMCOMP_NMAJMIN_HT6:
+ case BMCOMP_NMAJMIN_HT7:
+ case BMCOMP_NMAJMIN_HT8:
transpStrip = true;
drawStripHE(dst, dstPitch, src, 8, numLinesToProcess, true);
break;
- case 149:
+ case BMCOMP_TPIX256:
drawStripRaw(dst, dstPitch, src, numLinesToProcess, true);
break;
diff --git a/engines/scumm/gfx.h b/engines/scumm/gfx.h
index 3243f46e49e..4b139e213c1 100644
--- a/engines/scumm/gfx.h
+++ b/engines/scumm/gfx.h
@@ -31,6 +31,97 @@ namespace Scumm {
class ScummEngine;
+/*
+ * Bitmap compression algorithm labels
+ */
+
+#define BMCOMP_RAW256 1 // Raw pixels
+#define BMCOMP_TOWNS_2 2
+#define BMCOMP_TOWNS_3 3
+#define BMCOMP_TOWNS_4 4
+#define BMCOMP_TOWNS_7 7
+#define BMCOMP_TRLE8BIT 8
+#define BMCOMP_RLE8BIT 9
+
+#define BMCOMP_PIX32 10 // Amiga 16/32 color compression
+
+#define BMCOMP_ZIGZAG_V0 10 // Vertical
+#define BMCOMP_ZIGZAG_V4 14
+#define BMCOMP_ZIGZAG_V5 15
+#define BMCOMP_ZIGZAG_V6 16
+#define BMCOMP_ZIGZAG_V7 17
+#define BMCOMP_ZIGZAG_V8 18
+
+#define BMCOMP_ZIGZAG_H0 20 // Horizontal
+#define BMCOMP_ZIGZAG_H4 24
+#define BMCOMP_ZIGZAG_H5 25
+#define BMCOMP_ZIGZAG_H6 26
+#define BMCOMP_ZIGZAG_H7 27
+#define BMCOMP_ZIGZAG_H8 28
+
+#define BMCOMP_ZIGZAG_VT0 30 // Vertical with transparency
+#define BMCOMP_ZIGZAG_VT4 34
+#define BMCOMP_ZIGZAG_VT5 35
+#define BMCOMP_ZIGZAG_VT6 36
+#define BMCOMP_ZIGZAG_VT7 37
+#define BMCOMP_ZIGZAG_VT8 38
+
+#define BMCOMP_ZIGZAG_HT0 40 // Horizontal with transparency
+#define BMCOMP_ZIGZAG_HT4 44
+#define BMCOMP_ZIGZAG_HT5 45
+#define BMCOMP_ZIGZAG_HT6 46
+#define BMCOMP_ZIGZAG_HT7 47
+#define BMCOMP_ZIGZAG_HT8 48
+
+#define BMCOMP_MAJMIN_H0 60 // Major-Minor jump algorithm (-4 to +3)
+#define BMCOMP_MAJMIN_H4 64
+#define BMCOMP_MAJMIN_H5 65
+#define BMCOMP_MAJMIN_H6 66
+#define BMCOMP_MAJMIN_H7 67
+#define BMCOMP_MAJMIN_H8 68
+
+#define BMCOMP_MAJMIN_HT0 80 // Major-Minor jump algorithm (-4 to +3, with transparency)
+#define BMCOMP_MAJMIN_HT4 84
+#define BMCOMP_MAJMIN_HT5 85
+#define BMCOMP_MAJMIN_HT6 86
+#define BMCOMP_MAJMIN_HT7 87
+#define BMCOMP_MAJMIN_HT8 88
+
+#define BMCOMP_RMAJMIN_H0 100 // Run Major-Minor jump algorithm (-4 to +3)
+#define BMCOMP_RMAJMIN_H4 104
+#define BMCOMP_RMAJMIN_H5 105
+#define BMCOMP_RMAJMIN_H6 106
+#define BMCOMP_RMAJMIN_H7 107
+#define BMCOMP_RMAJMIN_H8 108
+
+#define BMCOMP_RMAJMIN_HT0 120 // Run Major-Minor jump algorithm (-4 to +3, with transparency)
+#define BMCOMP_RMAJMIN_HT4 124
+#define BMCOMP_RMAJMIN_HT5 125
+#define BMCOMP_RMAJMIN_HT6 126
+#define BMCOMP_RMAJMIN_HT7 127
+#define BMCOMP_RMAJMIN_HT8 128
+
+#define BMCOMP_NMAJMIN_H0 130 // New Major-Minor jump algorithm (-4 to +4)
+#define BMCOMP_NMAJMIN_H4 134
+#define BMCOMP_NMAJMIN_H5 135
+#define BMCOMP_NMAJMIN_H6 136
+#define BMCOMP_NMAJMIN_H7 137
+#define BMCOMP_NMAJMIN_H8 138
+
+#define BMCOMP_NMAJMIN_HT0 140 // New Major-Minor jump algorithm (-4 to +4, with transparency)
+#define BMCOMP_NMAJMIN_HT4 144
+#define BMCOMP_NMAJMIN_HT5 145
+#define BMCOMP_NMAJMIN_HT6 146
+#define BMCOMP_NMAJMIN_HT7 147
+#define BMCOMP_NMAJMIN_HT8 148
+
+#define BMCOMP_TPIX256 149 // Transparent raw pixels
+
+#define BMCOMP_SOLID_COLOR_FILL 150
+
+#define BMCOMP_CUSTOM_RU_TR 143
+
+
enum HerculesDimensions {
kHercWidth = 720,
kHercHeight = 350
More information about the Scummvm-git-logs
mailing list