RastaConverter https://github.com/ilmenit/RastaConverter is a graphics converter from modern computers to old 8bit Atari computers. In recent versions I added ability to generate two pictures blended together into a high-color output, leading to pictures with 800 or more unique perceived colors. The picture is displayed in graphics mode 15 (Antic Mode E) that has by default four unique colors.
The conversion process is optimization of the Kernel Program. It uses most of the Atari graphics capabilities including sprites, midline color changes and sprite multiplication.
Key capabilities:
- Extremely optimized emulator of subset of 6502 CPU and ANTIC to simulate execution on real machine.
- Optimization: Late Acceptance Hill Climbing (LAHC) and Diversified Late Acceptance Search (DLAS), with support for reproducible runs, evaluation limits, auto-save and resume.
- Dithering: chess, Floyd–Steinberg, random-Floyd, line,
line2, 2D, Jarvis, simple, and Knoll; tunable strength and randomness.
- Color distance: YUV (default), RGB Euclidean, CIEDE2000, and CIE94; independently selectable for preprocessing and optimization.
- Dual-frame mode: two alternating frames (A/B) with YUV or RGB blending, optional temporal luma/chroma penalties to reduce flicker, and export of both per-frame and blended outputs.
- Performance: multi-threaded execution with per-thread line caches and configurable cache size.
ilmenit•2h ago
Key capabilities: - Extremely optimized emulator of subset of 6502 CPU and ANTIC to simulate execution on real machine.
- Optimization: Late Acceptance Hill Climbing (LAHC) and Diversified Late Acceptance Search (DLAS), with support for reproducible runs, evaluation limits, auto-save and resume.
- Dithering: chess, Floyd–Steinberg, random-Floyd, line, line2, 2D, Jarvis, simple, and Knoll; tunable strength and randomness.
- Color distance: YUV (default), RGB Euclidean, CIEDE2000, and CIE94; independently selectable for preprocessing and optimization.
- Dual-frame mode: two alternating frames (A/B) with YUV or RGB blending, optional temporal luma/chroma penalties to reduce flicker, and export of both per-frame and blended outputs.
- Performance: multi-threaded execution with per-thread line caches and configurable cache size.
- Image pipeline: resize filters (box, bilinear, bicubic, bspline, Catmull–Rom, Lanczos3) plus brightness/contrast/gamma adjustments.
- Hardware control: fine-grained control over Atari registers, including enabling/disabling hardware sprites (players/missiles) per scanline.
- Details mask: provide a mask image to emphasize selected regions and bring out fine details in the result.
- Palette selection: choose target palette files via Adobe ACT to match different monitors and CRT settings.
- Cross-platform: CMake-based builds for Windows, MacOS and Linux, with scripted Profile Guided Optimization.
- Extras: scripts and generators to assemble Atari executables.