SHA2017-badge / micropython-esp32

MicroPython ported to the SHA2017 badge
https://micropython.org/
MIT License
12 stars 16 forks source link

woezel unzip dict size #82

Closed annejan closed 7 years ago

annejan commented 7 years ago

E (51080) extmod/uzlib/tinflate: dictionary not large enough! offs=8765, dict=8192

basvs commented 7 years ago

known issue; was thinking of a hack to use the ugfx framebuffer as dictionary buffer. :-)

(ugly, but as long as you don't update your screen, it will be ok..)

basvs commented 7 years ago

other option is to find that magic zlib option to compress with a smaller dictionary.. (haven't found that option yet)

edit:

The zlib header file mentions a 'minigzip' tool which can probably compress with smaller dictinaries. Have to look at that. (maybe have to recompile zlib with lower dictionary size)

edit2:

we can build a 'minigzip' tool with the zlib source:

basvs commented 7 years ago

And I think there might be some memory left on one of the heaps. We also might be able to cleanup some allocs before inflating.

edit:

There's 52 KB of memory extra, which is just not allocatable with malloc(). The only catch: every read and write should be an aligned 32 bit dword.

Roosted7 commented 7 years ago

Dict size is now smaller in the files supplied by the hatchery