ReactOS  0.4.12-dev-918-g6c6e7b8
hardware.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tagWindow
 
struct  _OUTPUT_HANDLERS
 
struct  _INPUT_HANDLERS
 

Macros

#define Acquire_Output_Lock()
 
#define Release_Output_Lock()   restore_flags(ulOutputLock);
 
#define NOT_IMPLEMENTED()
 
#define COLOR_CAPTION   usCaptionColor
 
#define COLOR_TEXT   usCaptionText
 
#define COLOR_FOREGROUND   usForegroundColor
 
#define COLOR_BACKGROUND   usBackgroundColor
 
#define COLOR_HILITE   usHiLiteColor
 

Typedefs

typedef struct tagWindow WINDOW
 
typedef struct tagWindowPWINDOW
 
typedef struct _OUTPUT_HANDLERS OUTPUT_HANDLERS
 
typedef struct _OUTPUT_HANDLERSPOUTPUT_HANDLERS
 
typedef struct _INPUT_HANDLERS INPUT_HANDLERS
 
typedef struct _INPUT_HANDLERSPINPUT_HANDLERS
 
typedef enum _ETERMINALMODE ETERMINALMODE
 

Enumerations

enum  {
  REGISTER_WINDOW = 0, DATA_WINDOW, SOURCE_WINDOW, OUTPUT_WINDOW,
  OUTPUT_WINDOW_UNBUFFERED
}
 
enum  _ETERMINALMODE {
  TERMINAL_MODE_HERCULES_GRAPHICS = 0, TERMINAL_MODE_HERCULES_TEXT, TERMINAL_MODE_VGA_TEXT, TERMINAL_MODE_SERIAL,
  TERMINAL_MODE_NONE
}
 

Functions

BOOLEAN ConsoleInit (void)
 
void ConsoleShutdown (void)
 
void Print (USHORT Window, LPSTR p)
 
void SetBackgroundColor (ECOLORS c)
 
void SetForegroundColor (ECOLORS c)
 
void Clear (USHORT window)
 
void PutChar (LPSTR p, ULONG x, ULONG y)
 
void ClrLine (ULONG line)
 
void ShowCursor (void)
 
void HideCursor (void)
 
void EnableScroll (USHORT Window)
 
void DisableScroll (USHORT Window)
 
void CopyLineTo (USHORT dest, USHORT src)
 
void PrintLogo (BOOLEAN bShow)
 
void PrintCursor (BOOLEAN bForce)
 
void PrintGraf (ULONG x, ULONG y, UCHAR c)
 
void ScrollUp (USHORT Window)
 
void Home (USHORT Window)
 
void InvertLine (ULONG line)
 
void FillLine (ULONG line, UCHAR c)
 
void PrintTemplate (void)
 
void PrintCaption (void)
 
void ClrLineToEnd (USHORT Window, ULONG line, ULONG x)
 
void SuspendPrintRingBuffer (BOOLEAN bSuspend)
 
void HatchLine (ULONG line)
 
void SaveGraphicsState (void)
 
void RestoreGraphicsState (void)
 
void SetWindowGeometry (PVOID pWindow)
 
UCHAR GetKeyPolled (void)
 
void FlushKeyboardQueue (void)
 
BOOLEAN PrintRingBufferOffset (ULONG ulLines, ULONG ulOffset)
 
BOOLEAN PrintRingBufferHome (ULONG ulLines)
 
void PrintRingBuffer (ULONG ulLines)
 
ULONG LinesInRingBuffer (void)
 
void ReplaceRingBufferCurrent (LPSTR s)
 
void EmptyRingBuffer (void)
 
void CheckRingBuffer (void)
 
BOOLEAN AddToRingBuffer (LPSTR p)
 
void ResetColor (void)
 

Variables

OUTPUT_HANDLERS ohandlers
 
INPUT_HANDLERS ihandlers
 
ETERMINALMODE eTerminalMode
 
WINDOW wWindow []
 
BOOLEAN bRev
 
BOOLEAN bGrayed
 
BOOLEAN bCursorEnabled
 
ULONG GLOBAL_SCREEN_WIDTH
 
ULONG GLOBAL_SCREEN_HEIGHT
 
ULONG ulOutputLock
 
USHORT usCaptionColor
 
USHORT usCaptionText
 
USHORT usForegroundColor
 
USHORT usBackgroundColor
 
USHORT usHiLiteColor
 

Macro Definition Documentation

◆ Acquire_Output_Lock

#define Acquire_Output_Lock ( )
Value:
{ \
save_flags(ulOutputLock); \
cli(); \
}
ULONG ulOutputLock
Definition: hardware.c:76

Definition at line 144 of file hardware.h.

◆ COLOR_BACKGROUND

#define COLOR_BACKGROUND   usBackgroundColor

Definition at line 164 of file hardware.h.

◆ COLOR_CAPTION

#define COLOR_CAPTION   usCaptionColor

Definition at line 156 of file hardware.h.

◆ COLOR_FOREGROUND

#define COLOR_FOREGROUND   usForegroundColor

Definition at line 160 of file hardware.h.

◆ COLOR_HILITE

#define COLOR_HILITE   usHiLiteColor

Definition at line 166 of file hardware.h.

◆ COLOR_TEXT

#define COLOR_TEXT   usCaptionText

Definition at line 158 of file hardware.h.

◆ NOT_IMPLEMENTED

#define NOT_IMPLEMENTED ( )

Definition at line 153 of file hardware.h.

◆ Release_Output_Lock

#define Release_Output_Lock ( )    restore_flags(ulOutputLock);

Definition at line 150 of file hardware.h.

Typedef Documentation

◆ ETERMINALMODE

◆ INPUT_HANDLERS

◆ OUTPUT_HANDLERS

◆ PINPUT_HANDLERS

◆ POUTPUT_HANDLERS

◆ PWINDOW

◆ WINDOW

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
REGISTER_WINDOW 
DATA_WINDOW 
SOURCE_WINDOW 
OUTPUT_WINDOW 
OUTPUT_WINDOW_UNBUFFERED 

Definition at line 67 of file hardware.h.

◆ _ETERMINALMODE

