summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZoRo <dos21h@gmail.com>2020-09-05 19:34:06 +0100
committerZoRo <dos21h@gmail.com>2020-09-05 19:34:06 +0100
commit22726f1e87a4fa668b67f276b61231297931359f (patch)
treeb8a79c8abf76e18949c3832fc41a1c9cc22c90a9
downloadwasm_fractal-22726f1e87a4fa668b67f276b61231297931359f.tar.gz
wasm_fractal-22726f1e87a4fa668b67f276b61231297931359f.zip
initial commit
-rw-r--r--Makefile7
-rw-r--r--fractal.c17
-rw-r--r--koh.c1
-rw-r--r--koh.h26
-rw-r--r--utstack.h88
5 files changed, 139 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..dc702c4
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,7 @@
+
+CC=gcc
+
+make:
+ $(CC) -c koh.c
+ $(CC) -c fractal.c
+ $(CC) koh.o fractal.o -o fractal \ No newline at end of file
diff --git a/fractal.c b/fractal.c
new file mode 100644
index 0000000..dcab68b
--- /dev/null
+++ b/fractal.c
@@ -0,0 +1,17 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <time.h>
+#include <math.h>
+#include <string.h>
+#include <stdint.h>
+#include <time.h>
+
+#include <SDL/SDL.h>
+#include <SDL/SDL_ttf.h>
+
+int main()
+{
+ return 0;
+}
+
+
diff --git a/koh.c b/koh.c
new file mode 100644
index 0000000..23e579c
--- /dev/null
+++ b/koh.c
@@ -0,0 +1 @@
+#include "koh.h" \ No newline at end of file
diff --git a/koh.h b/koh.h
new file mode 100644
index 0000000..6018fb9
--- /dev/null
+++ b/koh.h
@@ -0,0 +1,26 @@
+#ifndef __KOH_H
+#define __KOH_H
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <time.h>
+#include <math.h>
+#include <string.h>
+#include <stdint.h>
+#include <time.h>
+
+typedef struct
+{
+ int k;
+ int levels;
+} koh_config;
+
+typedef struct
+{
+ int x1,y1,x2,y2;
+ int level;
+ int r,g,b,a;
+ int invisible;
+} koh_node;
+
+#endif \ No newline at end of file
diff --git a/utstack.h b/utstack.h
new file mode 100644
index 0000000..3b0c1a0
--- /dev/null
+++ b/utstack.h
@@ -0,0 +1,88 @@
+/*
+Copyright (c) 2018-2018, Troy D. Hanson http://troydhanson.github.com/uthash/
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
+OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+#ifndef UTSTACK_H
+#define UTSTACK_H
+
+#define UTSTACK_VERSION 2.1.0
+
+/*
+ * This file contains macros to manipulate a singly-linked list as a stack.
+ *
+ * To use utstack, your structure must have a "next" pointer.
+ *
+ * ----------------.EXAMPLE -------------------------
+ * struct item {
+ * int id;
+ * struct item *next;
+ * }
+ *
+ * struct item *stack = NULL:
+ *
+ * int main() {
+ * int count;
+ * struct item *tmp;
+ * struct item *item = malloc(sizeof *item);
+ * item->id = 42;
+ * STACK_COUNT(stack, tmp, count); assert(count == 0);
+ * STACK_PUSH(stack, item);
+ * STACK_COUNT(stack, tmp, count); assert(count == 1);
+ * STACK_POP(stack, item);
+ * free(item);
+ * STACK_COUNT(stack, tmp, count); assert(count == 0);
+ * }
+ * --------------------------------------------------
+ */
+
+#define STACK_TOP(head) (head)
+
+#define STACK_EMPTY(head) (!(head))
+
+#define STACK_PUSH(head,add) \
+ STACK_PUSH2(head,add,next)
+
+#define STACK_PUSH2(head,add,next) \
+do { \
+ (add)->next = (head); \
+ (head) = (add); \
+} while (0)
+
+#define STACK_POP(head,result) \
+ STACK_POP2(head,result,next)
+
+#define STACK_POP2(head,result,next) \
+do { \
+ (result) = (head); \
+ (head) = (head)->next; \
+} while (0)
+
+#define STACK_COUNT(head,el,counter) \
+ STACK_COUNT2(head,el,counter,next) \
+
+#define STACK_COUNT2(head,el,counter,next) \
+do { \
+ (counter) = 0; \
+ for ((el) = (head); el; (el) = (el)->next) { ++(counter); } \
+} while (0)
+
+#endif /* UTSTACK_H */