Skip to content

Commit b5499f9

Browse files
Fri 18 Oct 2019 16:14:16 EDT - new interface for Settings (Themes and Volume)
1 parent 565e82b commit b5499f9

File tree

4 files changed

+115
-9
lines changed

4 files changed

+115
-9
lines changed

Launchers/retro-esp32/main/includes/core.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,5 @@
5757
#include "../sprites/icons.h"
5858
#include "../sprites/logo.h"
5959
#include "../sprites/media.h"
60-
#include "../sprites/folder.h"
60+
#include "../sprites/folder.h"
61+
#include "../sprites/speaker.h"

Launchers/retro-esp32/main/includes/declarations.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ void draw_systems();
5555
void draw_media(int x, int y, bool current);
5656
void draw_folder(int x, int y, bool current);
5757
void draw_battery();
58+
void draw_speaker();
5859
void draw_numbers();
5960
void draw_launcher();
6061
void draw_launcher_options();

Launchers/retro-esp32/main/main.c

Lines changed: 29 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,7 @@
156156
//{#pragma region Debounce
157157
void debounce(int key) {
158158
draw_battery();
159+
draw_speaker();
159160
while (gamepad.values[key]) odroid_input_gamepad_read(&gamepad);
160161
}
161162
//}#pragma endregion Debounce
@@ -290,6 +291,7 @@
290291
int h = 60;
291292
for (int i = 0; i < 4; i++) draw_mask(0, i*h, w, h);
292293
draw_battery();
294+
draw_speaker();
293295
}
294296
//}#pragma endregion Mask
295297

@@ -320,11 +322,7 @@
320322
int i = 0;
321323
for(h = 0; h < 7; h++) {
322324
for(w = 0; w < 100; w++) {
323-
if(SETTING == 1) {
324-
buffer[i] = GUI.fg;
325-
} else {
326-
buffer[i] = i%2 == 0 ? GUI.fg : GUI.bg;
327-
}
325+
buffer[i] = (w+h)%2 == 0 ? GUI.fg : GUI.bg;
328326
i++;
329327
}
330328
}
@@ -344,6 +342,8 @@
344342
}
345343
ili9341_write_frame_rectangleLE(x, y, (25 * volume), 7, buffer);
346344
}
345+
346+
draw_speaker();
347347
}
348348
int32_t get_volume() {
349349
return odroid_settings_Volume_get();
@@ -517,6 +517,27 @@
517517
#endif
518518
}
519519

520+
void draw_speaker() {
521+
int32_t volume = get_volume();
522+
523+
int i = 0;
524+
int x = SCREEN.w - 52;
525+
int y = 8;
526+
int h = 16;
527+
int w = 16;
528+
529+
draw_mask(x,y,16,16);
530+
531+
int dh = 64 - (volume*16);
532+
for(h = 0; h < 16; h++) {
533+
for(w = 0; w < 16; w++) {
534+
buffer[i] = speaker[dh+h][w] == WHITE ? WHITE : GUI.bg;
535+
i++;
536+
}
537+
}
538+
ili9341_write_frame_rectangleLE(x, y, w, h, buffer);
539+
}
540+
520541
void draw_numbers() {
521542
int x = 296;
522543
int y = POS.y + 48;
@@ -784,7 +805,7 @@
784805
draw_systems();
785806
usleep(20000);
786807
}
787-
draw_mask(0,0,SCREEN.w - 32,32);
808+
draw_mask(0,0,SCREEN.w - 56,32);
788809
draw_text(16,16,EMULATORS[STEP], false, true);
789810
STEP == 0 ? draw_settings() : get_files();
790811
clean_up();
@@ -837,7 +858,6 @@
837858
}
838859
}
839860
}
840-
841861
//}#pragma endregion Animations
842862