Enumerator
TERMINAL_MODE_HERCULES_GRAPHICS 
TERMINAL_MODE_HERCULES_TEXT 
TERMINAL_MODE_VGA_TEXT 
TERMINAL_MODE_SERIAL 
TERMINAL_MODE_NONE 

Definition at line 76 of file hardware.h.

Function Documentation

◆ AddToRingBuffer()

BOOLEAN AddToRingBuffer ( LPSTR  p)

Definition at line 154 of file hardware.c.

155 {
156  ULONG i,j,len;
157  BOOLEAN bHadReturn = FALSE;
158  char temp[sizeof(aBuffers[0])];
159 
160 // ENTER_FUNC();
161 
162  // size of current string
164 
165  // start with ':' and current has ':' in front
166  if(aBuffers[ulInPos][0]==':' && *p==':')
167  {
168  if(j==1)
169  {
170  //LEAVE_FUNC();
171  return FALSE;
172  }
173  aBuffers[ulInPos][j++]='\n';
174  aBuffers[ulInPos][j]=0;
176  // wrap around
177  if(ulInPos == ulLastPos)
178  {
180  PICE_memset(aBuffers[ulInPos],0,sizeof(aBuffers[0]));
181  }
182  // reset to start of buffer
183  j = 0;
184  }
185  // it's an internal print ("pICE: ...")
186  else if(aBuffers[ulInPos][0]==':' && PICE_strncmpi(p,"pICE:",5)==0)
187  {
188  if(j==1)
189  {
190  PICE_memset(aBuffers[ulInPos],0,sizeof(aBuffers[0]));
191  }
192  else
193  {
194  aBuffers[ulInPos][j++]='\n';
195  aBuffers[ulInPos][j]=0;
197  // wrap around
198  if(ulInPos == ulLastPos)
199  {
201  PICE_memset(aBuffers[ulInPos],0,sizeof(aBuffers[0]));
202  }
203  }
204  // reset to start of buffer
205  j = 0;
206  }
207  // it's a debug print and the current line is starting with ':'
208  else if(aBuffers[ulInPos][0]==':' &&
209  ( (*p=='<' && PICE_isdigit(*(p+1)) && *(p+2)=='>') || bIsDebugPrint) )
210  {
211  if(j==1)
212  {
213  PICE_memset(aBuffers[ulInPos],0,sizeof(aBuffers[0]));
214  }
215  else
216  {
217  aBuffers[ulInPos][j++]='\n';
218  aBuffers[ulInPos][j]=0;
220  // wrap around
221  if(ulInPos == ulLastPos)
222  {
224  PICE_memset(aBuffers[ulInPos],0,sizeof(aBuffers[0]));
225  }
226  }
227  // reset to start of buffer
228  j = 0;
229  }
230  // it's a debug print
231  else if(( (*p=='<' && PICE_isdigit(*(p+1)) && *(p+2)=='>') || bIsDebugPrint) )
232  {
233  p += 3;
234  }
235 
236  // size of new string
237  len=PICE_strlen(p);
238 
239  // if combined string length too big
240  // reduce to maximum
241  if( (len+j) > sizeof(aBuffers[0])-2 )
242  {
243  PICE_memcpy(temp,p,sizeof(aBuffers[0])-2);
244  p = temp;
245  // assume we end in NEWLINE
246  p[sizeof(aBuffers[0])-2]='\n';
247  p[sizeof(aBuffers[0])-1]=0;
248  }
249 
250  for(i=0;p[i]!=0;i++)
251  {
252  // newline
253  if(p[i]=='\n')
254  {
255  aBuffers[ulInPos][j++]='\n';
256  aBuffers[ulInPos][j]=0;
258  // wrap around
259  if(ulInPos == ulLastPos)
260  {
262  PICE_memset(aBuffers[ulInPos],0,sizeof(aBuffers[0]));
263  }
264  // reset to start of buffer
265  j = 0;
266  // notify that we had a NEWLINE
267  bHadReturn = TRUE;
268  }
269  // backspace
270  else if(p[i]=='\b')
271  {
272  if(j!=0)
273  {
274  j--;
275  aBuffers[ulInPos][j] = 0;
276  }
277  }
278  // TAB
279  else if(p[i]=='\t')
280  {
281  // copy TAB
282  aBuffers[ulInPos][j++] = p[i];
283  }
284  else
285  {
286  if((UCHAR)p[i]<0x20 && (UCHAR)p[i]>0x7f)
287  p[i]=0x20;
288 
289  aBuffers[ulInPos][j++] = p[i];
290  }
291  }
292 // LEAVE_FUNC();
293 
294  return bHadReturn;
295 }
#define LINES_IN_BUFFER
Definition: precomp.h:32
#define TRUE
Definition: types.h:120
USHORT PICE_strlen(const char *s)
Definition: utils.c:547
ULONG PICE_strncmpi(char *s1, char *s2, ULONG len)
Definition: utils.c:362
int PICE_isdigit(int c)
Definition: utils.c:337
ULONG ulInPos
Definition: hardware.c:69
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
unsigned char BOOLEAN
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 GLint GLint j
Definition: glfuncs.h:250
void PICE_memcpy(void *t, void *s, int sz)
Definition: utils.c:239
unsigned char UCHAR
Definition: xmlstorage.h:181
BOOLEAN bIsDebugPrint
Definition: output.c:55
GLenum GLsizei len
Definition: glext.h:6722
static calc_node_t temp
Definition: rpn_ieee.c:38
unsigned int ULONG
Definition: retypes.h:1
char aBuffers[LINES_IN_BUFFER][1024]
Definition: hardware.c:73
GLfloat GLfloat p
Definition: glext.h:8902
void PICE_memset(void *p, unsigned char c, int sz)
Definition: utils.c:228
ULONG ulLastPos
Definition: hardware.c:69

Referenced by PICE_KdpPrintString(), Print(), and printk().

◆ CheckRingBuffer()

void CheckRingBuffer ( void  )

Definition at line 133 of file hardware.c.

