comparison tools/lib64fmts.c @ 1979:5fc3da6061be

Add support for Face Painter format (unpacked).
author Matti Hamalainen <ccr@tnsp.org>
date Sun, 01 Jul 2018 03:55:22 +0300
parents c30dfd5e3227
children 2cf79254b8e4
comparison
equal deleted inserted replaced
1978:cd5643794195 1979:5fc3da6061be
949 // XXX TODO: Perhaps count statistics about used byte values 949 // XXX TODO: Perhaps count statistics about used byte values
950 // and compare to value in buf[2] which is the RLE marker 950 // and compare to value in buf[2] which is the RLE marker
951 if (buf->len < 128 || 951 if (buf->len < 128 ||
952 !dmCompareAddr16(buf, 0, fmt->addr) || 952 !dmCompareAddr16(buf, 0, fmt->addr) ||
953 // Try to avoid misprobe of Crest Hires FLI Designer and Cosmos Design format 953 // Try to avoid misprobe of Crest Hires FLI Designer and Cosmos Design format
954 buf->len == 16386 || buf->len == 16385) 954 buf->len == 16386 || buf->len == 16385 ||
955 // Face Painter
956 buf->len == 10004)
955 return DM_PROBE_SCORE_FALSE; 957 return DM_PROBE_SCORE_FALSE;
956 958
957 for (n = 0, i = 3; i < buf->len; i++) 959 for (n = 0, i = 3; i < buf->len; i++)
958 if (buf->data[i] == buf->data[2]) n++; 960 if (buf->data[i] == buf->data[2]) n++;
959 961
1695 fmtDecodeECIPacked, fmtEncodeECIPacked, 1697 fmtDecodeECIPacked, fmtEncodeECIPacked,
1696 { }, &dmC64CommonFormats[7] 1698 { }, &dmC64CommonFormats[7]
1697 }, 1699 },
1698 1700
1699 { 1701 {
1702 "fpt", "Face Painter (unpacked)", 0x4000, 10004, DM_FMT_RDWR,
1703 NULL,
1704 NULL, NULL,
1705 { // Almost same layout as Koala Painter, but FPT has D020
1706 D64_FMT_MC,
1707 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1708 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1709 NULL, NULL,
1710 NULL,
1711 {
1712 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1713 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL },
1714 { DO_COPY , DS_COLOR_RAM , 0x2328, 0, 0, 0, NULL, NULL },
1715 { DO_SET_MEM_LO , DS_BGCOL , 0x2710, 0, 0, 0, NULL, NULL },
1716 { DO_SET_MEM_LO , DS_D020 , 0x2711, 0, 0, 0, NULL, NULL },
1717 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL },
1718 }
1719 },
1720 NULL
1721 },
1722
1723 {
1700 "xx1", "Unknown $2000 format (unpacked)", 0x2000, 10242, DM_FMT_RDWR, 1724 "xx1", "Unknown $2000 format (unpacked)", 0x2000, 10242, DM_FMT_RDWR,
1701 NULL, 1725 NULL,
1702 NULL, NULL, 1726 NULL, NULL,
1703 { 1727 {
1704 D64_FMT_MC, 1728 D64_FMT_MC,