-
Notifications
You must be signed in to change notification settings - Fork 0
Description
While INFLATE.LUA can successfully extract deflate and deflate64 compressed files from a zip (as demonstrated in its unit test) it uses way too many Lua tables to do so. On modern machines such as the ones that run the GitHub workflow this is inconsequential. On retro machines with limited memory and processing power however, it becomes unbearably slow; that is, if it's usable at all.
This issue can be worked around by packing arrays and tables into strings and using string.unpack() on data when it's actually required. Although more tricky that a pure table approach the memory and computational savings are significant which should allow INFLATE.LUA to run much better on retro machines. The start of this conversion can be seen in commit cd112c7.