diff options
Diffstat (limited to 'engines/sci/console.cpp')
-rw-r--r-- | engines/sci/console.cpp | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/engines/sci/console.cpp b/engines/sci/console.cpp index cfbc2f3a34..f1bb8d3e7f 100644 --- a/engines/sci/console.cpp +++ b/engines/sci/console.cpp @@ -2213,12 +2213,27 @@ bool Console::segmentInfo(int nr) { break; #ifdef ENABLE_SCI32 - case SEG_TYPE_ARRAY: + case SEG_TYPE_ARRAY: { + ArrayTable &table = *(ArrayTable *)mobj; debugPrintf("SCI32 arrays\n"); + for (uint i = 0; i < table.size(); ++i) { + if (table.isValidEntry(i)) { + debugPrintf(" [%04x] %s\n", i, table[i].toDebugString().c_str()); + } + } break; - case SEG_TYPE_BITMAP: - debugPrintf("SCI32 bitmaps\n"); + } + + case SEG_TYPE_BITMAP: { + BitmapTable &table = *(BitmapTable *)mobj; + debugPrintf("SCI32 bitmaps (total %d)\n", table.entries_used); + for (uint i = 0; i < table.size(); ++i) { + if (table.isValidEntry(i)) { + debugPrintf(" [%04x] %s\n", i, table[i].toString().c_str()); + } + } break; + } #endif default : @@ -4663,13 +4678,7 @@ void Console::printBitmap(reg_t reg) { const SciBitmap &bitmap = table->at(reg.getOffset()); - debugPrintf("SCI32 bitmap (%dx%d; res %dx%d; origin %dx%d; skip color %u; %s; %s):\n", - bitmap.getWidth(), bitmap.getHeight(), - bitmap.getXResolution(), bitmap.getYResolution(), - bitmap.getOrigin().x, bitmap.getOrigin().y, - bitmap.getSkipColor(), - bitmap.getRemap() ? "remap" : "no remap", - bitmap.getShouldGC() ? "GC" : "no GC"); + debugPrintf("SCI32 bitmap (%s):\n", bitmap.toString().c_str()); Common::hexdump((const byte *) bitmap.getRawData(), bitmap.getRawSize(), 16, 0); } |