library CB-UI; library CB-Time; library CB-Render; library CB-Library; library CB-Library.FPS; library CB-Library.Graphics; library CB-Library.Threaded; fn main() { u256 frames = 300; init_window(640, 360, "ClosedBit Space Defender"); set_background_color(0x050711); u256 started = time.nowUs(); for (u256 frame = 0; frame < frames; frame++) { handle_events(); CB-Render.starfield(1200, frame, 0xCED6E0); for (u256 enemy = 0; enemy < 6; enemy++) { draw_rect(82 + enemy * 86, 72 + enemy % 2 * 28, 28, 18, 0xFF6B5B); } draw_rect(296 + frame * 3 % 80, 300, 38, 20, 0x65CBD2); draw_line(315, 298, 315, 230 - frame % 90, 0xCEE55C, 3); draw_text(20, 16, "SPACE DEFENDER", 0xCEE55C, 18); swap_buffers_fast(); } u256 elapsed = time.nowUs() - started; cleanup(); if (elapsed == 0) { elapsed = 1; } println("BENCH|closedbit|space_defender|" + frames + "|" + elapsed / 1000.0 + "|" + frames * 1_000_000 / elapsed); }