295
292
log_error(ted.log, "Cannot load palette.");
298
title = util_concat("VICE: ", machine_name, " emulator", NULL);
299
raster_set_title(raster, title);
296
raster_set_title(raster, machine_name);
302
298
if (raster_realize(raster) < 0)
456
452
BYTE *bitmap_base; /* Pointer to bitmap memory. */
457
453
BYTE *color_base; /* Pointer to color memory. */
455
unsigned int video_romsel;
456
unsigned int cpu_romsel;
461
romsel = ted.regs[0x12] & 4;
458
video_romsel = ted.regs[0x12] & 4;
459
cpu_romsel = (ted.regs[0x13] & 1) << 2;
463
461
screen_addr = ((ted.regs[0x14] & 0xf8) << 8) | 0x400;
464
screen_base = mem_get_tedmem_base((screen_addr >> 14) | romsel)
462
screen_base = mem_get_tedmem_base((screen_addr >> 14) | cpu_romsel)
465
463
+ (screen_addr & 0x3fff);
467
465
TED_DEBUG_REGISTER(("\tVideo memory at $%04X", screen_addr));
469
467
bitmap_addr = (ted.regs[0x12] & 0x38) << 10;
470
bitmap_base = mem_get_tedmem_base((bitmap_addr >> 14) | romsel)
468
bitmap_base = mem_get_tedmem_base((bitmap_addr >> 14) | video_romsel)
471
469
+ (bitmap_addr & 0x3fff);
473
471
TED_DEBUG_REGISTER(("\tBitmap memory at $%04X", bitmap_addr));
475
char_addr = (ted.regs[0x13] & 0xfc) << 8;
476
char_base = mem_get_tedmem_base((char_addr >> 14) | romsel)
473
char_addr = (ted.regs[0x13] & (((ted.regs[0x06] & 0x40) | (ted.regs[0x07] & 0x90)) ? 0xf8 : 0xfc)) << 8;
474
char_base = mem_get_tedmem_base((char_addr >> 14) | video_romsel)
477
475
+ (char_addr & 0x3fff);
479
477
TED_DEBUG_REGISTER(("\tUser-defined character set at $%04X", char_addr));
481
479
color_addr = ((ted.regs[0x14] & 0xf8) << 8);
482
color_base = mem_get_tedmem_base((color_addr >> 14) | romsel)
480
color_base = mem_get_tedmem_base((color_addr >> 14) | cpu_romsel)
483
481
+ (color_addr & 0x3fff);
485
483
TED_DEBUG_REGISTER(("\tColor memory at $%04X", color_addr));