Display bitmap image instead of gradient colors

This commit is contained in:
Madeline Busig 2024-02-22 18:22:25 -07:00
parent 3eee7b9240
commit 53aca1cae7

View File

@ -1,11 +1,20 @@
#include <tonc.h> #include <tonc.h>
#include <stdint.h> #include <stdint.h>
extern "C" {
#include "boxed_dot.h"
}
const struct { const struct {
size_t w = 240; size_t w = 240;
size_t h = 160; size_t h = 160;
} mode3; } mode3;
const struct {
size_t w = 32;
size_t h = 32;
} boxed_dot;
int main(void) { int main(void) {
// Mode 3-5 are bitmap modes. // Mode 3-5 are bitmap modes.
// 3: 240x160 @ 16bpp N page-flip // 3: 240x160 @ 16bpp N page-flip
@ -17,10 +26,18 @@ int main(void) {
// Write gradient from black -> RGB in first three lines. // Write gradient from black -> RGB in first three lines.
// Each color is displayed on a separate line. // Each color is displayed on a separate line.
for (size_t i = 0; i < 32; ++i) { // for (size_t i = 0; i < 32; ++i) {
vid_mem[i] = i; // vid_mem[i] = i;
vid_mem[mode3.w + i] = i << 5; // vid_mem[mode3.w + i] = i << 5;
vid_mem[2 * mode3.w + i] = i << 10; // vid_mem[2 * mode3.w + i] = i << 10;
// }
// Write bitmap image into bitmap, displayed in top left corner.
// Image is 16bpp, stored as uint16_t.
for (size_t y = 0; y < boxed_dot.h; ++y) {
for (size_t x = 0; x < boxed_dot.w; ++x) {
vid_mem[y * mode3.w + x] = boxed_dotBitmap[y * boxed_dot.w + x];
}
} }
while (true) { while (true) {