Mercurial > hg > dmlib
comparison tools/lib64fmts.c @ 1846:88cef7758303
Implement data block offset in certain DMC64EncDecOps. This allows us to
combine and separate data from multiple sources/destinations into one data block.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Fri, 22 Jun 2018 22:31:52 +0300 |
parents | a77451bb6614 |
children | e3d1f16be4ee |
comparison
equal
deleted
inserted
replaced
1845:a77451bb6614 | 1846:88cef7758303 |
---|---|
993 | 993 |
994 // | 994 // |
995 // Helper macros for defining screen memory layouts | 995 // Helper macros for defining screen memory layouts |
996 // common for several FLI type image formats | 996 // common for several FLI type image formats |
997 // | 997 // |
998 #define DEF_SCREEN_RAM(start, oindex, bindex, osize) { DO_COPY, DS_SCREEN_RAM, (start) + ((osize) * (oindex)), (bindex), 0, NULL, NULL } | 998 #define DEF_SCREEN_RAM(start, oindex, bindex, osize) { DO_COPY, DS_SCREEN_RAM, (start) + ((osize) * (oindex)), (bindex), 0, 0, NULL, NULL } |
999 #define DEF_SCREEN_RAMS_8(start, sindex, osize) \ | 999 #define DEF_SCREEN_RAMS_8(start, sindex, osize) \ |
1000 DEF_SCREEN_RAM((start), 0, (sindex + 0), (osize)), \ | 1000 DEF_SCREEN_RAM((start), 0, (sindex + 0), (osize)), \ |
1001 DEF_SCREEN_RAM((start), 1, (sindex + 1), (osize)), \ | 1001 DEF_SCREEN_RAM((start), 1, (sindex + 1), (osize)), \ |
1002 DEF_SCREEN_RAM((start), 2, (sindex + 2), (osize)), \ | 1002 DEF_SCREEN_RAM((start), 2, (sindex + 2), (osize)), \ |
1003 DEF_SCREEN_RAM((start), 3, (sindex + 3), (osize)), \ | 1003 DEF_SCREEN_RAM((start), 3, (sindex + 3), (osize)), \ |
1020 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1020 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1021 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1021 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1022 NULL, NULL, | 1022 NULL, NULL, |
1023 NULL, | 1023 NULL, |
1024 { | 1024 { |
1025 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1025 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1026 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, NULL, NULL }, | 1026 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL }, |
1027 { DO_COPY , DS_COLOR_RAM , 0x2328, 0, 0, NULL, NULL }, | 1027 { DO_COPY , DS_COLOR_RAM , 0x2328, 0, 0, 0, NULL, NULL }, |
1028 { DO_SET_MEM_LO , DS_BGCOL , 0x2710, 0, 0, NULL, NULL }, | 1028 { DO_SET_MEM_LO , DS_BGCOL , 0x2710, 0, 0, 0, NULL, NULL }, |
1029 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1029 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1030 } | 1030 } |
1031 }, | 1031 }, |
1032 | 1032 |
1033 { // #1: Black Mail FLI Graph | 1033 { // #1: Black Mail FLI Graph |
1034 D64_FMT_MC | D64_FMT_FLI, | 1034 D64_FMT_MC | D64_FMT_FLI, |
1035 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1035 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1036 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1036 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1037 NULL, NULL, | 1037 NULL, NULL, |
1038 fmtGetPixelBlackMailFLI, | 1038 fmtGetPixelBlackMailFLI, |
1039 { | 1039 { |
1040 { DO_COPY , DS_EXTRA_DATA , 0x0000, 0, 200, NULL, NULL }, | 1040 { DO_COPY , DS_EXTRA_DATA , 0x0000, 0, 200, 0, NULL, NULL }, |
1041 { DO_COPY , DS_COLOR_RAM , 0x0100, 0, 0, NULL, NULL }, | 1041 { DO_COPY , DS_COLOR_RAM , 0x0100, 0, 0, 0, NULL, NULL }, |
1042 DEF_SCREEN_RAMS_8(0x0500, 0, 0x400), | 1042 DEF_SCREEN_RAMS_8(0x0500, 0, 0x400), |
1043 { DO_COPY , DS_BITMAP_RAM , 0x2500, 0, 0, NULL, NULL }, | 1043 { DO_COPY , DS_BITMAP_RAM , 0x2500, 0, 0, 0, NULL, NULL }, |
1044 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1044 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1045 } | 1045 } |
1046 }, | 1046 }, |
1047 | 1047 |
1048 { // #2: Art Studio etc. Hires | 1048 { // #2: Art Studio etc. Hires |
1049 D64_FMT_HIRES, | 1049 D64_FMT_HIRES, |
1050 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 1050 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
1051 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 1051 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
1052 NULL, NULL, | 1052 NULL, NULL, |
1053 NULL, | 1053 NULL, |
1054 { | 1054 { |
1055 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1055 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1056 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, NULL, NULL }, | 1056 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL }, |
1057 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1057 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1058 } | 1058 } |
1059 }, | 1059 }, |
1060 | 1060 |
1061 { // #3: FunPaint II | 1061 { // #3: FunPaint II |
1062 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, | 1062 D64_FMT_MC | D64_FMT_FLI | D64_FMT_ILACE, |
1064 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1064 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1065 NULL, NULL, | 1065 NULL, NULL, |
1066 fmtGetPixelFunPaint2, | 1066 fmtGetPixelFunPaint2, |
1067 { | 1067 { |
1068 DEF_SCREEN_RAMS_8(0x0000, 0, 0x400), | 1068 DEF_SCREEN_RAMS_8(0x0000, 0, 0x400), |
1069 { DO_COPY , DS_BITMAP_RAM , 0x2000, 0, 0, NULL, NULL }, | 1069 { DO_COPY , DS_BITMAP_RAM , 0x2000, 0, 0 , 0, NULL, NULL }, |
1070 { DO_COPY , DS_EXTRA_DATA , 0x3f40, 0, 100, NULL, NULL }, | 1070 { DO_COPY , DS_EXTRA_DATA , 0x3f40, 0, 100, 0, NULL, NULL }, |
1071 { DO_COPY , DS_COLOR_RAM , 0x4000, 0, 0, NULL, NULL }, | 1071 { DO_COPY , DS_COLOR_RAM , 0x4000, 0, 0 , 0, NULL, NULL }, |
1072 DEF_SCREEN_RAMS_8(0x43e8, 8, 0x400), | 1072 DEF_SCREEN_RAMS_8(0x43e8, 8, 0x400), |
1073 { DO_COPY , DS_BITMAP_RAM , 0x63e8, 1, 0, NULL, NULL }, | 1073 { DO_COPY , DS_BITMAP_RAM , 0x63e8, 1, 0 , 0, NULL, NULL }, |
1074 { DO_COPY , DS_EXTRA_DATA , 0x8328, 1, 100, NULL, NULL }, | 1074 { DO_COPY , DS_EXTRA_DATA , 0x8328, 1, 100, 0, NULL, NULL }, |
1075 { DO_DEC_FUNC , 0 , 0x2742, 0, 1, fmtTruePaintGetLaceType, NULL }, | 1075 { DO_DEC_FUNC , 0 , 0x2742, 0, 1 , 0, fmtTruePaintGetLaceType, NULL }, |
1076 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1076 { DO_LAST , 0 , 0 , 0, 0 , 0, NULL, NULL }, |
1077 } | 1077 } |
1078 }, | 1078 }, |
1079 | 1079 |
1080 { // #4: DrazPaint 1.x & 2 | 1080 { // #4: DrazPaint 1.x & 2 |
1081 D64_FMT_MC, | 1081 D64_FMT_MC, |
1082 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1082 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1083 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1083 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1084 NULL, NULL, | 1084 NULL, NULL, |
1085 NULL, | 1085 NULL, |
1086 { | 1086 { |
1087 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, NULL, NULL }, | 1087 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1088 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, NULL, NULL }, | 1088 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, 0, NULL, NULL }, |
1089 { DO_COPY , DS_SCREEN_RAM , 0x0400, 0, 0, NULL, NULL }, | 1089 { DO_COPY , DS_SCREEN_RAM , 0x0400, 0, 0, 0, NULL, NULL }, |
1090 { DO_SET_MEM_LO , DS_BGCOL , 0x2740, 0, 0, NULL, NULL }, | 1090 { DO_SET_MEM_LO , DS_BGCOL , 0x2740, 0, 0, 0, NULL, NULL }, |
1091 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1091 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1092 } | 1092 } |
1093 }, | 1093 }, |
1094 | 1094 |
1095 { // #5: DrazLace 1.0 | 1095 { // #5: DrazLace 1.0 |
1096 D64_FMT_MC | D64_FMT_ILACE, | 1096 D64_FMT_MC | D64_FMT_ILACE, |
1097 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 1097 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
1098 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 1098 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
1099 NULL, NULL, | 1099 NULL, NULL, |
1100 NULL, | 1100 NULL, |
1101 { | 1101 { |
1102 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, NULL, NULL }, | 1102 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1103 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, NULL, NULL }, | 1103 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, 0, NULL, NULL }, |
1104 { DO_COPY , DS_SCREEN_RAM , 0x0400, 0, 0, NULL, NULL }, | 1104 { DO_COPY , DS_SCREEN_RAM , 0x0400, 0, 0, 0, NULL, NULL }, |
1105 { DO_SET_MEM_LO , DS_BGCOL , 0x2740, 0, 0, NULL, NULL }, | 1105 { DO_SET_MEM_LO , DS_BGCOL , 0x2740, 0, 0, 0, NULL, NULL }, |
1106 { DO_COPY , DS_BITMAP_RAM , 0x2800, 1, 0, NULL, NULL }, | 1106 { DO_COPY , DS_BITMAP_RAM , 0x2800, 1, 0, 0, NULL, NULL }, |
1107 { DO_DEC_FUNC , 0 , 0x2742, 0, 1, fmtDrazLaceGetLaceType, NULL }, | 1107 { DO_DEC_FUNC , 0 , 0x2742, 0, 1, 0, fmtDrazLaceGetLaceType, NULL }, |
1108 { DO_ENC_FUNC , 0 , 0x2742, 0, 1, NULL, fmtDrazLaceSetLaceType }, | 1108 { DO_ENC_FUNC , 0 , 0x2742, 0, 1, 0, NULL, fmtDrazLaceSetLaceType }, |
1109 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1109 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1110 } | 1110 } |
1111 }, | 1111 }, |
1112 | 1112 |
1113 { // #6: TruePaint | 1113 { // #6: TruePaint |
1114 D64_FMT_MC | D64_FMT_ILACE, | 1114 D64_FMT_MC | D64_FMT_ILACE, |
1115 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 1115 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
1116 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 1116 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
1117 NULL, NULL, | 1117 NULL, NULL, |
1118 fmtGetPixelTruePaint, | 1118 fmtGetPixelTruePaint, |
1119 { | 1119 { |
1120 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, NULL, NULL }, | 1120 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1121 { DO_SET_MEM_LO , DS_BGCOL , 0x03e8, 0, 0, NULL, NULL }, | 1121 { DO_SET_MEM_LO , DS_BGCOL , 0x03e8, 0, 0, 0, NULL, NULL }, |
1122 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, NULL, NULL }, | 1122 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL }, |
1123 { DO_COPY , DS_BITMAP_RAM , 0x2400, 1, 0, NULL, NULL }, | 1123 { DO_COPY , DS_BITMAP_RAM , 0x2400, 1, 0, 0, NULL, NULL }, |
1124 { DO_COPY , DS_SCREEN_RAM , 0x4400, 1, 0, NULL, NULL }, | 1124 { DO_COPY , DS_SCREEN_RAM , 0x4400, 1, 0, 0, NULL, NULL }, |
1125 { DO_COPY , DS_COLOR_RAM , 0x4800, 0, 0, NULL, NULL }, | 1125 { DO_COPY , DS_COLOR_RAM , 0x4800, 0, 0, 0, NULL, NULL }, |
1126 { DO_DEC_FUNC , 0 , 0x0000, 0, 0, fmtTruePaintGetLaceType, NULL }, | 1126 { DO_DEC_FUNC , 0 , 0x0000, 0, 0, 0, fmtTruePaintGetLaceType, NULL }, |
1127 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1127 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1128 } | 1128 } |
1129 }, | 1129 }, |
1130 | 1130 |
1131 { // #7: ECI Graphic Editor Hires FLI | 1131 { // #7: ECI Graphic Editor Hires FLI |
1132 D64_FMT_HIRES | D64_FMT_FLI, | 1132 D64_FMT_HIRES | D64_FMT_FLI, |
1133 C64_SCR_WIDTH, C64_SCR_HEIGHT, | 1133 C64_SCR_WIDTH, C64_SCR_HEIGHT, |
1134 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 1134 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
1135 fmtConvertECIBMP2Image, NULL, | 1135 fmtConvertECIBMP2Image, NULL, |
1136 fmtGetPixelECI, | 1136 fmtGetPixelECI, |
1137 { | 1137 { |
1138 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1138 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1139 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400), | 1139 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400), |
1140 { DO_COPY , DS_BITMAP_RAM , 0x4000, 1, 0, NULL, NULL }, | 1140 { DO_COPY , DS_BITMAP_RAM , 0x4000, 1, 0, 0, NULL, NULL }, |
1141 DEF_SCREEN_RAMS_8(0x6000, 8, 0x400), | 1141 DEF_SCREEN_RAMS_8(0x6000, 8, 0x400), |
1142 { DO_DEC_FUNC , 0 , 0 , 0, 0, fmtECIGetLaceType, NULL }, | 1142 { DO_DEC_FUNC , 0 , 0 , 0, 0, 0, fmtECIGetLaceType, NULL }, |
1143 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1143 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1144 } | 1144 } |
1145 }, | 1145 }, |
1146 | 1146 |
1147 { // #8: Cosmos Designs Hires Manager | 1147 { // #8: Cosmos Designs Hires Manager |
1148 D64_FMT_HIRES | D64_FMT_FLI, | 1148 D64_FMT_HIRES | D64_FMT_FLI, |
1149 C64_SCR_WIDTH, C64_SCR_HEIGHT, // Actually 296 x 192 (=24*8) | 1149 C64_SCR_WIDTH, 24*8, // Actually 296 x 192 (=24*8) |
1150 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 1150 C64_SCR_CH_WIDTH, 24, |
1151 NULL, NULL, | 1151 NULL, NULL, |
1152 fmtGetPixelCrestHIFLIorCDHM, | 1152 fmtGetPixelCrestHIFLIorCDHM, |
1153 { | 1153 { |
1154 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1154 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1155 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400), | 1155 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400), |
1156 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1156 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1157 } | 1157 } |
1158 }, | 1158 }, |
1159 | 1159 |
1160 { // #9: FLI Designer 1.x & 2.0 | 1160 { // #9: FLI Designer 1.x & 2.0 |
1161 D64_FMT_MC | D64_FMT_FLI, | 1161 D64_FMT_MC | D64_FMT_FLI, |
1162 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1162 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1163 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1163 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1164 NULL, NULL, | 1164 NULL, NULL, |
1165 fmtGetPixelFLIDesigner, | 1165 fmtGetPixelFLIDesigner, |
1166 { | 1166 { |
1167 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, NULL, NULL }, | 1167 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1168 DEF_SCREEN_RAMS_8(0x0400, 0, 0x400), | 1168 DEF_SCREEN_RAMS_8(0x0400, 0, 0x400), |
1169 { DO_COPY , DS_BITMAP_RAM , 0x2400, 0, 0, NULL, NULL }, | 1169 { DO_COPY , DS_BITMAP_RAM , 0x2400, 0, 0, 0, NULL, NULL }, |
1170 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1170 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1171 } | 1171 } |
1172 }, | 1172 }, |
1173 | 1173 |
1174 { // #10: Doodle | 1174 { // #10: Doodle |
1175 D64_FMT_HIRES, | 1175 D64_FMT_HIRES, |
1176 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 1176 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
1177 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 1177 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
1178 NULL, NULL, | 1178 NULL, NULL, |
1179 NULL, | 1179 NULL, |
1180 { | 1180 { |
1181 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, NULL, NULL }, | 1181 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1182 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, NULL, NULL }, | 1182 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL }, |
1183 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1183 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1184 } | 1184 } |
1185 }, | 1185 }, |
1186 }; | 1186 }; |
1187 | 1187 |
1188 | 1188 |
1235 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1235 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1236 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1236 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1237 NULL, NULL, | 1237 NULL, NULL, |
1238 NULL, | 1238 NULL, |
1239 { | 1239 { |
1240 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, NULL, NULL }, | 1240 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1241 { DO_SET_MEM_LO , DS_BGCOL , 0x07e8, 0, 0, NULL, NULL }, | 1241 { DO_SET_MEM_LO , DS_BGCOL , 0x07e8, 0, 0, 0, NULL, NULL }, |
1242 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, NULL, NULL }, | 1242 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, 0, NULL, NULL }, |
1243 { DO_COPY , DS_SCREEN_RAM , 0x0400, 0, 0, NULL, NULL }, | 1243 { DO_COPY , DS_SCREEN_RAM , 0x0400, 0, 0, 0, NULL, NULL }, |
1244 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1244 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1245 }, | 1245 }, |
1246 }, | 1246 }, |
1247 NULL | 1247 NULL |
1248 }, | 1248 }, |
1249 | 1249 |
1256 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1256 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1257 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1257 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1258 NULL, NULL, | 1258 NULL, NULL, |
1259 NULL, | 1259 NULL, |
1260 { | 1260 { |
1261 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, NULL, NULL }, | 1261 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1262 { DO_SET_MEM_LO , DS_BGCOL , 0x07fe, 0, 0, NULL, NULL }, | 1262 { DO_SET_MEM_LO , DS_BGCOL , 0x07fe, 0, 0, 0, NULL, NULL }, |
1263 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, NULL, NULL }, | 1263 { DO_COPY , DS_BITMAP_RAM , 0x0800, 0, 0, 0, NULL, NULL }, |
1264 { DO_COPY , DS_SCREEN_RAM , 0x0400, 0, 0, NULL, NULL }, | 1264 { DO_COPY , DS_SCREEN_RAM , 0x0400, 0, 0, 0, NULL, NULL }, |
1265 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1265 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1266 }, | 1266 }, |
1267 }, | 1267 }, |
1268 NULL | 1268 NULL |
1269 }, | 1269 }, |
1270 | 1270 |
1305 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1305 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1306 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1306 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1307 NULL, NULL, | 1307 NULL, NULL, |
1308 NULL, | 1308 NULL, |
1309 { | 1309 { |
1310 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1310 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1311 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, NULL, NULL }, | 1311 { DO_COPY , DS_SCREEN_RAM , 0x1f40, 0, 0, 0, NULL, NULL }, |
1312 { DO_SET_MEM_LO , DS_D020 , 0x2328, 0, 0, NULL, NULL }, | 1312 { DO_SET_MEM_LO , DS_D020 , 0x2328, 0, 0, 0, NULL, NULL }, |
1313 { DO_SET_MEM_LO , DS_BGCOL , 0x2329, 0, 0, NULL, NULL }, | 1313 { DO_SET_MEM_LO , DS_BGCOL , 0x2329, 0, 0, 0, NULL, NULL }, |
1314 { DO_COPY , DS_COLOR_RAM , 0x2338, 0, 0, NULL, NULL }, | 1314 { DO_COPY , DS_COLOR_RAM , 0x2338, 0, 0, 0, NULL, NULL }, |
1315 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1315 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1316 }, | 1316 }, |
1317 }, | 1317 }, |
1318 NULL | 1318 NULL |
1319 }, | 1319 }, |
1320 | 1320 |
1327 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1327 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1328 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1328 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1329 NULL, NULL, | 1329 NULL, NULL, |
1330 NULL, | 1330 NULL, |
1331 { | 1331 { |
1332 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, NULL, NULL }, | 1332 { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1333 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, NULL, NULL }, | 1333 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL }, |
1334 { DO_SET_MEM_LO , DS_BGCOL , 0x23ff, 0, 0, NULL, NULL }, | 1334 { DO_SET_MEM_LO , DS_BGCOL , 0x23ff, 0, 0, 0, NULL, NULL }, |
1335 { DO_COPY , DS_SCREEN_RAM , 0x2400, 0, 0, NULL, NULL }, | 1335 { DO_COPY , DS_SCREEN_RAM , 0x2400, 0, 0, 0, NULL, NULL }, |
1336 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1336 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1337 } | 1337 } |
1338 }, | 1338 }, |
1339 NULL | 1339 NULL |
1340 }, | 1340 }, |
1341 | 1341 |
1348 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1348 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1349 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1349 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1350 NULL, NULL, | 1350 NULL, NULL, |
1351 NULL, | 1351 NULL, |
1352 { | 1352 { |
1353 { DO_COPY , DS_SCREEN_RAM , 20 + 0 , 0, 0, NULL, NULL }, | 1353 { DO_COPY , DS_SCREEN_RAM , 20 + 0 , 0, 0, 0, NULL, NULL }, |
1354 { DO_COPY , DS_COLOR_RAM , 20 + 1000, 0, 0, NULL, NULL }, | 1354 { DO_COPY , DS_COLOR_RAM , 20 + 1000, 0, 0, 0, NULL, NULL }, |
1355 { DO_COPY , DS_BITMAP_RAM , 20 + 2000, 0, 0, NULL, NULL }, | 1355 { DO_COPY , DS_BITMAP_RAM , 20 + 2000, 0, 0, 0, NULL, NULL }, |
1356 // XXX TODO: Unknown where the background color is set, so default to 0x01 | 1356 // XXX TODO: Unknown where the background color is set, so default to 0x01 |
1357 //{ DO_SET_MEM , DS_BGCOL , 0x23ff, 0, 0, NULL, NULL }, | 1357 //{ DO_SET_MEM , DS_BGCOL , 0x23ff, 0, 0, 0, NULL, NULL }, |
1358 { DO_SET_OP , DS_BGCOL , 0x01 , 0, 0, NULL, NULL }, | 1358 { DO_SET_OP , DS_BGCOL , 0x01 , 0, 0, 0, NULL, NULL }, |
1359 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1359 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1360 } | 1360 } |
1361 }, | 1361 }, |
1362 NULL | 1362 NULL |
1363 }, | 1363 }, |
1364 | 1364 |
1371 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1371 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1372 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1372 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1373 NULL, NULL, | 1373 NULL, NULL, |
1374 NULL, | 1374 NULL, |
1375 { | 1375 { |
1376 { DO_COPY , DS_BITMAP_RAM , 0x0000 + 0x111, 0, 0, NULL, NULL }, | 1376 { DO_COPY , DS_BITMAP_RAM , 0x0000 + 0x111, 0, 0, 0, NULL, NULL }, |
1377 { DO_COPY , DS_SCREEN_RAM , 0x1f40 + 0x111, 0, 0, NULL, NULL }, | 1377 { DO_COPY , DS_SCREEN_RAM , 0x1f40 + 0x111, 0, 0, 0, NULL, NULL }, |
1378 { DO_COPY , DS_COLOR_RAM , 0x2328 + 0x111, 0, 0, NULL, NULL }, | 1378 { DO_COPY , DS_COLOR_RAM , 0x2328 + 0x111, 0, 0, 0, NULL, NULL }, |
1379 { DO_SET_MEM_LO , DS_BGCOL , 0x2710 + 0x111, 0, 0, NULL, NULL }, | 1379 { DO_SET_MEM_LO , DS_BGCOL , 0x2710 + 0x111, 0, 0, 0, NULL, NULL }, |
1380 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1380 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1381 } | 1381 } |
1382 }, | 1382 }, |
1383 NULL | 1383 NULL |
1384 }, | 1384 }, |
1385 | 1385 |
1392 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1392 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1393 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1393 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1394 NULL, NULL, | 1394 NULL, NULL, |
1395 NULL, | 1395 NULL, |
1396 { | 1396 { |
1397 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, NULL, NULL }, | 1397 { DO_COPY , DS_SCREEN_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1398 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, NULL, NULL }, | 1398 { DO_COPY , DS_BITMAP_RAM , 0x0400, 0, 0, 0, NULL, NULL }, |
1399 { DO_COPY , DS_COLOR_RAM , 0x2400, 0, 0, NULL, NULL }, | 1399 { DO_COPY , DS_COLOR_RAM , 0x2400, 0, 0, 0, NULL, NULL }, |
1400 // XXX TODO: Not sure if the background color is hardcoded .. | 1400 // XXX TODO: Not sure if the background color is hardcoded .. |
1401 { DO_SET_OP , DS_BGCOL , 0x00 , 0, 0, NULL, NULL }, | 1401 { DO_SET_OP , DS_BGCOL , 0x00 , 0, 0, 0, NULL, NULL }, |
1402 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1402 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1403 } | 1403 } |
1404 }, | 1404 }, |
1405 NULL | 1405 NULL |
1406 }, | 1406 }, |
1407 | 1407 |
1414 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1414 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1415 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1415 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1416 NULL, NULL, | 1416 NULL, NULL, |
1417 NULL, | 1417 NULL, |
1418 { | 1418 { |
1419 { DO_COPY , DS_SCREEN_RAM , 0x7800 - 0x7800, 0, 0, NULL, NULL }, | 1419 { DO_COPY , DS_SCREEN_RAM , 0x7800 - 0x7800, 0, 0, 0, NULL, NULL }, |
1420 { DO_SET_MEM_LO , DS_BGCOL , 0x7bf0 - 0x7800, 0, 0, NULL, NULL }, | 1420 { DO_SET_MEM_LO , DS_BGCOL , 0x7bf0 - 0x7800, 0, 0, 0, NULL, NULL }, |
1421 { DO_COPY , DS_BITMAP_RAM , 0x7c00 - 0x7800, 0, 0, NULL, NULL }, | 1421 { DO_COPY , DS_BITMAP_RAM , 0x7c00 - 0x7800, 0, 0, 0, NULL, NULL }, |
1422 { DO_COPY , DS_COLOR_RAM , 0x9c00 - 0x7800, 0, 0, NULL, NULL }, | 1422 { DO_COPY , DS_COLOR_RAM , 0x9c00 - 0x7800, 0, 0, 0, NULL, NULL }, |
1423 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1423 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1424 } | 1424 } |
1425 }, | 1425 }, |
1426 NULL | 1426 NULL |
1427 }, | 1427 }, |
1428 | 1428 |
1435 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1435 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1436 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1436 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1437 NULL, NULL, | 1437 NULL, NULL, |
1438 NULL, | 1438 NULL, |
1439 { | 1439 { |
1440 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1440 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1441 // XXX TODO: Background color is wrong, this offset/addr is from codebase64 docs | 1441 // XXX TODO: Background color is wrong, this offset/addr is from codebase64 docs |
1442 { DO_SET_MEM_LO , DS_D020 , 0x1f7f, 0, 0, NULL, NULL }, | 1442 { DO_SET_MEM_LO , DS_D020 , 0x1f7f, 0, 0, 0, NULL, NULL }, |
1443 { DO_SET_MEM_LO , DS_BGCOL , 0x1f80, 0, 0, NULL, NULL }, | 1443 { DO_SET_MEM_LO , DS_BGCOL , 0x1f80, 0, 0, 0, NULL, NULL }, |
1444 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, NULL, NULL }, | 1444 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, 0, NULL, NULL }, |
1445 { DO_COPY , DS_COLOR_RAM , 0x2400, 0, 0, NULL, NULL }, | 1445 { DO_COPY , DS_COLOR_RAM , 0x2400, 0, 0, 0, NULL, NULL }, |
1446 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1446 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1447 } | 1447 } |
1448 }, | 1448 }, |
1449 NULL | 1449 NULL |
1450 }, | 1450 }, |
1451 | 1451 |
1458 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1458 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1459 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1459 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1460 NULL, NULL, | 1460 NULL, NULL, |
1461 NULL, | 1461 NULL, |
1462 { | 1462 { |
1463 { DO_COPY , DS_BITMAP_RAM , 0x4000 + 0x72 - 0x4000, 0, 0, NULL, NULL }, | 1463 { DO_COPY , DS_BITMAP_RAM , 0x4000 + 0x72 - 0x4000, 0, 0, 0, NULL, NULL }, |
1464 { DO_COPY , DS_SCREEN_RAM , 0x6000 + 0x72 - 0x4000, 0, 0, NULL, NULL }, | 1464 { DO_COPY , DS_SCREEN_RAM , 0x6000 + 0x72 - 0x4000, 0, 0, 0, NULL, NULL }, |
1465 { DO_SET_MEM_LO , DS_D020 , 0x5f40 + 0x72 - 0x4000, 0, 0, NULL, NULL }, | 1465 { DO_SET_MEM_LO , DS_D020 , 0x5f40 + 0x72 - 0x4000, 0, 0, 0, NULL, NULL }, |
1466 { DO_SET_MEM , DS_COLOR_RAM , 0x5f43 + 0x72 - 0x4000, 0, 0, NULL, NULL }, | 1466 { DO_SET_MEM , DS_COLOR_RAM , 0x5f43 + 0x72 - 0x4000, 0, 0, 0, NULL, NULL }, |
1467 { DO_SET_MEM_LO , DS_BGCOL , 0x5f44 + 0x72 - 0x4000, 0, 0, NULL, NULL }, | 1467 { DO_SET_MEM_LO , DS_BGCOL , 0x5f44 + 0x72 - 0x4000, 0, 0, 0, NULL, NULL }, |
1468 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1468 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1469 } | 1469 } |
1470 }, | 1470 }, |
1471 NULL | 1471 NULL |
1472 }, | 1472 }, |
1473 | 1473 |
1480 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1480 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1481 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1481 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1482 NULL, NULL, | 1482 NULL, NULL, |
1483 NULL, | 1483 NULL, |
1484 { | 1484 { |
1485 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1485 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1486 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, NULL, NULL }, | 1486 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, 0, NULL, NULL }, |
1487 { DO_COPY , DS_COLOR_RAM , 0x2400, 0, 0, NULL, NULL }, | 1487 { DO_COPY , DS_COLOR_RAM , 0x2400, 0, 0, 0, NULL, NULL }, |
1488 { DO_SET_MEM_LO , DS_D020 , 0x27fe, 0, 0, NULL, NULL }, | 1488 { DO_SET_MEM_LO , DS_D020 , 0x27fe, 0, 0, 0, NULL, NULL }, |
1489 { DO_SET_MEM_LO , DS_BGCOL , 0x27ff, 0, 0, NULL, NULL }, | 1489 { DO_SET_MEM_LO , DS_BGCOL , 0x27ff, 0, 0, 0, NULL, NULL }, |
1490 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1490 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1491 } | 1491 } |
1492 }, | 1492 }, |
1493 NULL | 1493 NULL |
1494 }, | 1494 }, |
1495 | 1495 |
1551 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 1551 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
1552 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 1552 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
1553 NULL, NULL, | 1553 NULL, NULL, |
1554 NULL, | 1554 NULL, |
1555 { | 1555 { |
1556 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1556 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1557 { DO_SET_OP , DS_SCREEN_RAM , 0xCF , 0, 0, NULL, NULL }, | 1557 { DO_SET_OP , DS_SCREEN_RAM , 0xCF , 0, 0, 0, NULL, NULL }, |
1558 // Default colors used by MM are --^^ | 1558 // Default colors used by MM are --^^ |
1559 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1559 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1560 } | 1560 } |
1561 }, | 1561 }, |
1562 NULL | 1562 NULL |
1563 }, | 1563 }, |
1564 | 1564 |
1571 C64_SCR_WIDTH , C64_SCR_HEIGHT, | 1571 C64_SCR_WIDTH , C64_SCR_HEIGHT, |
1572 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 1572 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
1573 NULL, NULL, | 1573 NULL, NULL, |
1574 NULL, | 1574 NULL, |
1575 { | 1575 { |
1576 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1576 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1577 { DO_SET_OP , DS_SCREEN_RAM , 0xF0 , 0, 0, NULL, NULL }, | 1577 { DO_SET_OP , DS_SCREEN_RAM , 0xF0 , 0, 0, 0, NULL, NULL }, |
1578 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1578 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1579 } | 1579 } |
1580 }, | 1580 }, |
1581 NULL | 1581 NULL |
1582 }, | 1582 }, |
1583 | 1583 |
1590 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT * 2, | 1590 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT * 2, |
1591 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1591 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1592 NULL, NULL, | 1592 NULL, NULL, |
1593 fmtGetPixelBFLI, | 1593 fmtGetPixelBFLI, |
1594 { | 1594 { |
1595 { DO_COPY , DS_COLOR_RAM , 0x0001, 0, 0, NULL, NULL }, | 1595 { DO_COPY , DS_COLOR_RAM , 0x0001, 0, 0, 0, NULL, NULL }, |
1596 DEF_SCREEN_RAMS_8(0x0401, 0, 0x400), | 1596 DEF_SCREEN_RAMS_8(0x0401, 0, 0x400), |
1597 { DO_COPY , DS_BITMAP_RAM , 0x2401, 0, 0x1fff, NULL, NULL }, | 1597 { DO_COPY , DS_BITMAP_RAM , 0x2401, 0, 0x1fff, 0, NULL, NULL }, |
1598 DEF_SCREEN_RAMS_8(0x4401, 8, 0x400), | 1598 DEF_SCREEN_RAMS_8(0x4401, 8, 0x400), |
1599 { DO_COPY , DS_BITMAP_RAM , 0x6401, 1, 0, NULL, NULL }, | 1599 { DO_COPY , DS_BITMAP_RAM , 0x6401, 1, 0, 0, NULL, NULL }, |
1600 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1600 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1601 } | 1601 } |
1602 }, | 1602 }, |
1603 NULL | 1603 NULL |
1604 }, | 1604 }, |
1605 | 1605 |
1654 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, | 1654 C64_SCR_WIDTH / 2, C64_SCR_HEIGHT, |
1655 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1655 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1656 NULL, NULL, | 1656 NULL, NULL, |
1657 NULL, | 1657 NULL, |
1658 { | 1658 { |
1659 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1659 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1660 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, NULL, NULL }, | 1660 { DO_COPY , DS_SCREEN_RAM , 0x2000, 0, 0, 0, NULL, NULL }, |
1661 { DO_COPY , DS_COLOR_RAM , 0x2400, 0, 0, NULL, NULL }, | 1661 { DO_COPY , DS_COLOR_RAM , 0x2400, 0, 0, 0, NULL, NULL }, |
1662 { DO_SET_OP , DS_BGCOL , 0x00 , 0, 0, NULL, NULL }, | 1662 { DO_SET_OP , DS_BGCOL , 0x00 , 0, 0, 0, NULL, NULL }, |
1663 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1663 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1664 } | 1664 } |
1665 }, | 1665 }, |
1666 NULL | 1666 NULL |
1667 }, | 1667 }, |
1668 | 1668 |
1675 XX2_WIDTH_CH * 4, XX2_HEIGHT_CH * 8, | 1675 XX2_WIDTH_CH * 4, XX2_HEIGHT_CH * 8, |
1676 XX2_WIDTH_CH , XX2_HEIGHT_CH, | 1676 XX2_WIDTH_CH , XX2_HEIGHT_CH, |
1677 NULL, NULL, | 1677 NULL, NULL, |
1678 NULL, | 1678 NULL, |
1679 { | 1679 { |
1680 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, XX2_BSIZE, NULL, NULL }, | 1680 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, XX2_BSIZE, 0, NULL, NULL }, |
1681 { DO_COPY , DS_SCREEN_RAM , XX2_BSIZE, 0, XX2_SIZE, NULL, NULL }, | 1681 { DO_COPY , DS_SCREEN_RAM , XX2_BSIZE, 0, XX2_SIZE, 0, NULL, NULL }, |
1682 { DO_COPY , DS_COLOR_RAM , XX2_BSIZE + XX2_SIZE, 0, XX2_SIZE, NULL, NULL }, | 1682 { DO_COPY , DS_COLOR_RAM , XX2_BSIZE + XX2_SIZE, 0, XX2_SIZE, 0, NULL, NULL }, |
1683 { DO_SET_OP , DS_BGCOL , 11 , 0, 0, NULL, NULL }, | 1683 { DO_SET_OP , DS_BGCOL , 11 , 0, 0, 0, NULL, NULL }, |
1684 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1684 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1685 } | 1685 } |
1686 }, | 1686 }, |
1687 NULL | 1687 NULL |
1688 }, | 1688 }, |
1689 | 1689 |
1711 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, | 1711 C64_SCR_CH_WIDTH , C64_SCR_CH_HEIGHT, |
1712 NULL, NULL, | 1712 NULL, NULL, |
1713 fmtGetPixelGunPaint, | 1713 fmtGetPixelGunPaint, |
1714 { | 1714 { |
1715 DEF_SCREEN_RAMS_8(0x0000, 0, 0x400), | 1715 DEF_SCREEN_RAMS_8(0x0000, 0, 0x400), |
1716 { DO_COPY , DS_BITMAP_RAM , 0x2000, 0, 0, NULL, NULL }, | 1716 { DO_COPY , DS_BITMAP_RAM , 0x2000, 0, 0 , 0, NULL, NULL }, |
1717 { DO_COPY , DS_EXTRA_DATA , 0x3f4f, 0, 177, NULL, NULL }, | 1717 { DO_COPY , DS_EXTRA_DATA , 0x3f4f, 0, 177, 0, NULL, NULL }, |
1718 { DO_COPY , DS_COLOR_RAM , 0x4000, 0, 0, NULL, NULL }, | 1718 { DO_COPY , DS_COLOR_RAM , 0x4000, 0, 0 , 0, NULL, NULL }, |
1719 DEF_SCREEN_RAMS_8(0x4400, 8, 0x400), | 1719 DEF_SCREEN_RAMS_8(0x4400, 8, 0x400), |
1720 { DO_COPY , DS_BITMAP_RAM , 0x6400, 1, 0, NULL, NULL }, | 1720 { DO_COPY , DS_BITMAP_RAM , 0x6400, 1, 0 , 0, NULL, NULL }, |
1721 { DO_COPY , DS_EXTRA_DATA , 0x47e8, 1, 20, NULL, NULL }, | 1721 { DO_COPY , DS_EXTRA_DATA , 0x47e8, 1, 20 , 0, NULL, NULL }, |
1722 { DO_DEC_FUNC , 0 , 0x2742, 0, 1, fmtTruePaintGetLaceType, NULL }, | 1722 { DO_DEC_FUNC , 0 , 0x2742, 0, 1 , 0, fmtTruePaintGetLaceType, NULL }, |
1723 { DO_ENC_FUNC , 0 , fmtGunPaintMagicOffs, 0, fmtGunPaintMagicLen, NULL, fmtEncodeGunPaint }, | 1723 { DO_ENC_FUNC , 0 , fmtGunPaintMagicOffs, 0, fmtGunPaintMagicLen, 0, NULL, fmtEncodeGunPaint }, |
1724 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1724 { DO_LAST , 0 , 0 , 0, 0 , 0, NULL, NULL }, |
1725 } | 1725 } |
1726 }, | 1726 }, |
1727 NULL | 1727 NULL |
1728 }, | 1728 }, |
1729 | 1729 |
1736 192, C64_SCR_HEIGHT, | 1736 192, C64_SCR_HEIGHT, |
1737 24, C64_SCR_CH_HEIGHT, | 1737 24, C64_SCR_CH_HEIGHT, |
1738 NULL, NULL, | 1738 NULL, NULL, |
1739 fmtGetPixelPentelPaint, | 1739 fmtGetPixelPentelPaint, |
1740 { | 1740 { |
1741 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1741 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1742 { DO_SET_OP , DS_SCREEN_RAM , 0x23 , 0, 0, NULL, NULL }, | 1742 { DO_SET_OP , DS_SCREEN_RAM , 0x23 , 0, 0, 0, NULL, NULL }, |
1743 { DO_SET_MEM_LO , DS_BGCOL , 0x9580 - 0x4800, 0, 0, NULL, NULL }, | 1743 { DO_SET_MEM_LO , DS_BGCOL , 0x9580 - 0x4800, 0, 0, 0, NULL, NULL }, |
1744 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1744 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1745 } | 1745 } |
1746 }, | 1746 }, |
1747 NULL | 1747 NULL |
1748 }, | 1748 }, |
1749 | 1749 |
1756 C64_SCR_WIDTH, C64_SCR_HEIGHT, // Actually 296 x 112 (=14*8) | 1756 C64_SCR_WIDTH, C64_SCR_HEIGHT, // Actually 296 x 112 (=14*8) |
1757 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, | 1757 C64_SCR_CH_WIDTH, C64_SCR_CH_HEIGHT, |
1758 NULL, NULL, | 1758 NULL, NULL, |
1759 fmtGetPixelCrestHIFLIorCDHM, | 1759 fmtGetPixelCrestHIFLIorCDHM, |
1760 { | 1760 { |
1761 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, NULL, NULL }, | 1761 { DO_COPY , DS_BITMAP_RAM , 0x0000, 0, 0, 0, NULL, NULL }, |
1762 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400), | 1762 DEF_SCREEN_RAMS_8(0x2000, 0, 0x400), |
1763 { DO_LAST , 0 , 0 , 0, 0, NULL, NULL }, | 1763 { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, |
1764 } | 1764 } |
1765 }, | 1765 }, |
1766 NULL | 1766 NULL |
1767 }, | 1767 }, |
1768 | 1768 |