Keeping window width/height fixed for now.
h3rald h3rald@h3rald.com
Mon, 19 Jan 2026 13:55:31 +0100
3 files changed,
8 insertions(+),
18 deletions(-)
M
devices/display.c
→
devices/display.c
@@ -2,12 +2,10 @@ #include <stdio.h>
#include "../xyw.h" /* display device */ -#define DISPLAY_WIDTH 0x40 -#define DISPLAY_HEIGHT 0x41 -#define DISPLAY_FILL 0x42 -#define DISPLAY_X 0x43 -#define DISPLAY_Y 0x44 -#define DISPLAY_ON_RENDER 0x45 +#define DISPLAY_FILL 0x40 +#define DISPLAY_X 0x41 +#define DISPLAY_Y 0x42 +#define DISPLAY_ON_RENDER 0x43 void display_output(xyw_byte *data, xyw_byte addr, xyw_byte *error) {
M
examples/window.xyw
→
examples/window.xyw
@@ -8,7 +8,6 @@ .string "Test Program" ; title
.string "Just a test program" ; description .string "H3RALD" ; author .string "2025-12-18" ; date -.byte $ff $ff ; preferred width and height .string "---" ; metadata marker .label init
M
xywrun.c
→
xywrun.c
@@ -16,8 +16,8 @@ #define USER_STACK_START 0xfd00
#define SYSTEM_STACK_START 0xfe00 #define DEVICE_AREA_START 0xff00 -#define MAX_WIDTH 256 -#define MAX_HEIGHT 256 +#define WIDTH 256 +#define HEIGHT 256 /* system device */ #define SYSTEM_STATE 0xff00@@ -271,7 +271,6 @@ };
// clang-format on char *title = "xyw", *description = 0, *author = 0, *date = 0; -int width = MAX_WIDTH, height = MAX_HEIGHT; static void process_metadata() {@@ -327,12 +326,6 @@
if (p + 1 >= MEMORY_SIZE) return; p++; - width = (xyw_memory[p] > 0 && xyw_memory[p]) ? xyw_memory[p] + 1 : MAX_WIDTH; - p++; - height = (xyw_memory[p] > 0 && xyw_memory[p]) ? xyw_memory[p] + 1 : MAX_HEIGHT; - p++; - xyw_dbg("- width: %d\n", width); - xyw_dbg("- height: %d\n", height); } }@@ -369,8 +362,8 @@ process_metadata();
// Set direct page to device page by default xyw_memory[SYSTEM_PAGE] = 0xff; // Initialize fenster - uint32_t buf[width * height * xyw_zoom * xyw_zoom]; - struct fenster f = {.title = title, .width = width * xyw_zoom, .height = height * xyw_zoom, .buf = buf}; + uint32_t buf[WIDTH * HEIGHT * xyw_zoom * xyw_zoom]; + struct fenster f = {.title = title, .width = WIDTH * xyw_zoom, .height = HEIGHT * xyw_zoom, .buf = buf}; fenster_open(&f); xyw_byte paused = 0; while (fenster_loop(&f) == 0 && xyw_memory[SYSTEM_STATE] && *pc < SYSTEM_MEMORY_START)