adjust palettes

This commit is contained in:
Tobias Gunkel
2025-08-24 00:04:24 +02:00
parent b5532392b7
commit e14faf7df7
4 changed files with 659 additions and 636 deletions
+636 -620
View File
File diff suppressed because it is too large Load Diff
-4
View File
@@ -92,10 +92,6 @@ union core_cmd {
uint32_t full;
};
void nextPalette();
void prevPalette();
void lcd_init(bool isCore1);
void lcd_draw_line(struct gb_s* gb, const uint8_t* pixels, const uint_fast8_t line);
+23
View File
@@ -28,6 +28,8 @@ extern i2s_config_t i2s_config;
extern uint8_t gamma_int;
static uint8_t palette_selected = 0;
static struct
{
unsigned a : 1;
@@ -108,6 +110,27 @@ void initJoypad() {
Serial.println("Joypad IOs initialized");
}
#define PALETTE_COUNT 15
void updatePalette() {
if (palette_selected == 0) {
char rom_title[16];
auto_assign_palette(palette, gb_colour_hash(&gb), gb_get_rom_name(&gb, rom_title));
} else {
manual_assign_palette(palette, palette_selected - 1);
}
}
void nextPalette() {
palette_selected = (palette_selected + 1) % PALETTE_COUNT;
updatePalette();
}
void prevPalette() {
palette_selected = (palette_selected + PALETTE_COUNT - 1) % PALETTE_COUNT;
updatePalette();
}
void handleSerial() {
static uint64_t start_time = time_us_64();
-12
View File
@@ -53,8 +53,6 @@ uint16_t* stream;
i2s_config_t i2s_config;
#endif
static uint8_t manual_palette_selected = 0;
uint_fast32_t frames = 0;
void startEmulator() {
@@ -170,16 +168,6 @@ void setup() {
startEmulator();
}
void nextPalette() {
manual_palette_selected = manual_palette_selected < 12 ? manual_palette_selected + 1 : 0;
manual_assign_palette(palette, manual_palette_selected);
}
void prevPalette() {
manual_palette_selected = manual_palette_selected > 0 ? manual_palette_selected - 1 : 12;
manual_assign_palette(palette, manual_palette_selected);
}
void loop() {
gb.gb_frame = 0;