[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