[Scummvm-tracker] [ScummVM :: Bugs] #12585: PSP: Pixel Format RGBA8888 at 4 is not supported
ScummVM :: Bugs
trac at scummvm.org
Sun May 23 21:16:56 UTC 2021
#12585: PSP: Pixel Format RGBA8888 at 4 is not supported
--------------------------+-----------------------
Reporter: lolbot-iichan | Owner: (none)
Type: defect | Status: new
Priority: high | Component: Port: PSP
Version: | Keywords:
Game: Wintermute |
--------------------------+-----------------------
NOTE:
RGBA8888 at 4 is Graphics::PixelFormat(4, 8, 8, 8, 8, 24, 16, 8, 0)
It's explicitly used at various engines: Full Pipe, Gnap (little endian),
Griffon, Groovie 2, SCI32 (HQ videos), Sludge, Sword25, Ultima 8,
Wintermute
TESTCASE 1:
1. Download nightly build (e.g.
https://buildbot.scummvm.org/snapshots/master/psp-master-01e08d5c.tar.xz)
2. Unpack it to ms0:/PSP/GAME/ folder
3. Download a Wintermute game (e.g. Chivalry is Not Dead,
http://games.squinky.me/downloads/chivalry/chivalry.zip)
4. Add this game and start it
EXPECTED RESULT:
Game starts
ACTUAL RESULT:
PSP becomes unresponsible and crashes
LOGS:
ms0:/PSP/GAME/psp-master-01e08d5c/SCUMMTRACE.TXT file is created with
several lines:
{{{
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): Unknown Scummvm pixel format.
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): rLoss[0], gLoss[0], bLoss[0], aLoss[0]
rShift[24], gShift[16], bShift[8], aShift[0]
Error in void Buffer::setPixelFormat(PSPPixelFormat::Type, bool):
Unhandled buffer format[7]
Error in void PSPPixelFormat::set(PSPPixelFormat::Type, bool): Unhandled
value of pixel type[7]
Error in void Palette::setPixelFormats(PSPPixelFormat::Type,
PSPPixelFormat::Type, bool): Unhandled bufferType[7]
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): Unknown Scummvm pixel format.
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): rLoss[0], gLoss[0], bLoss[0], aLoss[0]
rShift[24], gShift[16], bShift[8], aShift[0]
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): Unknown Scummvm pixel format.
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): rLoss[0], gLoss[0], bLoss[0], aLoss[0]
rShift[24], gShift[16], bShift[8], aShift[0]
Error in void Buffer::setPixelFormat(PSPPixelFormat::Type, bool):
Unhandled buffer format[7]
Error in void PSPPixelFormat::set(PSPPixelFormat::Type, bool): Unhandled
value of pixel type[7]
Error in void Palette::setPixelFormats(PSPPixelFormat::Type,
PSPPixelFormat::Type, bool): Unhandled bufferType[7]
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): Unknown Scummvm pixel format.
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): rLoss[0], gLoss[0], bLoss[0], aLoss[0]
rShift[24], gShift[16], bShift[8], aShift[0]
}}}
TESTCASE 2:
1. Download nightly build (e.g.
https://buildbot.scummvm.org/snapshots/master/psp-master-01e08d5c.tar.xz)
2. Unpack it to ms0:/PSP/GAME/ folder
3. Download the Testbed files (scummvm/dists/engine-data/testbed-audiocd-
files/ folder)
4. Add Testbed as a game and start it
5. Customize the testsuite list to run "Graphics Subsystem" tests
6. Run all the tests
EXPECTED RESULT:
All the tests runs correctly
ACTUAL RESULT:
There are 2 tests dedicated to Pixel Formats.
First one shows Pixel Formats provided by backend. They are all fine.
Second one shows Pixel Formats explicitly requested for some engines. This
test fails for "RGBA8888 at 4" format.
ScummVM displays garbade and becomes unusable.
However, it does not hangs which may be more useful (or less useful) for
debugging.
LOGS:
ms0:/PSP/GAME/psp-master-01e08d5c/SCUMMTRACE.TXT file is created with
several lines:
{{{
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): Unknown Scummvm pixel format.
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): rLoss[0], gLoss[0], bLoss[0], aLoss[0]
rShift[24], gShift[16], bShift[8], aShift[0]
Error in void Buffer::setPixelFormat(PSPPixelFormat::Type, bool):
Unhandled buffer format[7]
Error in void PSPPixelFormat::set(PSPPixelFormat::Type, bool): Unhandled
value of pixel type[7]
Error in void Palette::setPixelFormats(PSPPixelFormat::Type,
PSPPixelFormat::Type, bool): Unhandled bufferType[7]
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): Unknown Scummvm pixel format.
Error in static void PSPPixelFormat::convertFromScummvmPixelFormat(const
Graphics::PixelFormat*, PSPPixelFormat::Type&, PSPPixelFormat::Type&,
bool&): rLoss[0], gLoss[0], bLoss[0], aLoss[0]
rShift[24], gShift[16], bShift[8], aShift[0]
Error in uint32 PSPPixelFormat::swapRedBlue32(uint32) const: invalid
format[7] for swapping
Error in uint32 PSPPixelFormat::swapRedBlue32(uint32) const: invalid
format[7] for swapping
Error in uint32 PSPPixelFormat::swapRedBlue32(uint32) const: invalid
format[7] for swapping
Error in uint32 PSPPixelFormat::swapRedBlue32(uint32) const: invalid
format[7] for swapping
Error in uint32 PSPPixelFormat::swapRedBlue32(uint32) const: invalid
format[7] for swapping
Error in uint32 PSPPixelFormat::swapRedBlue32(uint32) const: invalid
format[7] for swapping
Error in uint32 PSPPixelFormat::swapRedBlue32(uint32) const: invalid
format[7] for swapping
Error in uint32 PSPPixelFormat::swapRedBlue32(uint32) const: invalid
format[7] for swapping
Error in uint32 PSPPixelFormat::swapRedBlue32(uint32) const: invalid
format[7] for swapping
}}}
--
Ticket URL: <https://bugs.scummvm.org/ticket/12585>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list