⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 console.c

📁 linux字符驱动源码
💻 C
📖 第 1 页 / 共 5 页
字号:
 <a name=L69 href="source/kernel/chr_drv/console.c?v=0.97#L69">69</a> static unsigned long    <a href="ident?v=0.97;i=video_mem_term">video_mem_term</a>;         <b><i>/* End of video memory          */</i></b> <a name=L70 href="source/kernel/chr_drv/console.c?v=0.97#L70">70</a> static unsigned long    <a href="ident?v=0.97;i=video_size_row">video_size_row</a>;         <b><i>/* Bytes per row                */</i></b> <a name=L71 href="source/kernel/chr_drv/console.c?v=0.97#L71">71</a> static unsigned char    <a href="ident?v=0.97;i=video_page">video_page</a>;             <b><i>/* Initial video page           */</i></b> <a name=L72 href="source/kernel/chr_drv/console.c?v=0.97#L72">72</a> static unsigned short   <a href="ident?v=0.97;i=video_port_reg">video_port_reg</a>;         <b><i>/* Video register select port   */</i></b> <a name=L73 href="source/kernel/chr_drv/console.c?v=0.97#L73">73</a> static unsigned short   <a href="ident?v=0.97;i=video_port_val">video_port_val</a>;         <b><i>/* Video register value port    */</i></b> <a name=L74 href="source/kernel/chr_drv/console.c?v=0.97#L74">74</a> static int <a href="ident?v=0.97;i=can_do_color">can_do_color</a> = 0; <a name=L75 href="source/kernel/chr_drv/console.c?v=0.97#L75">75</a>  <a name=L76 href="source/kernel/chr_drv/console.c?v=0.97#L76">76</a> static struct { <a name=L77 href="source/kernel/chr_drv/console.c?v=0.97#L77">77</a>         unsigned short  vc_video_erase_char;    <b><i>/* Background erase character */</i></b> <a name=L78 href="source/kernel/chr_drv/console.c?v=0.97#L78">78</a>         unsigned char   vc_attr;                <b><i>/* Current attributes */</i></b> <a name=L79 href="source/kernel/chr_drv/console.c?v=0.97#L79">79</a>         unsigned char   vc_def_color;           <b><i>/* Default colors */</i></b> <a name=L80 href="source/kernel/chr_drv/console.c?v=0.97#L80">80</a>         unsigned char   vc_color;               <b><i>/* Foreground &amp; background */</i></b> <a name=L81 href="source/kernel/chr_drv/console.c?v=0.97#L81">81</a>         unsigned char   vc_s_color;             <b><i>/* Saved foreground &amp; background */</i></b> <a name=L82 href="source/kernel/chr_drv/console.c?v=0.97#L82">82</a>         unsigned char   vc_ulcolor;             <b><i>/* Colour for underline mode */</i></b> <a name=L83 href="source/kernel/chr_drv/console.c?v=0.97#L83">83</a>         unsigned char   vc_halfcolor;           <b><i>/* Colour for half intensity mode */</i></b> <a name=L84 href="source/kernel/chr_drv/console.c?v=0.97#L84">84</a>         unsigned long   vc_origin;              <b><i>/* Used for EGA/VGA fast scroll */</i></b> <a name=L85 href="source/kernel/chr_drv/console.c?v=0.97#L85">85</a>         unsigned long   vc_scr_end;             <b><i>/* Used for EGA/VGA fast scroll */</i></b> <a name=L86 href="source/kernel/chr_drv/console.c?v=0.97#L86">86</a>         unsigned long   vc_pos; <a name=L87 href="source/kernel/chr_drv/console.c?v=0.97#L87">87</a>         unsigned long   vc_x,vc_y; <a name=L88 href="source/kernel/chr_drv/console.c?v=0.97#L88">88</a>         unsigned long   vc_top,vc_bottom; <a name=L89 href="source/kernel/chr_drv/console.c?v=0.97#L89">89</a>         unsigned long   vc_state; <a name=L90 href="source/kernel/chr_drv/console.c?v=0.97#L90">90</a>         unsigned long   vc_npar,vc_par[<a href="ident?v=0.97;i=NPAR">NPAR</a>]; <a name=L91 href="source/kernel/chr_drv/console.c?v=0.97#L91">91</a>         unsigned long   vc_video_mem_start;     <b><i>/* Start of video RAM           */</i></b> <a name=L92 href="source/kernel/chr_drv/console.c?v=0.97#L92">92</a>         unsigned long   vc_video_mem_end;       <b><i>/* End of video RAM (sort of)   */</i></b> <a name=L93 href="source/kernel/chr_drv/console.c?v=0.97#L93">93</a>         unsigned long   vc_saved_x; <a name=L94 href="source/kernel/chr_drv/console.c?v=0.97#L94">94</a>         unsigned long   vc_saved_y; <a name=L95 href="source/kernel/chr_drv/console.c?v=0.97#L95">95</a>         <b><i>/* mode flags */</i></b> <a name=L96 href="source/kernel/chr_drv/console.c?v=0.97#L96">96</a>         unsigned long   vc_kbdapplic    : 1;    <b><i>/* Application keyboard */</i></b> <a name=L97 href="source/kernel/chr_drv/console.c?v=0.97#L97">97</a>         unsigned long   vc_charset      : 1;    <b><i>/* Character set G0 / G1 */</i></b> <a name=L98 href="source/kernel/chr_drv/console.c?v=0.97#L98">98</a>         unsigned long   vc_s_charset    : 1;    <b><i>/* Saved character set */</i></b> <a name=L99 href="source/kernel/chr_drv/console.c?v=0.97#L99">99</a>         unsigned long   vc_decckm       : 1;    <b><i>/* Cursor Keys Mode */</i></b><a name=L100 href="source/kernel/chr_drv/console.c?v=0.97#L100">100</a>         unsigned long   vc_decscnm      : 1;    <b><i>/* Screen Mode */</i></b><a name=L101 href="source/kernel/chr_drv/console.c?v=0.97#L101">101</a>         unsigned long   vc_decom        : 1;    <b><i>/* Origin Mode */</i></b><a name=L102 href="source/kernel/chr_drv/console.c?v=0.97#L102">102</a>         unsigned long   vc_decawm       : 1;    <b><i>/* Autowrap Mode */</i></b><a name=L103 href="source/kernel/chr_drv/console.c?v=0.97#L103">103</a>         unsigned long   vc_decarm       : 1;    <b><i>/* Autorepeat Mode */</i></b><a name=L104 href="source/kernel/chr_drv/console.c?v=0.97#L104">104</a>         unsigned long   vc_deccm        : 1;    <b><i>/* Cursor Visible */</i></b><a name=L105 href="source/kernel/chr_drv/console.c?v=0.97#L105">105</a>         unsigned long   vc_decim        : 1;    <b><i>/* Insert Mode */</i></b><a name=L106 href="source/kernel/chr_drv/console.c?v=0.97#L106">106</a>         unsigned long   vc_lnm          : 1;    <b><i>/* Line feed New line Mode */</i></b><a name=L107 href="source/kernel/chr_drv/console.c?v=0.97#L107">107</a>         <b><i>/* attribute flags */</i></b><a name=L108 href="source/kernel/chr_drv/console.c?v=0.97#L108">108</a>         unsigned long   vc_intensity    : 2;    <b><i>/* 0=half-bright, 1=normal, 2=bold */</i></b><a name=L109 href="source/kernel/chr_drv/console.c?v=0.97#L109">109</a>         unsigned long   vc_underline    : 1;<a name=L110 href="source/kernel/chr_drv/console.c?v=0.97#L110">110</a>         unsigned long   vc_blink        : 1;<a name=L111 href="source/kernel/chr_drv/console.c?v=0.97#L111">111</a>         unsigned long   vc_reverse      : 1;<a name=L112 href="source/kernel/chr_drv/console.c?v=0.97#L112">112</a>         unsigned long   vc_s_intensity  : 2;    <b><i>/* saved rendition */</i></b><a name=L113 href="source/kernel/chr_drv/console.c?v=0.97#L113">113</a>         unsigned long   vc_s_underline  : 1;<a name=L114 href="source/kernel/chr_drv/console.c?v=0.97#L114">114</a>         unsigned long   vc_s_blink      : 1;<a name=L115 href="source/kernel/chr_drv/console.c?v=0.97#L115">115</a>         unsigned long   vc_s_reverse    : 1;<a name=L116 href="source/kernel/chr_drv/console.c?v=0.97#L116">116</a>         <b><i>/* misc */</i></b><a name=L117 href="source/kernel/chr_drv/console.c?v=0.97#L117">117</a>         unsigned long   vc_ques         : 1;<a name=L118 href="source/kernel/chr_drv/console.c?v=0.97#L118">118</a>         unsigned long   vc_need_wrap    : 1;<a name=L119 href="source/kernel/chr_drv/console.c?v=0.97#L119">119</a>         unsigned long   vc_tab_stop[5];         <b><i>/* Tab stops. 160 columns. */</i></b><a name=L120 href="source/kernel/chr_drv/console.c?v=0.97#L120">120</a>         unsigned char   vc_kbdmode;<a name=L121 href="source/kernel/chr_drv/console.c?v=0.97#L121">121</a>         char *          vc_translate;<a name=L122 href="source/kernel/chr_drv/console.c?v=0.97#L122">122</a>         char *          vc_G0_charset;<a name=L123 href="source/kernel/chr_drv/console.c?v=0.97#L123">123</a>         char *          vc_G1_charset;<a name=L124 href="source/kernel/chr_drv/console.c?v=0.97#L124">124</a>         char *          vc_saved_G0;<a name=L125 href="source/kernel/chr_drv/console.c?v=0.97#L125">125</a>         char *          vc_saved_G1;<a name=L126 href="source/kernel/chr_drv/console.c?v=0.97#L126">126</a>         <b><i>/* additional information is in vt_kern.h */</i></b><a name=L127 href="source/kernel/chr_drv/console.c?v=0.97#L127">127</a> } <a href="ident?v=0.97;i=vc_cons">vc_cons</a> [<a href="ident?v=0.97;i=NR_CONSOLES">NR_CONSOLES</a>];<a name=L128 href="source/kernel/chr_drv/console.c?v=0.97#L128">128</a> <a name=L129 href="source/kernel/chr_drv/console.c?v=0.97#L129">129</a> #define <a href="ident?v=0.97;i=MEM_BUFFER_SIZE">MEM_BUFFER_SIZE</a> (2*80*50*8) <a name=L130 href="source/kernel/chr_drv/console.c?v=0.97#L130">130</a> <a name=L131 href="source/kernel/chr_drv/console.c?v=0.97#L131">131</a> unsigned short *<a href="ident?v=0.97;i=vc_scrbuf">vc_scrbuf</a>[<a href="ident?v=0.97;i=NR_CONSOLES">NR_CONSOLES</a>];<a name=L132 href="source/kernel/chr_drv/console.c?v=0.97#L132">132</a> static unsigned short * <a href="ident?v=0.97;i=vc_scrmembuf">vc_scrmembuf</a>;<a name=L133 href="source/kernel/chr_drv/console.c?v=0.97#L133">133</a> static int <a href="ident?v=0.97;i=console_blanked">console_blanked</a> = 0;<a name=L134 href="source/kernel/chr_drv/console.c?v=0.97#L134">134</a> <a name=L135 href="source/kernel/chr_drv/console.c?v=0.97#L135">135</a> #define <a href="ident?v=0.97;i=origin">origin</a>          (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_origin)<a name=L136 href="source/kernel/chr_drv/console.c?v=0.97#L136">136</a> #define <a href="ident?v=0.97;i=scr_end">scr_end</a>         (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_scr_end)<a name=L137 href="source/kernel/chr_drv/console.c?v=0.97#L137">137</a> #define <a href="ident?v=0.97;i=pos">pos</a>             (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_pos)<a name=L138 href="source/kernel/chr_drv/console.c?v=0.97#L138">138</a> #define <a href="ident?v=0.97;i=top">top</a>             (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_top)<a name=L139 href="source/kernel/chr_drv/console.c?v=0.97#L139">139</a> #define <a href="ident?v=0.97;i=bottom">bottom</a>          (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_bottom)<a name=L140 href="source/kernel/chr_drv/console.c?v=0.97#L140">140</a> #define <a href="ident?v=0.97;i=x">x</a>               (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_x)<a name=L141 href="source/kernel/chr_drv/console.c?v=0.97#L141">141</a> #define <a href="ident?v=0.97;i=y">y</a>               (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_y)<a name=L142 href="source/kernel/chr_drv/console.c?v=0.97#L142">142</a> #define <a href="ident?v=0.97;i=state">state</a>           (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_state)<a name=L143 href="source/kernel/chr_drv/console.c?v=0.97#L143">143</a> #define <a href="ident?v=0.97;i=npar">npar</a>            (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_npar)<a name=L144 href="source/kernel/chr_drv/console.c?v=0.97#L144">144</a> #define <a href="ident?v=0.97;i=par">par</a>             (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_par)<a name=L145 href="source/kernel/chr_drv/console.c?v=0.97#L145">145</a> #define <a href="ident?v=0.97;i=ques">ques</a>            (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_ques)<a name=L146 href="source/kernel/chr_drv/console.c?v=0.97#L146">146</a> #define <a href="ident?v=0.97;i=attr">attr</a>            (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_attr)<a name=L147 href="source/kernel/chr_drv/console.c?v=0.97#L147">147</a> #define <a href="ident?v=0.97;i=saved_x">saved_x</a>         (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_saved_x)<a name=L148 href="source/kernel/chr_drv/console.c?v=0.97#L148">148</a> #define <a href="ident?v=0.97;i=saved_y">saved_y</a>         (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_saved_y)<a name=L149 href="source/kernel/chr_drv/console.c?v=0.97#L149">149</a> #define <a href="ident?v=0.97;i=translate">translate</a>       (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_translate)<a name=L150 href="source/kernel/chr_drv/console.c?v=0.97#L150">150</a> #define <a href="ident?v=0.97;i=G0_charset">G0_charset</a>      (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_G0_charset)<a name=L151 href="source/kernel/chr_drv/console.c?v=0.97#L151">151</a> #define <a href="ident?v=0.97;i=G1_charset">G1_charset</a>      (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_G1_charset)<a name=L152 href="source/kernel/chr_drv/console.c?v=0.97#L152">152</a> #define <a href="ident?v=0.97;i=saved_G0">saved_G0</a>        (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_saved_G0)<a name=L153 href="source/kernel/chr_drv/console.c?v=0.97#L153">153</a> #define <a href="ident?v=0.97;i=saved_G1">saved_G1</a>        (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_saved_G1)<a name=L154 href="source/kernel/chr_drv/console.c?v=0.97#L154">154</a> #define <a href="ident?v=0.97;i=video_mem_start">video_mem_start</a> (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_video_mem_start)<a name=L155 href="source/kernel/chr_drv/console.c?v=0.97#L155">155</a> #define <a href="ident?v=0.97;i=video_mem_end">video_mem_end</a>   (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_video_mem_end)<a name=L156 href="source/kernel/chr_drv/console.c?v=0.97#L156">156</a> #define <a href="ident?v=0.97;i=video_erase_char">video_erase_char</a> (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_video_erase_char)        <a name=L157 href="source/kernel/chr_drv/console.c?v=0.97#L157">157</a> #define <a href="ident?v=0.97;i=decckm">decckm</a>          (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_decckm)<a name=L158 href="source/kernel/chr_drv/console.c?v=0.97#L158">158</a> #define <a href="ident?v=0.97;i=decscnm">decscnm</a>         (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_decscnm)<a name=L159 href="source/kernel/chr_drv/console.c?v=0.97#L159">159</a> #define <a href="ident?v=0.97;i=decom">decom</a>           (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_decom)<a name=L160 href="source/kernel/chr_drv/console.c?v=0.97#L160">160</a> #define <a href="ident?v=0.97;i=decawm">decawm</a>          (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_decawm)<a name=L161 href="source/kernel/chr_drv/console.c?v=0.97#L161">161</a> #define <a href="ident?v=0.97;i=decarm">decarm</a>          (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_decarm)<a name=L162 href="source/kernel/chr_drv/console.c?v=0.97#L162">162</a> #define <a href="ident?v=0.97;i=deccm">deccm</a>           (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_deccm)<a name=L163 href="source/kernel/chr_drv/console.c?v=0.97#L163">163</a> #define <a href="ident?v=0.97;i=decim">decim</a>           (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_decim)<a name=L164 href="source/kernel/chr_drv/console.c?v=0.97#L164">164</a> #define <a href="ident?v=0.97;i=lnm">lnm</a>             (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_lnm)<a name=L165 href="source/kernel/chr_drv/console.c?v=0.97#L165">165</a> #define <a href="ident?v=0.97;i=kbdapplic">kbdapplic</a>       (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_kbdapplic)<a name=L166 href="source/kernel/chr_drv/console.c?v=0.97#L166">166</a> #define <a href="ident?v=0.97;i=need_wrap">need_wrap</a>       (<a href="ident?v=0.97;i=vc_cons">vc_cons</a>[currcons].vc_need_wrap)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -