]> 4ch.mooo.com Git - 16.git/commitdiff
wwww working on reading the main map data of the bg layer~ wwww
authorsparky4 <sparky4@cock.li>
Mon, 23 Mar 2015 19:02:34 +0000 (14:02 -0500)
committersparky4 <sparky4@cock.li>
Mon, 23 Mar 2015 19:02:34 +0000 (14:02 -0500)
modified:   pcxtest.exe
modified:   scroll.exe
deleted:    src/lib/jsmn/example/JSONDUMP.EXE
deleted:    src/lib/jsmn/example/MAPTEST.EXE
deleted:    src/lib/jsmn/example/MAPTEST2.EXE
deleted:    src/lib/jsmn/example/SIMPLE.EXE
deleted:    src/lib/jsmn/example/jsondump
deleted:    src/lib/jsmn/example/jsondump.c
deleted:    src/lib/jsmn/example/maptest
deleted:    src/lib/jsmn/example/maptest.c
deleted:    src/lib/jsmn/example/maptest2
deleted:    src/lib/jsmn/example/maptest2.c
deleted:    src/lib/jsmn/example/simple.c
new file:   src/lib/jsmn/jsmn.7z
modified:   src/lib/mapread.c
modified:   src/lib/mapread.h

16 files changed:
pcxtest.exe
scroll.exe
src/lib/jsmn/example/JSONDUMP.EXE [deleted file]
src/lib/jsmn/example/MAPTEST.EXE [deleted file]
src/lib/jsmn/example/MAPTEST2.EXE [deleted file]
src/lib/jsmn/example/SIMPLE.EXE [deleted file]
src/lib/jsmn/example/jsondump [deleted file]
src/lib/jsmn/example/jsondump.c [deleted file]
src/lib/jsmn/example/maptest [deleted file]
src/lib/jsmn/example/maptest.c [deleted file]
src/lib/jsmn/example/maptest2 [deleted file]
src/lib/jsmn/example/maptest2.c [deleted file]
src/lib/jsmn/example/simple.c [deleted file]
src/lib/jsmn/jsmn.7z [new file with mode: 0644]
src/lib/mapread.c
src/lib/mapread.h

