Module:GetIDEMASectors: Difference between revisions
From Computing Classics Wiki
Round |
No edit summary |
||
| Line 6: | Line 6: | ||
gb50Less = gbCapacity - 50 | gb50Less = gbCapacity - 50 | ||
if (sectorSize == 512) then | if (sectorSize == 512 or sectorSize == "512") then | ||
return math.floor(97696368 + (1953504 * gb50Less)) | return math.floor(97696368 + (1953504 * gb50Less)) | ||
elseif (sectorSize == 4096) then | elseif (sectorSize == 4096 or sectorSize == "4096" or sectorSize == "4,096") then | ||
return math.floor(12212046 + (244188 * gb50Less)) | return math.floor(12212046 + (244188 * gb50Less)) | ||
else | else | ||
error("getIDEMASectors: Sector size given was not 512 or 4096") | error("getIDEMASectors: Sector size given was not 512 or 4096 (was " .. sectorSize .. ")") | ||
end | end | ||
end | end | ||
| Line 17: | Line 17: | ||
-- Main entry point for this module. | -- Main entry point for this module. | ||
function p.invokeMain(frame) | function p.invokeMain(frame) | ||
return p.getIDEMASectors(tonumber(frame.args[1]), | return p.getIDEMASectors(tonumber(frame.args[1]), frame.args[2]) | ||
end | end | ||
return p | return p | ||
Revision as of 00:34, 12 September 2022
Documentation for this module may be created at Module:GetIDEMASectors/doc
local p = {}
-- Returns the number of IDEMA sectors given a capacity in GB.
function p.getIDEMASectors(gbCapacity, sectorSize)
-- http://www.idema.org/wp-content/downloads/2169.pdf
gb50Less = gbCapacity - 50
if (sectorSize == 512 or sectorSize == "512") then
return math.floor(97696368 + (1953504 * gb50Less))
elseif (sectorSize == 4096 or sectorSize == "4096" or sectorSize == "4,096") then
return math.floor(12212046 + (244188 * gb50Less))
else
error("getIDEMASectors: Sector size given was not 512 or 4096 (was " .. sectorSize .. ")")
end
end
-- Main entry point for this module.
function p.invokeMain(frame)
return p.getIDEMASectors(tonumber(frame.args[1]), frame.args[2])
end
return p