Mercurial > hg > dmlib
comparison tools/lib64gfx.c @ 924:732787cccca8
Add dimension (w/h) information fields to C64 image format struct.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 25 Feb 2015 15:23:09 +0200 |
parents | 0f477446448d |
children | 23b14d62bf67 |
comparison
equal
deleted
inserted
replaced
923:0f477446448d | 924:732787cccca8 |
---|---|
290 | 290 |
291 | 291 |
292 const DMC64ImageFormat dmC64ImageFormats[] = | 292 const DMC64ImageFormat dmC64ImageFormats[] = |
293 { | 293 { |
294 { | 294 { |
295 D64_FMT_MC, "d2p", "DrazPaint 2.0 (packed)", 0x5800, -1, | 295 D64_FMT_MC, "d2p", "DrazPaint 2.0 (packed)", 0x5800, 0, |
296 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
297 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
296 fmtProbeDrazPaint20Packed, fmtDecodeDrazPaintPacked, | 298 fmtProbeDrazPaint20Packed, fmtDecodeDrazPaintPacked, |
297 NULL, NULL, NULL, | 299 NULL, NULL, NULL, |
298 4, | 300 4, |
299 { | 301 { |
300 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, | 302 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, |
303 { DT_COLOR_REG, 0x2740, 0, DC_BGCOL, NULL, NULL }, | 305 { DT_COLOR_REG, 0x2740, 0, DC_BGCOL, NULL, NULL }, |
304 } | 306 } |
305 }, | 307 }, |
306 | 308 |
307 { | 309 { |
308 D64_FMT_MC | D64_FMT_ILACE, "dlp", "DrazLace 1.0 (packed)", 0x5800, -1, | 310 D64_FMT_MC | D64_FMT_ILACE, "dlp", "DrazLace 1.0 (packed)", 0x5800, 0, |
311 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
312 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
309 fmtProbeDrazLace10Packed, fmtDecodeDrazPaintPacked, | 313 fmtProbeDrazLace10Packed, fmtDecodeDrazPaintPacked, |
310 NULL, NULL, NULL, | 314 NULL, NULL, NULL, |
311 6, | 315 6, |
312 { | 316 { |
313 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, | 317 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, |
319 } | 323 } |
320 }, | 324 }, |
321 | 325 |
322 { | 326 { |
323 D64_FMT_MC, "drp", "DrazPaint (unpacked)", 0x5800, 10051, | 327 D64_FMT_MC, "drp", "DrazPaint (unpacked)", 0x5800, 10051, |
328 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
329 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
324 NULL, NULL, | 330 NULL, NULL, |
325 NULL, NULL, NULL, | 331 NULL, NULL, NULL, |
326 4, | 332 4, |
327 { | 333 { |
328 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, | 334 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, |
332 } | 338 } |
333 }, | 339 }, |
334 | 340 |
335 { | 341 { |
336 D64_FMT_MC | D64_FMT_ILACE, "drl", "DrazLace 1.0 (unpacked)", 0x5800, 18242, | 342 D64_FMT_MC | D64_FMT_ILACE, "drl", "DrazLace 1.0 (unpacked)", 0x5800, 18242, |
343 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
344 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
337 NULL, NULL, | 345 NULL, NULL, |
338 NULL, NULL, NULL, | 346 NULL, NULL, NULL, |
339 6, | 347 6, |
340 { | 348 { |
341 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, | 349 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, |
347 } | 355 } |
348 }, | 356 }, |
349 | 357 |
350 { | 358 { |
351 D64_FMT_MC | D64_FMT_ILACE, "mci", "Truepaint (unpacked)", 0x9c00, 19434, | 359 D64_FMT_MC | D64_FMT_ILACE, "mci", "Truepaint (unpacked)", 0x9c00, 19434, |
360 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
361 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
352 NULL, NULL, | 362 NULL, NULL, |
353 NULL, NULL, NULL, | 363 NULL, NULL, NULL, |
354 6, | 364 6, |
355 { | 365 { |
356 { DT_SCREEN_RAM, 0x0000, 0, 0, NULL, NULL }, | 366 { DT_SCREEN_RAM, 0x0000, 0, 0, NULL, NULL }, |
363 } | 373 } |
364 }, | 374 }, |
365 | 375 |
366 { | 376 { |
367 D64_FMT_MC, "kla", "Koala Paint (unpacked)", 0x6000, 10003, | 377 D64_FMT_MC, "kla", "Koala Paint (unpacked)", 0x6000, 10003, |
378 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
379 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
368 NULL, NULL, | 380 NULL, NULL, |
369 NULL, NULL, NULL, | 381 NULL, NULL, NULL, |
370 4, | 382 4, |
371 { | 383 { |
372 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, | 384 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, |
376 } | 388 } |
377 }, | 389 }, |
378 | 390 |
379 { | 391 { |
380 D64_FMT_MC, "ocp", "Advanced Art Studio (unpacked)", 0x2000, 10018, | 392 D64_FMT_MC, "ocp", "Advanced Art Studio (unpacked)", 0x2000, 10018, |
393 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
394 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
381 NULL, NULL, | 395 NULL, NULL, |
382 NULL, NULL, NULL, | 396 NULL, NULL, NULL, |
383 4, | 397 4, |
384 { | 398 { |
385 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, | 399 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, |
388 { DT_COLOR_REG, 0x2329, 0, DC_BGCOL, NULL, NULL }, | 402 { DT_COLOR_REG, 0x2329, 0, DC_BGCOL, NULL, NULL }, |
389 } | 403 } |
390 }, | 404 }, |
391 | 405 |
392 { | 406 { |
393 D64_FMT_MC, "ami", "Amica Paint (packed)", 0x4000, -1, | 407 D64_FMT_MC, "ami", "Amica Paint (packed)", 0x4000, 0, |
408 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
409 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
394 fmtProbeAmicaPaintPacked, fmtDecodeAmicaPaintPacked, | 410 fmtProbeAmicaPaintPacked, fmtDecodeAmicaPaintPacked, |
395 NULL, NULL, NULL, | 411 NULL, NULL, NULL, |
396 4, | 412 4, |
397 { | 413 { |
398 { DT_COLOR_RAM, 0x2328, 0, 0, NULL, NULL }, | 414 { DT_COLOR_RAM, 0x2328, 0, 0, NULL, NULL }, |
402 } | 418 } |
403 }, | 419 }, |
404 | 420 |
405 { | 421 { |
406 D64_FMT_MC, "rpm", "Run Paint (unpacked)", 0x6000, 10006, | 422 D64_FMT_MC, "rpm", "Run Paint (unpacked)", 0x6000, 10006, |
423 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
424 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
407 NULL, NULL, | 425 NULL, NULL, |
408 NULL, NULL, NULL, | 426 NULL, NULL, NULL, |
409 4, | 427 4, |
410 { | 428 { |
411 { DT_COLOR_RAM, 0x2328, 0, 0, NULL, NULL }, | 429 { DT_COLOR_RAM, 0x2328, 0, 0, NULL, NULL }, |
415 } | 433 } |
416 }, | 434 }, |
417 | 435 |
418 { | 436 { |
419 D64_FMT_HIRES, "art", "Art Studio (unpacked)", 0x2000, 9009, | 437 D64_FMT_HIRES, "art", "Art Studio (unpacked)", 0x2000, 9009, |
438 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
439 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
420 NULL, NULL, | 440 NULL, NULL, |
421 NULL, NULL, NULL, | 441 NULL, NULL, NULL, |
422 2, | 442 2, |
423 { | 443 { |
424 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, | 444 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, |
426 } | 446 } |
427 }, | 447 }, |
428 | 448 |
429 { | 449 { |
430 D64_FMT_HIRES, "iph", "Interpaint (unpacked)", 0x4000, 9002, | 450 D64_FMT_HIRES, "iph", "Interpaint (unpacked)", 0x4000, 9002, |
451 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
452 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
431 NULL, NULL, | 453 NULL, NULL, |
432 NULL, NULL, NULL, | 454 NULL, NULL, NULL, |
433 2, | 455 2, |
434 { | 456 { |
435 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, | 457 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, |
437 } | 459 } |
438 }, | 460 }, |
439 | 461 |
440 { | 462 { |
441 D64_FMT_HIRES, "dd", "Doodle (unpacked)", 0x1c00, 9218, | 463 D64_FMT_HIRES, "dd", "Doodle (unpacked)", 0x1c00, 9218, |
464 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
465 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
442 NULL, NULL, | 466 NULL, NULL, |
443 NULL, NULL, NULL, | 467 NULL, NULL, NULL, |
444 2, | 468 2, |
445 { | 469 { |
446 { DT_SCREEN_RAM, 0x0000, 0, 0, NULL, NULL }, | 470 { DT_SCREEN_RAM, 0x0000, 0, 0, NULL, NULL }, |
448 } | 472 } |
449 }, | 473 }, |
450 | 474 |
451 { | 475 { |
452 D64_FMT_MC | D64_FMT_FLI, "bml", "Blackmail FLI (unpacked)", 0x3b00, 17474, | 476 D64_FMT_MC | D64_FMT_FLI, "bml", "Blackmail FLI (unpacked)", 0x3b00, 17474, |
477 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
478 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
453 NULL, NULL, | 479 NULL, NULL, |
454 NULL, NULL, NULL, | 480 NULL, NULL, NULL, |
455 11, | 481 11, |
456 { | 482 { |
457 { DT_COLOR_RAM, 0x0100, 0, 0, NULL, NULL }, | 483 { DT_COLOR_RAM, 0x0100, 0, 0, NULL, NULL }, |
471 } | 497 } |
472 }, | 498 }, |
473 | 499 |
474 { | 500 { |
475 D64_FMT_MC | D64_FMT_FLI, "fli", "FLI Designer (unpacked)", 0x3c00, 17409, | 501 D64_FMT_MC | D64_FMT_FLI, "fli", "FLI Designer (unpacked)", 0x3c00, 17409, |
502 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
503 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
476 NULL, NULL, | 504 NULL, NULL, |
477 NULL, NULL, NULL, | 505 NULL, NULL, NULL, |
478 11, | 506 11, |
479 { | 507 { |
480 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, | 508 { DT_COLOR_RAM, 0x0000, 0, 0, NULL, NULL }, |
491 } | 519 } |
492 }, | 520 }, |
493 | 521 |
494 { | 522 { |
495 D64_FMT_MC, "xx1", "Unknown $2000 format (unpacked)", 0x2000, 10242, | 523 D64_FMT_MC, "xx1", "Unknown $2000 format (unpacked)", 0x2000, 10242, |
524 C64_SCR_WIDTH , C64_SCR_HEIGHT, | |
525 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | |
496 NULL, NULL, | 526 NULL, NULL, |
497 NULL, NULL, NULL, | 527 NULL, NULL, NULL, |
498 4, | 528 4, |
499 { | 529 { |
500 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, | 530 { DT_BITMAP, 0x0000, 0, 0, NULL, NULL }, |
502 { DT_COLOR_RAM, 0x2400, 0, 0, NULL, NULL }, | 532 { DT_COLOR_RAM, 0x2400, 0, 0, NULL, NULL }, |
503 { DT_COLOR_SET, 0x00 , 0, DC_BGCOL, NULL, NULL }, | 533 { DT_COLOR_SET, 0x00 , 0, DC_BGCOL, NULL, NULL }, |
504 } | 534 } |
505 }, | 535 }, |
506 | 536 |
507 #define XX2_SIZE (40 * 10) | 537 #define XX2_WIDTH_CH 40 |
538 #define XX2_HEIGHT_CH 10 | |
539 | |
540 #define XX2_SIZE (XX2_WIDTH_CH * XX2_HEIGHT_CH) | |
508 #define XX2_BSIZE (XX2_SIZE * 8) | 541 #define XX2_BSIZE (XX2_SIZE * 8) |
542 | |
543 #if 0 | |
509 { | 544 { |
510 D64_FMT_MC, "xx2", "Unknown $2000 format (unpacked)", 0x2000, 4002, | 545 D64_FMT_MC, "xx2", "Unknown $2000 format (unpacked)", 0x2000, 4002, |
546 XX2_WIDTH_CH * 4, XX2_HEIGHT_CH * 8, | |
547 XX2_WIDTH_CH , XX2_HEIGHT_CH, | |
511 NULL, NULL, | 548 NULL, NULL, |
512 NULL, NULL, NULL, | 549 NULL, NULL, NULL, |
513 4, | 550 4, |
514 { | 551 { |
515 { DT_BITMAP, 0x0000, 0, XX2_BSIZE, NULL, NULL }, | 552 { DT_BITMAP, 0x0000, 0, XX2_BSIZE, NULL, NULL }, |
518 | 555 |
519 { DT_COLOR_SET, 11 , 0, DC_BGCOL, NULL, NULL }, | 556 { DT_COLOR_SET, 11 , 0, DC_BGCOL, NULL, NULL }, |
520 } | 557 } |
521 }, | 558 }, |
522 | 559 |
523 /* | 560 #else |
524 #define XX2_SIZE (40 * 10) | 561 |
525 #define XX2_BSIZE (XX2_SIZE * 8) | |
526 { | 562 { |
527 D64_FMT_MC | D64_FMT_CHAR, "xx2", "Unknown $2000 char format (unpacked)", 0x2000, 4002, | 563 D64_FMT_MC | D64_FMT_CHAR, "xx2", "Unknown $2000 char format (unpacked)", 0x2000, 4002, |
564 XX2_WIDTH_CH * 4, XX2_HEIGHT_CH * 8, | |
565 XX2_WIDTH_CH , XX2_HEIGHT_CH, | |
528 NULL, NULL, | 566 NULL, NULL, |
529 NULL, NULL, NULL, | 567 NULL, NULL, NULL, |
530 4, | 568 4, |
531 { | 569 { |
532 { DT_CHAR_DATA, 0x0000, 0, XX2_BSIZE, NULL, NULL }, | 570 { DT_CHAR_DATA, 0x0000, 0, XX2_BSIZE, NULL, NULL }, |
536 { DT_COLOR_SET, 1 , 0, DC_BGCOL, NULL, NULL }, | 574 { DT_COLOR_SET, 1 , 0, DC_BGCOL, NULL, NULL }, |
537 { DT_COLOR_SET, 3 , 0, DC_D022, NULL, NULL }, | 575 { DT_COLOR_SET, 3 , 0, DC_D022, NULL, NULL }, |
538 { DT_COLOR_SET, 4 , 0, DC_D023, NULL, NULL }, | 576 { DT_COLOR_SET, 4 , 0, DC_D023, NULL, NULL }, |
539 } | 577 } |
540 }, | 578 }, |
541 */ | 579 #endif |
542 }; | 580 }; |
543 | 581 |
544 const int ndmC64ImageFormats = sizeof(dmC64ImageFormats) / sizeof(dmC64ImageFormats[0]); | 582 const int ndmC64ImageFormats = sizeof(dmC64ImageFormats) / sizeof(dmC64ImageFormats[0]); |
545 | 583 |
546 | 584 |