read:
- ATASCII and a couple of its options added (gods I should stop it with the hacking in of things)
- the more narrow side trianglies I used to be using for some reason are now proper side trianglies. I hate that Github is showing some of these characters on blue square background, they've been around since long before unicode existed...
chunkparsers:
- Atari binary detection can now start from a user-specified offset. Obvious stuff...
db/read:
- since File.readBytes is temporarily down, there's now a replacement for it in there;
- all affected files also modified
db/chunkparsers:
- I'm now collecting the chunked file structure parsers into this one cute file. They're supposed to quickly go through some common blocks, gathering the types, data offsets, data sizes (or whatever else would be necessary otherwise) and guessing the correct expected file size and reporting it too
db/read:
- readBytes sunset because the system function now exists
archives.ancient.sg, rom.1.sg, audio.DSS.1.sg, databases.1.sg, bin.PalmFile.1.sg:
- using the system readBytes now
- modernised the detect/result func syntax
- js beautify off
- deflate: archive finder off the first 40h bytes somewhat optimised for speed, file is now in shorthand script and uses tabs
- TGA: tightened by max width/height
- rom: TAP added. MGT cosmetics
- read: charStat fixed to catch eXtaSCii and foreign better
- PalmFile added, detecting PRC and PDB as best it can given the flimsy nature thereof
db/read:
- firstNotOf: added as a much more general case of isAllZeroes (hi C++)
- outArray: now tags strings
- addEllipsis: l∞p fixed (omg)
- cosmetics
- BitReader moved from <<>> to Util.shl/ru64, fixing the signedness glitches and hopefully increasing speed
- added the versatile outArray, a prettier Array log output
- added the niche-helpful findGaps and findExtensions too
- added some _log* functions for ease of debugging and freedom of choice
- many cosmetic changes
databases.1.sg:
- DBF vastly improved, truncation possible (or should I say ripper-ready?)
db/read:
- CP866, KOI8-R Speccy encodings added
- functions secondsToTimeStr, charStat, toBase64 and _logBase64 added (read the file for docs)
- a makeshift "patching" ~engine~ added until it's native
db/read:
- decEncoding now accepts the optional parameter that lets you choose how to treat the first 0~32 characters; currently there are tables implemented that leave either LF or CR & LF as-is, or turn either one into its character representation.
- accidental trailing spaces removed
db/read:
- readBytes now features an optional parameter "zspace" for a special case of those 1-byte-encoding strings where zeroes may be a visible part of the string: if zspace = true, all 0 become 0x20 in the read data.
db/read:
- added some exotic retro charsets (Amiga, RISC OS, Atari ST) for use with decAnsi/decEncoding;
- Option and OptionT commands now have a way to add the suffix too (just put "" as a prefix if you don't want one but a suffix is needed);
- decAnsi/decEncoding now make the pre-space and 0x7F characters visible, whilst making sure it doesn't interfere in the way JIS7X0201 or KOI7-R (should that ever be added in this regressive manner) control characters still work.
outSz function added to facilitate and make uniform the output of calculated file size(s), visually comparing that to the actual file size if not equal in a concise manner. Use regex to find it in the logs :)