Browse Source

add simple drum loop to menu music

Thomas B 1 month ago
parent
commit
3e319b6238
4 changed files with 72 additions and 9 deletions
  1. 8
    5
      src/gbprinter.h
  2. 0
    2
      src/maps.c
  3. 63
    1
      src/sound_menu.c
  4. 1
    1
      src/sound_over.c

+ 8
- 5
src/gbprinter.h View File

@@ -27,6 +27,7 @@
27 27
 #include <stdint.h>
28 28
 
29 29
 enum PRN_STATUS {
30
+    // status flags from printer
30 31
     PRN_STATUS_LOWBAT      = 0x80, // battery too low
31 32
     PRN_STATUS_ER2         = 0x40, // unspecified error
32 33
     PRN_STATUS_ER1         = 0x20, // paper jam
@@ -34,13 +35,15 @@ enum PRN_STATUS {
34 35
     PRN_STATUS_UNTRAN      = 0x08, // unprinted data in buffer
35 36
     PRN_STATUS_FULL        = 0x04, // ready, triggered by DATA with len 0
36 37
     PRN_STATUS_BUSY        = 0x02, // printer is printing
37
-    PRN_STATUS_CHECKSUM    = 0x01, // Checksum error
38
-    PRN_STATUS_OK          = 0x00,
38
+    PRN_STATUS_CHECKSUM    = 0x01, // checksum error
39
+    PRN_STATUS_OK          = 0x00, // everything is fine
39 40
 
40
-    PRN_STATUS_CANCELLED   = 0x100,
41
-    PRN_STATUS_TIMEOUT     = 0x200,
42
-    PRN_STATUS_NO_MAGIC    = 0x400,
41
+    // status flags from driver code
42
+    PRN_STATUS_CANCELLED   = 0x100, // user has aborted the print by pressing B
43
+    PRN_STATUS_TIMEOUT     = 0x200, // timeout waiting for printer response
44
+    PRN_STATUS_NO_MAGIC    = 0x400, // printer did not respond with proper 'alive'
43 45
 
46
+    // masks to check for errors
44 47
     PRN_STATUS_MASK_ERRORS = 0x7F0,
45 48
     PRN_STATUS_MASK_ANY    = 0x7FF,
46 49
 };

+ 0
- 2
src/maps.c View File

@@ -59,7 +59,6 @@ static uint8_t old_map_pos_x, old_map_pos_y;
59 59
 
60 60
 void map_title(void) NONBANKED {
61 61
     START_ROM_BANK(BANK(title_map)) {
62
-
63 62
         set_bkg_palette(OAMF_CGB_PAL0, title_map_PALETTE_COUNT, title_map_palettes);
64 63
         set_bkg_data(0, title_map_TILE_COUNT, title_map_tiles);
65 64
 
@@ -81,7 +80,6 @@ void map_title(void) NONBANKED {
81 80
                       title_map_WIDTH / title_map_TILE_W,
82 81
                       title_map_HEIGHT / title_map_TILE_H,
83 82
                       title_map_map);
84
-
85 83
     } END_ROM_BANK
86 84
 
87 85
     move_bkg(0, 0);

+ 63
- 1
src/sound_menu.c View File

@@ -196,10 +196,72 @@ const enum notes menu_music2[] = {
196 196
     END
197 197
 };
198 198
 
199
+#define DRUM_LOOP \
200
+    dSI, dSI, dSn, dSI, dKi, dSI, dSI, dSI, \
201
+    dSn, dSI, dSI, dSI, dKi, dSI, dSI, dSI  \
202
+
203
+const enum drums menu_drums[] = {
204
+    // intro
205
+
206
+    DRUM_LOOP,
207
+    DRUM_LOOP,
208
+
209
+    DRUM_LOOP,
210
+    DRUM_LOOP,
211
+
212
+    // repeat 1
213
+
214
+    DRUM_LOOP,
215
+    DRUM_LOOP,
216
+
217
+    DRUM_LOOP,
218
+    DRUM_LOOP,
219
+
220
+    DRUM_LOOP,
221
+    DRUM_LOOP,
222
+
223
+    DRUM_LOOP,
224
+    DRUM_LOOP,
225
+
226
+    // bridge
227
+
228
+    DRUM_LOOP,
229
+    DRUM_LOOP,
230
+
231
+    DRUM_LOOP,
232
+    DRUM_LOOP,
233
+
234
+    // repeat 2
235
+
236
+    DRUM_LOOP,
237
+    DRUM_LOOP,
238
+
239
+    DRUM_LOOP,
240
+    DRUM_LOOP,
241
+
242
+    // bridge
243
+
244
+    DRUM_LOOP,
245
+    DRUM_LOOP,
246
+
247
+    DRUM_LOOP,
248
+    DRUM_LOOP,
249
+
250
+    // end
251
+
252
+    dSI, dSI, dSI, dSI, dSI, dSI, dSI, dSI,
253
+    dSI, dSI, dSI, dSI, dSI, dSI, dSI, dSI,
254
+    dSI, dSI, dSI, dSI, dSI, dSI, dSI, dSI,
255
+
256
+    dSI, dSI, dSI, dSI, dSI, dSI, dSI, dSI,
257
+    dSI, dSI, dSI, dSI, dSI, dSI, dSI, dSI,
258
+    dEND
259
+};
260
+
199 261
 const struct music music_menu = {
200 262
     .notes = menu_music,
201 263
     .notes2 = menu_music2,
202
-    .drums = NULL,
264
+    .drums = menu_drums,
203 265
     .duration = 150,
204 266
     .repeat = 0,
205 267
 };

+ 1
- 1
src/sound_over.c View File

@@ -163,7 +163,7 @@ const enum notes over_notes2[] = {
163 163
 
164 164
 #define DRUM_LOOP \
165 165
     dKi, dSI, dSI, dSI, dSI, dSI, dKi, dSI, \
166
-    dSn, dSI, dSI, dSI, dKi, dSI, dSI, dSI \
166
+    dSn, dSI, dSI, dSI, dKi, dSI, dSI, dSI  \
167 167
 
168 168
 const enum drums over_drums[] = {
169 169
     DRUM_LOOP,

Loading…
Cancel
Save