Browse Source

load power palette from correct rom bank

Thomas B 1 month ago
parent
commit
7b064ffed2
3 changed files with 10 additions and 2 deletions
  1. 2
    1
      src/sprite_data.c
  2. 3
    0
      src/sprite_data.h
  3. 5
    1
      src/sprites.c

+ 2
- 1
src/sprite_data.c View File

32
 #include "bar_spr8.h"
32
 #include "bar_spr8.h"
33
 #include "expl_spr16.h"
33
 #include "expl_spr16.h"
34
 
34
 
35
+BANKREF(power_palettes)
36
+
35
 const palette_color_t power_palettes[4] = {
37
 const palette_color_t power_palettes[4] = {
36
   //RGB8(  0,  0,  0), RGB8(240,  0,  0), RGB8(196,  0,  0), RGB8(116,  0,  0)
38
   //RGB8(  0,  0,  0), RGB8(240,  0,  0), RGB8(196,  0,  0), RGB8(116,  0,  0)
37
     RGB8(  0,  0,  0), RGB8(  0,240,  0), RGB8(  0,196,  0), RGB8(  0,116,  0)
39
     RGB8(  0,  0,  0), RGB8(  0,240,  0), RGB8(  0,196,  0), RGB8(  0,116,  0)
38
-
39
 };
40
 };
40
 
41
 
41
 struct sprites metasprites[SPRITE_COUNT] = {
42
 struct sprites metasprites[SPRITE_COUNT] = {

+ 3
- 0
src/sprite_data.h View File

51
 
51
 
52
 extern struct sprites metasprites[SPRITE_COUNT];
52
 extern struct sprites metasprites[SPRITE_COUNT];
53
 
53
 
54
+BANKREF_EXTERN(power_palettes)
55
+extern const palette_color_t power_palettes[4];
56
+
54
 #endif // __SPRITE__DATA_H
57
 #endif // __SPRITE__DATA_H

+ 5
- 1
src/sprites.c View File

39
 
39
 
40
 void spr_init_pal(void) NONBANKED {
40
 void spr_init_pal(void) NONBANKED {
41
     for (uint8_t i = 0; i < SPRITE_COUNT; i++) {
41
     for (uint8_t i = 0; i < SPRITE_COUNT; i++) {
42
-        SWITCH_ROM(metasprites[i].bank);
42
+        if (metasprites[i].pa == power_palettes) {
43
+            SWITCH_ROM(BANK(power_palettes));
44
+        } else {
45
+            SWITCH_ROM(metasprites[i].bank);
46
+        }
43
 
47
 
44
         if ((metasprites[i].pa != NULL) && (!(metasprites[i].pa_i & 0xF0))) {
48
         if ((metasprites[i].pa != NULL) && (!(metasprites[i].pa_i & 0xF0))) {
45
             set_sprite_palette(metasprites[i].pa_i, metasprites[i].pa_n, metasprites[i].pa);
49
             set_sprite_palette(metasprites[i].pa_i, metasprites[i].pa_n, metasprites[i].pa);

Loading…
Cancel
Save