From d2448d151edad03fb2ca2274cb02426f5fb69582 Mon Sep 17 00:00:00 2001 From: Benji Dial Date: Sun, 19 May 2024 11:39:07 -0400 Subject: add font loading and rendering to daguerre --- euler/include/cstdio | 5 +++++ euler/makefile | 2 +- euler/source/io/fseek.cpp | 11 +++++++++++ 3 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 euler/source/io/fseek.cpp (limited to 'euler') diff --git a/euler/include/cstdio b/euler/include/cstdio index 27073db..75472c1 100644 --- a/euler/include/cstdio +++ b/euler/include/cstdio @@ -10,6 +10,11 @@ namespace std { FILE *fopen(const char *filename, const char *mode); int fclose(FILE *stream); + int fseek(FILE *stream, long offset, int origin); + #define SEEK_SET 0 + #define SEEK_CUR 2 + #define SEEK_END 1 + size_t fread(void *buffer, size_t size, size_t count, FILE *stream); } diff --git a/euler/makefile b/euler/makefile index 3b8022d..b9d440f 100644 --- a/euler/makefile +++ b/euler/makefile @@ -1,6 +1,6 @@ LIBSTDCPP_SOURCES = euler/stream.cpp strings/strlen.cpp euler/syscall.asm \ euler/entry.cpp io/fopen.cpp euler/gcc.asm memory/delete.cpp euler/heap.cpp \ - memory/new.cpp io/fclose.cpp io/fread.cpp strings/memcpy.cpp + memory/new.cpp io/fclose.cpp io/fread.cpp strings/memcpy.cpp io/fseek.cpp clean: rm -rf build diff --git a/euler/source/io/fseek.cpp b/euler/source/io/fseek.cpp new file mode 100644 index 0000000..3254468 --- /dev/null +++ b/euler/source/io/fseek.cpp @@ -0,0 +1,11 @@ +#include + +namespace std { + + int fseek(FILE *stream, long offset, int origin) { + if (origin < 0 || origin > 2) + return 1; + return stream->try_seek((__euler_seek_from)origin, offset) ? 0 : 2; + } + +} -- cgit v1.2.3