ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

blue.h
Go to the documentation of this file.
00001 /*
00002  * PROJECT:         ReactOS Setup Driver
00003  * LICENSE:         GPL - See COPYING in the top level directory
00004  * FILE:            drivers/setup/blue/font.h
00005  * PURPOSE:         Loading specific fonts into VGA
00006  * PROGRAMMERS:     Aleksey Bragin (aleksey@reactos.org)
00007  */
00008 
00009 /* DEFINITIONS ***************************************************************/
00010 
00011 #include <ntddk.h>
00012 
00013 typedef struct _SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES, *PSECURITY_ATTRIBUTES;
00014 
00015 // Define material that normally comes from PSDK
00016 // This is mandatory to prevent any inclusion of
00017 // user-mode stuff.
00018 typedef struct tagCOORD {
00019   SHORT X;
00020   SHORT Y;
00021 } COORD, *PCOORD;
00022 
00023 typedef struct tagSMALL_RECT {
00024   SHORT Left;
00025   SHORT Top;
00026   SHORT Right;
00027   SHORT Bottom;
00028 } SMALL_RECT;
00029 
00030 typedef struct tagCONSOLE_SCREEN_BUFFER_INFO {
00031   COORD      dwSize;
00032   COORD      dwCursorPosition;
00033   USHORT     wAttributes;
00034   SMALL_RECT srWindow;
00035   COORD      dwMaximumWindowSize;
00036 } CONSOLE_SCREEN_BUFFER_INFO, *PCONSOLE_SCREEN_BUFFER_INFO;
00037 
00038 typedef struct tagCONSOLE_CURSOR_INFO {
00039   ULONG    dwSize;
00040   BOOLEAN  bVisible;
00041 } CONSOLE_CURSOR_INFO, *PCONSOLE_CURSOR_INFO;
00042 
00043 #define ENABLE_PROCESSED_OUTPUT                 0x0001
00044 #define ENABLE_WRAP_AT_EOL_OUTPUT               0x0002
00045 
00046 #include <blue/ntddblue.h>
00047 #include <ndk/inbvfuncs.h>
00048 
00049 #define TAG_BLUE 'EULB'
00050 
00051 typedef struct _CFHEADER
00052 {
00053     ULONG Signature;        // File signature 'MSCF' (CAB_SIGNATURE)
00054     ULONG Reserved1;        // Reserved field
00055     ULONG CabinetSize;      // Cabinet file size
00056     ULONG Reserved2;        // Reserved field
00057     ULONG FileTableOffset;  // Offset of first CFFILE
00058     ULONG Reserved3;        // Reserved field
00059     USHORT Version;          // Cabinet version (CAB_VERSION)
00060     USHORT FolderCount;      // Number of folders
00061     USHORT FileCount;        // Number of files
00062     USHORT Flags;            // Cabinet flags (CAB_FLAG_*)
00063     USHORT SetID;            // Cabinet set id
00064     USHORT CabinetNumber;    // Zero-based cabinet number
00065 } CFHEADER, *PCFHEADER;
00066 
00067 typedef struct _CFFILE
00068 {
00069     ULONG FileSize;         // Uncompressed file size in bytes
00070     ULONG FileOffset;       // Uncompressed offset of file in the folder
00071     USHORT FileControlID;    // File control ID (CAB_FILE_*)
00072     USHORT FileDate;         // File date stamp, as used by DOS
00073     USHORT FileTime;         // File time stamp, as used by DOS
00074     USHORT Attributes;       // File attributes (CAB_ATTRIB_*)
00075     /* After this is the NULL terminated filename */
00076 } CFFILE, *PCFFILE;
00077 
00078 #define CAB_SIGNATURE      0x4643534D // "MSCF"
00079 
00080 #define VIDMEM_BASE        0xb8000
00081 #define BITPLANE_BASE      0xa0000
00082 
00083 #define CRTC_COMMAND       ((PUCHAR)0x3d4)
00084 #define CRTC_DATA          ((PUCHAR)0x3d5)
00085 
00086 #define CRTC_COLUMNS       0x01
00087 #define CRTC_OVERFLOW      0x07
00088 #define CRTC_ROWS          0x12
00089 #define CRTC_SCANLINES     0x09
00090 #define CRTC_CURSORSTART   0x0a
00091 #define CRTC_CURSOREND     0x0b
00092 #define CRTC_CURSORPOSHI   0x0e
00093 #define CRTC_CURSORPOSLO   0x0f
00094 
00095 #define SEQ_COMMAND        ((PUCHAR)0x3c4)
00096 #define SEQ_DATA           ((PUCHAR)0x3c5)
00097 
00098 #define GCT_COMMAND        ((PUCHAR)0x3ce)
00099 #define GCT_DATA           ((PUCHAR)0x3cf)
00100 
00101 /* SEQ regs numbers*/
00102 #define SEQ_RESET            0x00
00103 #define SEQ_ENABLE_WRT_PLANE 0x02
00104 #define SEQ_MEM_MODE         0x04
00105 
00106 /* GCT regs numbers */
00107 #define GCT_READ_PLANE     0x04
00108 #define GCT_RW_MODES       0x05
00109 #define GCT_GRAPH_MODE     0x06
00110 
00111 #define ATTRC_WRITEREG     ((PUCHAR)0x3c0)
00112 #define ATTRC_READREG      ((PUCHAR)0x3c1)
00113 #define ATTRC_INPST1       ((PUCHAR)0x3da)
00114 
00115 #define TAB_WIDTH          8
00116 
00117 #define MAX_PATH           260
00118 
00119 #define MISC         (PUCHAR)0x3c2
00120 #define SEQ          (PUCHAR)0x3c4
00121 #define SEQDATA      (PUCHAR)0x3c5
00122 #define CRTC         (PUCHAR)0x3d4
00123 #define CRTCDATA     (PUCHAR)0x3d5
00124 #define GRAPHICS     (PUCHAR)0x3ce
00125 #define GRAPHICSDATA (PUCHAR)0x3cf
00126 #define ATTRIB       (PUCHAR)0x3c0
00127 #define STATUS       (PUCHAR)0x3da
00128 #define PELMASK      (PUCHAR)0x3c6
00129 #define PELINDEX     (PUCHAR)0x3c8
00130 #define PELDATA      (PUCHAR)0x3c9
00131 
00132 void ScrLoadFontTable(UINT32 CodePage);
00133 NTSTATUS ExtractFont(UINT32 CodePage, PUCHAR FontBitField);

Generated on Sun May 27 2012 04:28:11 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.