From d09a3356cecef3b7dda66be2e9303e188eeecf70 Mon Sep 17 00:00:00 2001 From: beeanyew Date: Thu, 6 May 2021 21:26:58 +0200 Subject: [PATCH] Update config_file.c, amiga-platform.c, and 3 more files... --- config_file/config_file.c | 4 ++-- platforms/amiga/amiga-platform.c | 2 +- platforms/amiga/pistorm-dev/pistorm-dev.c | 2 +- platforms/amiga/rtg/rtg.c | 6 +++--- platforms/amiga/rtg/rtg.h | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/config_file/config_file.c b/config_file/config_file.c index 775aac5..c01a0ab 100644 --- a/config_file/config_file.c +++ b/config_file/config_file.c @@ -235,6 +235,8 @@ void add_mapping(struct emulator_config *cfg, unsigned int type, unsigned int ad fread(cfg->map_data[index], cfg->rom_size[index], 1, in); fclose(in); displayRomInfo(cfg->map_data[index]); + if (cfg->map_size[index] == cfg->rom_size[index]) + m68k_add_rom_range(cfg->map_offset[index], cfg->map_high[index], cfg->map_data[index]); break; case MAPTYPE_REGISTER: default: @@ -242,8 +244,6 @@ void add_mapping(struct emulator_config *cfg, unsigned int type, unsigned int ad } printf("[CFG] [MAP %d] Added %s mapping for range %.8lX-%.8lX ID: %s\n", index, map_type_names[type], cfg->map_offset[index], cfg->map_high[index] - 1, cfg->map_id[index] ? cfg->map_id[index] : "None"); - if (cfg->map_size[index] == cfg->rom_size[index]) - m68k_add_rom_range(cfg->map_offset[index], cfg->map_high[index], cfg->map_data[index]); return; diff --git a/platforms/amiga/amiga-platform.c b/platforms/amiga/amiga-platform.c index 0b21a26..266c122 100644 --- a/platforms/amiga/amiga-platform.c +++ b/platforms/amiga/amiga-platform.c @@ -379,7 +379,7 @@ void setvar_amiga(struct emulator_config *cfg, char *var, char *val) { cdtv_mode = 1; } if (strcmp(var, "rtg") == 0 && !rtg_enabled) { - if (init_rtg_data()) { + if (init_rtg_data(cfg)) { printf("[AMIGA] RTG Enabled.\n"); rtg_enabled = 1; adjust_ranges_amiga(cfg); diff --git a/platforms/amiga/pistorm-dev/pistorm-dev.c b/platforms/amiga/pistorm-dev/pistorm-dev.c index 91e631c..f19c35e 100644 --- a/platforms/amiga/pistorm-dev/pistorm-dev.c +++ b/platforms/amiga/pistorm-dev/pistorm-dev.c @@ -209,7 +209,7 @@ void handle_pistorm_dev_write(uint32_t addr_, uint32_t val, uint8_t type) { case PI_CMD_RTGSTATUS: DEBUG("[PISTORM-DEV] Write to RTGSTATUS: %d\n", val); if (val == 1 && !rtg_enabled) { - init_rtg_data(); + init_rtg_data(cfg); rtg_enabled = 1; pi_cmd_result = PI_RES_OK; } else if (val == 0 && rtg_enabled) { diff --git a/platforms/amiga/rtg/rtg.c b/platforms/amiga/rtg/rtg.c index a3fe168..e0a4681 100644 --- a/platforms/amiga/rtg/rtg.c +++ b/platforms/amiga/rtg/rtg.c @@ -6,8 +6,8 @@ #include #include #include -#include "rtg.h" #include "config_file/config_file.h" +#include "rtg.h" uint8_t rtg_u8[4]; uint16_t rtg_x[8], rtg_y[8]; @@ -52,7 +52,7 @@ static const char *rtg_format_names[RTGFMT_NUM] = { "15BPP RGB (555)", }; */ -int init_rtg_data() { +int init_rtg_data(struct emulator_config *cfg_) { rtg_mem = calloc(1, 40 * SIZE_MEGA); if (!rtg_mem) { printf("Failed to allocate RTG video memory.\n"); @@ -60,7 +60,7 @@ int init_rtg_data() { } m68k_add_ram_range(PIGFX_RTG_BASE + PIGFX_REG_SIZE, PIGFX_RTG_SIZE - PIGFX_REG_SIZE, rtg_mem); - add_mapping(cfg, MAPTYPE_RAM_NOALLOC, PIGFX_RTG_BASE + PIGFX_REG_SIZE, PIGFX_RTG_SIZE - PIGFX_REG_SIZE, -1, rtg_mem, "rtg_mem"); + add_mapping(cfg_, MAPTYPE_RAM_NOALLOC, PIGFX_RTG_BASE + PIGFX_REG_SIZE, PIGFX_RTG_SIZE - PIGFX_REG_SIZE, -1, (char *)rtg_mem, "rtg_mem"); return 1; } diff --git a/platforms/amiga/rtg/rtg.h b/platforms/amiga/rtg/rtg.h index cc18e6b..819b55b 100644 --- a/platforms/amiga/rtg/rtg.h +++ b/platforms/amiga/rtg/rtg.h @@ -19,7 +19,7 @@ void rtg_shutdown_display(); unsigned int rtg_get_fb(); -int init_rtg_data(); +int init_rtg_data(struct emulator_config *cfg); void shutdown_rtg(); void rtg_fillrect(uint16_t x, uint16_t y, uint16_t w, uint16_t h, uint32_t color, uint16_t pitch, uint16_t format, uint8_t mask); -- 2.39.2