Uploaded image for project: 'Core ReactOS'
  1. Core ReactOS
  2. CORE-18084

Hoyle Games - Rendering issues on Win32ss's GDI32 bitmap



    • Bug
    • Resolution: Unresolved
    • Major
    • None
    • Win32SS


      ReactOS revision 20220303-0.4.15-GNU_8.4.0

      Application: Hoyle Card Games + Hoyle Puzzle and Board Games + Hoyle Blackjack.

      When operating to the gdi bitmap on screen with mouse hover, the bitmap blacks out or reports a incorrect part of the bitmap data, as shown in the attached screens.

      Moreover, if the game is unfocused, a light blue square will follow the cursor.  

      (drawing area and client area seems off)

      Resizing the windows, forcing a full refresh, would restore the correct result.The game renders in latest wine / linux fine so I didn't open a wine's bugreport.

      The video display is using VESA at 1280x1024.

      One note: the game renders only at 800x600 also in latest wine on GNU/linux so if the client area is larger than that 640x480, the game itself renders in the center square of the screen (as show in the Screen 1).

      The issue is more related on the incorrect bitmap rendering that the screen area.

      Relevant part of the debug log is found on bottom when interacting with the game:

      (win32ss/gdi/gdi32/objects/bitmap.c:752) SetDIBitsToDevice fail to read BitMapInfo: 009AA1F8 or Bits: 021A3EA0 & Size: 1920000

      (in the code it's linked to a memcpy to a Safe bitmap copy on the process'heap object but the heap allocation is fine - when uncommenting the exception catching, a read exception is thrown so the Bits's heap area size is lower than cjBmpScanSize at 734 on bitmap.c)

      (If a copy of the game is needed, contact me at me@simonelombardo.com or Mattermost)


        1. W2K3SP2_gdi32_SetDIBitsToDevice.png
          149 kB
        2. VirtualBox_ReactOS master_07_04_2022_17_54_12.png
          VirtualBox_ReactOS master_07_04_2022_17_54_12.png
          26 kB
        3. VirtualBox_ReactOS master_07_04_2022_17_53_57.png
          VirtualBox_ReactOS master_07_04_2022_17_53_57.png
          27 kB
        4. VirtualBox_ReactOS master_07_04_2022_17_52_30.png
          VirtualBox_ReactOS master_07_04_2022_17_52_30.png
          24 kB
        5. Test1.png
          574 kB
        6. Screen2.png
          730 kB
        7. Screen1.png
          519 kB
        8. ReactOS-15-4276-good.webm
          3.54 MB
        9. ReactOS-15-4276-bad.webm
          3.87 MB
        10. Hoyle_Card_Games_2012_without_PR5227_2.png
          226 kB
        11. Hoyle_Card_Games_2012_without_PR5227_1.png
          561 kB
        12. Hoyle_Card_Games_2012_with_PR5227_2.png
          264 kB
        13. Hoyle_Card_Games_2012_with_PR5227_1.png
          555 kB
        14. gdi32_bitmap_fix9.patch
          4 kB
        15. gdi32_bitmap_fix8.patch
          3 kB
        16. gdi32_bitmap_fix7.patch
          2 kB
        17. gdi32_bitmap_fix6.patch
          0.8 kB
        18. gdi32_bitmap_fix4.patch
          1 kB
        19. gdi32_bitmap_fix3.patch
          2 kB
        20. gdi32_bitmap_fix2.patch
          1 kB
        21. gdi32_bitmap_fix15.patch
          10 kB
        22. gdi32_bitmap_fix13.patch
          6 kB
        23. gdi32_bitmap_fix12.patch
          6 kB
        24. gdi32_bitmap_fix10.patch
          5 kB
        25. gdi32_bitmap_fix1.patch
          0.8 kB
        26. debug.log
          63 kB
        27. Comparision_Bridge.png
          896 kB

        Issue Links



              Unassigned Unassigned
              simonelombardo simonelombardo
              2 Vote for this issue
              7 Start watching this issue