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

+ 3
- 0
src/sprite_data.h View File

@@ -51,4 +51,7 @@ struct sprites {
51 51
 
52 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 57
 #endif // __SPRITE__DATA_H

+ 5
- 1
src/sprites.c View File

@@ -39,7 +39,11 @@ void spr_init(void) NONBANKED {
39 39
 
40 40
 void spr_init_pal(void) NONBANKED {
41 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 48
         if ((metasprites[i].pa != NULL) && (!(metasprites[i].pa_i & 0xF0))) {
45 49
             set_sprite_palette(metasprites[i].pa_i, metasprites[i].pa_n, metasprites[i].pa);

Loading…
Cancel
Save