aboutsummaryrefslogtreecommitdiffstats
path: root/rwalk
diff options
context:
space:
mode:
authorkatherine <ageha@airen-no-jikken.icu>2021-02-11 00:41:56 -0700
committerkatherine <ageha@airen-no-jikken.icu>2021-02-11 00:41:56 -0700
commit51ba9e5494cb848cd29fa174c0dcea4a5ac96eef (patch)
tree793b8f5f269af9155a371072cff280568be54d7e /rwalk
parentc0bebcff77eacd58903e487533c510df1916b5e7 (diff)
downloadallegro-sketches-51ba9e5494cb848cd29fa174c0dcea4a5ac96eef.tar.gz
wolfrand
Diffstat (limited to 'rwalk')
-rw-r--r--rwalk/Makefile29
-rw-r--r--rwalk/screenshot.pngbin1188 -> 0 bytes
-rw-r--r--rwalk/src/main.c165
3 files changed, 0 insertions, 194 deletions
diff --git a/rwalk/Makefile b/rwalk/Makefile
deleted file mode 100644
index da68641..0000000
--- a/rwalk/Makefile
+++ /dev/null
@@ -1,29 +0,0 @@
-CFLAGS+=-Wall -O2 $(shell pkg-config --cflags allegro-5 allegro_primitives-5 libsodium)
-CFLAGSDEBUG=-Wall -ggdb3 -O0 -DDEBUG $(shell pkg-config --cflags allegro-5 allegro_primitives-5 libsodium)
-LDFLAGS+=-Wall -O2 $(shell pkg-config --libs allegro-5 allegro_primitives-5 libsodium)
-LDFLAGSDEBUG=-Wall -ggdb3 -O0 -DDEBUG $(shell pkg-config --libs allegro-5 allegro_primitives-5 libsodium)
-SRCDIR=./src
-OBJDIR=./build
-SRC=$(wildcard $(SRCDIR)/*.c)
-OBJ=$(patsubst $(SRCDIR)%.c,$(OBJDIR)%.o,$(SRC))
-BIN=rwalk
-
-all: $(OBJ)
- $(CC) $(LDFLAGS) -o $(BIN) $^
-
-$(OBJ): | $(OBJDIR)
-
-$(OBJDIR)/%.o: $(SRCDIR)/%.c
- $(CC) $(CFLAGS) -c -o $@ $<
-
-$(OBJDIR):
- mkdir -p $(OBJDIR)
-
-clean:
- rm -rf $(OBJDIR) $(BIN)
-
-debug: CFLAGS=$(CFLAGSDEBUG)
-debug: LDFLAGS=$(LDFLAGSDEBUG)
-debug: all
-
-new: clean all
diff --git a/rwalk/screenshot.png b/rwalk/screenshot.png
deleted file mode 100644
index a169b02..0000000
--- a/rwalk/screenshot.png
+++ /dev/null
Binary files differ
diff --git a/rwalk/src/main.c b/rwalk/src/main.c
deleted file mode 100644
index 28592e4..0000000
--- a/rwalk/src/main.c
+++ /dev/null
@@ -1,165 +0,0 @@
-#include <stdlib.h>
-#include <stdbool.h>
-#include <stdio.h>
-
-#include <allegro5/allegro5.h>
-#include <allegro5/allegro_primitives.h>
-
-#include <sodium.h>
-
-#define DO_INIT(check, desc) \
- if (!(check)) { \
- fprintf(stderr, "err: can't initialise %s\n", desc); \
- rval = 1; \
- goto done; \
- }
-
-int main(int argc, char **argv)
-{
- int rval = 0;
- unsigned goframes;
- uint32_t randbytes;
-
- struct {
- uint32_t middle;
- uint32_t upper;
- uint32_t lower;
- } biases[4] = {
- /* unbiased */
- {
- .middle = 0x80000000,
- .upper = 0xc0000000,
- .lower = 0x40000000,
- },
- /* 1/64 */
- {
- .middle = 0x7c000000,
- .upper = 0xbe000000,
- .lower = 0x3e000000,
- },
- /* 1/32 */
- {
- .middle = 0x78000000,
- .upper = 0xbc000000,
- .lower = 0x3c000000,
- },
- /* 1/16 */
- {
- .middle = 0x70000000,
- .upper = 0xb8000000,
- .lower = 0x38000000,
- }
- };
- unsigned setting = 0;
-
- ALLEGRO_DISPLAY* d = NULL;
- ALLEGRO_TIMER* t = NULL;
- ALLEGRO_EVENT_QUEUE* eq = NULL;
- ALLEGRO_EVENT e;
-
- float x = 320.0, y = 240.0;
-
-
- DO_INIT(sodium_init() >= 0, "sodium");
-
- DO_INIT(al_init(), "allegro");
- DO_INIT(al_init_primitives_addon(), "primitives");
- DO_INIT(al_install_keyboard(), "keyboard");
-
- DO_INIT(t = al_create_timer(1.0 / 30.0), "timer");
- DO_INIT(eq = al_create_event_queue(), "event queue");
-
- al_set_new_display_option(ALLEGRO_SINGLE_BUFFER, 1, ALLEGRO_REQUIRE);
- DO_INIT(d = al_create_display(641, 481), "display");
-
- al_register_event_source(eq, al_get_keyboard_event_source());
- al_register_event_source(eq, al_get_display_event_source(d));
- al_register_event_source(eq, al_get_timer_event_source(t));
-
- al_clear_to_color(al_map_rgb(0, 0, 0));
-
-
- goframes = 0;
- al_start_timer(t);
- while(true) {
- al_wait_for_event(eq, &e);
-
- switch (e.type) {
-
- case ALLEGRO_EVENT_DISPLAY_CLOSE:
- goto done;
-
- case ALLEGRO_EVENT_KEY_DOWN:
- switch(e.keyboard.keycode) {
-
- case ALLEGRO_KEY_1:
- setting = 0;
- puts("1");
- break;
-
- case ALLEGRO_KEY_2:
- setting = 1;
- puts("2");
- break;
-
- case ALLEGRO_KEY_3:
- setting = 2;
- puts("3");
- break;
-
- case ALLEGRO_KEY_4:
- setting = 3;
- puts("4");
- break;
-
- default:
- break;
-
- }
-
- if (! (e.keyboard.keycode == ALLEGRO_KEY_ENTER) )
- continue;
-
- goframes = 1000;
- case ALLEGRO_EVENT_TIMER:
- if (goframes == 0) {
- al_flip_display();
- break;
- }
-
- al_draw_filled_rectangle(x, y, x + 1.0, y + 1.0, al_map_rgb(255, 255, 255));
-
- randbytes = randombytes_random();
-
- if (randbytes >= biases[setting].middle) {
- if (randbytes >= biases[setting].upper)
- x += 1;
- else
- y += 1;
- } else {
- if (randbytes >= biases[setting].lower)
- x -= 1;
- else
- y -= 1;
- }
-
- al_flip_display();
-
- goframes--;
- if (goframes == 0)
- puts("next");
- }
- }
-
-
-done:
-
- if (d)
- al_destroy_display(d);
- if (t)
- al_destroy_timer(t);
- if (eq)
- al_destroy_event_queue(eq);
-
- return rval;
-}