ReactOS  0.4.13-dev-551-gf37fb1f
hercules.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

BOOLEAN ConsoleInitHercules (void)
 
void ConsoleShutdownHercules (void)
 

Function Documentation

◆ ConsoleInitHercules()

BOOLEAN ConsoleInitHercules ( void  )

Definition at line 398 of file hercules.c.

399 {
400  BOOLEAN bResult = FALSE;
401  PUCHAR pMGATable = MGATable43;
402  UCHAR i,reg,data;
404 
405  ENTER_FUNC();
406 
421 
424 
425  // init HERCULES adapter
426  outb_p(0,0x3b8);
427  outb_p(0x03,0x3bf);
428  for(i=0;i<sizeof(MGATable43);i++)
429  {
430  reg=i;
431  outb_p(reg,0x3b4);
432  data=pMGATable[i];
433  outb_p(data,0x3b5);
434  }
435  outb_p(0x0a,0x3b8);
436 
438 
439  GLOBAL_SCREEN_WIDTH = 90;
441 
442  attr.u.Asuchar = 0x07;
443  FrameBuffer.u.LowPart = 0xb0000;
445 
446  DPRINT((0,"VGA memory phys. 0xb0000 mapped to virt. 0x%x\n",pScreenBufferHercules));
447 
449  {
450  for(i=0;i<4;i++)
451  {
453  DPRINT((0,"VGA offset %u = 0x%.8X\n",i,pVgaOffset[i]));
454  }
455  bResult = TRUE;
456 
458 
459  EmptyRingBuffer();
460 
461  DPRINT((0,"ConsoleInitHercules() SUCCESS!\n"));
462  }
463 
464  LEAVE_FUNC();
465 
466  return bResult;
467 }
void(* PrintLogo)(BOOLEAN bShow)
Definition: hardware.h:47
void KeyboardFlushKeyboardQueue(void)
Definition: utils.c:1455
PUCHAR pScreenBufferHercules
Definition: hercules.c:79
#define TRUE
Definition: types.h:120
void InvertLineHercules(ULONG line)
Definition: hercules.c:213
void SetWindowGeometry(PVOID pWindow)
Definition: hardware.c:915
GLint x0
Definition: linetemp.h:95
void EmptyRingBuffer(void)
Definition: hardware.c:104
void(* FlushKeyboardQueue)(void)
Definition: hardware.h:61
ULONG GLOBAL_SCREEN_WIDTH
Definition: hardware.c:62
unsigned char * PUCHAR
Definition: retypes.h:3
ULONG GLOBAL_SCREEN_HEIGHT
Definition: hardware.c:62
void(* HideCursor)(void)
Definition: hardware.h:52
void CopyLineToHercules(USHORT dest, USHORT src)
Definition: hercules.c:186
void SetBackgroundColorHercules(ECOLORS col)
Definition: hercules.c:110
#define LEAVE_FUNC()
Definition: debug.h:43
PVOID NTAPI MmMapIoSpace(IN PHYSICAL_ADDRESS PhysicalAddress, IN SIZE_T NumberOfBytes, IN MEMORY_CACHING_TYPE CacheType)
Definition: iosup.c:47
WINDOW wWindowHercGraph[4]
Definition: hercules.c:63
#define FRAMEBUFFER_SIZE
Definition: precomp.h:31
void(* SetBackgroundColor)(ECOLORS)
Definition: hardware.h:54
void PrintGrafHercules(ULONG x, ULONG y, UCHAR c)
Definition: hercules.c:120
void(* SetForegroundColor)(ECOLORS)
Definition: hardware.h:53
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
void outb_p(UCHAR data, PUCHAR port)
Definition: utils.c:2159
void PrintCursorHercules(BOOLEAN bForce)
Definition: hercules.c:350
void(* ClrLine)(ULONG line)
Definition: hardware.h:44
void(* RestoreGraphicsState)(void)
Definition: hardware.h:50
unsigned char BOOLEAN
void PrintLogoHercules(BOOLEAN bShow)
Definition: hercules.c:328
void DPRINT(...)
Definition: polytest.cpp:61
void ShowCursorHercules(void)
Definition: hercules.c:158
void HideCursorHercules(void)
Definition: hercules.c:172
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
UCHAR(* GetKeyPolled)(void)
Definition: hardware.h:60
void(* PrintGraf)(ULONG x, ULONG y, UCHAR c)
Definition: hardware.h:42
INPUT_HANDLERS ihandlers
Definition: hardware.c:66
PUCHAR pVgaOffset[4]
Definition: hercules.c:59
void(* PrintCursor)(BOOLEAN bForce)
Definition: hardware.h:48
void(* ShowCursor)(void)
Definition: hardware.h:51
Definition: cookie.c:170
void SetForegroundColorHercules(ECOLORS col)
Definition: hercules.c:100
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
unsigned char UCHAR
Definition: xmlstorage.h:181
void SaveGraphicsStateHercules(void)
Definition: hercules.c:379
void(* Flush)(void)
Definition: hardware.h:43
void(* SaveGraphicsState)(void)
Definition: hardware.h:49
void(* HatchLine)(ULONG line)
Definition: hardware.h:46
static PVOID FrameBuffer
Definition: xboxvideo.c:24
void RestoreGraphicsStateHercules(void)
Definition: hercules.c:388
void(* CopyLineTo)(USHORT dest, USHORT src)
Definition: hardware.h:41
static int reg
Definition: i386-dis.c:1275
void(* InvertLine)(ULONG line)
Definition: hardware.h:45
UCHAR MGATable43[]
Definition: hercules.c:57
#define ENTER_FUNC()
Definition: debug.h:42
UCHAR KeyboardGetKeyPolled(void)
Definition: utils.c:1375
void ClrLineHercules(ULONG line)
Definition: hercules.c:272
void HatchLineHercules(ULONG line)
Definition: hercules.c:239
void FlushHercules(void)
Definition: hercules.c:149
void PICE_memset(void *p, unsigned char c, int sz)
Definition: utils.c:228

Referenced by ConsoleInit().

◆ ConsoleShutdownHercules()

void ConsoleShutdownHercules ( void  )

Definition at line 474 of file hercules.c.

475 {
476  ENTER_FUNC();
477 
478  // HERC video off
479  outb_p(0,0x3b8);
480  outb_p(0,0x3bf);
481 
484 
485  LEAVE_FUNC();
486 }
PUCHAR pScreenBufferHercules
Definition: hercules.c:79
#define LEAVE_FUNC()
Definition: debug.h:43
#define FRAMEBUFFER_SIZE
Definition: precomp.h:31
void outb_p(UCHAR data, PUCHAR port)
Definition: utils.c:2159
VOID NTAPI MmUnmapIoSpace(IN PVOID BaseAddress, IN SIZE_T NumberOfBytes)
Definition: iosup.c:193
#define ENTER_FUNC()
Definition: debug.h:42

Referenced by ConsoleShutdown().