Compare commits
No commits in common. "f674efaa284139d0721f3cdcecac602dca47761c" and "77ceb65be66fea46d1ab41dc7edde28cd5d92477" have entirely different histories.
f674efaa28
...
77ceb65be6
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,3 +1 @@
|
|||||||
/build
|
/build
|
||||||
apidoc.md
|
|
||||||
apidoc.html
|
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
minitel.lua
|
|
||||||
tape-iofs.lua
|
|
@ -1,44 +0,0 @@
|
|||||||
local tArgs = {...}
|
|
||||||
local output = tArgs[2]
|
|
||||||
local of = io.open(output,"wb")
|
|
||||||
local files, dirs = {}, {tArgs[1]}
|
|
||||||
|
|
||||||
local function cint(n,l)
|
|
||||||
local t={}
|
|
||||||
for i = 0, 7 do
|
|
||||||
t[i+1] = (n >> (i * 8)) & 0xFF
|
|
||||||
end
|
|
||||||
return string.reverse(string.char(table.unpack(t)):sub(1,l))
|
|
||||||
end
|
|
||||||
|
|
||||||
local function genHeader(fname,len)
|
|
||||||
return string.format("%s%s%s",cint(fname:len(),2),fname,cint(len,2))
|
|
||||||
end
|
|
||||||
|
|
||||||
for k,v in pairs(dirs) do
|
|
||||||
local dir = fs.list(v)
|
|
||||||
for _,file in ipairs(dir) do
|
|
||||||
if fs.isDirectory(file) then
|
|
||||||
dirs[#dirs+1] = v.."/"..file
|
|
||||||
else
|
|
||||||
files[#files+1] = v.."/"..file
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
for k,v in ipairs(files) do
|
|
||||||
io.write(v)
|
|
||||||
local f = io.open(v,"rb")
|
|
||||||
if f then
|
|
||||||
of:write(genHeader(v,fs.size(v)))
|
|
||||||
while true do
|
|
||||||
local c = f:read(1024)
|
|
||||||
if not c or c == "" then break end
|
|
||||||
of:write(c)
|
|
||||||
end
|
|
||||||
f:close()
|
|
||||||
end
|
|
||||||
print("... done")
|
|
||||||
end
|
|
||||||
of:write(string.char(0):rep(2))
|
|
||||||
of:close()
|
|
Loading…
Reference in New Issue
Block a user