/* add all registered i/o devices to the list for the monitor */ void io_source_ioreg_add_list(struct mem_ioreg_list_s **mem_ioreg_list) { io_source_list_t *current; current = vic20io2_head.next; while (current) { mon_ioreg_add_list(mem_ioreg_list, current->device->name, current->device->start_address, current->device->start_address + decodemask(current->device->address_mask), current->device->dump); current = current->next; } current = vic20io3_head.next; while (current) { mon_ioreg_add_list(mem_ioreg_list, current->device->name, current->device->start_address, current->device->start_address + decodemask(current->device->address_mask), current->device->dump); current = current->next; } }
static void io_source_ioreg_add_onelist(struct mem_ioreg_list_s **mem_ioreg_list, io_source_list_t *current) { WORD end; while (current) { end = current->device->end_address; if (end > current->device->start_address + current->device->address_mask) { end = current->device->start_address + current->device->address_mask; } mon_ioreg_add_list(mem_ioreg_list, current->device->name, current->device->start_address, end, current->device->dump); current = current->next; } }
void vic_fp_ioreg_add_list(struct mem_ioreg_list_s **mem_ioreg_list) { mon_ioreg_add_list(mem_ioreg_list, "Vic Flash Plugin", 0x9800, 0x9801, vic_fp_mon_dump); }