mirror of
https://github.com/dwsJason/gsla.git
synced 2026-10-24 11:02:17 +00:00
The encoder now accepts a directory as <input> in addition to .c2 and
.gsla files. When the input path is a directory, it is scanned for loose
C1 images (Apple IIgs $C1/0000 Super Hi-Res screens) which are gathered
into the same array of 0x8000-byte C1 frames that a .c2 decodes into, then
fed through the existing GSLA encode path.
- New C1File loader (source/c1_file.{h,cpp}), mirroring C2File:
scans the directory (dirent / FindFirstFile), keeps files ending in
.c1 or #c10000 (case-insensitive), natural/numeric-sorts them so frame2
precedes frame10, validates each is exactly 0x8000 bytes (warns + skips
otherwise).
- main.cpp: auto-detect directory vs file (no new flag), factor the
encode+round-trip-verify block into shared encodeFramesToGsla() used by
both the .c2 and directory paths, update help text.
- Wire c1_file.cpp into Makefile and the Visual Studio project.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>