diff --git a/.gitignore b/.gitignore
index 6b40320..3364a8f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,3 +11,6 @@ esp-link.tgz
tve-patch/
yui
.localhistory/
+espfs/mkespfsimage/mman-win32/mman.o
+espfs/mkespfsimage/mman-win32/libmman.a
+esp-link.sdf
diff --git a/esp-link.vcxproj b/esp-link.vcxproj
new file mode 100644
index 0000000..c98faa5
--- /dev/null
+++ b/esp-link.vcxproj
@@ -0,0 +1,126 @@
+
+
+
+
+ Debug
+ ARM
+
+
+ Release
+ ARM
+
+
+
+ {A92F0CAA-F89B-4F78-AD2A-A042429BD87F}
+ MakeFileProj
+
+
+
+ Makefile
+
+
+
+
+
+
+
+
+
+
+ __ets__;_STDINT_H;ICACHE_FLASH;__MINGW32__;__WIN32__
+ .\cmd;.\serial;.\user;.\espfs;.\httpd;.\include;..\esp_iot_sdk_v1.3.0\include;..\xtensa-lx106-elf\xtensa-lx106-elf\include;c:\tools\mingw64\x86_64-w64-mingw32\include;c:\tools\mingw64\lib\gcc\x86_64-w64-mingw32\4.8.3\include
+
+
+
+
+
+
+ bin
+ build
+
+
+ espmake flash
+ espmake clean all
+ espmake clean
+
+
+ espmake all wiflash
+ espmake clean all
+ espmake clean
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/espfs/espfstest/Makefile b/espfs/espfstest/Makefile
deleted file mode 100644
index f8296f4..0000000
--- a/espfs/espfstest/Makefile
+++ /dev/null
@@ -1,13 +0,0 @@
-CFLAGS=-I../../lib/heatshrink -I.. -std=gnu99 -DESPFS_HEATSHRINK
-
-espfstest: main.o espfs.o heatshrink_decoder.o
- $(CC) -o $@ $^
-
-espfs.o: ../espfs.c
- $(CC) $(CFLAGS) -c $^ -o $@
-
-heatshrink_decoder.o: ../heatshrink_decoder.c
- $(CC) $(CFLAGS) -c $^ -o $@
-
-clean:
- rm -f *.o espfstest
diff --git a/espfs/espfstest/main.c b/espfs/espfstest/main.c
deleted file mode 100644
index 16a6287..0000000
--- a/espfs/espfstest/main.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
-Simple and stupid file decompressor for an espfs image. Mostly used as a testbed for espfs.c and
-the decompressors: code compiled natively is way easier to debug using gdb et all :)
-*/
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-
-
-#include "espfs.h"
-
-char *espFsData;
-
-int main(int argc, char **argv) {
- int f, out;
- int len;
- char buff[128];
- EspFsFile *ef;
- off_t size;
- EspFsInitResult ir;
-
- if (argc!=3) {
- printf("Usage: %s espfs-image file\nExpands file from the espfs-image archive.\n", argv[0]);
- exit(0);
- }
-
- f=open(argv[1], O_RDONLY);
- if (f<=0) {
- perror(argv[1]);
- exit(1);
- }
- size=lseek(f, 0, SEEK_END);
- espFsData=mmap(NULL, size, PROT_READ, MAP_SHARED, f, 0);
- if (espFsData==MAP_FAILED) {
- perror("mmap");
- exit(1);
- }
-
- ir=espFsInit(espFsData);
- if (ir != ESPFS_INIT_RESULT_OK) {
- printf("Couldn't init espfs filesystem (code %d)\n", ir);
- exit(1);
- }
-
- ef=espFsOpen(argv[2]);
- if (ef==NULL) {
- printf("Couldn't find %s in image.\n", argv[2]);
- exit(1);
- }
-
- out=open(argv[2], O_WRONLY|O_CREAT|O_TRUNC, 0644);
- if (out<=0) {
- perror(argv[2]);
- exit(1);
- }
-
- while ((len=espFsRead(ef, buff, 128))!=0) {
- write(out, buff, len);
- }
- espFsClose(ef);
- //munmap, close, ... I can't be bothered.
-}
diff --git a/espfs/mkespfsimage/Makefile b/espfs/mkespfsimage/Makefile
index 8a39d46..2980331 100644
--- a/espfs/mkespfsimage/Makefile
+++ b/espfs/mkespfsimage/Makefile
@@ -1,16 +1,45 @@
GZIP_COMPRESSION ?= no
-USE_HEATSHRINK ?= yes
-CFLAGS=-I../../lib/heatshrink -I.. -std=gnu99
+ifeq ($(OS),Windows_NT)
+
+TARGET = mkespfsimage.exe
+
+CC = gcc
+LD = $(CC)
+CFLAGS=-c -I.. -Imman-win32 -std=gnu99
+LDFLAGS=-Lmman-win32 -lmman
+
ifeq ("$(GZIP_COMPRESSION)","yes")
-CFLAGS += -DESPFS_GZIP
+CFLAGS += -DESPFS_GZIP
+LDFLAGS += -lz
endif
-ifeq ("$(USE_HEATSHRINK)","yes")
-CFLAGS += -DESPFS_HEATSHRINK
+OBJECTS = main.o
+
+all: libmman $(TARGET)
+
+libmman:
+ $(Q) make -C mman-win32
+
+$(TARGET): $(OBJECTS)
+ $(LD) -o $@ $^ $(LDFLAGS)
+
+%.o: %.c
+ $(CC) $(CFLAGS) -o $@ $^
+
+clean:
+ rm -f $(OBJECTS) $(TARGET) ./mman-win32/libmman.a ./mman-win32/mman.o
+
+.PHONY: all clean
+
+else
+
+CFLAGS=-I.. -std=gnu99
+ifeq ("$(GZIP_COMPRESSION)","yes")
+CFLAGS += -DESPFS_GZIP
endif
-OBJS=main.o heatshrink_encoder.o
+OBJS=main.o
TARGET=mkespfsimage
$(TARGET): $(OBJS)
@@ -21,4 +50,6 @@ else
endif
clean:
- rm -f $(TARGET) $(OBJS)
\ No newline at end of file
+ rm -f $(TARGET) $(OBJS)
+
+endif
\ No newline at end of file