index 3ddfde9238b32fa88ed5129c171af2b3ea22021e..98fa93af5c2319b0de39ce49b26875c0c4bc32a5 100644 (file)
Binary files a/pcxtest.exe and b/pcxtest.exe differ
index fd02ce14102d9237980c08cfa89d0b39463d86c8..77635411312695818a70f232c19cd71fa124856f 100644 (file)
Binary files a/scroll.exe and b/scroll.exe differ
diff --git a/src/lib/jsmn/example/JSONDUMP.EXE b/src/lib/jsmn/example/JSONDUMP.EXE
deleted file mode 100644 (file)
index fc4c97a..0000000
Binary files a/src/lib/jsmn/example/JSONDUMP.EXE and /dev/null differ
diff --git a/src/lib/jsmn/example/MAPTEST.EXE b/src/lib/jsmn/example/MAPTEST.EXE
deleted file mode 100644 (file)
index f3a7167..0000000
Binary files a/src/lib/jsmn/example/MAPTEST.EXE and /dev/null differ
diff --git a/src/lib/jsmn/example/MAPTEST2.EXE b/src/lib/jsmn/example/MAPTEST2.EXE
deleted file mode 100644 (file)
index df04546..0000000
Binary files a/src/lib/jsmn/example/MAPTEST2.EXE and /dev/null differ
diff --git a/src/lib/jsmn/example/SIMPLE.EXE b/src/lib/jsmn/example/SIMPLE.EXE
deleted file mode 100644 (file)
index 77ee0f4..0000000
Binary files a/src/lib/jsmn/example/SIMPLE.EXE and /dev/null differ
diff --git a/src/lib/jsmn/example/jsondump b/src/lib/jsmn/example/jsondump
deleted file mode 100644 (file)
index bf6541f..0000000
Binary files a/src/lib/jsmn/example/jsondump and /dev/null differ
diff --git a/src/lib/jsmn/example/jsondump.c b/src/lib/jsmn/example/jsondump.c
deleted file mode 100644 (file)
index 04d9f5a..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-#include "../jsmn.c"
-
-/*
- * An example of reading JSON from stdin and printing its content to stdout.
- * The output looks like YAML, but I'm not sure if it's really compatible.
- */
-
-static int dump(const char *js, jsmntok_t *t, size_t count, int indent) {
-       int i, j, k;
-       if (count == 0) {
-               return 0;
-       }
-       if (t->type == JSMN_PRIMITIVE) {
-               printf("%.*s", t->end - t->start, js+t->start);
-               return 1;
-       } else if (t->type == JSMN_STRING) {
-               printf("'%.*s'", t->end - t->start, js+t->start);
-               return 1;
-       } else if (t->type == JSMN_OBJECT) {
-               printf("\n");
-               j = 0;
-               for (i = 0; i < t->size; i++) {
-                       for (k = 0; k < indent; k++) printf("  ");
-                       j += dump(js, t+1+j, count-j, indent+1);
-                       printf(": ");
-                       j += dump(js, t+1+j, count-j, indent+1);
-                       printf("\n");
-               }
-               return j+1;
-       } else if (t->type == JSMN_ARRAY) {
-               j = 0;
-               printf("\n");
-               for (i = 0; i < t->size; i++) {
-                       for (k = 0; k < indent-1; k++) printf("  ");
-                       printf("   - ");
-                       j += dump(js, t+1+j, count-j, indent+1);
-                       printf("\n");
-               }
-               return j+1;
-       }
-       return 0;
-}
-
-int main() {
-       int r;
-       int eof_expected = 0;
-       char *js = NULL;
-       size_t jslen = 0;
-       char buf[BUFSIZ];
-
-       jsmn_parser p;
-       jsmntok_t *tok;
-       size_t tokcount = 2;
-
-       /* Prepare parser */
-       jsmn_init(&p);
-
-       /* Allocate some tokens as a start */
-       tok = malloc(sizeof(*tok) * tokcount);
-       if (tok == NULL) {
-               fprintf(stderr, "malloc(): errno=%d\n", errno);
-               return 3;
-       }
-
-       for (;;) {
-               /* Read another chunk */
-               r = fread(buf, 1, sizeof(buf), stdin);
-               if (r < 0) {
-                       fprintf(stderr, "fread(): %d, errno=%d\n", r, errno);
-                       return 1;
-               }
-               if (r == 0) {
-                       if (eof_expected != 0) {
-                               return 0;
-                       } else {
-                               fprintf(stderr, "fread(): unexpected EOF\n");
-                               return 2;
-                       }
-               }
-
-               js = realloc(js, jslen + r + 1);
-               if (js == NULL) {
-                       fprintf(stderr, "realloc(): errno=%d\n", errno);
-                       return 3;
-               }
-               strncpy(js + jslen, buf, r);
-               jslen = jslen + r;
-
-again:
-               r = jsmn_parse(&p, js, jslen, tok, tokcount);
-               if (r < 0) {
-                       if (r == JSMN_ERROR_NOMEM) {
-                               tokcount = tokcount * 2;
-                               tok = realloc(tok, sizeof(*tok) * tokcount);
-                               if (tok == NULL) {
-                                       fprintf(stderr, "realloc(): errno=%d\n", errno);
-                                       return 3;
-                               }
-                               goto again;
-                       }
-               } else {
-                       dump(js, tok, p.toknext, 0);
-                       eof_expected = 1;
-               }
-       }
-
-       return 0;
-}
diff --git a/src/lib/jsmn/example/maptest b/src/lib/jsmn/example/maptest
deleted file mode 100644 (file)
index a72fa7f..0000000
Binary files a/src/lib/jsmn/example/maptest and /dev/null differ
diff --git a/src/lib/jsmn/example/maptest.c b/src/lib/jsmn/example/maptest.c
deleted file mode 100644 (file)
index 7cceabb..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-//#include <errno.h>
-#include "../jsmn.c"
-
-//#define BUFSIZ 2048
-
-/*
- * A small example of jsmn parsing when JSON structure is known and number of
- * tokens is predictable.
- */
-
-/*char *json_string =
-       "{\"user\": \"johndoe\", \"admin\": false, \"uid\": 1000,\n  "
-       "\"groups\": [\"users\", \"wheel\", \"audio\", \"video\"]}";*/
-
-long int filesize(FILE *fp)\r
-{\r
-       long int save_pos, size_of_file;\r
-\r
-       save_pos = ftell(fp);\r
-       fseek(fp, 0L, SEEK_END);\r
-       size_of_file = ftell(fp);\r
-       fseek(fp, save_pos, SEEK_SET);\r
-       return(size_of_file);\r
-}
-
-static int jsoneq(const char *json, jsmntok_t *tok, const char *s) {
-       if (tok->type == JSMN_STRING && (int) strlen(s) == tok->end - tok->start &&
-                       strncmp(json + tok->start, s, tok->end - tok->start) == 0) {
-               return 0;
-       }
-       return -1;
-}
-
-int main() {
-       int i;
-       int r;
-       size_t z;
-       jsmn_parser p;
-       jsmntok_t t[(BUFSIZ/sizeof(jsmntok_t))*2]; /* We expect no more than 128 tokens */
-       FILE *fh = fopen("../../../../data/test.map", "r");
-       char *json_string = malloc(filesize(fh));
-
-       if(fh != NULL)
-       {
-       /*t = malloc(2048);
-       if (t == NULL) {
-               fprintf(stderr, "malloc(): errno=%d\n", errno);
-               return 3;
-       }*/
-               //printf("\n%d\n\n", sizeof(*t));
-               printf("\n%d", sizeof(*t));
-               printf("\n%d", sizeof(t));
-               printf("\n%d\n\n", sizeof(t)/sizeof(t[0]));
-               z = fread(json_string, 1, filesize(fh), fh);
-               //char json_s[2048];
-               fclose(fh); fh = NULL;
-               printf("[%d]\n", z);
-               json_string[z] = '\0';
-               // we can now close the file
-               //printf("]%s[\n", json_s);
-               //json_string=json_s;
-               //printf("[[%s]]\n", json_string);
-
-       jsmn_init(&p);
-       r = jsmn_parse(&p, json_string, strlen(json_string), t, sizeof(t)/sizeof(t[0]));
-       //t[(BUFSIZ/sizeof(jsmntok_t))*2+1].type=JSMN_OBJECT;
-       printf("[\n%s\n]", json_string);
-       printf("[[%d]]\n",r);
-       if (r < 0) {
-               printf("Failed to parse JSON: %d\n", r);
-               return 1;
-       }
-
-       /* Assume the top-level element is an object */
-       if (r < 1 || t[0].type != JSMN_OBJECT) {
-               printf("Object expected\n");
-               return 1;
-       }
-
-       /* Loop over all keys of the root object */
-       for (i = 1; i < r; i++) {
-               if (jsoneq(json_string, &t[i], "image") == 0) {
-                       /* We may use strndup() to fetch string value */
-                       printf("- image: %.*s\n", t[i+1].end-t[i+1].start,
-                                       json_string + t[i+1].start);
-                       i++;
-               } else if (jsoneq(json_string, &t[i], "admin") == 0) {
-                       /* We may additionally check if the value is either "true" or "false" */
-                       printf("- Admin: %.*s\n", t[i+1].end-t[i+1].start,
-                                       json_string + t[i+1].start);
-                       i++;
-               } else if (jsoneq(json_string, &t[i], "uid") == 0) {
-                       /* We may want to do strtol() here to get numeric value */
-                       printf("- UID: %.*s\n", t[i+1].end-t[i+1].start,
-                                       json_string + t[i+1].start);
-                       i++;
-               } else if (jsoneq(json_string, &t[i], "tilesets") == 0) {
-                       int j;
-                       printf("- tilesets:\n");
-                       if (t[i+1].type != JSMN_ARRAY) {
-                               continue; /* We expect groups to be an array of strings */
-                       }
-                       for (j = 0; j < t[i+1].size; j++) {
-                               jsmntok_t *g = &t[i+j+2];
-                               printf("  * %.*s\n", g->end - g->start, json_string + g->start);
-                       }
-                       i += t[i+1].size + 1;
-               } else {
-                       /*printf("Unexpected key: %.*s\n", t[i].end-t[i].start,
-                                       json_string + t[i].start);*/
-               }
-       }
-
-       //free(json_string);
-       }
-       if (fh != NULL) fclose(fh);
-  ////}
-       return 0;
-}
diff --git a/src/lib/jsmn/example/maptest2 b/src/lib/jsmn/example/maptest2
deleted file mode 100644 (file)
index abc5640..0000000
Binary files a/src/lib/jsmn/example/maptest2 and /dev/null differ
diff --git a/src/lib/jsmn/example/maptest2.c b/src/lib/jsmn/example/maptest2.c
deleted file mode 100644 (file)
index 017fbf8..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-#include "../jsmn.c"
-#include "../../../lib/types.h"
-
-/*
- * An example of reading JSON from stdin and printing its content to stdout.
- * The output looks like YAML, but I'm not sure if it's really compatible.
- */\r
-
-char *js_sv;
-
-typedef struct {\r
-       //bitmap_t *data;
-       byte *data;\r
-       word tileHeight;\r
-       word tileWidth;\r
-       unsigned int rows;\r
-       unsigned int cols;\r
-} tiles_t;\r
-\r
-typedef struct {\r
-       byte    *data;\r
-       tiles_t *tiles;\r
-       int width;\r
-       int height;\r
-} map_t;
-
-static int jsoneq(const char *json, jsmntok_t *tok, const char *s) {
-       if (tok->type == JSMN_STRING && (int) strlen(s) == tok->end - tok->start &&
-                       strncmp(json + tok->start, s, tok->end - tok->start) == 0) {
-               return 0;
-       }
-       return -1;
-}
-
-static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char *js_sv,*/ map_t *map) {
-       int i, j, k;
-       if (count == 0) {
-               return 0;
-       }
-       /* We may want to do strtol() here to get numeric value */
-       if (t->type == JSMN_PRIMITIVE) {
-               if(js_sv == "height")
-               {
-                       map->height = (int)strtol(js+t->start, (char **)js+t->end, 10);
-                       printf("h:[%d]\n", map->height);
-               }else if(js_sv == "width")
-               {
-                       map->width = (int)strtol(js+t->start, (char **)js+t->end, 10);
-                       printf("w:[%d]\n", map->width);
-               }
-               return 1;
-               /* We may use strndup() to fetch string value */
-       } else if (t->type == JSMN_STRING) {
-               //printf("'%.*s'", t->end - t->start, js+t->start);
-               if (jsoneq(js, t, "height") == 0 && indent==1)
-               {
-                       js_sv="height";//strdup(js+t->start);//, t->end - t->start);
-                       printf("%s\n", js_sv);
-               }else if (jsoneq(js, t, "width") == 0 && indent==1)
-               {
-                       js_sv="width";//strdup(js+t->start);//, t->end - t->start);
-                       printf("%s\n", js_sv);
-               }else js_sv=NULL;
-               return 1;
-       } else if (t->type == JSMN_OBJECT) {
-               //printf("\n");
-               j = 0;
-               for (i = 0; i < t->size; i++) {
-                       //for (k = 0; k < indent; k++) printf("\t");
-                       j += dump(js, t+1+j, count-j, indent+1, map);
-                       //printf(": ");
-                       j += dump(js, t+1+j, count-j, indent+1, map);
-                       //printf("\n");
-               }
-               return j+1;
-       } else if (t->type == JSMN_ARRAY) {
-               j = 0;
-               //printf("==\n");
-               for (i = 0; i < t->size; i++) {
-                       //for (k = 0; k < indent-1; k++) printf("\t");
-                       //printf("\t-");
-                       j += dump(js, t+1+j, count-j, indent+1, map);
-                       //printf("==\n");
-               }
-               return j+1;
-       }
-       return 0;
-}
-
-int loadmap(char *mn, map_t *map)
-{
-       int r;
-       int eof_expected = 0;
-       char *js = NULL;
-       size_t jslen = 0;
-       char buf[BUFSIZ];
-
-       jsmn_parser p;
-       jsmntok_t *tok;
-       size_t tokcount = 2;
-
-       FILE *fh = fopen(mn, "r");
-
-       /* Prepare parser */
-       jsmn_init(&p);
-
-       /* Allocate some tokens as a start */
-       tok = malloc(sizeof(*tok) * tokcount);
-       if (tok == NULL) {
-               fprintf(stderr, "malloc(): errno=%d\n", errno);
-               return 3;
-       }
-
-       for (;;) {
-               /* Read another chunk */
-               r = fread(buf, 1, sizeof(buf), fh);
-               if (r < 0) {
-                       fprintf(stderr, "fread(): %d, errno=%d\n", r, errno);
-                       return 1;
-               }
-               if (r == 0) {
-                       if (eof_expected != 0) {
-                               return 0;
-                       } else {
-                               fprintf(stderr, "fread(): unexpected EOF\n");
-                               return 2;
-                       }
-               }
-
-               js = realloc(js, jslen + r + 1);
-               if (js == NULL) {
-                       fprintf(stderr, "realloc(): errno=%d\n", errno);
-                       return 3;
-               }
-               strncpy(js + jslen, buf, r);
-               jslen = jslen + r;
-
-again:
-               r = jsmn_parse(&p, js, jslen, tok, tokcount);
-               if (r < 0) {
-                       if (r == JSMN_ERROR_NOMEM) {
-                               tokcount = tokcount * 2;
-                               tok = realloc(tok, sizeof(*tok) * tokcount);
-                               if (tok == NULL) {
-                                       fprintf(stderr, "realloc(): errno=%d\n", errno);
-                                       return 3;
-                               }
-                               goto again;
-                       }
-               } else {
-                       dump(js, tok, p.toknext, 0, map);
-                       //fprintf(stdout, "[[[[%d]]]]\n", sizeof(tok));
-                       //printf("[\n%d\n]", jslen);
-                       eof_expected = 1;
-               }
-       }
-
-       return 0;
-}
-
-int main()
-{
-       map_t map;
-       loadmap("../../../../data/test.map", &map);
-       return 0;
-}
diff --git a/src/lib/jsmn/example/simple.c b/src/lib/jsmn/example/simple.c
deleted file mode 100644 (file)
index ca2902b..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-#include <stdio.h>
-#include <string.h>
-#include "../jsmn.c"
-
-/*
- * A small example of jsmn parsing when JSON structure is known and number of
- * tokens is predictable.
- */
-
-const char *JSON_STRING =
-       "{\"user\": \"johndoe\", \"admin\": false, \"uid\": 1000,\n  "
-       "\"groups\": [\"users\", \"wheel\", \"audio\", \"video\"]}";
-
-static int jsoneq(const char *json, jsmntok_t *tok, const char *s) {
-       if (tok->type == JSMN_STRING && (int) strlen(s) == tok->end - tok->start &&
-                       strncmp(json + tok->start, s, tok->end - tok->start) == 0) {
-               return 0;
-       }
-       return -1;
-}
-
-int main() {
-       int i;
-       int r;
-       jsmn_parser p;
-       jsmntok_t t[128]; /* We expect no more than 128 tokens */
-
-       jsmn_init(&p);
-       r = jsmn_parse(&p, JSON_STRING, strlen(JSON_STRING), t, sizeof(t)/sizeof(t[0]));
-       if (r < 0) {
-               printf("Failed to parse JSON: %d\n", r);
-               return 1;
-       }
-
-       /* Assume the top-level element is an object */
-       if (r < 1 || t[0].type != JSMN_OBJECT) {
-               printf("Object expected\n");
-               return 1;
-       }
-
-       /* Loop over all keys of the root object */
-       for (i = 1; i < r; i++) {
-               if (jsoneq(JSON_STRING, &t[i], "user") == 0) {
-                       /* We may use strndup() to fetch string value */
-                       printf("- User: %.*s\n", t[i+1].end-t[i+1].start,
-                                       JSON_STRING + t[i+1].start);
-                       i++;
-               } else if (jsoneq(JSON_STRING, &t[i], "admin") == 0) {
-                       /* We may additionally check if the value is either "true" or "false" */
-                       printf("- Admin: %.*s\n", t[i+1].end-t[i+1].start,
-                                       JSON_STRING + t[i+1].start);
-                       i++;
-               } else if (jsoneq(JSON_STRING, &t[i], "uid") == 0) {
-                       /* We may want to do strtol() here to get numeric value */
-                       printf("- UID: %.*s\n", t[i+1].end-t[i+1].start,
-                                       JSON_STRING + t[i+1].start);
-                       i++;
-               } else if (jsoneq(JSON_STRING, &t[i], "groups") == 0) {
-                       int j;
-                       printf("- Groups:\n");
-                       if (t[i+1].type != JSMN_ARRAY) {
-                               continue; /* We expect groups to be an array of strings */
-                       }
-                       for (j = 0; j < t[i+1].size; j++) {
-                               jsmntok_t *g = &t[i+j+2];
-                               printf("  * %.*s\n", g->end - g->start, JSON_STRING + g->start);
-                       }
-                       i += t[i+1].size + 1;
-               } else {
-                       printf("Unexpected key: %.*s\n", t[i].end-t[i].start,
-                                       JSON_STRING + t[i].start);
-               }
-       }
-       return 0;
-}
diff --git a/src/lib/jsmn/jsmn.7z b/src/lib/jsmn/jsmn.7z
new file mode 100644 (file)
index 0000000..58ba68e
Binary files /dev/null and b/src/lib/jsmn/jsmn.7z differ
index 90c13a7a3f5ebfc21041f9f101df95f79be9fded..5cd4f1cf1735d03dd01b8ce2022a66a4453345ff 100644 (file)
@@ -9,7 +9,7 @@ static int jsoneq(const char *json, jsmntok_t *tok, const char *s) {
 }
 
 //this function is quite messy ^^; sorry! it is a quick and dirty fix~
