From ba2d7ae1d7b319645b10aaa31a7f664f9f80c25c Mon Sep 17 00:00:00 2001 From: user Date: Sat, 18 Jul 2026 00:38:38 +0200 Subject: refactor: c/ -> usr/, compiled program blobs out of the source tree Userland sources live in usr/ (fits the Unix theme better than 'c'). SDCC output .bin blobs land in build/usr/ with the other build artifacts instead of littering the source dir; programs.asm INCBINs them from there. Byte-identical ROM. --- usr/ptest.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 usr/ptest.c (limited to 'usr/ptest.c') diff --git a/usr/ptest.c b/usr/ptest.c new file mode 100644 index 0000000..88b7d30 --- /dev/null +++ b/usr/ptest.c @@ -0,0 +1,19 @@ +#include "gbos.h" +/* ptest: exercise the kernel pipe in one process - write some bytes, read them + back, then close the write end and confirm the reader sees EOF. */ +void main(void) { + unsigned char pr = pipe(); + unsigned char pw = pr + 1; + int c; + if (pr == NOFD) { puts("pipe: none free"); nl(); return; } + fputc(pw, 'H'); fputc(pw, 'i'); fputc(pw, '!'); + c = fgetc(pr); putc(c); + c = fgetc(pr); putc(c); + c = fgetc(pr); putc(c); + nl(); + close(pw); /* last writer gone */ + c = fgetc(pr); + if (c < 0) puts("EOF"); else { puts("got "); putc(c); } + nl(); + close(pr); +} -- cgit v1.3.1-sl0p