code and palette moved to the bank section

This commit is contained in:
BADIM-PC\Vadim
2017-12-13 19:54:00 +03:00
parent 3ad2ff4a6b
commit afd6fbc832
14 changed files with 68 additions and 68 deletions

View File

@@ -289,7 +289,7 @@ static s32 writeGifData(const tic_mem* tic, u8* dst, const u8* src, s32 width, s
if(palette)
{
const tic_rgb* pal = tic->cart.palette.colors;
const tic_rgb* pal = tic->cart.bank.palette.colors;
for(s32 i = 0; i < TIC_PALETTE_SIZE; i++, pal++)
palette[i].r = pal->r, palette[i].g = pal->g, palette[i].b = pal->b;
@@ -303,10 +303,10 @@ static s32 writeGifData(const tic_mem* tic, u8* dst, const u8* src, s32 width, s
static void loadCart(tic_mem* tic, tic_cartridge* cart, const u8* buffer, s32 size, bool palette)
{
tic->api.load(cart, buffer, size, palette);
tic->api.load(cart, sizeof(tic_cartridge), buffer, size, palette);
if(!palette)
memcpy(cart->palette.data, tic->config.palette.data, sizeof(tic_palette));
memcpy(cart->bank.palette.data, tic->config.palette.data, sizeof(tic_palette));
}
static bool loadRom(tic_mem* tic, const void* data, s32 size, bool palette)
@@ -325,9 +325,9 @@ static bool onConsoleLoadSectionCommand(Console* console, const char* param)
{
static const char* Sections[] =
{
"cover",
"sprites",
"map",
"cover",
"code",
"sfx",
"music",
@@ -359,13 +359,13 @@ static bool onConsoleLoadSectionCommand(Console* console, const char* param)
switch(i)
{
case 0: memcpy(&tic->cart.bank.tiles, &cart->bank.tiles, sizeof(tic_tiles)*2); break;
case 1: memcpy(&tic->cart.bank.map, &cart->bank.map, sizeof(tic_map)); break;
case 2: memcpy(&tic->cart.cover, &cart->cover, sizeof cart->cover); break;
case 3: memcpy(&tic->cart.code, &cart->code, sizeof cart->code); break;
case 4: memcpy(&tic->cart.bank.sfx, &cart->bank.sfx, sizeof(tic_sfx)); break;
case 5: memcpy(&tic->cart.bank.music, &cart->bank.music, sizeof(tic_music)); break;
case 6: memcpy(&tic->cart.palette, &cart->palette, sizeof(tic_palette)); break;
case 0: memcpy(&tic->cart.cover, &cart->cover, sizeof cart->cover); break;
case 1: memcpy(&tic->cart.bank.tiles, &cart->bank.tiles, sizeof(tic_tiles)*2); break;
case 2: memcpy(&tic->cart.bank.map, &cart->bank.map, sizeof(tic_map)); break;
case 3: memcpy(&tic->cart.bank.code, &cart->bank.code, sizeof(tic_code)); break;
case 4: memcpy(&tic->cart.bank.sfx, &cart->bank.sfx, sizeof(tic_sfx)); break;
case 5: memcpy(&tic->cart.bank.music, &cart->bank.music, sizeof(tic_music)); break;
case 6: memcpy(&tic->cart.bank.palette, &cart->bank.palette, sizeof(tic_palette)); break;
}
studioRomLoaded();
@@ -602,7 +602,7 @@ static char* saveBinarySection(char* ptr, const char* comment, const char* tag,
typedef struct {char* tag; s32 count; s32 offset; s32 size; bool flip;} BinarySection;
static const BinarySection BinarySections[] =
{
{"PALETTE", 1, offsetof(tic_cartridge, palette.data), sizeof(tic_palette), false},
{"PALETTE", 1, offsetof(tic_cartridge, bank.palette.data), sizeof(tic_palette), false},
{"TILES", TIC_BANK_SPRITES, offsetof(tic_cartridge, bank.tiles), sizeof(tic_tile), true},
{"SPRITES", TIC_BANK_SPRITES, offsetof(tic_cartridge, bank.sprites), sizeof(tic_tile), true},
{"MAP", TIC_MAP_HEIGHT, offsetof(tic_cartridge, bank.map), TIC_MAP_WIDTH, true},
@@ -617,7 +617,7 @@ static s32 saveProject(Console* console, void* buffer, const char* comment)
tic_mem* tic = console->tic;
char* stream = buffer;
char* ptr = saveTextSection(stream, tic->cart.code.data);
char* ptr = saveTextSection(stream, tic->cart.bank.code.data);
for(s32 i = 0; i < COUNT_OF(BinarySections); i++)
{
@@ -734,11 +734,11 @@ static bool loadProject(Console* console, const char* name, const char* data, s3
if(cart)
{
SDL_memset(cart, 0, sizeof(tic_cartridge));
SDL_memcpy(&cart->palette, &tic->config.palette.data, sizeof(tic_palette));
SDL_memcpy(&cart->bank.palette, &tic->config.palette.data, sizeof(tic_palette));
const char* comment = projectComment(name);
if(loadTextSection(project, comment, cart->code.data, sizeof(tic_code)))
if(loadTextSection(project, comment, cart->bank.code.data, sizeof(tic_code)))
done = true;
for(s32 i = 0; i < COUNT_OF(BinarySections); i++)
@@ -1328,7 +1328,7 @@ static void onImportSprites(const char* name, const void* buffer, size_t size, v
u8 src = image->buffer[x + y * image->width];
const gif_color* c = &image->palette[src];
tic_rgb rgb = {c->r, c->g, c->b};
u8 color = tic_tool_find_closest_color(console->tic->cart.palette.colors, &rgb);
u8 color = tic_tool_find_closest_color(console->tic->cart.bank.palette.colors, &rgb);
setSpritePixel(console->tic->cart.bank.tiles.data, x, y, color);
}
@@ -2713,7 +2713,7 @@ static bool cmdInjectCode(Console* console, const char* param, const char* name)
bool watch = strcmp(param, "-code-watch") == 0;
if(watch || strcmp(param, "-code") == 0)
{
bool loaded = loadFileIntoBuffer(console, embed.file.code.data, name);
bool loaded = loadFileIntoBuffer(console, embed.file.bank.code.data, name);
if(loaded)
{
@@ -2762,7 +2762,7 @@ static bool cmdInjectSprites(Console* console, const char* param, const char* na
u8 src = image->buffer[x + y * image->width];
const gif_color* c = &image->palette[src];
tic_rgb rgb = {c->r, c->g, c->b};
u8 color = tic_tool_find_closest_color(embed.file.palette.colors, &rgb);
u8 color = tic_tool_find_closest_color(embed.file.bank.palette.colors, &rgb);
setSpritePixel(embed.file.bank.tiles.data, x, y, color);
}
@@ -2878,7 +2878,7 @@ void initConsole(Console* console, tic_mem* tic, FileSystem* fs, Config* config,
if(argc > 1)
{
memcpy(embed.file.palette.data, tic->config.palette.data, sizeof(tic_palette));
memcpy(embed.file.bank.palette.data, tic->config.palette.data, sizeof(tic_palette));
u32 argp = 1;