From 2bab9c38c2b93c18474dd9189f1801eb13508a5e Mon Sep 17 00:00:00 2001 From: sparky4 Date: Tue, 26 May 2015 12:31:38 -0500 Subject: [PATCH] polished the map reading system~ i made it ... more robust.... now onwards to far pointing with map loading~ modified: 0.bat modified: makefile modified: maptest.exe modified: pcxtest.exe modified: scroll.exe modified: src/lib/mapread.c modified: src/lib/mapread.h modified: src/maptest.c modified: test.exe modified: test2.exe --- 0.bat | 4 +- makefile | 16 +++++-- maptest.exe | Bin 48425 -> 47553 bytes pcxtest.exe | Bin 41323 -> 40411 bytes scroll.exe | Bin 59475 -> 60927 bytes src/lib/mapread.c | 109 ++++++++++++++++++++++++++++------------------ src/lib/mapread.h | 23 +++++----- src/maptest.c | 22 ++++++++-- test.exe | Bin 40025 -> 39209 bytes test2.exe | Bin 41346 -> 40482 bytes 10 files changed, 113 insertions(+), 61 deletions(-) diff --git a/0.bat b/0.bat index 24cb25c9..067a93aa 100644 --- a/0.bat +++ b/0.bat @@ -1 +1,3 @@ -wmakescroll.exe > ..\w +wmake clean +@rem wmakescroll.exe > scroll.out +wmake maptest.exemaptest.exe > maptest.out diff --git a/makefile b/makefile index 6f049e20..ea954ebc 100644 --- a/makefile +++ b/makefile @@ -2,8 +2,10 @@ #-zk0 = kanji support~ #-zkl = current codepage -OFLAGS=-ot -ox -ob -oh# -or -om -ol -ol+ -FLAGS=-0 -d2 -wo $(OFLAGS) -zkl -zm# -mh# -zdp# -zm# -zp16 -zq +CFLAGS=-zkl# -zm# -mh# -wo -x# -zdp# -zp16 -zq +OFLAGS=-ot -ox -ob -oh -or# -om -ol -ol+ +FLAGS=-0 -d2 $(OFLAGS) $(CFLAGS) +REMOVECOMMAND=del DIRSEP=\ SRC=src$(DIRSEP) SRCLIB=$(SRC)lib$(DIRSEP) @@ -63,5 +65,11 @@ jsmn.obj: $(JSMNLIB)jsmn.h $(JSMNLIB)jsmn.c wcl $(FLAGS) -c $(JSMNLIB)jsmn.c clean: .symbolic - @del *.obj -# @del *.exe + @$(REMOVECOMMAND) *.obj + @$(REMOVECOMMAND) *.OBJ + @$(REMOVECOMMAND) *.out + @$(REMOVECOMMAND) *.OUT + @$(REMOVECOMMAND) makefi~1 + @$(REMOVECOMMAND) __WCL__.LNK + @$(REMOVECOMMAND) *.smp + @$(REMOVECOMMAND) *.SMP diff --git a/maptest.exe b/maptest.exe index 4b25c028ac8b78d2d661b5769962a3fe6bf09187..c140654720855fe57f9945bda55b5dcb64e9d979 100644 GIT binary patch delta 21312 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 delta 21114 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 diff --git a/pcxtest.exe b/pcxtest.exe index 6378e10c91abea7f512c6d6a808754173389fbbe..3f18a9304b84fbc9cb582e808eda32d84678873c 100644 GIT binary patch delta 9444 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 JS^Q73{|Eagh@b!f delta 10470 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 delta 27426 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 AV*mgE diff --git a/src/lib/mapread.c b/src/lib/mapread.c index 8f84071a..aa9761ec 100644 --- a/src/lib/mapread.c +++ b/src/lib/mapread.c @@ -1,6 +1,6 @@ #include "src/lib/mapread.h" -static int jsoneq(const char *json, jsmntok_t *tok, const char *s) { +int jsoneq(const char /*far*/ *json, jsmntok_t /*far*/ *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; @@ -9,15 +9,26 @@ 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, int q) { +int dump(const char /*far*/ *js, jsmntok_t /*far*/ *t, size_t count, int indent, char *js_sv, map_t *map, int q) { int i, j, k; bitmap_t bp; + #ifdef DEBUG_JS + if(indent==0) + { + fprintf(stdout, "%s\n", js); + fprintf(stdout, "\n"); + } + #endif + #ifdef DEBUG_DUMPVARS + fprintf(stdout, "indent= [%d] ", indent); + fprintf(stdout, "js_sv= [%s]\n", js_sv); + #endif if (count == 0) { return 0; } /* We may want to do strtol() here to get numeric value */ if (t->type == JSMN_PRIMITIVE) { - if(js_sv == "data") + if(strstr(js_sv, "data")) { /* here we should recursivly call dump again here to skip over the array until we get the facking width of the map. @@ -26,29 +37,39 @@ static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char * FUCK well i am stuck.... wwww */ - map->data[q] = (byte)strtol(js+t->start, (char **)t->end, 10); -// printf("%d[%d]", q, map->data[q]); +//---- map->data[q] = (byte)strtol(js+t->start, (char **)t->end, 10); + map->data[q] = (byte)atoi(js+t->start); + #ifdef DEBUG_MAPDATA + fprintf(stdout, "%d[%d]", q, map->data[q]); + #endif } else - if(js_sv == "height") + if(strstr(js_sv, "height")) { - //map->height = (int)malloc(sizeof(int)); - map->height = (int)strtol(js+t->start, (char **)js+t->end, 10); - //printf("h:[%d]\n", map->height); - }else if(js_sv == "width") +//---- map->height = (unsigned int)strtol(js+t->start, (char **)js+t->end, 10); + map->height = (unsigned int)atoi(js+t->start); + #ifdef DEBUG_MAPVAR + fprintf(stdout, "indent= [%d] ", indent); + fprintf(stdout, "h:[%d]\n", map->height); + #endif + }else if(strstr(js_sv, "width")) { - map->width = (int)strtol(js+t->start, (char **)js+t->end, 10); -// printf("w:[%d]\n", map->width); +//---- map->width = (unsigned int)strtol(js+t->start, (char **)js+t->end, 10); + map->width = (unsigned int)atoi(js+t->start); + #ifdef DEBUG_MAPVAR + fprintf(stdout, "indent= [%d] ", indent); + fprintf(stdout, "w:[%d]\n", map->width); + #endif } return 1; /* We may use strndup() to fetch string value */ } else if (t->type == JSMN_STRING) { - if(jsoneq(js, t, "data") == 0 ) + if(jsoneq(js, t, "data") == 0) { -// printf("[[[[%d|%d]]]]\n", &(t+1)->size, (t+1)->size); -// printf("\n%.*s[xx[%d|%d]xx]\n", (t+1)->end - (t+1)->start, js+(t+1)->start, &(t+1)->size, (t+1)->size); - map->data = malloc(sizeof(byte) * (t+1)->size); - map->tiles = malloc(sizeof(tiles_t)); +// fprintf(stdout, "[[[[%d|%d]]]]\n", &(t+1)->size, (t+1)->size); +// fprintf(stdout, "\n%.*s[xx[%d|%d]xx]\n", (t+1)->end - (t+1)->start, js+(t+1)->start, &(t+1)->size, (t+1)->size); + map->data = /*_f*/malloc(sizeof(byte) * (t+1)->size); + map->tiles = /*_f*/malloc(sizeof(tiles_t)); //map->tiles->data = malloc(sizeof(bitmap_t)); //fix this bp = bitmapLoadPcx("data/ed.pcx"); @@ -60,52 +81,54 @@ static int dump(const char *js, jsmntok_t *t, size_t count, int indent, /*char * map->tiles->tileWidth = 16; map->tiles->rows = 1; map->tiles->cols = 1; - js_sv="data";//strdup(js+t->start);//, t->end - t->start); + strcpy(js_sv, "data");//strdup(js+t->start);//, t->end - t->start); } else - if (jsoneq(js, t, "height") == 0 && indent==1) + if (jsoneq(js, t, "height") == 0 && indent<=1) { - js_sv="height";//strdup(js+t->start);//, t->end - t->start); - }else if (jsoneq(js, t, "width") == 0 && indent==1) + strcpy(js_sv, "height");//strdup(js+t->start);//, t->end - t->start); + }else if(jsoneq(js, t, "width") == 0 && indent<=1) { - js_sv="width";//strdup(js+t->start);//, t->end - t->start); - }else js_sv=NULL; + strcpy(js_sv, "width");//strdup(js+t->start);//, t->end - t->start); + }else strcpy(js_sv, "\0"); return 1; } else if (t->type == JSMN_OBJECT) { - //printf("\n"); + //fprintf(stdout, "\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, i); - //printf(": "); - j += dump(js, t+1+j, count-j, indent+1, map, i); - //printf("\n"); + //for (k = 0; k < indent; k++) fprintf(stdout, "\t"); + j += dump(js, t+1+j, count-j, indent+1, js_sv, map, i); + //fprintf(stdout, ": "); + j += dump(js, t+1+j, count-j, indent+1, js_sv, map, i); + //fprintf(stdout, "\n"); } return j+1; } else if (t->type == JSMN_ARRAY) { j = 0; - //printf("==\n"); + //fprintf(stdout, "==\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, i); - //printf("==\n"); + //for (k = 0; k < indent-1; k++) fprintf(stdout, "\t"); + //fprintf(stdout, "\t-"); + j += dump(js, t+1+j, count-j, indent+1, js_sv, map, i); + //fprintf(stdout, "==\n"); } return j+1; } return 0; } -static int loadmap(char *mn, map_t *map) +int loadmap(char *mn, map_t *map) { int r; + static int incr=0; int eof_expected = 0; - char *js = NULL; + char /*far*/ *js = NULL; size_t jslen = 0; char buf[BUFSIZ]; + static char js_ss[16]; jsmn_parser p; - jsmntok_t *tok; + jsmntok_t /*far*/ *tok; size_t tokcount = 2; FILE *fh = fopen(mn, "r"); @@ -114,7 +137,7 @@ static int loadmap(char *mn, map_t *map) jsmn_init(&p); /* Allocate some tokens as a start */ - tok = malloc(sizeof(*tok) * tokcount); + tok = /*_f*/malloc(sizeof(*tok) * tokcount); if (tok == NULL) { fprintf(stderr, "malloc(): errno=%d\n", errno); return 3; @@ -136,7 +159,7 @@ static int loadmap(char *mn, map_t *map) } } - js = realloc(js, jslen + r + 1); + js = /*_f*/realloc(js, jslen + r + 1); if (js == NULL) { fprintf(stderr, "realloc(): errno = %d\n", errno); return 3; @@ -149,7 +172,7 @@ again: if (r < 0) { if (r == JSMN_ERROR_NOMEM) { tokcount = tokcount * 2; - tok = realloc(tok, sizeof(*tok) * tokcount); + tok = /*_f*/realloc(tok, sizeof(*tok) * tokcount); if (tok == NULL) { fprintf(stderr, "realloc(): errno=%d\n", errno); return 3; @@ -157,13 +180,13 @@ again: goto again; } } else { - dump(js, tok, p.toknext, 0, map, 0); + dump(js, tok, p.toknext, incr, &js_ss, map, 0); eof_expected = 1; } } - free(js); - free(tok); + /*_f*/free(js); + /*_f*/free(tok); fclose(fh); return 0; diff --git a/src/lib/mapread.h b/src/lib/mapread.h index eaca2566..f0e07cc8 100644 --- a/src/lib/mapread.h +++ b/src/lib/mapread.h @@ -1,16 +1,19 @@ #ifndef _LIBMAPREAD_H_ #define _LIBMAPREAD_H_ +//#include +//#include #include #include - -//#include +#include #include "src/lib/jsmn/jsmn.h" #include "src/lib/modex16.h" #include "src/lib/lib_head.h" -//---- temp! -static char *js_sv; +//#define DEBUG_MAPDATA +#define DEBUG_MAPVAR +//#define DEBUG_DUMPVARS +#define DEBUG_JS typedef struct { bitmap_t *data; @@ -21,14 +24,14 @@ typedef struct { } tiles_t; typedef struct { - byte *data; + byte *data; tiles_t *tiles; - int width; - int height; + unsigned int width; + unsigned int height; } 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, map_t *map, int q); -static int loadmap(char *mn, map_t *map); +int jsoneq(const char /*far*/ *json, jsmntok_t /*far*/ *tok, const char *s); +int dump(const char /*far*/ *js, jsmntok_t /*far*/ *t, size_t count, int indent, char *js_sv, map_t *map, int q); +int loadmap(char *mn, map_t *map); #endif/*_LIBMAPREAD_H_*/ diff --git a/src/maptest.c b/src/maptest.c index 48c022d1..1f7e03fc 100644 --- a/src/maptest.c +++ b/src/maptest.c @@ -1,9 +1,25 @@ -#include "src/lib/mapread.c" - +#include "src/lib/mapread.h" + +#define DUMP +#define DUMP_MAP + void main(int argc, char *argv[]) { map_t map; + short i; + //int lm; loadmap("data/test.map", &map); - fprintf(stderr, "%d\n", map.data[0]); + //fprintf(stdout, "loadmap= %d\n\n", lm); + #ifdef DUMP + fprintf(stdout, "map.width= %d\n", map.width); + fprintf(stdout, "map.height= %d\n", map.height); + #ifdef DUMP_MAP + for(i=0; i<(map.width*map.height); i++) + { + fprintf(stdout, "%04d[%02d]", i, map.data[i]); + if(i && !(i%map.width)) fprintf(stdout, "\n"); + } + #endif + #endif } diff --git a/test.exe b/test.exe index 4faa1ec2eb6b185ed0f0242b9bd4e27e891e5873..3e26ba260344a427ca6f9f472df146a55607aa59 100644 GIT binary patch delta 9147 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 T2_qpK)A{t1+c|!80U`enDGClR diff --git a/test2.exe b/test2.exe index 05bb136744496e6f50b6fed102246f4f8af1bcff..5475dfeb7d4b81574f9c64604923b8cd26bd0950 100644 GIT binary patch delta 9078 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 ZgsTt17BstKICQUl{{iK39mW6v delta 10124 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 -- 2.39.5