From fa1579cc9f209dbeb14ab277dc9c4ac741ace57c Mon Sep 17 00:00:00 2001 From: gbc dev Date: Sat, 18 Jul 2026 20:41:19 +0200 Subject: render: --shrink N - downscale the half-block live display (1-4) Decimates the LCD N x N before the half-block encode so the monitor pane takes 160/N cols x 72/N rows. Display-only: capture, recording and sixel still read the full-res framebuffer. Decimation is max-luma pick, not box-average: terminal fonts are 1px bright strokes on dark background, and averaging dims them into grey mush (the 'blurry font' regression). Keeping the brightest source pixel of each block preserves stroke brightness and hue. --- src/render.h | 1 + 1 file changed, 1 insertion(+) (limited to 'src/render.h') diff --git a/src/render.h b/src/render.h index 1be1290..fed4ec8 100644 --- a/src/render.h +++ b/src/render.h @@ -11,6 +11,7 @@ void render_set_hud(int frameskip, bool turbo); // update HUD readout // Switch terminal output to sixel graphics (scale = integer pixel zoom, >=1). // Pass on=false to use the default Unicode half-block renderer. void render_set_sixel(bool on, int scale); +void render_set_shrink(int n); // half-block display downscale (1-4, def 1) // Draw a Game Boy body/frame around the LCD (sixel output only); buttons on the // drawn shell light up while pressed. No effect unless sixel mode is enabled. void render_set_chrome(bool on); -- cgit v1.3.1-sl0p