<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Ubixos: ogDisplay_VESA.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.3 -->
<h1>ogDisplay_VESA.h</h1><a href="og_display___v_e_s_a_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="preprocessor">#ifndef OGDISPLAY_VESA_H</span>
00002 <span class="preprocessor"></span>
00003 <span class="preprocessor">#define OGDISPLAY_VESA_H</span>
00004 <span class="preprocessor"></span>
00005
<a name="l00006"></a><a class="code" href="struct_t_mode___rec.html">00006</a>
00007 <span class="preprocessor">#include "objgfx30.h"</span>
00008
00009
00010
00011 <span class="keyword">struct </span><a class="code" href="struct_t_mode___rec.html">TMode_Rec</a> {
00012
00013 <a class="code" href="types_8h.html#a2">uInt16</a> ModeAttributes <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00014
00015 <a class="code" href="types_8h.html#a1">uInt8</a> WindowAFlags <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00016
00017 <a class="code" href="types_8h.html#a1">uInt8</a> WindowBFlags <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00018
00019 <a class="code" href="types_8h.html#a2">uInt16</a> Granularity <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00020
00021 <a class="code" href="types_8h.html#a2">uInt16</a> WindowSize <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00022
00023 <a class="code" href="types_8h.html#a2">uInt16</a> WindowASeg <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00024
00025 <a class="code" href="types_8h.html#a2">uInt16</a> WindowBSeg <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00026
00027 <span class="keywordtype">void</span>* BankSwitch <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00028
00029 <a class="code" href="types_8h.html#a2">uInt16</a> BytesPerLine <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00030
00031 <a class="code" href="types_8h.html#a2">uInt16</a> xRes <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00032
00033 <a class="code" href="types_8h.html#a2">uInt16</a> yRes <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00034
00035 <a class="code" href="types_8h.html#a1">uInt8</a> CharWidth <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00036
00037 <a class="code" href="types_8h.html#a1">uInt8</a> CharHeight <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00038
00039 <a class="code" href="types_8h.html#a1">uInt8</a> NumBitPlanes <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00040
00041 <a class="code" href="types_8h.html#a1">uInt8</a> BitsPerPixel <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
00042
00043 <a class="code" href="types_8h.html#a1">uInt8</a> NumberOfBanks <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((<a class="code" href="gdt_8h.html#a24">packed</a>));
<a name="l00044"></a><a class="code" href="struct_t_v_e_s_a___rec.html">00044</a>
00045 <a class="code" href="types_8h.html#a1">uInt8</a> MemoryModel <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00046
00047 <a class="code" href="types_8h.html#a1">uInt8</a> BankSize <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00048
00049 <a class="code" href="types_8h.html#a1">uInt8</a> NumOfImagePages <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00050
00051 <a class="code" href="types_8h.html#a1">uInt8</a> Reserved <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00052
00053 <span class="comment">// Direct colour fields (required for Direct/6 and YUV/7 memory models</span>
00054
00055 <a class="code" href="types_8h.html#a1">uInt8</a> RedMaskSize <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00056
00057 <a class="code" href="types_8h.html#a1">uInt8</a> RedFieldPosition <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00058
00059 <a class="code" href="types_8h.html#a1">uInt8</a> GreenMaskSize <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
<a name="l00060"></a><a class="code" href="classog_display___v_e_s_a.html">00060</a>
00061 <a class="code" href="types_8h.html#a1">uInt8</a> GreenFieldPosition <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
<a name="l00062"></a><a class="code" href="classog_display___v_e_s_a.html#p0">00062</a>
<a name="l00063"></a><a class="code" href="classog_display___v_e_s_a.html#p1">00063</a> <a class="code" href="types_8h.html#a1">uInt8</a> BlueMaskSize <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
<a name="l00064"></a><a class="code" href="classog_display___v_e_s_a.html#p2">00064</a>
<a name="l00065"></a><a class="code" href="classog_display___v_e_s_a.html#p3">00065</a> <a class="code" href="types_8h.html#a1">uInt8</a> BlueFieldPosition <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00066
00067 <a class="code" href="types_8h.html#a1">uInt8</a> AlphaMaskSize <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00068
00069 <a class="code" href="types_8h.html#a1">uInt8</a> AlphaFieldPosition <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00070
00071 <a class="code" href="types_8h.html#a1">uInt8</a> DirectColourMode <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00072
00073 <span class="comment">// VESA 2.0 specific fields</span>
00074
00075 <a class="code" href="types_8h.html#a3">uInt32</a> physBasePtr <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00076
00077 <span class="keywordtype">void</span>* OffScreenMemOffset <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00078
00079 <a class="code" href="types_8h.html#a2">uInt16</a> OffScreenMemSize <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00080
00081 <a class="code" href="types_8h.html#a1">uInt8</a> paddington[461] <a class="code" href="struct_t_mode___rec.html#a0">__attribute__</a>((packed));
00082
00083 };
00084
00085
00086
00087 <span class="keyword">struct </span><a class="code" href="struct_t_v_e_s_a___rec.html">TVESA_Rec</a> {
00088
00089 <span class="keywordtype">char</span> VBESignature[4] <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00090
00091 <a class="code" href="types_8h.html#a1">uInt8</a> minVersion <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00092
00093 <a class="code" href="types_8h.html#a1">uInt8</a> majVersion <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00094
00095 <a class="code" href="types_8h.html#a3">uInt32</a> OEMStringPtr <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00096
00097 <a class="code" href="types_8h.html#a3">uInt32</a> Capabilities <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00098
00099 <a class="code" href="types_8h.html#a3">uInt32</a> VideoModePtr <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00100
00101 <a class="code" href="types_8h.html#a2">uInt16</a> TotalMemory <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00102
00103 <span class="comment">// VESA 2.0 specific fields</span>
00104
00105 <a class="code" href="types_8h.html#a2">uInt16</a> OEMSoftwareRev <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00106
00107 <a class="code" href="types_8h.html#a3">uInt32</a> OEMVendorNamePtr <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00108
00109 <a class="code" href="types_8h.html#a3">uInt32</a> OEMProductNamePtr <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00110
00111 <a class="code" href="types_8h.html#a3">uInt32</a> OEMProductRevPtr <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00112
00113 <a class="code" href="types_8h.html#a1">uInt8</a> paddington[474] <a class="code" href="struct_t_v_e_s_a___rec.html#a0">__attribute__</a>((packed));
00114
00115 };
00116
00117
00118
00119 <span class="keyword">class </span><a class="code" href="classog_display___v_e_s_a.html">ogDisplay_VESA</a> : <span class="keyword">public</span> ogSurface {
00120
00121 <span class="keyword">protected</span>:
00122
00123 <a class="code" href="types_8h.html#a2">uInt16</a> <a class="code" href="classog_display___v_e_s_a.html#p0">ScreenSelector</a>;
00124
00125 <a class="code" href="struct_t_v_e_s_a___rec.html">TVESA_Rec</a>* <a class="code" href="classog_display___v_e_s_a.html#p1">VESARec</a>;
00126
00127 <a class="code" href="struct_t_mode___rec.html">TMode_Rec</a>* <a class="code" href="classog_display___v_e_s_a.html#p2">ModeRec</a>;
00128
00129 <span class="keywordtype">bool</span> <a class="code" href="classog_display___v_e_s_a.html#p3">InGraphics</a>;
00130
00131 <a class="code" href="types_8h.html#a2">uInt16</a> <a class="code" href="classog_display___v_e_s_a.html#b0">findMode</a>(uInt32, uInt32, uInt32);
00132
00133 <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#b1">getModeInfo</a>(uInt16);
00134
00135 <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#b2">getVESAInfo</a>(<span class="keywordtype">void</span>);
00136
00137 <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#b3">setMode</a>(uInt16);
00138
00139 <span class="keyword">virtual</span> <a class="code" href="types_8h.html#a3">uInt32</a> <a class="code" href="classog_display___v_e_s_a.html#b4">rawGetPixel</a>(uInt32, uInt32);
00140
00141 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#b5">rawSetPixel</a>(uInt32, uInt32, uInt32);
00142
00143 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#b6">rawLine</a>(uInt32, uInt32, uInt32, uInt32, uInt32);
00144
00145 <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#b7">setPal</a>(<span class="keywordtype">void</span>);
00146
00147 <span class="keyword">public</span>:
00148
00149 <a class="code" href="classog_display___v_e_s_a.html#a0">ogDisplay_VESA</a>(<span class="keywordtype">void</span>);
00150
00151 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classog_display___v_e_s_a.html#a1">ogAvail</a>(<span class="keywordtype">void</span>);
00152
00153 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classog_display___v_e_s_a.html#a2">ogAlias</a>(ogSurface&, uInt32, uInt32, uInt32, uInt32);
00154
00155 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#a3">ogClear</a>(uInt32);
00156
00157 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classog_display___v_e_s_a.html#a4">ogClone</a>(ogSurface&);
00158
00159 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#a5">ogCopyLineTo</a>(uInt32, uInt32, <span class="keyword">const</span> <span class="keywordtype">void</span> *, uInt32);
00160
00161 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#a6">ogCopyLineFrom</a>(uInt32, uInt32, <span class="keywordtype">void</span> *, uInt32);
00162
00163 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#a7">ogCopyPal</a>(ogSurface&);
00164
00165 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classog_display___v_e_s_a.html#a8">ogCreate</a>(uInt32, uInt32, ogPixelFmt);
00166
00167 <span class="keyword">virtual</span> <a class="code" href="types_8h.html#a3">uInt32</a> <a class="code" href="classog_display___v_e_s_a.html#a9">ogGetPixel</a>(int32, int32);
00168
00169 <span class="keyword">virtual</span> <span class="keywordtype">void</span> * <a class="code" href="classog_display___v_e_s_a.html#a10">ogGetPtr</a>(uInt32, uInt32);
00170
00171 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#a11">ogHLine</a>(int32, int32, int32, uInt32);
00172
00173 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classog_display___v_e_s_a.html#a12">ogLoadPal</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *);
00174
00175 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#a13">ogSetPixel</a>(int32, int32, uInt32);
00176
00177 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#a14">ogSetRGBPalette</a>(uInt8, uInt8, uInt8, uInt8);
00178
00179 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#a15">ogVFlip</a>(<span class="keywordtype">void</span>);
00180
00181 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classog_display___v_e_s_a.html#a16">ogVLine</a>(int32, int32, int32, uInt32);
00182
00183 <span class="keyword">virtual</span> <a class="code" href="classog_display___v_e_s_a.html#a17">~ogDisplay_VESA</a>(<span class="keywordtype">void</span>);
00184
00185 }; <span class="comment">// ogDisplay_VESA</span>
00186
00187
00188
00189 <span class="preprocessor">#endif</span>
00190 <span class="preprocessor"></span>
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sat May 8 09:28:17 2004 for Ubixos by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.3 </small></address>
</body>
</html>