# HG changeset patch # User Matti Hamalainen # Date 1543930273 -7200 # Node ID c27ed6465022cb506c5d504f376fde1a11233ad6 # Parent 6c6a4ea6754031f7217c9611d97c00a0b02e4702 Add pixel aspect ratio information for C64 formats. Not used yet. diff -r 6c6a4ea67540 -r c27ed6465022 tools/lib64fmts.c --- a/tools/lib64fmts.c Tue Dec 04 10:33:06 2018 +0200 +++ b/tools/lib64fmts.c Tue Dec 04 15:31:13 2018 +0200 @@ -1110,6 +1110,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1125,6 +1126,7 @@ D64_FMT_MC | D64_FMT_FLI, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, fmtGetPixelBlackMailFLI, { @@ -1140,6 +1142,7 @@ D64_FMT_HIRES, C64_SCR_WIDTH , C64_SCR_HEIGHT, C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, NULL, { @@ -1153,6 +1156,7 @@ D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, C64_SCR_WIDTH, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, fmtGetPixelFunPaint2, { @@ -1172,6 +1176,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1187,6 +1192,7 @@ D64_FMT_MC | D64_FMT_ILACE, C64_SCR_WIDTH , C64_SCR_HEIGHT, C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, NULL, { @@ -1204,6 +1210,7 @@ D64_FMT_MC | D64_FMT_ILACE, C64_SCR_WIDTH , C64_SCR_HEIGHT, C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, fmtGetPixelTruePaint, { @@ -1222,6 +1229,7 @@ D64_FMT_HIRES | D64_FMT_FLI, C64_SCR_WIDTH, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 1, 1, fmtConvertECIBMP2Image, NULL, fmtGetPixelECI, { @@ -1238,6 +1246,7 @@ D64_FMT_HIRES | D64_FMT_FLI, C64_SCR_WIDTH, 24*8, // Actually 296 x 192 (=24*8) C64_SCR_CH_WIDTH, 24, + 1, 1, NULL, NULL, fmtGetPixelCrestHIFLIorCDHM, { @@ -1251,6 +1260,7 @@ D64_FMT_MC | D64_FMT_FLI, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, fmtGetPixelFLIDesigner, { @@ -1265,6 +1275,7 @@ D64_FMT_HIRES, C64_SCR_WIDTH , C64_SCR_HEIGHT, C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, NULL, { @@ -1324,6 +1335,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1345,6 +1357,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1394,6 +1407,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1416,6 +1430,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1437,6 +1452,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1460,6 +1476,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1481,6 +1498,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1503,6 +1521,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1524,6 +1543,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1547,6 +1567,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1569,6 +1590,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1640,6 +1662,7 @@ D64_FMT_HIRES, C64_SCR_WIDTH , C64_SCR_HEIGHT, C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, NULL, { @@ -1660,6 +1683,7 @@ D64_FMT_HIRES, C64_SCR_WIDTH , C64_SCR_HEIGHT, C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, NULL, { @@ -1679,6 +1703,7 @@ D64_FMT_HIRES, C64_SCR_WIDTH , C64_SCR_HEIGHT, C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, NULL, { @@ -1698,6 +1723,7 @@ D64_FMT_MC | D64_FMT_FLI, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT * 2, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, fmtGetPixelBFLI, { @@ -1762,6 +1788,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1784,6 +1811,7 @@ D64_FMT_MC, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, NULL, { @@ -1805,6 +1833,7 @@ D64_FMT_MC, XX2_WIDTH_CH * 4, XX2_HEIGHT_CH * 8, XX2_WIDTH_CH , XX2_HEIGHT_CH, + 2, 1, NULL, NULL, NULL, { @@ -1840,6 +1869,7 @@ D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, C64_SCR_WIDTH, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, fmtGetPixelFunPaint2, // The format is essentially same as FP2 { @@ -1868,6 +1898,7 @@ D64_FMT_MC | D64_FMT_FLI, C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, fmtGetPixelHCB, { @@ -1891,6 +1922,7 @@ D64_FMT_HIRES | D64_FMT_FLI, 192, C64_SCR_HEIGHT, 24, C64_SCR_CH_HEIGHT, + 2, 1, NULL, NULL, fmtGetPixelPentelPaint, { @@ -1914,6 +1946,7 @@ D64_FMT_HIRES | D64_FMT_FLI, C64_SCR_WIDTH, C64_SCR_HEIGHT, // Actually 296 x 112 (=14*8) C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, + 1, 1, NULL, NULL, fmtGetPixelCrestHIFLIorCDHM, { diff -r 6c6a4ea67540 -r c27ed6465022 tools/lib64gfx.h --- a/tools/lib64gfx.h Tue Dec 04 10:33:06 2018 +0200 +++ b/tools/lib64gfx.h Tue Dec 04 15:31:13 2018 +0200 @@ -202,7 +202,8 @@ { int type, // Type flags, see D64_FMT_* width, height, // Width and height in pixels - chWidth, chHeight; // Width and height in charblocks + chWidth, chHeight, // Width and height in charblocks + aspectX, aspectY; // Pixel aspectX/Y int (*convertFrom)(DMImage *, const DMC64Image *, const DMC64ImageFormat *fmt, const DMC64ImageConvSpec *spec); int (*convertTo)(DMC64Image *, const DMImage *, const DMC64ImageFormat *fmt, const DMC64ImageConvSpec *spec);