comparison exporters.pde @ 234:7afa7c257d93

Add load address check to FBI FLI Designer import.
author Matti Hamalainen <ccr@tnsp.org>
date Thu, 06 Sep 2018 13:27:04 +0300
parents a53b3fe97412
children 2e772a17a4ed
comparison
equal deleted inserted replaced
233:1d9f9c3d8ab1 234:7afa7c257d93
367 // FBI Crew FLI designer 1.x & 2.0 (unpacked) 367 // FBI Crew FLI designer 1.x & 2.0 (unpacked)
368 // { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL }, 368 // { DO_COPY , DS_COLOR_RAM , 0x0000, 0, 0, 0, NULL, NULL },
369 // DEF_SCREEN_RAMS_8(0x0400, 0, 0x400, 0), 369 // DEF_SCREEN_RAMS_8(0x0400, 0, 0x400, 0),
370 // { DO_COPY , DS_BITMAP_RAM , 0x2400, 0, 0, 0, NULL, NULL }, 370 // { DO_COPY , DS_BITMAP_RAM , 0x2400, 0, 0, 0, NULL, NULL },
371 // { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL }, 371 // { DO_LAST , 0 , 0 , 0, 0, 0, NULL, NULL },
372 if (fdata.length != 17409) 372 if (fdata.length != 17409 ||
373 { 373 ((fdata[1] != 0x3c || fdata[0] != 0x00) &&
374 // TODO XXX: Check for load addresses 3c00 and 3ff0 374 (fdata[1] != 0x3f || fdata[0] != 0xf0)))
375 return false; 375 return false;
376 } 376
377 for (y = 0; y < 25; y++) 377 for (y = 0; y < 25; y++)
378 for (x = 0; x < 40; x++) 378 for (x = 0; x < 40; x++)
379 for (y2 = 0; y2 < 8; y2++) 379 for (y2 = 0; y2 < 8; y2++)
380 { 380 {
381 ad = x + y * 40; 381 ad = x + y * 40;
389 389
390 g_map[65536 + x + y * 40] = byte(p1); 390 g_map[65536 + x + y * 40] = byte(p1);
391 g_map[65536 + x + y * 40 + 1000] = byte(p2); 391 g_map[65536 + x + y * 40 + 1000] = byte(p2);
392 g_map[65536 + x + y * 40 + 2000] = byte(p3); 392 g_map[65536 + x + y * 40 + 2000] = byte(p3);
393 } 393 }
394 g_map[0] = byte(0); //bord 394
395 g_map[1] = byte(0); //baku 395 // Background is not used, and border is not defined
396 g_map[0] = byte(0);
397 g_map[1] = byte(0);
396 } 398 }
397 else 399 else
398 if (g_machine == MSX) 400 if (g_machine == MSX)
399 { // sc2 401 { // sc2
400 // 7=bitmap 32*24*8 402 // 7=bitmap 32*24*8