From 61527f3e64af48b77c8213f1fc9a99ad401bebc3 Mon Sep 17 00:00:00 2001 From: Simon Forman Date: Sun, 26 Feb 2023 21:02:57 -0800 Subject: [PATCH] Cicada bg, needs work. Not as pretty as I'd hoped. Putting a pin in Wu lines for tonight. I'll lick it in the morning when I'm fresh. --- implementations/uvm-ncc/graphics.h | 29 +++++++++++++++++++++++++++++ implementations/uvm-ncc/xerblin.c | 6 +++--- 2 files changed, 32 insertions(+), 3 deletions(-) diff --git a/implementations/uvm-ncc/graphics.h b/implementations/uvm-ncc/graphics.h index f747b21..b398b78 100644 --- a/implementations/uvm-ncc/graphics.h +++ b/implementations/uvm-ncc/graphics.h @@ -19,6 +19,35 @@ draw_background(u32* buffer, size_t w, size_t h) } } +void +draw_cicada_bars_background(u32* buffer, size_t w, size_t h) +{ + for (size_t x = 0; x < w; ++x) { + for (size_t y = 0; y < h; ++y) { + u8 blue = 5*x%17 + 127; + u8 green = 5*x%37 + 127; + u8 red = 5*x%43 + 127; + u32* pix_ptr = buffer + w * y + x; + *pix_ptr = (red << 16) | (green << 8) | blue; + } + } +} + + +void +draw_cicada_bars_background0(u32* buffer, size_t w, size_t h) +{ + for (size_t x = 0; x < w; ++x) { + for (size_t y = 0; y < h; ++y) { + u8 blue = !((5*x / 17) & 1) ? 100 : 0; + u8 green = !((5*x / 37) & 1) ? 100 : 0; + u8 red = !((5*x / 43) & 1) ? 100 : 0; + u32* pix_ptr = buffer + w * y + x; + *pix_ptr = (red << 16) | (green << 8) | blue; + } + } +} + void carefree_alpha_blend_blit(u32* dest, u32* source, size_t dest_stride, u64 dest_x, u64 dest_y, u64 w, u64 h) { diff --git a/implementations/uvm-ncc/xerblin.c b/implementations/uvm-ncc/xerblin.c index 9a862bf..edae59d 100644 --- a/implementations/uvm-ncc/xerblin.c +++ b/implementations/uvm-ncc/xerblin.c @@ -106,9 +106,9 @@ main() carefree_draw_box(frame_buffer, FRAME_WIDTH, 126, 126, w, h, WHITE); w = 200; //carefree_wu_line(frame_buffer, FRAME_WIDTH, 10, 256, 200, 100, WHITE); - for (w = 101; w < (FRAME_WIDTH - 10); w = w + 50) { - carefree_wu_line(frame_buffer, FRAME_WIDTH, 10, 256, w, 100, WHITE); - } + //for (w = 101; w < (FRAME_WIDTH - 10); w = w + 50) { + // carefree_wu_line(frame_buffer, FRAME_WIDTH, 10, 256, w, 100, WHITE); + //} window_draw_frame(wid, frame_buffer); window_on_keydown(wid, keydown); window_on_mousedown(wid, mousedown);