diff options
author | Kartik Agaram <vc@akkartik.com> | 2021-01-19 22:17:05 -0800 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2021-01-19 22:48:49 -0800 |
commit | 7363c6dfd3cf2104d7e3a0e814cde2d8b4f4e6ce (patch) | |
tree | e0f2114917851fac0107eec5cb6cbdaf0556af5f /baremetal/500text-screen.mu | |
parent | 6ce43fce4f288fda97e4034abc512e03d0304177 (diff) | |
download | mu-7363c6dfd3cf2104d7e3a0e814cde2d8b4f4e6ce.tar.gz |
7537 - baremetal: start of cursor support
Diffstat (limited to 'baremetal/500text-screen.mu')
-rw-r--r-- | baremetal/500text-screen.mu | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/baremetal/500text-screen.mu b/baremetal/500text-screen.mu index e6004cad..96c6644f 100644 --- a/baremetal/500text-screen.mu +++ b/baremetal/500text-screen.mu @@ -1,4 +1,5 @@ -# Screen primitives for character-oriented output. +# Testable primitives for writing text to screen. +# (Mu doesn't yet have testable primitives for graphics.) # # Unlike the top-level, this text mode has no scrolling. @@ -61,11 +62,13 @@ fn screen-size screen: (addr screen) -> _/eax: int, _/ecx: int { return width, height } +# testable screen primitive +# background color isn't configurable yet fn draw-grapheme screen: (addr screen), g: grapheme, x: int, y: int, color: int { { compare screen, 0 break-if-!= - draw-grapheme-on-real-screen g, x, y, color + draw-grapheme-on-real-screen g, x, y, color, 0 return } # fake screen |