diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2015-01-02 12:32:25 -0500 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2015-01-06 09:54:44 -0500 |
commit | 60e0e55f212dadd043ab9e39bee05a48013ddd8f (patch) | |
tree | 0bf0b2b3ddcc2b7724be67a2f2a49e53e7bab137 /src/string.h | |
parent | 9c29148ea6e2ba0c1ca81f92138a4f71e5f8d6d7 (diff) | |
download | seabios-60e0e55f212dadd043ab9e39bee05a48013ddd8f.tar.gz |
vgabios: implement read char in graphics mode
GWBasic relies on this, so implement it to enable some serious retrocomputing.
There is no better way to do it than trying to match all characters one by one
against the current font.
This makes it possible to actually do something in SCREEN 1 and SCREEN 2
(without it, you can use graphics in the programs but not in direct mode).
I couldn't find documentation for what to return as the attribute, but
experimenting with DOSBox suggests 0 (and GWBasic accepts it).
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'src/string.h')
-rw-r--r-- | src/string.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/string.h b/src/string.h index ca751a45..a557d6a4 100644 --- a/src/string.h +++ b/src/string.h @@ -8,6 +8,7 @@ u8 checksum_far(u16 buf_seg, void *buf_far, u32 len); u8 checksum(void *buf, u32 len); size_t strlen(const char *s); +int memcmp_far(u16 s1seg, const void *s1, u16 s2seg, const void *s2, size_t n); int memcmp(const void *s1, const void *s2, size_t n); int strcmp(const char *s1, const char *s2); inline void memset_far(u16 d_seg, void *d_far, u8 c, size_t len); |