-static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char *js_sv,*/ map_t *map, short q) {
+static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char *js_sv,*/ map_t *map, int q) {
        int i, j, k;
        if (count == 0) {
                return 0;
@@ -18,9 +18,11 @@ static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char *
        if (t->type == JSMN_PRIMITIVE) {
                if(js_sv == "data")
                {
+                       //bgdata[q] = (byte)strtol(js+t->start, (char **)js+t->end, 10);
+                       if(strtol(js+t->start, (char **)js+t->end, 10)==0){ fprintf(stderr, "FACK! %d\n", errno); exit(-1); }
                        map->tiles->data->data[q] = (byte)strtol(js+t->start, (char **)js+t->end, 10);
-                       printf("[%d]", map->tiles->data->data[q]);
-                       q++;
+                       printf("%d[%d]", q, map->tiles->data->data[q]);
+                       //printf("%d[%d]", q, bgdata[q]);
                }else if(js_sv == "height")
                {
                        map->height = (int)strtol(js+t->start, (char **)js+t->end, 10);
@@ -34,7 +36,7 @@ static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char *
                /* We may use strndup() to fetch string value */
        } else if (t->type == JSMN_STRING) {
                //printf("'%.*s'", t->end - t->start, js+t->start);
-               if (jsoneq(js, t, "data") == 0 && indent==2)
+               if (jsoneq(js, t, "data") == 0)
                {
                        js_sv="data";//strdup(js+t->start);//, t->end - t->start);
                        //printf("%s\n", js_sv);
@@ -53,9 +55,9 @@ static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char *
                j = 0;
                for (i = 0; i < t->size; i++) {
                        //for (k = 0; k < indent; k++) printf("\t");
-                       j += dump(js, t+1+j, count-j, indent+1, map, q);
+                       j += dump(js, t+1+j, count-j, indent+1, map, i);
                        //printf(": ");
-                       j += dump(js, t+1+j, count-j, indent+1, map, q);
+                       j += dump(js, t+1+j, count-j, indent+1, map, i);
                        //printf("\n");
                }
                return j+1;
@@ -63,9 +65,10 @@ static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char *
                j = 0;
                //printf("==\n");
                for (i = 0; i < t->size; i++) {
+                       //if(bgdata==NULL) bgdata=malloc(sizeof(char)*t->size);
                        //for (k = 0; k < indent-1; k++) printf("\t");
                        //printf("\t-");
-                       j += dump(js, t+1+j, count-j, indent+1, map, q);
+                       j += dump(js, t+1+j, count-j, indent+1, map, i);
                        //printf("==\n");
                }
                return j+1;
index fcc773a7dfc311623a63ef1761f5d296aae8640c..26682626b9120cb7a14447233bc08a0df7ab4d74 100644 (file)
@@ -7,6 +7,7 @@
 #include "src/lib/modex16.h"
 
 char *js_sv;
+byte bgdata[4096];
 
 typedef struct {\r
        bitmap_t *data;
@@ -24,7 +25,7 @@ typedef struct {
 } map_t;
 
 static int jsoneq(const char *json, jsmntok_t *tok, const char *s);
-static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char *js_sv,*/ map_t *map, short q);
+static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char *js_sv,*/ map_t *map, int q);
 int loadmap(char *mn, map_t *map);
 
 #endif/*_LIBMAPREAD_H_*/