134 {
135 // ENTER_FUNC();
136 
138 
139  if(ulInPos != ulOldInPos )
140  {
143  }
144 
146 
147 // LEAVE_FUNC();
148 }
ULONG ulInPos
Definition: hardware.c:69
#define Acquire_Output_Lock()
Definition: hardware.h:144
_Out_opt_ int _Out_opt_ int * cy
Definition: commctrl.h:570
WINDOW wWindow[4]
Definition: hardware.c:59
void PrintRingBuffer(ULONG ulLines)
Definition: hardware.c:315
ULONG ulOldInPos
Definition: hardware.c:70
#define Release_Output_Lock()
Definition: hardware.h:150

Referenced by COMMAND_PROTOTYPE(), DebuggerShell(), PiceRunningTimer(), and Print().

◆ Clear()

void Clear ( USHORT  window)

Definition at line 705 of file hardware.c.

706 {
707  ULONG j;
708 
709  for(j=0;j<wWindow[Window].cy;j++)
710  {
712  }
713 
714  Home(Window);
715 }
USHORT cy
Definition: hardware.h:33
Definition: window.c:29
void Home(USHORT Window)
Definition: hardware.c:693
void ClrLine(ULONG line)
Definition: hardware.c:662
WINDOW wWindow[4]
Definition: hardware.c:59
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 GLint GLint j
Definition: glfuncs.h:250
int Window
Definition: x11stubs.h:26
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
unsigned int ULONG
Definition: retypes.h:1

Referenced by AllocatePort(), CcPerformReadAhead(), CheckLoadAbort(), co_IntSendDeactivateMessages(), COMMAND_PROTOTYPE(), DECLARE_INTERFACE_(), CConfig::Default(), DisplaySourceFile(), and CConfig::~CConfig().

◆ ClrLine()

◆ ClrLineToEnd()

void ClrLineToEnd ( USHORT  Window,
ULONG  line,
ULONG  x 
)

◆ ConsoleInit()

BOOLEAN ConsoleInit ( void  )

Definition at line 946 of file hardware.c.

