#ifndef HOS_IO_PSF2_H #define HOS_IO_PSF2_H #include #include #define PSF2_MAGIC0 0x72 #define PSF2_MAGIC1 0xb5 #define PSF2_MAGIC2 0x4a #define PSF2_MAGIC3 0x86 #define PSF2_HAS_UNICODE_TABLE 0x01 #define PSF2_SEPARATOR 0xff #define PSF2_STARTSEQ 0xfe namespace hos::io { class psf2 : public font { public: psf2 (void *font_start_addr); void write (unsigned char character, void *fb_addr, std::uint16_t bpp); private: unsigned char magic[4]; unsigned int version; unsigned int header_size; unsigned int flags; unsigned int length; unsigned int charsize; unsigned int height; unsigned int width; }; } #endif