From 3783a98f95a11c1122877f57b755a14a8b3ff713 Mon Sep 17 00:00:00 2001 From: Robin Chappatte Date: Sat, 25 Apr 2026 07:35:00 +0200 Subject: [PATCH] use prerendered screen and remove sprite rotation --- assets/screen.ppm | Bin 0 -> 147515 bytes build.ts | 13 +-- src/consts/sprites.asm | 16 +--- src/init.asm | 20 +---- src/lib/drawing.asm | 139 +++++------------------------ src/lib/sprite_rotation.asm | 171 ------------------------------------ src/main.asm | 31 ++----- src/reserved_space.asm | 5 -- 8 files changed, 44 insertions(+), 351 deletions(-) create mode 100644 assets/screen.ppm delete mode 100644 src/lib/sprite_rotation.asm diff --git a/assets/screen.ppm b/assets/screen.ppm new file mode 100644 index 0000000000000000000000000000000000000000..0ae5dbaa6d1c28784368def7ae6cd9c3b9f12974 GIT binary patch literal 147515 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