comparison tools/lib64fmts.c @ 2056:c27ed6465022

Add pixel aspect ratio information for C64 formats. Not used yet.
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 04 Dec 2018 15:31:13 +0200
parents cf966e66c9af
children 7e4087e2740d
comparison
equal deleted inserted replaced
2055:6c6a4ea67540 2056:c27ed6465022
1108 { 1108 {
1109 { // #0: Koala Painter type memory layout 1109 { // #0: Koala Painter type memory layout
1110 D64_FMT_MC, 1110 D64_FMT_MC,
1111 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1111 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1112 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1112 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1113 2, 1,
1113 NULL, NULL, 1114 NULL, NULL,
1114 NULL, 1115 NULL,
1115 { 1116 {
1116 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1117 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1117 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL }, 1118 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL },
1123 1124
1124 { // #1: Black Mail FLI Graph 1125 { // #1: Black Mail FLI Graph
1125 D64_FMT_MC | D64_FMT_FLI, 1126 D64_FMT_MC | D64_FMT_FLI,
1126 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1127 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1127 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1128 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1129 2, 1,
1128 NULL, NULL, 1130 NULL, NULL,
1129 fmtGetPixelBlackMailFLI, 1131 fmtGetPixelBlackMailFLI,
1130 { 1132 {
1131 { DO_COPY , DS_EXTRA_DATA , 0x0000, 0, 200, 0, NULL, NULL }, 1133 { DO_COPY , DS_EXTRA_DATA , 0x0000, 0, 200, 0, NULL, NULL },
1132 { DO_COPY , DS_COLOR_RAM , 0x0100, 0, 0, 0, NULL, NULL }, 1134 { DO_COPY , DS_COLOR_RAM , 0x0100, 0, 0, 0, NULL, NULL },
1138 1140
1139 { // #2: Art Studio etc. Hires 1141 { // #2: Art Studio etc. Hires
1140 D64_FMT_HIRES, 1142 D64_FMT_HIRES,
1141 C64_SCR_WIDTH , C64_SCR_HEIGHT, 1143 C64_SCR_WIDTH , C64_SCR_HEIGHT,
1142 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1144 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1145 1, 1,
1143 NULL, NULL, 1146 NULL, NULL,
1144 NULL, 1147 NULL,
1145 { 1148 {
1146 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1149 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1147 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL }, 1150 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL },
1151 1154
1152 { // #3: FunPaint II 1155 { // #3: FunPaint II
1153 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, 1156 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE,
1154 C64_SCR_WIDTH, C64_SCR_HEIGHT, 1157 C64_SCR_WIDTH, C64_SCR_HEIGHT,
1155 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1158 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1159 1, 1,
1156 NULL, NULL, 1160 NULL, NULL,
1157 fmtGetPixelFunPaint2, 1161 fmtGetPixelFunPaint2,
1158 { 1162 {
1159 DEF_SCREEN_RAMS_8(0x0000, 0, 0x400, 0), 1163 DEF_SCREEN_RAMS_8(0x0000, 0, 0x400, 0),
1160 { DO_COPY , DS_BITMAP_RAM , 0x2000, 0, 0 , 0, NULL, NULL }, 1164 { DO_COPY , DS_BITMAP_RAM , 0x2000, 0, 0 , 0, NULL, NULL },
1170 1174
1171 { // #4: DrazPaint 1.x & 2 1175 { // #4: DrazPaint 1.x & 2
1172 D64_FMT_MC, 1176 D64_FMT_MC,
1173 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1177 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1174 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1178 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1179 2, 1,
1175 NULL, NULL, 1180 NULL, NULL,
1176 NULL, 1181 NULL,
1177 { 1182 {
1178 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1183 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1179 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, 0, NULL, NULL }, 1184 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, 0, NULL, NULL },
1185 1190
1186 { // #5: DrazLace 1.0 1191 { // #5: DrazLace 1.0
1187 D64_FMT_MC | D64_FMT_ILACE, 1192 D64_FMT_MC | D64_FMT_ILACE,
1188 C64_SCR_WIDTH , C64_SCR_HEIGHT, 1193 C64_SCR_WIDTH , C64_SCR_HEIGHT,
1189 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1194 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1195 1, 1,
1190 NULL, NULL, 1196 NULL, NULL,
1191 NULL, 1197 NULL,
1192 { 1198 {
1193 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1199 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1194 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, 0, NULL, NULL }, 1200 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, 0, NULL, NULL },
1202 1208
1203 { // #6: TruePaint 1209 { // #6: TruePaint
1204 D64_FMT_MC | D64_FMT_ILACE, 1210 D64_FMT_MC | D64_FMT_ILACE,
1205 C64_SCR_WIDTH , C64_SCR_HEIGHT, 1211 C64_SCR_WIDTH , C64_SCR_HEIGHT,
1206 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1212 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1213 1, 1,
1207 NULL, NULL, 1214 NULL, NULL,
1208 fmtGetPixelTruePaint, 1215 fmtGetPixelTruePaint,
1209 { 1216 {
1210 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1217 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1211 { DO_SET_MEM_LO , DS_BGCOL , 0x03e8, 0, 0, 0, NULL, NULL }, 1218 { DO_SET_MEM_LO , DS_BGCOL , 0x03e8, 0, 0, 0, NULL, NULL },
1220 1227
1221 { // #7: ECI Graphic Editor Hires FLI 1228 { // #7: ECI Graphic Editor Hires FLI
1222 D64_FMT_HIRES | D64_FMT_FLI, 1229 D64_FMT_HIRES | D64_FMT_FLI,
1223 C64_SCR_WIDTH, C64_SCR_HEIGHT, 1230 C64_SCR_WIDTH, C64_SCR_HEIGHT,
1224 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1231 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1232 1, 1,
1225 fmtConvertECIBMP2Image, NULL, 1233 fmtConvertECIBMP2Image, NULL,
1226 fmtGetPixelECI, 1234 fmtGetPixelECI,
1227 { 1235 {
1228 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1236 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1229 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400, 0), 1237 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400, 0),
1236 1244
1237 { // #8: Cosmos Designs Hires Manager 1245 { // #8: Cosmos Designs Hires Manager
1238 D64_FMT_HIRES | D64_FMT_FLI, 1246 D64_FMT_HIRES | D64_FMT_FLI,
1239 C64_SCR_WIDTH, 24*8, // Actually 296 x 192 (=24*8) 1247 C64_SCR_WIDTH, 24*8, // Actually 296 x 192 (=24*8)
1240 C64_SCR_CH_WIDTH, 24, 1248 C64_SCR_CH_WIDTH, 24,
1249 1, 1,
1241 NULL, NULL, 1250 NULL, NULL,
1242 fmtGetPixelCrestHIFLIorCDHM, 1251 fmtGetPixelCrestHIFLIorCDHM,
1243 { 1252 {
1244 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1253 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1245 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400, 0), 1254 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400, 0),
1249 1258
1250 { // #9: FBI Crew FLI Designer 1.x & 2.0 1259 { // #9: FBI Crew FLI Designer 1.x & 2.0
1251 D64_FMT_MC | D64_FMT_FLI, 1260 D64_FMT_MC | D64_FMT_FLI,
1252 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1261 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1253 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1262 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1263 2, 1,
1254 NULL, NULL, 1264 NULL, NULL,
1255 fmtGetPixelFLIDesigner, 1265 fmtGetPixelFLIDesigner,
1256 { 1266 {
1257 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1267 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1258 DEF_SCREEN_RAMS_8(0x0400, 0, 0x400, 0), 1268 DEF_SCREEN_RAMS_8(0x0400, 0, 0x400, 0),
1263 1273
1264 { // #10: Doodle 1274 { // #10: Doodle
1265 D64_FMT_HIRES, 1275 D64_FMT_HIRES,
1266 C64_SCR_WIDTH , C64_SCR_HEIGHT, 1276 C64_SCR_WIDTH , C64_SCR_HEIGHT,
1267 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1277 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1278 1, 1,
1268 NULL, NULL, 1279 NULL, NULL,
1269 NULL, 1280 NULL,
1270 { 1281 {
1271 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1282 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1272 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL }, 1283 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL },
1322 NULL, NULL, 1333 NULL, NULL,
1323 { 1334 {
1324 D64_FMT_MC, 1335 D64_FMT_MC,
1325 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1336 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1326 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1337 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1338 2, 1,
1327 NULL, NULL, 1339 NULL, NULL,
1328 NULL, 1340 NULL,
1329 { 1341 {
1330 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1342 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1331 { DO_SET_MEM_LO , DS_BGCOL , 0x07e8, 0, 0, 0, NULL, NULL }, 1343 { DO_SET_MEM_LO , DS_BGCOL , 0x07e8, 0, 0, 0, NULL, NULL },
1343 NULL, NULL, 1355 NULL, NULL,
1344 { 1356 {
1345 D64_FMT_MC, 1357 D64_FMT_MC,
1346 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1358 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1347 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1359 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1360 2, 1,
1348 NULL, NULL, 1361 NULL, NULL,
1349 NULL, 1362 NULL,
1350 { 1363 {
1351 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1364 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1352 { DO_SET_MEM_LO , DS_BGCOL , 0x07fe, 0, 0, 0, NULL, NULL }, 1365 { DO_SET_MEM_LO , DS_BGCOL , 0x07fe, 0, 0, 0, NULL, NULL },
1392 NULL, NULL, 1405 NULL, NULL,
1393 { 1406 {
1394 D64_FMT_MC, 1407 D64_FMT_MC,
1395 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1408 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1396 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1409 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1410 2, 1,
1397 NULL, NULL, 1411 NULL, NULL,
1398 NULL, 1412 NULL,
1399 { 1413 {
1400 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1414 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1401 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL }, 1415 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL },
1414 NULL, NULL, 1428 NULL, NULL,
1415 { 1429 {
1416 D64_FMT_MC, 1430 D64_FMT_MC,
1417 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1431 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1418 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1432 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1433 2, 1,
1419 NULL, NULL, 1434 NULL, NULL,
1420 NULL, 1435 NULL,
1421 { 1436 {
1422 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1437 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1423 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL }, 1438 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL },
1435 NULL, NULL, 1450 NULL, NULL,
1436 { 1451 {
1437 D64_FMT_MC, 1452 D64_FMT_MC,
1438 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1453 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1439 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1454 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1455 2, 1,
1440 NULL, NULL, 1456 NULL, NULL,
1441 NULL, 1457 NULL,
1442 { 1458 {
1443 { DO_COPY , DS_SCREEN_RAM , 20 + 0 , 0, 0, 0, NULL, NULL }, 1459 { DO_COPY , DS_SCREEN_RAM , 20 + 0 , 0, 0, 0, NULL, NULL },
1444 { DO_COPY , DS_COLOR_RAM , 20 + 1000 , 0, 0, 0, NULL, NULL }, 1460 { DO_COPY , DS_COLOR_RAM , 20 + 1000 , 0, 0, 0, NULL, NULL },
1458 NULL, NULL, 1474 NULL, NULL,
1459 { 1475 {
1460 D64_FMT_MC, 1476 D64_FMT_MC,
1461 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1477 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1462 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1478 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1479 2, 1,
1463 NULL, NULL, 1480 NULL, NULL,
1464 NULL, 1481 NULL,
1465 { 1482 {
1466 { DO_COPY , DS_BITMAP_RAM , 0x0000 + 0x111, 0, 0, 0, NULL, NULL }, 1483 { DO_COPY , DS_BITMAP_RAM , 0x0000 + 0x111, 0, 0, 0, NULL, NULL },
1467 { DO_COPY , DS_SCREEN_RAM , 0x1f40 + 0x111, 0, 0, 0, NULL, NULL }, 1484 { DO_COPY , DS_SCREEN_RAM , 0x1f40 + 0x111, 0, 0, 0, NULL, NULL },
1479 NULL, NULL, 1496 NULL, NULL,
1480 { 1497 {
1481 D64_FMT_MC, 1498 D64_FMT_MC,
1482 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1499 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1483 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1500 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1501 2, 1,
1484 NULL, NULL, 1502 NULL, NULL,
1485 NULL, 1503 NULL,
1486 { 1504 {
1487 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1505 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1488 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL }, 1506 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL },
1501 NULL, NULL, 1519 NULL, NULL,
1502 { 1520 {
1503 D64_FMT_MC, 1521 D64_FMT_MC,
1504 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1522 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1505 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1523 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1524 2, 1,
1506 NULL, NULL, 1525 NULL, NULL,
1507 NULL, 1526 NULL,
1508 { 1527 {
1509 { DO_COPY , DS_SCREEN_RAM , 0x7800 - 0x7800, 0, 0, 0, NULL, NULL }, 1528 { DO_COPY , DS_SCREEN_RAM , 0x7800 - 0x7800, 0, 0, 0, NULL, NULL },
1510 { DO_SET_MEM_LO , DS_BGCOL , 0x7bf0 - 0x7800, 0, 0, 0, NULL, NULL }, 1529 { DO_SET_MEM_LO , DS_BGCOL , 0x7bf0 - 0x7800, 0, 0, 0, NULL, NULL },
1522 NULL, NULL, 1541 NULL, NULL,
1523 { 1542 {
1524 D64_FMT_MC, 1543 D64_FMT_MC,
1525 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1544 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1526 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1545 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1546 2, 1,
1527 NULL, NULL, 1547 NULL, NULL,
1528 NULL, 1548 NULL,
1529 { 1549 {
1530 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1550 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1531 // Both d020 and bgcolor confirmed by tests 1551 // Both d020 and bgcolor confirmed by tests
1545 NULL, NULL, 1565 NULL, NULL,
1546 { 1566 {
1547 D64_FMT_MC, 1567 D64_FMT_MC,
1548 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1568 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1549 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1569 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1570 2, 1,
1550 NULL, NULL, 1571 NULL, NULL,
1551 NULL, 1572 NULL,
1552 { 1573 {
1553 { DO_COPY , DS_BITMAP_RAM , 0x4000 + 0x72 - 0x4000, 0, 0, 0, NULL, NULL }, 1574 { DO_COPY , DS_BITMAP_RAM , 0x4000 + 0x72 - 0x4000, 0, 0, 0, NULL, NULL },
1554 { DO_COPY , DS_SCREEN_RAM , 0x6000 + 0x72 - 0x4000, 0, 0, 0, NULL, NULL }, 1575 { DO_COPY , DS_SCREEN_RAM , 0x6000 + 0x72 - 0x4000, 0, 0, 0, NULL, NULL },
1567 NULL, NULL, 1588 NULL, NULL,
1568 { 1589 {
1569 D64_FMT_MC, 1590 D64_FMT_MC,
1570 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1591 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1571 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1592 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1593 2, 1,
1572 NULL, NULL, 1594 NULL, NULL,
1573 NULL, 1595 NULL,
1574 { 1596 {
1575 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1597 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1576 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, 0, NULL, NULL }, 1598 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, 0, NULL, NULL },
1638 NULL, NULL, 1660 NULL, NULL,
1639 { 1661 {
1640 D64_FMT_HIRES, 1662 D64_FMT_HIRES,
1641 C64_SCR_WIDTH , C64_SCR_HEIGHT, 1663 C64_SCR_WIDTH , C64_SCR_HEIGHT,
1642 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1664 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1665 1, 1,
1643 NULL, NULL, 1666 NULL, NULL,
1644 NULL, 1667 NULL,
1645 { 1668 {
1646 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1669 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1647 { DO_SET_OP , DS_SCREEN_RAM , 0xCF , 0, 0, 0, NULL, NULL }, 1670 { DO_SET_OP , DS_SCREEN_RAM , 0xCF , 0, 0, 0, NULL, NULL },
1658 NULL, NULL, 1681 NULL, NULL,
1659 { 1682 {
1660 D64_FMT_HIRES, 1683 D64_FMT_HIRES,
1661 C64_SCR_WIDTH , C64_SCR_HEIGHT, 1684 C64_SCR_WIDTH , C64_SCR_HEIGHT,
1662 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1685 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1686 1, 1,
1663 NULL, NULL, 1687 NULL, NULL,
1664 NULL, 1688 NULL,
1665 { 1689 {
1666 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1690 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1667 { DO_SET_OP , DS_SCREEN_RAM , 0xF0 , 0, 0, 0, NULL, NULL }, 1691 { DO_SET_OP , DS_SCREEN_RAM , 0xF0 , 0, 0, 0, NULL, NULL },
1677 NULL, NULL, 1701 NULL, NULL,
1678 { 1702 {
1679 D64_FMT_HIRES, 1703 D64_FMT_HIRES,
1680 C64_SCR_WIDTH , C64_SCR_HEIGHT, 1704 C64_SCR_WIDTH , C64_SCR_HEIGHT,
1681 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1705 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1706 1, 1,
1682 NULL, NULL, 1707 NULL, NULL,
1683 NULL, 1708 NULL,
1684 { 1709 {
1685 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1710 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1686 { DO_SET_OP , DS_SCREEN_RAM , 0x0F , 0, 0, 0, NULL, NULL }, 1711 { DO_SET_OP , DS_SCREEN_RAM , 0x0F , 0, 0, 0, NULL, NULL },
1696 NULL, NULL, 1721 NULL, NULL,
1697 { 1722 {
1698 D64_FMT_MC | D64_FMT_FLI, 1723 D64_FMT_MC | D64_FMT_FLI,
1699 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT * 2, 1724 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT * 2,
1700 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1725 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1726 2, 1,
1701 NULL, NULL, 1727 NULL, NULL,
1702 fmtGetPixelBFLI, 1728 fmtGetPixelBFLI,
1703 { 1729 {
1704 { DO_COPY , DS_COLOR_RAM , 0x0001, 0, 0x400 , 0, NULL, NULL }, 1730 { DO_COPY , DS_COLOR_RAM , 0x0001, 0, 0x400 , 0, NULL, NULL },
1705 DEF_SCREEN_RAMS_8(0x0401, 0, 0x400, 0), 1731 DEF_SCREEN_RAMS_8(0x0401, 0, 0x400, 0),
1760 NULL, NULL, 1786 NULL, NULL,
1761 { // Almost same layout as Koala Painter, but FPT has D020 1787 { // Almost same layout as Koala Painter, but FPT has D020
1762 D64_FMT_MC, 1788 D64_FMT_MC,
1763 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1789 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1764 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1790 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1791 2, 1,
1765 NULL, NULL, 1792 NULL, NULL,
1766 NULL, 1793 NULL,
1767 { 1794 {
1768 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1795 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1769 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL }, 1796 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL },
1782 NULL, NULL, 1809 NULL, NULL,
1783 { 1810 {
1784 D64_FMT_MC, 1811 D64_FMT_MC,
1785 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1812 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1786 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1813 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1814 2, 1,
1787 NULL, NULL, 1815 NULL, NULL,
1788 NULL, 1816 NULL,
1789 { 1817 {
1790 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1818 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1791 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, 0, NULL, NULL }, 1819 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, 0, NULL, NULL },
1803 fmtDecodeFormatXX2, NULL, 1831 fmtDecodeFormatXX2, NULL,
1804 { 1832 {
1805 D64_FMT_MC, 1833 D64_FMT_MC,
1806 XX2_WIDTH_CH * 4, XX2_HEIGHT_CH * 8, 1834 XX2_WIDTH_CH * 4, XX2_HEIGHT_CH * 8,
1807 XX2_WIDTH_CH , XX2_HEIGHT_CH, 1835 XX2_WIDTH_CH , XX2_HEIGHT_CH,
1836 2, 1,
1808 NULL, NULL, 1837 NULL, NULL,
1809 NULL, 1838 NULL,
1810 { 1839 {
1811 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, XX2_BSIZE, 0, NULL, NULL }, 1840 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, XX2_BSIZE, 0, NULL, NULL },
1812 { DO_COPY , DS_SCREEN_RAM , XX2_BSIZE, 0, XX2_SIZE, 0, NULL, NULL }, 1841 { DO_COPY , DS_SCREEN_RAM , XX2_BSIZE, 0, XX2_SIZE, 0, NULL, NULL },
1838 NULL, NULL, 1867 NULL, NULL,
1839 { 1868 {
1840 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, 1869 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE,
1841 C64_SCR_WIDTH, C64_SCR_HEIGHT, 1870 C64_SCR_WIDTH, C64_SCR_HEIGHT,
1842 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, 1871 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT,
1872 1, 1,
1843 NULL, NULL, 1873 NULL, NULL,
1844 fmtGetPixelFunPaint2, // The format is essentially same as FP2 1874 fmtGetPixelFunPaint2, // The format is essentially same as FP2
1845 { 1875 {
1846 DEF_SCREEN_RAMS_8(0x0000, 0, 0x400, 0), 1876 DEF_SCREEN_RAMS_8(0x0000, 0, 0x400, 0),
1847 { DO_COPY , DS_BITMAP_RAM , 0x2000, 0, 0 , 0, NULL, NULL }, 1877 { DO_COPY , DS_BITMAP_RAM , 0x2000, 0, 0 , 0, NULL, NULL },
1866 NULL, NULL, 1896 NULL, NULL,
1867 { 1897 {
1868 D64_FMT_MC | D64_FMT_FLI, 1898 D64_FMT_MC | D64_FMT_FLI,
1869 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, 1899 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT,
1870 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1900 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1901 2, 1,
1871 NULL, NULL, 1902 NULL, NULL,
1872 fmtGetPixelHCB, 1903 fmtGetPixelHCB,
1873 { 1904 {
1874 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1905 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1875 { DO_COPY , DS_COLOR_RAM , 0x0400, 1, 0, 0, NULL, NULL }, 1906 { DO_COPY , DS_COLOR_RAM , 0x0400, 1, 0, 0, NULL, NULL },
1889 NULL, NULL, 1920 NULL, NULL,
1890 { 1921 {
1891 D64_FMT_HIRES | D64_FMT_FLI, 1922 D64_FMT_HIRES | D64_FMT_FLI,
1892 192, C64_SCR_HEIGHT, 1923 192, C64_SCR_HEIGHT,
1893 24, C64_SCR_CH_HEIGHT, 1924 24, C64_SCR_CH_HEIGHT,
1925 2, 1,
1894 NULL, NULL, 1926 NULL, NULL,
1895 fmtGetPixelPentelPaint, 1927 fmtGetPixelPentelPaint,
1896 { 1928 {
1897 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1929 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1898 { DO_SET_OP , DS_SCREEN_RAM , 0x10 , 0, 0, 0, NULL, NULL }, 1930 { DO_SET_OP , DS_SCREEN_RAM , 0x10 , 0, 0, 0, NULL, NULL },
1912 NULL, NULL, 1944 NULL, NULL,
1913 { 1945 {
1914 D64_FMT_HIRES | D64_FMT_FLI, 1946 D64_FMT_HIRES | D64_FMT_FLI,
1915 C64_SCR_WIDTH, C64_SCR_HEIGHT, // Actually 296 x 112 (=14*8) 1947 C64_SCR_WIDTH, C64_SCR_HEIGHT, // Actually 296 x 112 (=14*8)
1916 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, 1948 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT,
1949 1, 1,
1917 NULL, NULL, 1950 NULL, NULL,
1918 fmtGetPixelCrestHIFLIorCDHM, 1951 fmtGetPixelCrestHIFLIorCDHM,
1919 { 1952 {
1920 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 1953 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL },
1921 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400, 0), 1954 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400, 0),