Menu

#107 CPC: Support for ConvImgCPC images

None
accepted
CPC (3)
5
2026-04-26
2025-05-25
SD Snatcher
No

Please add suport for Amstrad CPC images saved with the ConvImgCPC formats: SCR and CMP.

Binaries and source code for the ConvImgCPC can be found here.

I attached some sample files with their respective reference renderings.

1 Attachments

Discussion

  • Piotr Fusik

    Piotr Fusik - 2025-05-27
    • status: open --> accepted
    • assigned_to: Piotr Fusik
    • Group: -->
     
  • Piotr Fusik

    Piotr Fusik - 2025-05-27

    The single SCR example is regular mode 0 with an embedded palette. Do you have examples for mode 1, mode 2, overscan, EGX modes, "CPC plus"?

    The compressed formats need more work because apparently there are four compression algorithms. While I'm familiar with ZX0, adding all four will take some time.

     

    Last edit: Piotr Fusik 2025-05-27
    • SD Snatcher

      SD Snatcher - 2025-05-31

      Here are some more mode1 examples.

       
    • SD Snatcher

      SD Snatcher - 2025-05-31

      Here are some mode2 examples.

       

      Last edit: SD Snatcher 2025-05-31
    • SD Snatcher

      SD Snatcher - 2025-05-31

      Here are some mode0 overscan examples.

       
    • SD Snatcher

      SD Snatcher - 2025-05-31

      I couldn't find any modeX, egx1 and egx2 sample images, so I resorted to some stinky conversions.

       
    • SD Snatcher

      SD Snatcher - 2025-06-19

      The compressed formats need more work because apparently there are four compression algorithms. While I'm familiar with ZX0, adding all four will take some time.

      Can you place add support for ZX0 then? This way at least one algorithm would be supported.

       
    • SD Snatcher

      SD Snatcher - 2026-04-26

      The single SCR example is regular mode 0 with an embedded palette

      I found many other problematic uncompressed (raw) mode0 SCR files with embedded palettes that RECOIL can't read. Attached them here, with their respective reference renderings.

       

      Last edit: SD Snatcher 2026-04-26
  • Piotr Fusik

    Piotr Fusik - 2025-06-01

    Implemented modes 1 and 2 and both EGX modes.

    Questions:

    1. At what offset is the per-line palette in Mode X files? I couldn't figure it out from SauveImage.cs
    2. 16000-byte mode 1 files have no room for the palette
    3. What are 32 KB files? Alternating frames?
    4. Why are overscan files smaller than expected? (e.g. rs2.scr is <24 KB, expected 96*270=26 KB)
     
    • SD Snatcher

      SD Snatcher - 2025-06-02

      I'm trully sorry, I don't have almost any CPC experience, so I can't answer these questions.

      Maybe you could try to contact the ConvImgCPC authors on its Github project?
      https://github.com/DemoniakLudo/ConvImgCpc)

       
    • SD Snatcher

      SD Snatcher - 2025-06-02

      Implemented modes 1 and 2 and both EGX modes.

      Thanks!

      I tried to test it on the web version, but sadly the files couldn't load yet.

       
      • Piotr Fusik

        Piotr Fusik - 2025-06-02

        I didn't update the web app yesterday. Updated now.

         
        • SD Snatcher

          SD Snatcher - 2025-06-02

          Just tested it.

          The following mode1 images were decoded incorrectly as garbage, with the file type detected as "Electronika MC 0515, 640x200", or just have thrown a "decoding error":

          • casanova2.scr
          • dark_sceptre.scr
          • hudson_hawk.scr
          • panic_dissy.scr
          • toi_acid_game-bis.scr
           
    • SD Snatcher

      SD Snatcher - 2025-06-19

      (deleted incorrect comment)

       

      Last edit: SD Snatcher 2025-06-19
  • Piotr Fusik

    Piotr Fusik - 2025-06-03

    dark_sceptre.scr is smaller than expected (7972 bytes). Perhaps compressed?
    The other files are 16000 bytes that I asked about. Now I see these are 192 and not 200 lines - I'll handle that.

     

    Last edit: Piotr Fusik 2025-06-03
    • SD Snatcher

      SD Snatcher - 2025-06-03

      dark_sceptre.scr is smaller than expected (7972 bytes). Perhaps compressed?

      I attached another version of dark_sceptre.scr that seems to work fine.

      The other files are 16000 bytes that I asked about. Now I see these are 192 and not 200 lines - I'll handle that.

      Their resolution is 256x192 instead of 320x200. This is why the file is smaller.

       
  • Piotr Fusik

    Piotr Fusik - 2025-07-03

    I added support for 16000-byte 256x192 mode 1 files.
    Also 16000-byte mode 0, mode 2 and EGX1 because it was straightforward, but I have no test files and I don't know if these variants are possible?

    Maybe you could try to contact the ConvImgCPC authors on its Github project?

    Emailed last week - no response yet.

     

Log in to post a comment.

MongoDB Logo MongoDB