843863
//{#pragma region Boot Screens
@@ -1004,6 +1024,7 @@
10041024
//{#pragma region Launcher
10051025
static void launcher() {
10061026
draw_battery();
1027+
draw_speaker();
10071028
while (true) {
10081029
/*
10091030
Get Gamepad State
@@ -1165,7 +1186,7 @@
11651186
*/
11661187
if (gamepad.values[ODROID_INPUT_A]) {
11671188
if(STEP == 0) {
1168-
if(!SETTINGS) {
1189+
if(!SETTINGS && SETTING != 1) {
11691190
SETTINGS = true;
11701191
draw_background();
11711192
draw_systems();
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
const uint16_t speaker[80][16] = {
2+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
3+
{0,0,0,0,0,0,0,0,0,0,0,0,65535,0,0,0},
4+
{0,0,0,0,0,0,0,0,0,0,0,0,0,65535,0,0},
5+
{0,0,0,0,0,65535,65535,65535,0,0,0,65535,0,0,65535,0},
6+
{0,0,0,0,65535,0,0,65535,0,0,0,0,65535,0,0,65535},
7+
{0,0,0,65535,0,0,0,65535,0,0,65535,0,0,65535,0,65535},
8+
{0,65535,65535,0,0,0,0,65535,0,0,0,65535,0,65535,0,65535},
9+
{0,65535,0,0,0,0,0,65535,0,65535,0,65535,0,65535,0,65535},
10+
{0,65535,0,0,0,0,0,65535,0,65535,0,65535,0,65535,0,65535},
11+
{0,65535,65535,0,0,0,0,65535,0,0,0,65535,0,65535,0,65535},
12+
{0,0,0,65535,0,0,0,65535,0,0,65535,0,0,65535,0,65535},
13+
{0,0,0,0,65535,0,0,65535,0,0,0,0,65535,0,0,65535},
14+
{0,0,0,0,0,65535,65535,65535,0,0,0,65535,0,0,65535,0},
15+
{0,0,0,0,0,0,0,0,0,0,0,0,0,65535,0,0},
16+
{0,0,0,0,0,0,0,0,0,0,0,0,65535,0,0,0},
17+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
18+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
19+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
20+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
21+
{0,0,0,0,0,65535,65535,65535,0,0,0,65535,0,0,0,0},
22+
{0,0,0,0,65535,0,0,65535,0,0,0,0,65535,0,0,0},
23+
{0,0,0,65535,0,0,0,65535,0,0,65535,0,0,65535,0,0},
24+
{0,65535,65535,0,0,0,0,65535,0,0,0,65535,0,65535,0,0},
25+
{0,65535,0,0,0,0,0,65535,0,65535,0,65535,0,65535,0,0},
26+
{0,65535,0,0,0,0,0,65535,0,65535,0,65535,0,65535,0,0},
27+
{0,65535,65535,0,0,0,0,65535,0,0,0,65535,0,65535,0,0},
28+
{0,0,0,65535,0,0,0,65535,0,0,65535,0,0,65535,0,0},
29+
{0,0,0,0,65535,0,0,65535,0,0,0,0,65535,0,0,0},
30+
{0,0,0,0,0,65535,65535,65535,0,0,0,65535,0,0,0,0},
31+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
32+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
33+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
34+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
35+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
36+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
37+
{0,0,0,0,0,65535,65535,65535,0,0,0,0,0,0,0,0},
38+
{0,0,0,0,65535,0,0,65535,0,0,0,0,0,0,0,0},
39+
{0,0,0,65535,0,0,0,65535,0,0,65535,0,0,0,0,0},
40+
{0,65535,65535,0,0,0,0,65535,0,0,0,65535,0,0,0,0},
41+
{0,65535,0,0,0,0,0,65535,0,65535,0,65535,0,0,0,0},
42+
{0,65535,0,0,0,0,0,65535,0,65535,0,65535,0,0,0,0},
43+
{0,65535,65535,0,0,0,0,65535,0,0,0,65535,0,0,0,0},
44+
{0,0,0,65535,0,0,0,65535,0,0,65535,0,0,0,0,0},
45+
{0,0,0,0,65535,0,0,65535,0,0,0,0,0,0,0,0},
46+
{0,0,0,0,0,65535,65535,65535,0,0,0,0,0,0,0,0},
47+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
48+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
49+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
50+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
51+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
52+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
53+
{0,0,0,0,0,65535,65535,65535,0,0,0,0,0,0,0,0},
54+
{0,0,0,0,65535,0,0,65535,0,0,0,0,0,0,0,0},
55+
{0,0,0,65535,0,0,0,65535,0,0,0,0,0,0,0,0},
56+
{0,65535,65535,0,0,0,0,65535,0,0,0,0,0,0,0,0},
57+
{0,65535,0,0,0,0,0,65535,0,65535,0,0,0,0,0,0},
58+
{0,65535,0,0,0,0,0,65535,0,65535,0,0,0,0,0,0},
59+
{0,65535,65535,0,0,0,0,65535,0,0,0,0,0,0,0,0},
60+
{0,0,0,65535,0,0,0,65535,0,0,0,0,0,0,0,0},
61+
{0,0,0,0,65535,0,0,65535,0,0,0,0,0,0,0,0},
62+
{0,0,0,0,0,65535,65535,65535,0,0,0,0,0,0,0,0},
63+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
64+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
65+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
66+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
67+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
68+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
69+
{0,0,0,0,0,65535,65535,65535,0,0,0,0,0,0,0,0},
70+
{0,0,0,0,65535,0,0,65535,0,0,0,0,0,0,0,0},
71+
{0,0,0,65535,0,0,0,65535,0,0,0,0,0,0,0,0},
72+
{0,65535,65535,0,0,0,0,65535,0,0,65535,0,0,0,65535,0},
73+
{0,65535,0,0,0,0,0,65535,0,0,0,65535,0,65535,0,0},
74+
{0,65535,0,0,0,0,0,65535,0,0,0,0,65535,0,0,0},
75+
{0,65535,65535,0,0,0,0,65535,0,0,0,65535,0,65535,0,0},
76+
{0,0,0,65535,0,0,0,65535,0,0,65535,0,0,0,65535,0},
77+
{0,0,0,0,65535,0,0,65535,0,0,0,0,0,0,0,0},
78+
{0,0,0,0,0,65535,65535,65535,0,0,0,0,0,0,0,0},
79+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
80+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
81+
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
82+
83+
};

0 commit comments

Comments
 (0)