130 lines
2.4 KiB
C
130 lines
2.4 KiB
C
/*
|
|
* temp_ui.c: temporary ui shit until I can write something better
|
|
*/
|
|
|
|
#include "ch32x035_conf.h"
|
|
#include "btn.h"
|
|
|
|
#include "led/matrix.h"
|
|
#include "led/ledprog.h"
|
|
|
|
|
|
|
|
static uint32_t brt = 28;
|
|
|
|
uint8_t ribbon_prog = 0;
|
|
uint8_t aii_prog = 0;
|
|
|
|
|
|
|
|
static void brt_set(uint8_t idx)
|
|
{
|
|
switch (idx) {
|
|
case 1: {
|
|
if (brt > 4)
|
|
brt--;
|
|
break;
|
|
}
|
|
case 2: {
|
|
brt++;
|
|
if (brt > 44) brt = 44;
|
|
break;
|
|
}
|
|
}
|
|
|
|
aw20x_set_dim_global(&awled, brt);
|
|
}
|
|
|
|
static void prog_set(uint8_t idx)
|
|
{
|
|
switch (idx) {
|
|
case 3: { // trio bottom left
|
|
ribbon_prog = 0;
|
|
lp_ribbon_init();
|
|
break;
|
|
}
|
|
case 4: { // trio upper
|
|
ribbon_prog = 1;
|
|
lp_ribbon_init();
|
|
break;
|
|
}
|
|
case 5: { // da erf
|
|
ribbon_prog = 3;
|
|
lp_ribbon_init();
|
|
break;
|
|
}
|
|
case 6: { // big crater
|
|
aii_prog = 1;
|
|
lp_aii_init();
|
|
break;
|
|
}
|
|
case 7: { // next to big crater
|
|
aii_prog = 2;
|
|
lp_aii_init();
|
|
break;
|
|
}
|
|
case 8: { // bottom crater
|
|
aii_prog = 0;
|
|
lp_aii_init();
|
|
break;
|
|
}
|
|
case 9: { // trio right
|
|
ribbon_prog = 2;
|
|
lp_ribbon_init();
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
void tempui_init()
|
|
{
|
|
int i;
|
|
|
|
btn[2].cb_push = brt_set;
|
|
btn[2].cb_hold = brt_set;
|
|
btn[2].repeat = 200;
|
|
|
|
btn[1].cb_push = brt_set;
|
|
btn[1].cb_hold = brt_set;
|
|
btn[1].repeat = 200;
|
|
|
|
for (i = 3; i < 10; i++) {
|
|
btn[i].cb_push = prog_set;
|
|
}
|
|
}
|
|
|
|
void tempui_lp_runprog()
|
|
{
|
|
switch (ribbon_prog) {
|
|
case 0: {
|
|
lp_ribbon_upward(400, 3, 4);
|
|
break;
|
|
}
|
|
case 1: {
|
|
lp_ribbon_upward(800, 1, 2);
|
|
break;
|
|
}
|
|
case 2: {
|
|
lp_ribbon_upward(1500, 4, 7);
|
|
break;
|
|
}
|
|
case 3: {
|
|
lp_ribbon_twinkle(3, 0x5f, 0x1f, 0xfd);
|
|
break;
|
|
}
|
|
}
|
|
|
|
switch (aii_prog) {
|
|
case 0: {
|
|
// do nothing
|
|
break;
|
|
}
|
|
case 1: {
|
|
lp_aii_filldown(800, 14, 1200, 3, 0x60);
|
|
break;
|
|
}
|
|
case 2: {
|
|
lp_aii_bounce(7, 0x3f, 2, 3);
|
|
}
|
|
}
|
|
} |