947 {
948  BOOLEAN bResult = FALSE;
949 
950  ENTER_FUNC();
951 
952  // preset ohandlers and ihandler to NULL
953  PICE_memset((void*)&ohandlers,0,sizeof(ohandlers));
954  PICE_memset((void*)&ihandlers,0,sizeof(ihandlers));
955 
956  switch(eTerminalMode)
957  {
959  bResult = ConsoleInitHercules();
960  break;
962  break;
964  bResult = ConsoleInitVga();
965  break;
967  bResult = ConsoleInitSerial();
968  break;
969  case TERMINAL_MODE_NONE:
970  default:
971  // fail
972  break;
973  }
974 
975  // check that outputhandlers have all been set
976  // ohandlers.Flush may be zero on return
977  if( !ohandlers.ClrLine ||
979  !ohandlers.HatchLine ||
983  !ohandlers.PrintGraf ||
984  !ohandlers.PrintLogo ||
990  {
991  bResult = FALSE;
992  }
993 
994  // check that inputhandlers were installed
995  if( !ihandlers.GetKeyPolled ||
997  {
998  bResult = FALSE;
999  }
1000 
1001  LEAVE_FUNC();
1002 
1003  bConsoleIsInitialized = bResult;
1004 
1005  return bResult;
1006 }
void(* PrintLogo)(BOOLEAN bShow)
Definition: hardware.h:47
void(* FlushKeyboardQueue)(void)
Definition: hardware.h:61
void(* HideCursor)(void)
Definition: hardware.h:52
#define LEAVE_FUNC()
Definition: debug.h:43
BOOLEAN ConsoleInitSerial(void)
Definition: serial.c:582
BOOLEAN ConsoleInitVga(void)
Definition: vga.c:479
void(* SetBackgroundColor)(ECOLORS)
Definition: hardware.h:54
void(* SetForegroundColor)(ECOLORS)
Definition: hardware.h:53
void(* ClrLine)(ULONG line)
Definition: hardware.h:44
void(* RestoreGraphicsState)(void)
Definition: hardware.h:50
unsigned char BOOLEAN
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
ETERMINALMODE eTerminalMode
Definition: hardware.c:56
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
void(* PrintCursor)(BOOLEAN bForce)
Definition: hardware.h:48
void(* ShowCursor)(void)
Definition: hardware.h:51
BOOLEAN bConsoleIsInitialized
Definition: hardware.c:52
void(* SaveGraphicsState)(void)
Definition: hardware.h:49
void(* HatchLine)(ULONG line)
Definition: hardware.h:46
void(* CopyLineTo)(USHORT dest, USHORT src)
Definition: hardware.h:41
void(* InvertLine)(ULONG line)
Definition: hardware.h:45
#define ENTER_FUNC()
Definition: debug.h:42
void PICE_memset(void *p, unsigned char c, int sz)
Definition: utils.c:228
BOOLEAN ConsoleInitHercules(void)
Definition: hercules.c:398

Referenced by InitPICE(), and wmain().

◆ ConsoleShutdown()

void ConsoleShutdown ( void  )

Definition at line 1013 of file hardware.c.

1014 {
1015  ENTER_FUNC();
1016 
1017  // sleep for a few seconds
1018  KeStallExecutionProcessor(1000*5000);
1019 
1020  switch(eTerminalMode)
1021  {
1024  break;
1026  break;
1029  break;
1030  case TERMINAL_MODE_SERIAL:
1032  break;
1033  case TERMINAL_MODE_NONE:
1034  default:
1035  // fail
1036  break;
1037  }
1038 
1039  LEAVE_FUNC();
1040 }
void ConsoleShutdownVga(void)
Definition: vga.c:557
#define LEAVE_FUNC()
Definition: debug.h:43
void ConsoleShutdownSerial(void)
Definition: serial.c:641
ETERMINALMODE eTerminalMode
Definition: hardware.c:56
void ConsoleShutdownHercules(void)
Definition: hercules.c:474
#define ENTER_FUNC()
Definition: debug.h:42
VOID NTAPI KeStallExecutionProcessor(IN ULONG MicroSeconds)
Definition: ntoskrnl.c:99

Referenced by CleanUpPICE(), and InitPICE().

◆ CopyLineTo()

void CopyLineTo ( USHORT  dest,
USHORT  src 
)

Definition at line 632 of file hardware.c.

633 {
635 }
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
GLenum src
Definition: glext.h:6340
void(* CopyLineTo)(USHORT dest, USHORT src)
Definition: hardware.h:41
static char * dest
Definition: rtl.c:135

Referenced by ScrollUp().

◆ DisableScroll()

void DisableScroll ( USHORT  Window)

Definition at line 543 of file hardware.c.

544 {
545  ENTER_FUNC();
547  LEAVE_FUNC();
548 }
#define TRUE
Definition: types.h:120
#define LEAVE_FUNC()
Definition: debug.h:43
BOOLEAN bScrollDisabled
Definition: hardware.h:35
WINDOW wWindow[4]
Definition: hardware.c:59
int Window
Definition: x11stubs.h:26
#define ENTER_FUNC()
Definition: debug.h:42

Referenced by COMMAND_PROTOTYPE(), and DisplaySourceFile().

◆ EmptyRingBuffer()

void EmptyRingBuffer ( void  )

Definition at line 104 of file hardware.c.

105 {
106  //ENTER_FUNC();
108  PICE_memset(aBuffers,0,sizeof(aBuffers));
109  //LEAVE_FUNC();
110 }
ULONG ulOldDelta
Definition: hardware.c:70
ULONG ulInPos
Definition: hardware.c:69
ULONG ulOldInPos
Definition: hardware.c:70
char aBuffers[LINES_IN_BUFFER][1024]
Definition: hardware.c:73
void PICE_memset(void *p, unsigned char c, int sz)
Definition: utils.c:228
ULONG ulLastPos
Definition: hardware.c:69

Referenced by COMMAND_PROTOTYPE(), ConsoleInitHercules(), ConsoleInitSerial(), and ConsoleInitVga().

◆ EnableScroll()

void EnableScroll ( USHORT  Window)

Definition at line 532 of file hardware.c.

533 {
534  ENTER_FUNC();
536  LEAVE_FUNC();
537 }
#define LEAVE_FUNC()
Definition: debug.h:43
BOOLEAN bScrollDisabled
Definition: hardware.h:35
WINDOW wWindow[4]
Definition: hardware.c:59
int Window
Definition: x11stubs.h:26
#define ENTER_FUNC()
Definition: debug.h:42

Referenced by COMMAND_PROTOTYPE(), and DisplaySourceFile().

◆ FillLine()

void FillLine ( ULONG  line,
UCHAR  c 
)

◆ FlushKeyboardQueue()

void FlushKeyboardQueue ( void  )

Definition at line 935 of file hardware.c.

936 {
938 }
void(* FlushKeyboardQueue)(void)
Definition: hardware.h:61
INPUT_HANDLERS ihandlers
Definition: hardware.c:66

Referenced by CheckLoadAbort(), and DebuggerShell().

◆ GetKeyPolled()

UCHAR GetKeyPolled ( void  )

Definition at line 926 of file hardware.c.

927 {
928  return ihandlers.GetKeyPolled();
929 }
UCHAR(* GetKeyPolled)(void)
Definition: hardware.h:60
INPUT_HANDLERS ihandlers
Definition: hardware.c:66

Referenced by CheckLoadAbort(), DebuggerShell(), InitPICE(), and WaitForKey().

◆ HatchLine()

void HatchLine ( ULONG  line)

Definition at line 652 of file hardware.c.

653 {
655 }
Definition: parser.c:48
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
void(* HatchLine)(ULONG line)
Definition: hardware.h:46

Referenced by COMMAND_PROTOTYPE().

◆ HideCursor()

void HideCursor ( void  )

Definition at line 566 of file hardware.c.

567 {
569 }
void(* HideCursor)(void)
Definition: hardware.h:52
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65

Referenced by BaseControlWindowImpl_HideCursor(), DebuggerShell(), and VideoWindow_HideCursor().

◆ Home()

void Home ( USHORT  Window)

Definition at line 693 of file hardware.c.

694 {
695  wWindow[Window].usCurX=0;
696  wWindow[Window].usCurY=0;
697 
698 }
WINDOW wWindow[4]
Definition: hardware.c:59
int Window
Definition: x11stubs.h:26
USHORT usCurX
Definition: hardware.h:34
USHORT usCurY
Definition: hardware.h:34

Referenced by Clear(), COMMAND_PROTOTYPE(), DisplayRegs(), PrintRingBuffer(), PrintRingBufferHome(), and PrintRingBufferOffset().

◆ InvertLine()

void InvertLine ( ULONG  line)

Definition at line 642 of file hardware.c.

643 {
645 }
Definition: parser.c:48
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
void(* InvertLine)(ULONG line)
Definition: hardware.h:45

◆ LinesInRingBuffer()

ULONG LinesInRingBuffer ( void  )

Definition at line 116 of file hardware.c.

117 {
118  ULONG ulResult;
119 
120 // ENTER_FUNC();
121 
122  ulResult = (ulInPos-ulLastPos)%LINES_IN_BUFFER;
123 
124 // LEAVE_FUNC();
125 
126  return ulResult;
127 }
#define LINES_IN_BUFFER
Definition: precomp.h:32
ULONG ulInPos
Definition: hardware.c:69
unsigned int ULONG
Definition: retypes.h:1
ULONG ulLastPos
Definition: hardware.c:69

Referenced by DebuggerShell(), PrintRingBuffer(), PrintRingBufferHome(), and PrintRingBufferOffset().

◆ Print()

void Print ( USHORT  Window,
LPSTR  p 
)

Definition at line 797 of file hardware.c.

798 {
799  ULONG i;
800 
801  DPRINT((11,"%s",p));
802 
803  //ENTER_FUNC();
805  {
806  DPRINT((0,"Print(): console is not initialized!\n"));
807  //LEAVE_FUNC();
808  return;
809  }
810 
811 
812  // the OUTPUT_WINDOW is specially handled
813  if(Window == OUTPUT_WINDOW)
814  {
815  DPRINT((0,"Print(): OUTPUT_WINDOW\n"));
816  if(AddToRingBuffer(p))
817  {
818  DPRINT((0,"Print(): checking ring buffer\n"));
819  CheckRingBuffer();
820  }
821  else
822  {
823  DPRINT((0,"Print(): outputting a line from ring buffer\n"));
827  }
828  }
829  else
830  {
831  BOOLEAN bOutput = TRUE;
832 
834  {
836  }
837 
838  for(i=0;p[i]!=0;i++)
839  {
840  if(wWindow[Window].usCurX > (GLOBAL_SCREEN_WIDTH-1))
841  bOutput = FALSE;
842 
843  // newline
844  if(p[i]=='\n')
845  {
846  wWindow[Window].usCurX = 0;
847  wWindow[Window].usCurY++;
848  if(wWindow[Window].usCurY>=wWindow[Window].cy)
849  {
851  ScrollUp(Window);
852  }
853  if(wWindow[Window].bScrollDisabled==TRUE)break;
854  }
855  // backspace
856  else if(p[i]=='\b')
857  {
858  if(wWindow[Window].usCurX>0)
859  {
860  wWindow[Window].usCurX--;
861  if(bOutput)
862  PrintGraf(wWindow[Window].usCurX,wWindow[Window].y+wWindow[Window].usCurY,0x20);
863  }
864 
865  }
866  // TAB
867  else if(p[i]=='\t')
868  {
869  if((wWindow[Window].usCurX + 4) < (GLOBAL_SCREEN_WIDTH-1))
870  {
871  wWindow[Window].usCurX += 4;
872  }
873  }
874  else
875  {
876  if((UCHAR)p[i]<0x20 && (UCHAR)p[i]>0x7f)
877  p[i]=0x20;
878 
879  if(bOutput)
880  PrintGraf(wWindow[Window].usCurX,wWindow[Window].y+wWindow[Window].usCurY,p[i]);
881 
882  wWindow[Window].usCurX++;
883  }
884  }
885 
886  // flush
887  Flush();
888  }
889  //LEAVE_FUNC();
890 }
#define TRUE
Definition: types.h:120
ULONG GLOBAL_SCREEN_WIDTH
Definition: hardware.c:62
USHORT cy
Definition: hardware.h:33
void Print(USHORT Window, LPSTR p)
Definition: hardware.c:797
ULONG ulInPos
Definition: hardware.c:69
Definition: window.c:29
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 Flush(void)
Definition: hardware.c:522
_Out_opt_ int _Out_opt_ int * cy
Definition: commctrl.h:570
unsigned char BOOLEAN
void ClrLine(ULONG line)
Definition: hardware.c:662
void DPRINT(...)
Definition: polytest.cpp:61
WINDOW wWindow[4]
Definition: hardware.c:59
void ScrollUp(USHORT Window)
Definition: hardware.c:672
int Window
Definition: x11stubs.h:26
BOOLEAN bConsoleIsInitialized
Definition: hardware.c:52
void PrintGraf(ULONG x, ULONG y, UCHAR c)
Definition: hardware.c:512
unsigned char UCHAR
Definition: xmlstorage.h:181
USHORT usCurX
Definition: hardware.h:34
USHORT usCurY
Definition: hardware.h:34
void CheckRingBuffer(void)
Definition: hardware.c:133
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
unsigned int ULONG
Definition: retypes.h:1
char aBuffers[LINES_IN_BUFFER][1024]
Definition: hardware.c:73
GLfloat GLfloat p
Definition: glext.h:8902
BOOLEAN AddToRingBuffer(LPSTR p)
Definition: hardware.c:154

Referenced by CheckLoadAbort(), CleanUpPICE(), COMMAND_PROTOTYPE(), DebuggerShell(), DisplayRegs(), DisplaySourceFile(), Evaluate(), HandlePageFault(), InitPICE(), IntelStackWalk(), KdbpReadCommand(), ListSWBreakpoints(), LoadExports(), OutputIdtEntry(), Parse(), pice_ioctl(), Print(), printk(), PrintRingBuffer(), PrintRingBufferHome(), PrintRingBufferOffset(), RealIsr(), RepaintDesktop(), RevirtualizeBreakpointsForModule(), and SanityCheckExports().

◆ PrintCaption()

void PrintCaption ( void  )

Definition at line 721 of file hardware.c.

722 {
723  const char title[]=" PrivateICE system level debugger (REACTOS) ";
724 
727 
728  ClrLine(0);
730  (GLOBAL_SCREEN_WIDTH-sizeof(title))/2,
731  0);
732 
733  ResetColor();
734 }
void SetForegroundColor(ECOLORS c)
Definition: hardware.c:576
ULONG GLOBAL_SCREEN_WIDTH
Definition: hardware.c:62
char * LPSTR
Definition: xmlstorage.h:182
#define COLOR_TEXT
Definition: hardware.h:158
void ClrLine(ULONG line)
Definition: hardware.c:662
void PutChar(LPSTR p, ULONG x, ULONG y)
Definition: hardware.c:604
void SetBackgroundColor(ECOLORS c)
Definition: hardware.c:590
void ResetColor(void)
Definition: hardware.c:500
#define COLOR_CAPTION
Definition: hardware.h:156
static char title[]
Definition: ps.c:92

Referenced by PrintTemplate().

◆ PrintCursor()

void PrintCursor ( BOOLEAN  bForce)

Definition at line 788 of file hardware.c.

789 {
790  ohandlers.PrintCursor(bForce);
791 }
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
void(* PrintCursor)(BOOLEAN bForce)
Definition: hardware.h:48

Referenced by DebuggerShell(), and WaitForKey().

◆ PrintGraf()

void PrintGraf ( ULONG  x,
ULONG  y,
UCHAR  c 
)

Definition at line 512 of file hardware.c.

513 {
515 }
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
void(* PrintGraf)(ULONG x, ULONG y, UCHAR c)
Definition: hardware.h:42
const GLubyte * c
Definition: glext.h:8905
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548

Referenced by Print(), and PutChar().

◆ PrintLogo()

void PrintLogo ( BOOLEAN  bShow)

Definition at line 778 of file hardware.c.

779 {
780  ohandlers.PrintLogo(bShow);
781 }
void(* PrintLogo)(BOOLEAN bShow)
Definition: hardware.h:47
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65

Referenced by CheckLoadAbort(), DebuggerShell(), and PrintTemplate().

◆ PrintRingBuffer()

void PrintRingBuffer ( ULONG  ulLines)

Definition at line 315 of file hardware.c.

316 {
317  ULONG ulDelta = LinesInRingBuffer();
318  ULONG ulOutPos,i=0;
319 
320 // ENTER_FUNC();
321 
323  {
324  DPRINT((0,"PrintRingBuffer(): suspended\n"));
325  LEAVE_FUNC();
326  return;
327  }
328 
329  if(!ulDelta)
330  {
331  DPRINT((0,"PrintRingBuffer(): no lines in ring buffer\n"));
332  LEAVE_FUNC();
333  return;
334  }
335 
336  if(ulDelta<ulOldDelta)
337  {
338  DPRINT((0,"PrintRingBuffer(): lines already output\n"));
339  LEAVE_FUNC();
340  return;
341  }
342 
343  ulOldDelta = ulDelta;
344 
345  if(ulDelta < ulLines)
346  {
347  DPRINT((0,"PrintRingBuffer(): less lines than requested: ulDelta: %x, ulLines: %x\n", ulDelta, ulLines));
348  ulLines = ulDelta;
349  }
350 
351  ulOutPos = (ulInPos-ulLines)%LINES_IN_BUFFER;
352  DPRINT((0,"PrintRingBuffer(): ulOutPos = %u\n",ulOutPos));
353 
355 
356  while(ulLines--)
357  {
360  i++;
361  ulOutPos = (ulOutPos+1)%LINES_IN_BUFFER;
362  }
363 
364  if(aBuffers[ulOutPos][0]==':')
365  {
369  }
370 
371 // LEAVE_FUNC();
372 }
#define LINES_IN_BUFFER
Definition: precomp.h:32
ULONG LinesInRingBuffer(void)
Definition: hardware.c:116
ULONG ulOldDelta
Definition: hardware.c:70
#define LEAVE_FUNC()
Definition: debug.h:43
void Print(USHORT Window, LPSTR p)
Definition: hardware.c:797
ULONG ulInPos
Definition: hardware.c:69
BOOLEAN bSuspendPrintRingBuffer
Definition: hardware.c:71
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 Home(USHORT Window)
Definition: hardware.c:693
void ClrLine(ULONG line)
Definition: hardware.c:662
void DPRINT(...)
Definition: polytest.cpp:61
WINDOW wWindow[4]
Definition: hardware.c:59
USHORT usCurX
Definition: hardware.h:34
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
unsigned int ULONG
Definition: retypes.h:1
char aBuffers[LINES_IN_BUFFER][1024]
Definition: hardware.c:73

Referenced by CheckRingBuffer(), DebuggerShell(), Parse(), RepaintDesktop(), and WaitForKey().

◆ PrintRingBufferHome()

BOOLEAN PrintRingBufferHome ( ULONG  ulLines)

Definition at line 447 of file hardware.c.

448 {
449  ULONG ulDelta = LinesInRingBuffer();
450  ULONG ulOutPos,i=0;
451 
452 // ENTER_FUNC();
453 
454  // no lines in ring buffer
455  if(!ulDelta)
456  {
457  DPRINT((0,"PrintRingBufferHome(): no lines in ring buffer\n"));
458  LEAVE_FUNC();
459  return FALSE;
460  }
461 
462  // more lines inc. offset to display than in ring buffer
463  if(ulDelta < ulLines)
464  {
465  ulLines = ulDelta;
466  }
467 
468  // calc the start out position
469  ulOutPos = ulLastPos;
470 
471  // start to output upper left corner of window
473 
474  // while not end reached...
475  while(ulLines--)
476  {
479  i++;
480  ulOutPos = (ulOutPos+1)%LINES_IN_BUFFER;
481  }
482 
483  if(aBuffers[ulInPos][0]==':')
484  {
489  }
490 
491 // LEAVE_FUNC();
492 
493  return TRUE;
494 }
#define LINES_IN_BUFFER
Definition: precomp.h:32
ULONG LinesInRingBuffer(void)
Definition: hardware.c:116
#define TRUE
Definition: types.h:120
USHORT PICE_strlen(const char *s)
Definition: utils.c:547
USHORT cy
Definition: hardware.h:33
#define LEAVE_FUNC()
Definition: debug.h:43
void Print(USHORT Window, LPSTR p)
Definition: hardware.c:797
ULONG ulInPos
Definition: hardware.c:69
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 Home(USHORT Window)
Definition: hardware.c:693
_Out_opt_ int _Out_opt_ int * cy
Definition: commctrl.h:570
void ClrLine(ULONG line)
Definition: hardware.c:662
void DPRINT(...)
Definition: polytest.cpp:61
WINDOW wWindow[4]
Definition: hardware.c:59
USHORT usCurX
Definition: hardware.h:34
USHORT usCurY
Definition: hardware.h:34
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
unsigned int ULONG
Definition: retypes.h:1
char aBuffers[LINES_IN_BUFFER][1024]
Definition: hardware.c:73
ULONG ulLastPos
Definition: hardware.c:69

Referenced by DebuggerShell().

◆ PrintRingBufferOffset()

BOOLEAN PrintRingBufferOffset ( ULONG  ulLines,
ULONG  ulOffset 
)

Definition at line 378 of file hardware.c.

379 {
380  ULONG ulLinesInRingBuffer = LinesInRingBuffer();
381  ULONG ulOutPos,i=0;
382 
383 // ENTER_FUNC();
384 
385  // no lines in ring buffer
386  if(!ulLinesInRingBuffer)
387  {
388  DPRINT((0,"PrintRingBufferOffset(): ulLinesInRingBuffer is 0\n"));
389  LEAVE_FUNC();
390  return FALSE;
391  }
392 
393  // more lines inc. offset to display than in ring buffer
394  if(ulLinesInRingBuffer < ulLines)
395  {
396  ulLines = ulLinesInRingBuffer;
397  }
398 
399  if(ulLinesInRingBuffer < ulOffset+ulLines)
400  {
401  DPRINT((0,"PrintRingBufferOffset(): ulLinesInRingBuffer < ulOffset+ulLines\n"));
402  LEAVE_FUNC();
403  return FALSE;
404  }
405 
406  DPRINT((0,"PrintRingBufferOffset(): ulLinesInRingBuffer %u ulLines %u ulOffset %u\n",ulLinesInRingBuffer,ulLines,ulOffset));
407 
408  ulOutPos = (ulInPos-ulOffset-ulLines)%LINES_IN_BUFFER;
409 
410  DPRINT((0,"PrintRingBufferOffset(): ulOutPos = %u\n",ulOutPos));
411 
412  if(ulOutPos == ulInPos)
413  {
414  DPRINT((0,"PrintRingBufferOffset(): ulOutPos == ulInPos\n"));
415  LEAVE_FUNC();
416  return FALSE;
417  }
418 
419  // start to output upper left corner of window
421 
422  // while not end reached...
423  while(ulLines--)
424  {
427  i++;
428  ulOutPos = (ulOutPos+1)%LINES_IN_BUFFER;
429  }
430 
431  if(aBuffers[ulInPos][0]==':')
432  {
437  }
438 
439 // LEAVE_FUNC();
440  return TRUE;
441 }
#define LINES_IN_BUFFER
Definition: precomp.h:32
ULONG LinesInRingBuffer(void)
Definition: hardware.c:116
#define TRUE
Definition: types.h:120
USHORT PICE_strlen(const char *s)
Definition: utils.c:547
USHORT cy
Definition: hardware.h:33
#define LEAVE_FUNC()
Definition: debug.h:43
void Print(USHORT Window, LPSTR p)
Definition: hardware.c:797
ULONG ulInPos
Definition: hardware.c:69
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 Home(USHORT Window)
Definition: hardware.c:693
_Out_opt_ int _Out_opt_ int * cy
Definition: commctrl.h:570
void ClrLine(ULONG line)
Definition: hardware.c:662
void DPRINT(...)
Definition: polytest.cpp:61
WINDOW wWindow[4]
Definition: hardware.c:59
USHORT usCurX
Definition: hardware.h:34
USHORT usCurY
Definition: hardware.h:34
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
unsigned int ULONG
Definition: retypes.h:1
char aBuffers[LINES_IN_BUFFER][1024]
Definition: hardware.c:73

Referenced by DebuggerShell().

◆ PrintTemplate()

void PrintTemplate ( void  )

Definition at line 741 of file hardware.c.

742 {
743  USHORT i,j;
744 
745  ENTER_FUNC();
746 
747  ResetColor();
748 
749  for(j=0;j<4;j++)
750  {
751  for(i=wWindow[j].y;i<(wWindow[j].y+wWindow[j].cy);i++)
752  {
753  ClrLine(i);
754  }
755  }
756 
757  PrintCaption();
758 
761 
765 
766  ResetColor();
767 
768  ShowRunningMsg();
769  PrintLogo(TRUE);
770 
771  LEAVE_FUNC();
772 }
void SetForegroundColor(ECOLORS c)
Definition: hardware.c:576
#define TRUE
Definition: types.h:120
USHORT cy
Definition: hardware.h:33
#define LEAVE_FUNC()
Definition: debug.h:43
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 PrintCaption(void)
Definition: hardware.c:721
#define COLOR_TEXT
Definition: hardware.h:158
void ClrLine(ULONG line)
Definition: hardware.c:662
WINDOW wWindow[4]
Definition: hardware.c:59
void ShowRunningMsg(void)
Definition: utils.c:843
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 GLint GLint j
Definition: glfuncs.h:250
USHORT y
Definition: hardware.h:33
unsigned short USHORT
Definition: pedump.c:61
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
void SetBackgroundColor(ECOLORS c)
Definition: hardware.c:590
#define ENTER_FUNC()
Definition: debug.h:42
void ResetColor(void)
Definition: hardware.c:500
#define COLOR_CAPTION
Definition: hardware.h:156
void PrintLogo(BOOLEAN bShow)
Definition: hardware.c:778

Referenced by InitPICE(), and RepaintDesktop().

◆ PutChar()

void PutChar ( LPSTR  p,
ULONG  x,
ULONG  y 
)

Definition at line 604 of file hardware.c.

605 {
606  ULONG i;
607 
608 // ENTER_FUNC();
609 
611 
612  for(i=0;p[i]!=0;i++)
613  {
614  if((UCHAR)p[i]>=0x20 && (UCHAR)p[i]<0x80)
615  {
616  PrintGraf(x+i,y,p[i]);
617  }
618  }
619 
620  Flush();
621 
623 
624 // LEAVE_FUNC();
625 }
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
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 Flush(void)
Definition: hardware.c:522
#define Acquire_Output_Lock()
Definition: hardware.h:144
void PrintGraf(ULONG x, ULONG y, UCHAR c)
Definition: hardware.c:512
unsigned char UCHAR
Definition: xmlstorage.h:181
#define Release_Output_Lock()
Definition: hardware.h:150
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
unsigned int ULONG
Definition: retypes.h:1
GLfloat GLfloat p
Definition: glext.h:8902

Referenced by COMMAND_PROTOTYPE(), DebuggerShell(), FindCommand(), PiceRunningTimer(), PrintCaption(), PutStatusText(), ShowRunningMsg(), ShowStatusLine(), ShowStoppedMsg(), and WaitForKey().

◆ ReplaceRingBufferCurrent()

void ReplaceRingBufferCurrent ( LPSTR  s)

Definition at line 301 of file hardware.c.

302 {
303 // ENTER_FUNC();
304 
305  PICE_memset(aBuffers[ulInPos],0,sizeof(aBuffers[0]));
307 
308 // LEAVE_FUNC();
309 }
ULONG ulInPos
Definition: hardware.c:69
char * PICE_strcpy(char *s1, char *s2)
Definition: utils.c:302
GLdouble s
Definition: gl.h:2039
char aBuffers[LINES_IN_BUFFER][1024]
Definition: hardware.c:73
void PICE_memset(void *p, unsigned char c, int sz)
Definition: utils.c:228

Referenced by DebuggerShell().

◆ ResetColor()

void ResetColor ( void  )

Definition at line 500 of file hardware.c.

501 {
504 }
void SetForegroundColor(ECOLORS c)
Definition: hardware.c:576
#define COLOR_FOREGROUND
Definition: hardware.h:160
void SetBackgroundColor(ECOLORS c)
Definition: hardware.c:590
#define COLOR_BACKGROUND
Definition: hardware.h:164

Referenced by COMMAND_PROTOTYPE(), DisplayRegs(), DisplaySourceFile(), FindCommand(), PiceRunningTimer(), PrintCaption(), PrintTemplate(), ShowRunningMsg(), ShowStatusLine(), and ShowStoppedMsg().

◆ RestoreGraphicsState()

void RestoreGraphicsState ( void  )

Definition at line 906 of file hardware.c.

907 {
909 }
void(* RestoreGraphicsState)(void)
Definition: hardware.h:50
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65

Referenced by CheckLoadAbort(), and DebuggerShell().

◆ SaveGraphicsState()

void SaveGraphicsState ( void  )

Definition at line 897 of file hardware.c.

898 {
900 }
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
void(* SaveGraphicsState)(void)
Definition: hardware.h:49

Referenced by CheckLoadAbort(), and DebuggerShell().

◆ ScrollUp()

void ScrollUp ( USHORT  Window)

Definition at line 672 of file hardware.c.

673 {
674  USHORT i;
675 
676  return;
677 
678  if(!wWindow[Window].bScrollDisabled)
679  {
680  for(i=1;i<wWindow[Window].cy;i++)
681  {
683  }
685  }
686 }
USHORT cy
Definition: hardware.h:33
Definition: window.c:29
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
_Out_opt_ int _Out_opt_ int * cy
Definition: commctrl.h:570
void ClrLine(ULONG line)
Definition: hardware.c:662
WINDOW wWindow[4]
Definition: hardware.c:59
int Window
Definition: x11stubs.h:26
unsigned short USHORT
Definition: pedump.c:61
void CopyLineTo(USHORT dest, USHORT src)
Definition: hardware.c:632
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548

Referenced by Print().

◆ SetBackgroundColor()

void SetBackgroundColor ( ECOLORS  c)

Definition at line 590 of file hardware.c.

591 {
592 // ENTER_FUNC();
593 
595 
596 // LEAVE_FUNC();
597 }
void(* SetBackgroundColor)(ECOLORS)
Definition: hardware.h:54
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
const GLubyte * c
Definition: glext.h:8905

Referenced by COMMAND_PROTOTYPE(), DECLARE_INTERFACE_(), DisplaySourceFile(), FindCommand(), PiceRunningTimer(), PrintCaption(), PrintTemplate(), ResetColor(), ShowRunningMsg(), ShowStatusLine(), ShowStoppedMsg(), and WaitForKey().

◆ SetForegroundColor()

void SetForegroundColor ( ECOLORS  c)

Definition at line 576 of file hardware.c.

577 {
578 // ENTER_FUNC();
579 
581 
582 // LEAVE_FUNC();
583 }
void(* SetForegroundColor)(ECOLORS)
Definition: hardware.h:53
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
const GLubyte * c
Definition: glext.h:8905

Referenced by COMMAND_PROTOTYPE(), DisplayRegs(), DisplaySourceFile(), FindCommand(), PiceRunningTimer(), PrintCaption(), PrintTemplate(), ResetColor(), ShowRunningMsg(), ShowStatusLine(), and ShowStoppedMsg().

◆ SetWindowGeometry()

void SetWindowGeometry ( PVOID  pWindow)

Definition at line 915 of file hardware.c.

916 {
917  PICE_memcpy(wWindow,pWindow,sizeof(wWindow));
918 }
WINDOW wWindow[4]
Definition: hardware.c:59
void PICE_memcpy(void *t, void *s, int sz)
Definition: utils.c:239

Referenced by ConsoleInitHercules(), ConsoleInitSerial(), and ConsoleInitVga().

◆ ShowCursor()

void ShowCursor ( void  )

Definition at line 556 of file hardware.c.

557 {
559 }
OUTPUT_HANDLERS ohandlers
Definition: hardware.c:65
void(* ShowCursor)(void)
Definition: hardware.h:51

Referenced by DebuggerShell(), DECLARE_INTERFACE_(), ScreenSaverProc(), SysMouseWImpl_Acquire(), and SysMouseWImpl_Unacquire().

◆ SuspendPrintRingBuffer()

void SuspendPrintRingBuffer ( BOOLEAN  bSuspend)

Definition at line 93 of file hardware.c.

94 {
95  ENTER_FUNC();
96  bSuspendPrintRingBuffer = bSuspend;
97  LEAVE_FUNC();
98 }
#define LEAVE_FUNC()
Definition: debug.h:43
BOOLEAN bSuspendPrintRingBuffer
Definition: hardware.c:71
#define ENTER_FUNC()
Definition: debug.h:42

Referenced by Parse(), and WaitForKey().

Variable Documentation

◆ bCursorEnabled

◆ bGrayed

BOOLEAN bGrayed

◆ bRev

BOOLEAN bRev

Definition at line 53 of file hercules.c.

Referenced by DebuggerShell(), and PrintCursorHercules().

◆ eTerminalMode

ETERMINALMODE eTerminalMode

Definition at line 56 of file hardware.c.

Referenced by ConsoleInit(), ConsoleShutdown(), and LoadSymbolsFromConfig().

◆ GLOBAL_SCREEN_HEIGHT

◆ GLOBAL_SCREEN_WIDTH

◆ ihandlers

◆ ohandlers

◆ ulOutputLock

ULONG ulOutputLock

Definition at line 76 of file hardware.c.

◆ usBackgroundColor

USHORT usBackgroundColor

Definition at line 82 of file hardware.c.

◆ usCaptionColor

USHORT usCaptionColor

Definition at line 79 of file hardware.c.

◆ usCaptionText

USHORT usCaptionText

Definition at line 80 of file hardware.c.

◆ usForegroundColor

USHORT usForegroundColor

Definition at line 81 of file hardware.c.

◆ usHiLiteColor

USHORT usHiLiteColor

Definition at line 83 of file hardware.c.

◆ wWindow