Mercurial > hg > dmlib
comparison tools/lib64fmts.c @ 1545:3b613fcbf3ff
Improve how format read/write capabilities are marked and shown.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sat, 12 May 2018 21:01:46 +0300 |
parents | 69fa95707e65 |
children | fa4fa9a6e78f |
comparison
equal
deleted
inserted
replaced
1544:48823642c4fb | 1545:3b613fcbf3ff |
---|---|
505 | 505 |
506 | 506 |
507 const DMC64ImageFormat dmC64ImageFormats[] = | 507 const DMC64ImageFormat dmC64ImageFormats[] = |
508 { | 508 { |
509 { | 509 { |
510 D64_FMT_MC, "d2p", "DrazPaint 1.4/2.0 (packed)", 0x5800, 0, | 510 D64_FMT_MC, "d2p", "DrazPaint 1.4/2.0 (packed)", 0x5800, 0, DM_FMT_RDWR, |
511 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 511 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
512 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 512 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
513 fmtProbeDrazPaint20Packed, | 513 fmtProbeDrazPaint20Packed, |
514 fmtDecodeDrazPaintPacked, fmtEncodeDrazPaintPacked, | 514 fmtDecodeDrazPaintPacked, fmtEncodeDrazPaintPacked, |
515 NULL, NULL, | 515 NULL, NULL, |
522 { DT_LAST, 0, 0, 0, NULL, NULL }, | 522 { DT_LAST, 0, 0, 0, NULL, NULL }, |
523 } | 523 } |
524 }, | 524 }, |
525 | 525 |
526 { | 526 { |
527 D64_FMT_MC, "drp", "DrazPaint (unpacked)", 0x5800, 10051, | 527 D64_FMT_MC, "drp", "DrazPaint (unpacked)", 0x5800, 10051, DM_FMT_RDWR, |
528 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 528 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
529 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 529 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
530 NULL, | 530 NULL, |
531 NULL, NULL, | 531 NULL, NULL, |
532 NULL, NULL, | 532 NULL, NULL, |
539 { DT_LAST, 0, 0, 0, NULL, NULL }, | 539 { DT_LAST, 0, 0, 0, NULL, NULL }, |
540 } | 540 } |
541 }, | 541 }, |
542 | 542 |
543 { | 543 { |
544 D64_FMT_MC | D64_FMT_ILACE, "dlp", "DrazLace 1.0 (packed)", 0x5800, 0, | 544 D64_FMT_MC | D64_FMT_ILACE, "dlp", "DrazLace 1.0 (packed)", 0x5800, 0, DM_FMT_RDWR, |
545 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 545 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
546 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 546 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
547 fmtProbeDrazLace10Packed, | 547 fmtProbeDrazLace10Packed, |
548 fmtDecodeDrazPaintPacked, fmtEncodeDrazPaintPacked, | 548 fmtDecodeDrazPaintPacked, fmtEncodeDrazPaintPacked, |
549 NULL, NULL, | 549 NULL, NULL, |
559 { DT_LAST, 0, 0, 0, NULL, NULL }, | 559 { DT_LAST, 0, 0, 0, NULL, NULL }, |
560 } | 560 } |
561 }, | 561 }, |
562 | 562 |
563 { | 563 { |
564 D64_FMT_MC | D64_FMT_ILACE, "drl", "DrazLace 1.0 (unpacked)", 0x5800, 18242, | 564 D64_FMT_MC | D64_FMT_ILACE, "drl", "DrazLace 1.0 (unpacked)", 0x5800, 18242, DM_FMT_RDWR, |
565 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 565 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
566 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 566 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
567 NULL, | 567 NULL, |
568 NULL, NULL, | 568 NULL, NULL, |
569 NULL, NULL, | 569 NULL, NULL, |
579 { DT_LAST, 0, 0, 0, NULL, NULL }, | 579 { DT_LAST, 0, 0, 0, NULL, NULL }, |
580 } | 580 } |
581 }, | 581 }, |
582 | 582 |
583 { | 583 { |
584 D64_FMT_MC | D64_FMT_ILACE, "mci", "Truepaint (unpacked)", 0x9c00, 19434, | 584 D64_FMT_MC | D64_FMT_ILACE, "mci", "Truepaint (unpacked)", 0x9c00, 19434, DM_FMT_RD, |
585 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 585 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
586 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 586 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
587 NULL, | 587 NULL, |
588 NULL, NULL, | 588 NULL, NULL, |
589 NULL, NULL, | 589 NULL, NULL, |
599 { DT_LAST, 0, 0, 0, NULL, NULL }, | 599 { DT_LAST, 0, 0, 0, NULL, NULL }, |
600 } | 600 } |
601 }, | 601 }, |
602 | 602 |
603 { | 603 { |
604 D64_FMT_MC, "kla", "Koala Paint (unpacked)", 0x6000, 10003, | 604 D64_FMT_MC, "kla", "Koala Paint (unpacked)", 0x6000, 10003, DM_FMT_RDWR, |
605 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 605 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
606 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 606 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
607 NULL, | 607 NULL, |
608 NULL, NULL, | 608 NULL, NULL, |
609 NULL, NULL, | 609 NULL, NULL, |
616 { DT_LAST, 0, 0, 0, NULL, NULL }, | 616 { DT_LAST, 0, 0, 0, NULL, NULL }, |
617 } | 617 } |
618 }, | 618 }, |
619 | 619 |
620 { | 620 { |
621 D64_FMT_MC, "ocp", "Advanced Art Studio (unpacked)", 0x2000, 10018, | 621 D64_FMT_MC, "aas", "Advanced Art Studio (unpacked)", 0x2000, 10018, DM_FMT_RDWR, |
622 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 622 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
623 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 623 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
624 NULL, | 624 NULL, |
625 NULL, NULL, | 625 NULL, NULL, |
626 NULL, NULL, | 626 NULL, NULL, |
633 { DT_LAST, 0, 0, 0, NULL, NULL }, | 633 { DT_LAST, 0, 0, 0, NULL, NULL }, |
634 } | 634 } |
635 }, | 635 }, |
636 | 636 |
637 { | 637 { |
638 D64_FMT_MC, "ami", "Amica Paint (packed)", 0x4000, 0, | 638 D64_FMT_MC, "ami", "Amica Paint (packed)", 0x4000, 0, DM_FMT_RDWR, |
639 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 639 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
640 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 640 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
641 fmtProbeAmicaPaintPacked, | 641 fmtProbeAmicaPaintPacked, |
642 fmtDecodeAmicaPaintPacked, fmtEncodeAmicaPaintPacked, | 642 fmtDecodeAmicaPaintPacked, fmtEncodeAmicaPaintPacked, |
643 NULL, NULL, | 643 NULL, NULL, |
650 { DT_LAST, 0, 0, 0, NULL, NULL }, | 650 { DT_LAST, 0, 0, 0, NULL, NULL }, |
651 } | 651 } |
652 }, | 652 }, |
653 | 653 |
654 { | 654 { |
655 D64_FMT_MC, "rpm", "Run Paint (unpacked)", 0x6000, 10006, | 655 D64_FMT_MC, "rpm", "Run Paint (unpacked)", 0x6000, 10006, DM_FMT_RDWR, |
656 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 656 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
657 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 657 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
658 NULL, | 658 NULL, |
659 NULL, NULL, | 659 NULL, NULL, |
660 NULL, NULL, | 660 NULL, NULL, |
667 { DT_LAST, 0, 0, 0, NULL, NULL }, | 667 { DT_LAST, 0, 0, 0, NULL, NULL }, |
668 } | 668 } |
669 }, | 669 }, |
670 | 670 |
671 { | 671 { |
672 D64_FMT_HIRES, "art", "Art Studio (unpacked)", 0x2000, 9009, | 672 D64_FMT_HIRES, "art", "Art Studio (unpacked)", 0x2000, 9009, DM_FMT_RD, |
673 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 673 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
674 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 674 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
675 NULL, | 675 NULL, |
676 NULL, NULL, | 676 NULL, NULL, |
677 NULL, NULL, | 677 NULL, NULL, |
682 { DT_LAST, 0, 0, 0, NULL, NULL }, | 682 { DT_LAST, 0, 0, 0, NULL, NULL }, |
683 } | 683 } |
684 }, | 684 }, |
685 | 685 |
686 { | 686 { |
687 D64_FMT_HIRES, "iph", "Interpaint (unpacked)", 0x4000, 9002, | 687 D64_FMT_HIRES, "iph", "Interpaint (unpacked)", 0x4000, 9002, DM_FMT_RD, |
688 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 688 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
689 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 689 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
690 NULL, | 690 NULL, |
691 NULL, NULL, | 691 NULL, NULL, |
692 NULL, NULL, | 692 NULL, NULL, |
697 { DT_LAST, 0, 0, 0, NULL, NULL }, | 697 { DT_LAST, 0, 0, 0, NULL, NULL }, |
698 } | 698 } |
699 }, | 699 }, |
700 | 700 |
701 { | 701 { |
702 D64_FMT_MC, "ipc", "Interpaint MC (unpacked)", 0x4000, 10003, | 702 D64_FMT_MC, "ipc", "Interpaint MC (unpacked)", 0x4000, 10003, DM_FMT_RDWR, |
703 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 703 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
704 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 704 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
705 NULL, | 705 NULL, |
706 NULL, NULL, | 706 NULL, NULL, |
707 NULL, NULL, | 707 NULL, NULL, |
714 { DT_LAST, 0, 0, 0, NULL, NULL }, | 714 { DT_LAST, 0, 0, 0, NULL, NULL }, |
715 } | 715 } |
716 }, | 716 }, |
717 | 717 |
718 { | 718 { |
719 D64_FMT_HIRES, "dd", "Doodle (unpacked)", 0x1c00, 9218, | 719 D64_FMT_HIRES, "dd", "Doodle (unpacked)", 0x1c00, 9218, DM_FMT_RDWR, |
720 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 720 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
721 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 721 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
722 NULL, | 722 NULL, |
723 NULL, NULL, | 723 NULL, NULL, |
724 NULL, NULL, | 724 NULL, NULL, |
729 { DT_LAST, 0, 0, 0, NULL, NULL }, | 729 { DT_LAST, 0, 0, 0, NULL, NULL }, |
730 } | 730 } |
731 }, | 731 }, |
732 | 732 |
733 { | 733 { |
734 D64_FMT_MC | D64_FMT_FLI, "bml", "Blackmail FLI (unpacked)", 0x3b00, 17474, | 734 D64_FMT_MC | D64_FMT_FLI, "bml", "Blackmail FLI (unpacked)", 0x3b00, 17474, DM_FMT_RDWR, |
735 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 735 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
736 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 736 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
737 NULL, | 737 NULL, |
738 NULL, NULL, | 738 NULL, NULL, |
739 NULL, NULL, | 739 NULL, NULL, |
746 { DT_LAST, 0, 0, 0, NULL, NULL }, | 746 { DT_LAST, 0, 0, 0, NULL, NULL }, |
747 } | 747 } |
748 }, | 748 }, |
749 | 749 |
750 { | 750 { |
751 D64_FMT_MC | D64_FMT_FLI, "fli", "FLI Designer (unpacked)", 0, 17409, | 751 D64_FMT_MC | D64_FMT_FLI, "fli", "FLI Designer (unpacked)", 0, 17409, DM_FMT_RD, |
752 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 752 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
753 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 753 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
754 fmtProbeFLIDesigner, | 754 fmtProbeFLIDesigner, |
755 NULL, NULL, | 755 NULL, NULL, |
756 NULL, NULL, | 756 NULL, NULL, |
762 { DT_LAST, 0, 0, 0, NULL, NULL }, | 762 { DT_LAST, 0, 0, 0, NULL, NULL }, |
763 } | 763 } |
764 }, | 764 }, |
765 | 765 |
766 { | 766 { |
767 D64_FMT_MC, "xx1", "Unknown $2000 format (unpacked)", 0x2000, 10242, | 767 D64_FMT_MC, "xx1", "Unknown $2000 format (unpacked)", 0x2000, 10242, DM_FMT_RD, |
768 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 768 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
769 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 769 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
770 NULL, | 770 NULL, |
771 NULL, NULL, | 771 NULL, NULL, |
772 NULL, NULL, | 772 NULL, NULL, |
784 #define XX2_HEIGHT_CH 10 | 784 #define XX2_HEIGHT_CH 10 |
785 #define XX2_SIZE (XX2_WIDTH_CH * XX2_HEIGHT_CH) | 785 #define XX2_SIZE (XX2_WIDTH_CH * XX2_HEIGHT_CH) |
786 #define XX2_BSIZE (XX2_SIZE * 8) | 786 #define XX2_BSIZE (XX2_SIZE * 8) |
787 | 787 |
788 { | 788 { |
789 D64_FMT_MC, "xx2", "Unknown $2000 format (unpacked)", 0x2000, 0, | 789 D64_FMT_MC, "xx2", "Unknown $2000 format (unpacked)", 0x2000, 0, DM_FMT_RD, |
790 XX2_WIDTH_CH * 4, XX2_HEIGHT_CH * 8, | 790 XX2_WIDTH_CH * 4, XX2_HEIGHT_CH * 8, |
791 XX2_WIDTH_CH , XX2_HEIGHT_CH, | 791 XX2_WIDTH_CH , XX2_HEIGHT_CH, |
792 fmtProbeFormatXX2, | 792 fmtProbeFormatXX2, |
793 fmtDecodeFormatXX2, NULL, | 793 fmtDecodeFormatXX2, NULL, |
794 NULL, NULL, | 794 NULL, NULL, |
801 { DT_LAST, 0, 0, 0, NULL, NULL }, | 801 { DT_LAST, 0, 0, 0, NULL, NULL }, |
802 } | 802 } |
803 }, | 803 }, |
804 | 804 |
805 { | 805 { |
806 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, "fp2", "FunPaint II (unpacked)", 0x3ff0, 33694, | 806 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, |
807 "fp2", "FunPaint II (unpacked)", 0x3ff0, 33694, DM_FMT_RD, | |
807 C64_SCR_WIDTH, C64_SCR_HEIGHT, | 808 C64_SCR_WIDTH, C64_SCR_HEIGHT, |
808 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 809 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
809 fmtProbeFunPaint2Unpacked, | 810 fmtProbeFunPaint2Unpacked, |
810 fmtDecodeFunPaint2Unpacked, fmtEncodeFunPaint2Unpacked, | 811 fmtDecodeFunPaint2Unpacked, fmtEncodeFunPaint2Unpacked, |
811 NULL, NULL, | 812 NULL, NULL, |
821 { DT_LAST, 0, 0, 0, NULL, NULL }, | 822 { DT_LAST, 0, 0, 0, NULL, NULL }, |
822 } | 823 } |
823 }, | 824 }, |
824 | 825 |
825 { | 826 { |
826 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, "fp2p", "FunPaint II (packed)", 0x3ff0, 0, | 827 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, |
828 "fp2p", "FunPaint II (packed)", 0x3ff0, 0, DM_FMT_RD, | |
827 C64_SCR_WIDTH, C64_SCR_HEIGHT, | 829 C64_SCR_WIDTH, C64_SCR_HEIGHT, |
828 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 830 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
829 fmtProbeFunPaint2Packed, | 831 fmtProbeFunPaint2Packed, |
830 fmtDecodeFunPaint2Packed, fmtEncodeFunPaint2Packed, | 832 fmtDecodeFunPaint2Packed, fmtEncodeFunPaint2Packed, |
831 NULL, NULL, | 833 NULL, NULL, |
841 { DT_LAST, 0, 0, 0, NULL, NULL }, | 843 { DT_LAST, 0, 0, 0, NULL, NULL }, |
842 } | 844 } |
843 }, | 845 }, |
844 | 846 |
845 { | 847 { |
846 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, "gun", "GunPaint (unpacked)", 0x4000, 0, | 848 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, |
849 "gun", "GunPaint (unpacked)", 0x4000, 0, DM_FMT_RD, | |
847 C64_SCR_WIDTH, C64_SCR_HEIGHT, | 850 C64_SCR_WIDTH, C64_SCR_HEIGHT, |
848 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 851 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
849 fmtProbeGunPaint, | 852 fmtProbeGunPaint, |
850 NULL, NULL, | 853 NULL, NULL, |
851 NULL, NULL, | 854 NULL, NULL, |
861 { DT_LAST, 0, 0, 0, NULL, NULL }, | 864 { DT_LAST, 0, 0, 0, NULL, NULL }, |
862 } | 865 } |
863 }, | 866 }, |
864 | 867 |
865 { | 868 { |
866 D64_FMT_HIRES | D64_FMT_FLI, "chi", "Crest Hires FLI Designer (unpacked)", 0x4000, 16386, | 869 D64_FMT_HIRES | D64_FMT_FLI, |
870 "chi", "Crest Hires FLI Designer (unpacked)", 0x4000, 16386, DM_FMT_RD, | |
867 C64_SCR_WIDTH, 14 * 8, | 871 C64_SCR_WIDTH, 14 * 8, |
868 C64_SCR_CH_WIDTH , 14, | 872 C64_SCR_CH_WIDTH , 14, |
869 NULL, | 873 NULL, |
870 NULL, NULL, | 874 NULL, NULL, |
871 NULL, NULL, | 875 NULL, NULL, |