Diff markup
001 001
002 002
003 003
004 004
005 005
006 006
007 007
008 008
009 009
010 010
011 011
012 012
013 013
014 014
015 015
016 016
017 017
018 018
019 #ifndef _SOS_X86_VIDEOMEM_H_ 019 #ifndef _SOS_X86_VIDEOMEM_H_
020 #define _SOS_X86_VIDEOMEM_H_ 020 #define _SOS_X86_VIDEOMEM_H_
021 021
022 022
023 023
024 024
025 025
026 026
027 027
028 028
029 029
030 030
031 031
032 032
033 #include <sos/errno.h> 033 #include <sos/errno.h>
034 034
035 035
036 036
037 037
038 038
039 039
040 #define SOS_X86_VIDEO_FG_BLACK 0 040 #define SOS_X86_VIDEO_FG_BLACK 0
041 #define SOS_X86_VIDEO_FG_DKGRAY 8 041 #define SOS_X86_VIDEO_FG_DKGRAY 8
042 #define SOS_X86_VIDEO_FG_BLUE 1 042 #define SOS_X86_VIDEO_FG_BLUE 1
043 #define SOS_X86_VIDEO_FG_LTBLUE 9 043 #define SOS_X86_VIDEO_FG_LTBLUE 9
044 #define SOS_X86_VIDEO_FG_GREEN 2 044 #define SOS_X86_VIDEO_FG_GREEN 2
045 #define SOS_X86_VIDEO_FG_LTGREEN 10 045 #define SOS_X86_VIDEO_FG_LTGREEN 10
046 #define SOS_X86_VIDEO_FG_CYAN 3 046 #define SOS_X86_VIDEO_FG_CYAN 3
047 #define SOS_X86_VIDEO_FG_LTCYAN 11 047 #define SOS_X86_VIDEO_FG_LTCYAN 11
048 #define SOS_X86_VIDEO_FG_RED 4 048 #define SOS_X86_VIDEO_FG_RED 4
049 #define SOS_X86_VIDEO_FG_LTRED 12 049 #define SOS_X86_VIDEO_FG_LTRED 12
050 #define SOS_X86_VIDEO_FG_MAGENTA 5 050 #define SOS_X86_VIDEO_FG_MAGENTA 5
051 #define SOS_X86_VIDEO_FG_LTMAGENTA 13 051 #define SOS_X86_VIDEO_FG_LTMAGENTA 13
052 #define SOS_X86_VIDEO_FG_BROWN 6 052 #define SOS_X86_VIDEO_FG_BROWN 6
053 #define SOS_X86_VIDEO_FG_YELLOW 14 053 #define SOS_X86_VIDEO_FG_YELLOW 14
054 #define SOS_X86_VIDEO_FG_LTGRAY 7 054 #define SOS_X86_VIDEO_FG_LTGRAY 7
055 #define SOS_X86_VIDEO_FG_WHITE 15 055 #define SOS_X86_VIDEO_FG_WHITE 15
056 056
057 #define SOS_X86_VIDEO_BG_BLACK (0 << 4) 057 #define SOS_X86_VIDEO_BG_BLACK (0 << 4)
058 #define SOS_X86_VIDEO_BG_BLUE (1 << 4) 058 #define SOS_X86_VIDEO_BG_BLUE (1 << 4)
059 #define SOS_X86_VIDEO_BG_GREEN (2 << 4) 059 #define SOS_X86_VIDEO_BG_GREEN (2 << 4)
060 #define SOS_X86_VIDEO_BG_CYAN (3 << 4) 060 #define SOS_X86_VIDEO_BG_CYAN (3 << 4)
061 #define SOS_X86_VIDEO_BG_RED (4 << 4) 061 #define SOS_X86_VIDEO_BG_RED (4 << 4)
062 #define SOS_X86_VIDEO_BG_MAGENTA (5 << 4) 062 #define SOS_X86_VIDEO_BG_MAGENTA (5 << 4)
063 #define SOS_X86_VIDEO_BG_BROWN (6 << 4) 063 #define SOS_X86_VIDEO_BG_BROWN (6 << 4)
064 #define SOS_X86_VIDEO_BG_LTGRAY (7 << 4) 064 #define SOS_X86_VIDEO_BG_LTGRAY (7 << 4)
065 065
066 #define SOS_X86_VIDEO_FG_BLINKING (1 << 7) 066 #define SOS_X86_VIDEO_FG_BLINKING (1 << 7)
067 067
068 068
069 069
070 sos_ret_t sos_x86_videomem_setup(void); 070 sos_ret_t sos_x86_videomem_setup(void);
071 071
072 072
073 073
074 sos_ret_t sos_x86_videomem_cls(unsigned char a 074 sos_ret_t sos_x86_videomem_cls(unsigned char attribute);
075 075
076 076
077 077
078 sos_ret_t sos_x86_videomem_putstring(unsigned 078 sos_ret_t sos_x86_videomem_putstring(unsigned char row, unsigned char col,
079 unsigned 079 unsigned char attribute,
080 const cha 080 const char *str);
081 081
082 082
083 083
084 sos_ret_t sos_x86_videomem_putchar(unsigned ch 084 sos_ret_t sos_x86_videomem_putchar(unsigned char row, unsigned char col,
085 unsigned ch 085 unsigned char attribute,
086 unsigned ch 086 unsigned char c);
087 087
088 088
089 089
090 090
091 091
092 092
093 sos_ret_t sos_x86_videomem_printf(unsigned cha 093 sos_ret_t sos_x86_videomem_printf(unsigned char row, unsigned char col,
094 unsigned cha 094 unsigned char attribute,
095 const char * 095 const char *format, ...)
096 __attribute__ ((format (printf, 4, 5))); 096 __attribute__ ((format (printf, 4, 5)));
097 097
098 #endif 098 #endif