ReactOS 0.4.15-dev-8145-ga541a46
maze.c File Reference
#include <windows.h>
#include <scrnsave.h>
#include <tchar.h>
#include <stdlib.h>
#include <commctrl.h>
#include <string.h>
#include <time.h>
#include "resource.h"
Include dependency graph for maze.c:

Go to the source code of this file.

Macros

#define STRICT
 
#define APPNAME   _T("Maze")
 
#define MAX_MAZE_SIZE_X   ((unsigned long) 1000)
 
#define MAX_MAZE_SIZE_Y   ((unsigned long) 1000)
 
#define MOVE_LIST_SIZE   (MAX_MAZE_SIZE_X * MAX_MAZE_SIZE_Y)
 
#define WALL_TOP   0x8000
 
#define WALL_RIGHT   0x4000
 
#define WALL_BOTTOM   0x2000
 
#define WALL_LEFT   0x1000
 
#define DOOR_IN_TOP   0x800
 
#define DOOR_IN_RIGHT   0x400
 
#define DOOR_IN_BOTTOM   0x200
 
#define DOOR_IN_LEFT   0x100
 
#define DOOR_IN_ANY   0xF00
 
#define DOOR_OUT_TOP   0x80
 
#define DOOR_OUT_RIGHT   0x40
 
#define DOOR_OUT_BOTTOM   0x20
 
#define DOOR_OUT_LEFT   0x10
 
#define START_SQUARE   0x2
 
#define END_SQUARE   0x1
 
#define border_x   (0)
 
#define border_y   (0)
 
#define get_random(x)   (rand() % (x))
 

Functions

LRESULT CALLBACK ScreenSaverProc (HWND hWnd, UINT message, WPARAM uParam, LPARAM lParam)
 
static int choose_door ()
 
static long backup ()
 
static void draw_wall ()
 
static void draw_solid_square (int, int, int, HDC, HBRUSH)
 
static void enter_square (int, HDC, HBRUSH)
 
static void SetDefaults ()
 
static void ReadRegistry ()
 
static void WriteRegistry ()
 
static void set_maze_sizes (int width, int height)
 
static void initialize_maze ()
 
static void create_maze (HWND hWnd)
 
static int choose_door (HDC hDC)
 
static void draw_maze_border (HWND hWnd)
 
static void draw_wall (int i, int j, int dir, HDC hDC)
 
static void begin_solve_maze (HWND hWnd)
 
static int solve_maze (HWND hWnd)
 
static void start_timer (HWND hWnd, int iTimeout)
 
static BOOL OnCreate (HWND hWnd, LPCREATESTRUCT lpCreateStruct)
 
INT_PTR CALLBACK AboutProc (HWND hWnd, UINT message, WPARAM wparam, LPARAM lparam)
 
static void ReadSettings (HWND hWnd)
 
BOOL WINAPI ScreenSaverConfigureDialog (HWND hWnd, UINT message, WPARAM wparam, LPARAM lparam)
 
BOOL WINAPI RegisterDialogClasses (HANDLE hmodule)
 

Variables

HINSTANCE hMainInstance
 
HBRUSH hBrushDead
 
HBRUSH hBrushLiving
 
HPEN hPenWall
 
HDC hDC
 
static int solve_delay
 
static int pre_solve_delay
 
static int post_solve_delay
 
static int size
 
static unsigned short maze [MAX_MAZE_SIZE_X][MAX_MAZE_SIZE_Y]
 
struct {
   unsigned int   x
 
   unsigned int   y
 
   unsigned int   dir
 
move_list [MOVE_LIST_SIZE]
 
struct {
   unsigned int   x
 
   unsigned int   y
 
   unsigned int   dir
 
save_path [MOVE_LIST_SIZE]
 
struct {
   unsigned int   x
 
   unsigned int   y
 
   unsigned int   dir
 
path [MOVE_LIST_SIZE]
 
static int maze_size_x
 
static int maze_size_y
 
static long sqnum
 
static long path_length
 
static int cur_sq_x
 
static int cur_sq_y
 
static int start_x
 
static int start_y
 
static int start_dir
 
static int end_x
 
static int end_y
 
static int end_dir
 
static int grid_width
 
static int grid_height
 
static int bw
 
static int state = 1
 
static int pathi = 0
 
static LPCWSTR registryPath = _T("Software\\Microsoft\\ScreenSavers\\mazescr")
 

Macro Definition Documentation

◆ APPNAME

#define APPNAME   _T("Maze")

Definition at line 61 of file maze.c.

◆ border_x

#define border_x   (0)

Definition at line 102 of file maze.c.

◆ border_y

#define border_y   (0)

Definition at line 103 of file maze.c.

◆ DOOR_IN_ANY

#define DOOR_IN_ANY   0xF00

Definition at line 92 of file maze.c.

◆ DOOR_IN_BOTTOM

#define DOOR_IN_BOTTOM   0x200

Definition at line 90 of file maze.c.

◆ DOOR_IN_LEFT

#define DOOR_IN_LEFT   0x100

Definition at line 91 of file maze.c.

◆ DOOR_IN_RIGHT

#define DOOR_IN_RIGHT   0x400

Definition at line 89 of file maze.c.

◆ DOOR_IN_TOP

#define DOOR_IN_TOP   0x800

Definition at line 88 of file maze.c.

◆ DOOR_OUT_BOTTOM

#define DOOR_OUT_BOTTOM   0x20

Definition at line 96 of file maze.c.

◆ DOOR_OUT_LEFT

#define DOOR_OUT_LEFT   0x10

Definition at line 97 of file maze.c.

◆ DOOR_OUT_RIGHT

#define DOOR_OUT_RIGHT   0x40

Definition at line 95 of file maze.c.

◆ DOOR_OUT_TOP

#define DOOR_OUT_TOP   0x80

Definition at line 94 of file maze.c.

◆ END_SQUARE

#define END_SQUARE   0x1

Definition at line 100 of file maze.c.

◆ get_random

#define get_random (   x)    (rand() % (x))

Definition at line 105 of file maze.c.

◆ MAX_MAZE_SIZE_X

#define MAX_MAZE_SIZE_X   ((unsigned long) 1000)

Definition at line 78 of file maze.c.

◆ MAX_MAZE_SIZE_Y

#define MAX_MAZE_SIZE_Y   ((unsigned long) 1000)

Definition at line 79 of file maze.c.

◆ MOVE_LIST_SIZE

#define MOVE_LIST_SIZE   (MAX_MAZE_SIZE_X * MAX_MAZE_SIZE_Y)

Definition at line 81 of file maze.c.

◆ START_SQUARE

#define START_SQUARE   0x2

Definition at line 99 of file maze.c.

◆ STRICT

#define STRICT

Definition at line 50 of file maze.c.

◆ WALL_BOTTOM

#define WALL_BOTTOM   0x2000

Definition at line 85 of file maze.c.

◆ WALL_LEFT

#define WALL_LEFT   0x1000

Definition at line 86 of file maze.c.

◆ WALL_RIGHT

#define WALL_RIGHT   0x4000

Definition at line 84 of file maze.c.

◆ WALL_TOP

#define WALL_TOP   0x8000

Definition at line 83 of file maze.c.

Function Documentation

◆ AboutProc()

INT_PTR CALLBACK AboutProc ( HWND  hWnd,
UINT  message,
WPARAM  wparam,
LPARAM  lparam 
)

Definition at line 635 of file maze.c.

636{
637 switch(message){
638 case WM_COMMAND:
639 switch(LOWORD(wparam)){
640 case IDOK:
642 return TRUE;
643 }
644 }
645 return FALSE;
646}
@ wparam
Definition: SystemMenu.c:30
HWND hWnd
Definition: settings.c:17
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
#define LOWORD(l)
Definition: pedump.c:82
Definition: tftpd.h:60
#define WM_COMMAND
Definition: winuser.h:1740
#define IDOK
Definition: winuser.h:830
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)

Referenced by ScreenSaverConfigureDialog().

◆ backup()

◆ begin_solve_maze()

static void begin_solve_maze ( HWND  hWnd)
static

Definition at line 508 of file maze.c.

509{
510 /* plug up the surrounding wall */
512 maze[end_x][end_y] |= (WALL_TOP >> end_dir);
513
514 /* initialize search path */
515 pathi = 0;
516 path[pathi].x = end_x;
517 path[pathi].y = end_y;
518 path[pathi].dir = -1;
519}
static unsigned short maze[MAX_MAZE_SIZE_X][MAX_MAZE_SIZE_Y]
Definition: maze.c:107
static int start_x
Definition: maze.c:118
static int start_dir
Definition: maze.c:118
static int start_y
Definition: maze.c:118
static int end_dir
Definition: maze.c:118
static int pathi
Definition: maze.c:121
#define WALL_TOP
Definition: maze.c:83
static int end_x
Definition: maze.c:118
static int end_y
Definition: maze.c:118

◆ choose_door() [1/2]

static int choose_door ( )
static

Referenced by create_maze().

◆ choose_door() [2/2]

static int choose_door ( HDC  hDC)
static

Definition at line 324 of file maze.c.

325{
326 int candidates[3];
327 register int num_candidates;
328
329 num_candidates = 0;
330
331 /* top wall */
333 goto rightwall;
335 goto rightwall;
337 goto rightwall;
338 if (maze[cur_sq_x][cur_sq_y - 1] & DOOR_IN_ANY) {
342 goto rightwall;
343 }
344 candidates[num_candidates++] = 0;
345
346rightwall:
347 /* right wall */
349 goto bottomwall;
351 goto bottomwall;
353 goto bottomwall;
354 if (maze[cur_sq_x + 1][cur_sq_y] & DOOR_IN_ANY) {
358 goto bottomwall;
359 }
360 candidates[num_candidates++] = 1;
361
362bottomwall:
363 /* bottom wall */
365 goto leftwall;
367 goto leftwall;
369 goto leftwall;
370 if (maze[cur_sq_x][cur_sq_y + 1] & DOOR_IN_ANY) {
374 goto leftwall;
375 }
376 candidates[num_candidates++] = 2;
377
378leftwall:
379 /* left wall */
381 goto donewall;
383 goto donewall;
385 goto donewall;
386 if (maze[cur_sq_x - 1][cur_sq_y] & DOOR_IN_ANY) {
390 goto donewall;
391 }
392 candidates[num_candidates++] = 3;
393
394donewall:
395 if (num_candidates == 0)
396 return -1;
397 if (num_candidates == 1)
398 return candidates[0];
399 return candidates[get_random(num_candidates)];
400
401}
#define DOOR_OUT_LEFT
Definition: maze.c:97
#define DOOR_IN_BOTTOM
Definition: maze.c:90
#define DOOR_IN_LEFT
Definition: maze.c:91
#define DOOR_IN_ANY
Definition: maze.c:92
HDC hDC
Definition: maze.c:74
#define DOOR_OUT_RIGHT
Definition: maze.c:95
#define WALL_LEFT
Definition: maze.c:86
#define DOOR_IN_RIGHT
Definition: maze.c:89
#define WALL_RIGHT
Definition: maze.c:84
#define DOOR_IN_TOP
Definition: maze.c:88
#define DOOR_OUT_TOP
Definition: maze.c:94
static void draw_wall()
#define DOOR_OUT_BOTTOM
Definition: maze.c:96
#define WALL_BOTTOM
Definition: maze.c:85
#define get_random(x)
Definition: maze.c:105

◆ create_maze()

static void create_maze ( HWND  hWnd)
static

Definition at line 280 of file maze.c.

281{
282 register int i, newdoor = 0;
283
284 do {
287 move_list[sqnum].dir = newdoor;
288 while ((newdoor = choose_door(hDC)) == -1) { /* pick a door */
289 if (backup() == -1) { /* no more doors ... backup */
290 return; /* done ... return */
291 }
292 }
293
294 /* mark the out door */
295 maze[cur_sq_x][cur_sq_y] |= (DOOR_OUT_TOP >> newdoor);
296
297 switch (newdoor) {
298 case 0: cur_sq_y--;
299 break;
300 case 1: cur_sq_x++;
301 break;
302 case 2: cur_sq_y++;
303 break;
304 case 3: cur_sq_x--;
305 break;
306 }
307 sqnum++;
308
309 /* mark the in door */
310 maze[cur_sq_x][cur_sq_y] |= (DOOR_IN_TOP >> ((newdoor + 2) % 4));
311
312 /* if end square set path length and save path */
315 for (i = 0; i < path_length; i++) {
316 save_path[i].x = move_list[i].x;
317 save_path[i].y = move_list[i].y;
318 save_path[i].dir = move_list[i].dir;
319 }
320 }
321 } while (1);
322}
static int choose_door()
static struct @1555 save_path[MOVE_LIST_SIZE]
static long path_length
Definition: maze.c:116
#define END_SQUARE
Definition: maze.c:100
static long backup()
Definition: maze.c:403
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

◆ draw_maze_border()

static void draw_maze_border ( HWND  hWnd)
static

Definition at line 449 of file maze.c.

450{
451 register int i, j;
452 HBRUSH hBrush;
453
455
456 for (i = 0; i < maze_size_x; i++) {
457 if (maze[i][0] & WALL_TOP) {
459 (void) LineTo(hDC, border_x + grid_width * (i + 1) - 1, border_y);
460 }
461 if ((maze[i][maze_size_y - 1] & WALL_BOTTOM)) {
463 (void) LineTo(hDC, border_x + grid_width * (i + 1) - 1, border_y + grid_height * (maze_size_y) -1);
464 }
465 }
466 for (j = 0; j < maze_size_y; j++) {
467 if (maze[maze_size_x - 1][j] & WALL_RIGHT) {
470 }
471 if (maze[0][j] & WALL_LEFT) {
473 (void) LineTo(hDC, border_x, border_y + grid_height * (j + 1) - 1);
474 }
475 }
476
477 hBrush = GetStockObject(WHITE_BRUSH);
480}
static int maze_size_y
Definition: maze.c:115
static int grid_width
Definition: maze.c:119
static int grid_height
Definition: maze.c:119
HPEN hPenWall
Definition: maze.c:73
static void draw_solid_square(int, int, int, HDC, HBRUSH)
Definition: maze.c:413
static int maze_size_x
Definition: maze.c:115
#define border_x
Definition: maze.c:102
#define border_y
Definition: maze.c:103
#define NULL
Definition: types.h:112
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
HGDIOBJ WINAPI GetStockObject(_In_ int)
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
Definition: dc.c:1539
BOOL WINAPI MoveToEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
#define WHITE_BRUSH
Definition: wingdi.h:902
BOOL WINAPI LineTo(_In_ HDC, _In_ int, _In_ int)

Referenced by ScreenSaverProc(), and WinMain().

◆ draw_solid_square()

static void draw_solid_square ( int  i,
int  j,
int  dir,
HDC  hDC,
HBRUSH  hBrush 
)
static

Definition at line 413 of file maze.c.

417{
418 RECT rc;
419
420 switch (dir) {
421 case 0:
422 rc.left = border_x + bw + grid_width * i;
423 rc.right = rc.left + grid_width - (bw + bw);
424 rc.top = border_y - bw + grid_height * j;
425 rc.bottom = rc.top + grid_height;
426 break;
427 case 1:
428 rc.left = border_x + bw + grid_width * i;
429 rc.right = rc.left + grid_width;
430 rc.top = border_y + bw + grid_height * j;
431 rc.bottom = rc.top + grid_height - (bw + bw);
432 break;
433 case 2:
434 rc.left = border_x + bw + grid_width * i;
435 rc.right = rc.left + grid_width - (bw + bw);
436 rc.top = border_y + bw + grid_height * j;
437 rc.bottom = rc.top + grid_height;
438 break;
439 case 3:
440 rc.left = border_x - bw + grid_width * i;
441 rc.right = rc.left + grid_width;
442 rc.top = border_y + bw + grid_height * j;
443 rc.bottom = rc.top + grid_height - (bw + bw);
444 break;
445 }
446 (void) FillRect(hDC, &rc, hBrush);
447}
static int bw
Definition: maze.c:120
unsigned int dir
Definition: maze.c:112
LONG right
Definition: windef.h:308
LONG bottom
Definition: windef.h:309
LONG top
Definition: windef.h:307
LONG left
Definition: windef.h:306
int WINAPI FillRect(HDC, LPCRECT, HBRUSH)

Referenced by draw_maze_border(), enter_square(), and solve_maze().

◆ draw_wall() [1/2]

static void draw_wall ( )
static

Referenced by choose_door().

◆ draw_wall() [2/2]

static void draw_wall ( int  i,
int  j,
int  dir,
HDC  hDC 
)
static

Definition at line 482 of file maze.c.

485{
487
488 switch (dir) {
489 case 0:
492 break;
493 case 1:
495 (void) LineTo(hDC, border_x + grid_width * (i + 1), border_y + grid_height * (j + 1));
496 break;
497 case 2:
499 (void) LineTo(hDC, border_x + grid_width * (i + 1), border_y + grid_height * (j + 1));
500 break;
501 case 3:
504 break;
505 }
506}

◆ enter_square()

static void enter_square ( int  n,
HDC  hDC,
HBRUSH  hBrush 
)
static

Definition at line 552 of file maze.c.

553{
554 draw_solid_square((int) path[n].x, (int) path[n].y, (int) path[n].dir, hDC, hBrush);
555
556 path[n + 1].dir = -1;
557 switch (path[n].dir) {
558 case 0: path[n + 1].x = path[n].x;
559 path[n + 1].y = path[n].y - 1;
560 break;
561 case 1: path[n + 1].x = path[n].x + 1;
562 path[n + 1].y = path[n].y;
563 break;
564 case 2: path[n + 1].x = path[n].x;
565 path[n + 1].y = path[n].y + 1;
566 break;
567 case 3: path[n + 1].x = path[n].x - 1;
568 path[n + 1].y = path[n].y;
569 break;
570 }
571}
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLdouble n
Definition: glext.h:7729

Referenced by solve_maze().

◆ initialize_maze()

static void initialize_maze ( )
static

Definition at line 191 of file maze.c.

192{
193 register int i, j, wall;
194
195 /* initialize all squares */
196 for (i = 0; i < maze_size_x; i++) {
197 for (j = 0; j < maze_size_y; j++) {
198 maze[i][j] = 0;
199 }
200 }
201
202 /* top wall */
203 for (i = 0; i < maze_size_x; i++) {
204 maze[i][0] |= WALL_TOP;
205 }
206
207 /* right wall */
208 for (j = 0; j < maze_size_y; j++) {
209 maze[maze_size_x - 1][j] |= WALL_RIGHT;
210 }
211
212 /* bottom wall */
213 for (i = 0; i < maze_size_x; i++) {
214 maze[i][maze_size_y - 1] |= WALL_BOTTOM;
215 }
216
217 /* left wall */
218 for (j = 0; j < maze_size_y; j++) {
219 maze[0][j] |= WALL_LEFT;
220 }
221
222 /* set start square */
223 wall = get_random(4);
224 switch (wall) {
225 case 0:
227 j = 0;
228 break;
229 case 1:
230 i = maze_size_x - 1;
232 break;
233 case 2:
235 j = maze_size_y - 1;
236 break;
237 case 3:
238 i = 0;
240 break;
241 }
242 maze[i][j] |= START_SQUARE;
243 maze[i][j] |= (DOOR_IN_TOP >> wall);
244 maze[i][j] &= ~(WALL_TOP >> wall);
245 cur_sq_x = i;
246 cur_sq_y = j;
247 start_x = i;
248 start_y = j;
249 start_dir = wall;
250 sqnum = 0;
251
252 /* set end square */
253 wall = (wall + 2) % 4;
254 switch (wall) {
255 case 0:
257 j = 0;
258 break;
259 case 1:
260 i = maze_size_x - 1;
262 break;
263 case 2:
265 j = maze_size_y - 1;
266 break;
267 case 3:
268 i = 0;
270 break;
271 }
272 maze[i][j] |= END_SQUARE;
273 maze[i][j] |= (DOOR_OUT_TOP >> wall);
274 maze[i][j] &= ~(WALL_TOP >> wall);
275 end_x = i;
276 end_y = j;
277 end_dir = wall;
278}
#define START_SQUARE
Definition: maze.c:99

Referenced by ScreenSaverProc(), and WinMain().

◆ OnCreate()

static BOOL OnCreate ( HWND  hWnd,
LPCREATESTRUCT  lpCreateStruct 
)
static

Definition at line 578 of file maze.c.

579{
580 srand((unsigned) time(NULL));
581
582 ReadRegistry();
583
584 if (size < 2) {
585 size = 7 + (rand() % 30);
586 }
588 bw = (size > 6 ? 3 : (size - 1) / 2);
589
590#if 0
591 /* FIXME Pattern brushes not yet implemented in ReactOS */
592 {
593 static long grayPattern [] = {
594 0x55555555,
595 0xaaaaaaaa,
596 0x55555555,
597 0xaaaaaaaa,
598 0x55555555,
599 0xaaaaaaaa,
600 0x55555555,
601 0xaaaaaaaa
602 };
603 static RGBQUAD argbq [] = {
604 { 0, 0, 255, 0 },
605 { 255, 255, 255, 0 }
606 };
608
609 pbmi = malloc(sizeof(BITMAPINFOHEADER) + sizeof(argbq) + sizeof(grayPattern));
616 (void) memcpy(pbmi->bmiColors, argbq, sizeof(argbq));
617 (void) memcpy(pbmi->bmiColors + 2, grayPattern, sizeof(grayPattern));
619 // hBrushDead = CreateHatchBrush(HS_DIAGCROSS, RGB(255, 0, 0));
620 free(pbmi);
621 }
622#else
623 hBrushDead = CreateSolidBrush(RGB(255, 0, 0));
624#endif
625 hBrushLiving = CreateSolidBrush(RGB(0, 255, 0));
626 hPenWall = CreatePen(PS_SOLID, 3, RGB(150, 150, 150));
627
628 hDC = GetDC(hWnd);
629
630 start_timer(hWnd, 1);
631
632 return TRUE;
633}
static void start_timer(HWND hWnd, int iTimeout)
Definition: maze.c:573
static int size
Definition: maze.c:76
static void ReadRegistry()
Definition: maze.c:132
HBRUSH hBrushLiving
Definition: maze.c:72
HBRUSH hBrushDead
Definition: maze.c:71
#define free
Definition: debug_ros.c:5
#define malloc
Definition: debug_ros.c:4
#define BI_RGB
Definition: precomp.h:56
#define RGB(r, g, b)
Definition: precomp.h:71
ULONG RGBQUAD
Definition: precomp.h:59
GLsizeiptr size
Definition: glext.h:5919
void __cdecl srand(_In_ unsigned int _Seed)
_Check_return_ int __cdecl rand(void)
Definition: rand.c:10
__u16 time
Definition: mkdosfs.c:8
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
_In_ HBITMAP _In_ UINT _In_ UINT _Inout_ LPBITMAPINFO pbmi
Definition: ntgdi.h:2780
USHORT biBitCount
Definition: precomp.h:46
ULONG biCompression
Definition: precomp.h:47
BITMAPINFOHEADER bmiHeader
Definition: wingdi.h:1476
RGBQUAD bmiColors[1]
Definition: wingdi.h:1477
#define DIB_RGB_COLORS
Definition: wingdi.h:367
HBRUSH WINAPI CreateDIBPatternBrushPt(_In_ const VOID *pvPackedDIB, _In_ UINT uUsage)
HBRUSH WINAPI CreateSolidBrush(_In_ COLORREF)
HPEN WINAPI CreatePen(_In_ int, _In_ int, _In_ COLORREF)
#define PS_SOLID
Definition: wingdi.h:586
HDC WINAPI GetDC(_In_opt_ HWND)

Referenced by ScreenSaverProc(), and WndProc().

◆ ReadRegistry()

static void ReadRegistry ( )
static

Definition at line 132 of file maze.c.

133{
134 LONG result;
135 HKEY skey;
136 DWORD valuetype, valuesize, val_size, val_presd, val_postsd, val_sd;
137
138 SetDefaults();
139
141 if(result != ERROR_SUCCESS)
142 return;
143
144 valuesize = sizeof(DWORD);
145
146 result = RegQueryValueEx(skey, _T("size"), NULL, &valuetype, (LPBYTE)&val_size, &valuesize);
147 if(result == ERROR_SUCCESS)
148 size = val_size;
149 result = RegQueryValueEx(skey, _T("pre_solve_delay"), NULL, &valuetype, (LPBYTE)&val_presd, &valuesize);
150 if(result == ERROR_SUCCESS)
151 pre_solve_delay = val_presd;
152 result = RegQueryValueEx(skey, _T("post_solve_delay"), NULL, &valuetype, (LPBYTE)&val_postsd, &valuesize);
153 if(result == ERROR_SUCCESS)
154 post_solve_delay = val_postsd;
155 result = RegQueryValueEx(skey, _T("solve_delay"), NULL, &valuetype, (LPBYTE)&val_sd, &valuesize);
156 if(result == ERROR_SUCCESS)
157 solve_delay = val_sd;
158
159 RegCloseKey(skey);
160}
static int solve_delay
Definition: maze.c:76
static void SetDefaults()
Definition: maze.c:124
static int post_solve_delay
Definition: maze.c:76
static LPCWSTR registryPath
Definition: maze.c:122
static int pre_solve_delay
Definition: maze.c:76
#define RegCloseKey(hKey)
Definition: registry.h:49
#define ERROR_SUCCESS
Definition: deptool.c:10
unsigned long DWORD
Definition: ntddk_ex.h:95
GLuint64EXT * result
Definition: glext.h:11304
#define KEY_READ
Definition: nt_native.h:1023
#define DWORD
Definition: nt_native.h:44
long LONG
Definition: pedump.c:60
unsigned char * LPBYTE
Definition: typedefs.h:53
#define _T(x)
Definition: vfdio.h:22
#define HKEY_CURRENT_USER
Definition: winreg.h:11
#define RegOpenKeyEx
Definition: winreg.h:520
#define RegQueryValueEx
Definition: winreg.h:524

Referenced by OnCreate(), and ScreenSaverConfigureDialog().

◆ ReadSettings()

static void ReadSettings ( HWND  hWnd)
static

Definition at line 648 of file maze.c.

649{
652
655
658
661}
#define IDC_TEXT_PRESD
Definition: resource.h:12
#define IDC_SLIDER_PRESD
Definition: resource.h:8
#define IDC_SLIDER_SIZE
Definition: resource.h:7
#define IDC_TEXT_SD
Definition: resource.h:14
#define IDC_TEXT_SIZE
Definition: resource.h:11
#define IDC_SLIDER_SD
Definition: resource.h:10
#define IDC_TEXT_POSTSD
Definition: resource.h:13
#define IDC_SLIDER_POSTSD
Definition: resource.h:9
#define TBM_GETPOS
Definition: commctrl.h:2031
BOOL WINAPI SetDlgItemInt(_In_ HWND, _In_ int, _In_ UINT, _In_ BOOL)
#define SendDlgItemMessage
Definition: winuser.h:5842

Referenced by ScreenSaverConfigureDialog().

◆ RegisterDialogClasses()

BOOL WINAPI RegisterDialogClasses ( HANDLE  hmodule)

Definition at line 766 of file maze.c.

767{
768 return TRUE;
769}

◆ ScreenSaverConfigureDialog()

BOOL WINAPI ScreenSaverConfigureDialog ( HWND  hWnd,
UINT  message,
WPARAM  wparam,
LPARAM  lparam 
)

Definition at line 723 of file maze.c.

724{
725 switch (message)
726 {
727 case WM_INITDIALOG:
728 ReadRegistry();
729 //Set slider ranges
734 //Set current values to slider
739 //Set current values to texts
744 return TRUE;
745 case WM_COMMAND:
746 switch (LOWORD(wparam))
747 {
748 case IDOK:
751 return TRUE;
752 case IDCANCEL:
754 break;
755 case IDABOUT:
757 break;
758 }
759 case WM_HSCROLL:
761 return TRUE;
762 }
763 return FALSE;
764}
INT_PTR CALLBACK AboutProc(HWND hWnd, UINT message, WPARAM wparam, LPARAM lparam)
Definition: maze.c:635
static void ReadSettings(HWND hWnd)
Definition: maze.c:648
static void WriteRegistry()
Definition: maze.c:162
HINSTANCE hMainInstance
Definition: scrnsave.c:26
#define IDD_DLG_ABOUT
Definition: resource.h:11
#define IDABOUT
Definition: resource.h:5
#define TBM_SETRANGE
Definition: commctrl.h:2037
#define TBM_SETPOS
Definition: commctrl.h:2036
#define WM_HSCROLL
Definition: winuser.h:1743
#define MAKELPARAM(l, h)
Definition: winuser.h:4008
#define IDCANCEL
Definition: winuser.h:831
#define WM_INITDIALOG
Definition: winuser.h:1739
#define MAKEINTRESOURCE
Definition: winuser.h:591
#define DialogBox
Definition: winuser.h:5761

◆ ScreenSaverProc()

LRESULT CALLBACK ScreenSaverProc ( HWND  hWnd,
UINT  message,
WPARAM  uParam,
LPARAM  lParam 
)

Definition at line 663 of file maze.c.

668{
669 switch (message)
670 {
671 case WM_CREATE:
673 break;
674 case WM_SIZE:
676 break;
677 case WM_TIMER:
678 switch (state)
679 {
680 case 2:
682
683 state = 3;
684
686 break;
687 case 3:
688 if (!solve_maze(hWnd))
689 {
691 }
692 else
693 {
694 state = 1;
696 }
697 break;
698 default:
700
703
705
706 state = 2;
707
709 break;
710 }
711 break;
712 case WM_DESTROY: // message: window being destroyed
716 break;
717 default: // Passes it on if unprocessed
719 }
720 return 0;
721}
static void set_maze_sizes(int width, int height)
Definition: maze.c:180
static BOOL OnCreate(HWND hWnd, LPCREATESTRUCT lpCreateStruct)
Definition: maze.c:578
static void initialize_maze()
Definition: maze.c:191
static int state
Definition: maze.c:121
static void draw_maze_border(HWND hWnd)
Definition: maze.c:449
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
static void create_maze()
Definition: maze.c:235
static void begin_solve_maze()
Definition: maze.c:487
static int solve_maze()
Definition: maze.c:537
pKey DeleteObject()
LRESULT WINAPI DefScreenSaverProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
Definition: scrnsave.c:92
#define HIWORD(l)
Definition: typedefs.h:247
LONG_PTR LPARAM
Definition: windef.h:208
UINT_PTR WPARAM
Definition: windef.h:207
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
#define WM_ERASEBKGND
Definition: winuser.h:1625
#define WM_CREATE
Definition: winuser.h:1608
#define WM_SIZE
Definition: winuser.h:1611
#define WM_TIMER
Definition: winuser.h:1742
#define SendMessage
Definition: winuser.h:5843
#define WM_DESTROY
Definition: winuser.h:1609

◆ set_maze_sizes()

static void set_maze_sizes ( int  width,
int  height 
)
static

Definition at line 180 of file maze.c.

182{
189}
#define MAX_MAZE_SIZE_X
Definition: maze.c:78
#define MAX_MAZE_SIZE_Y
Definition: maze.c:79
GLint GLint GLsizei GLsizei height
Definition: gl.h:1546
GLint GLint GLsizei width
Definition: gl.h:1546

Referenced by OnCreate(), and ScreenSaverProc().

◆ SetDefaults()

static void SetDefaults ( )
static

Definition at line 124 of file maze.c.

125{
126 size = 10;
127 pre_solve_delay = 5000;
128 post_solve_delay = 5000;
129 solve_delay = 1;
130}

Referenced by ReadRegistry().

◆ solve_maze()

static int solve_maze ( HWND  hWnd)
static

Definition at line 521 of file maze.c.

522{
523 int ret;
524 int action_done;
525
526 do {
527 action_done = 1;
528 if (++path[pathi].dir >= 4) {
529 pathi--;
530 draw_solid_square((int) (path[pathi].x), (int) (path[pathi].y), (int) (path[pathi].dir), hDC, hBrushDead);
531 ret = 0;
532 }
533 else if (!(maze[path[pathi].x][path[pathi].y] & (WALL_TOP >> path[pathi].dir)) &&
534 ((pathi == 0) || ((path[pathi].dir != (int) (path[pathi - 1].dir + 2) % 4)))) {
536 pathi++;
537 if (maze[path[pathi].x][path[pathi].y] & START_SQUARE) {
538
539 ret = 1;
540 }
541 else {
542 ret = 0;
543 }
544 }
545 else {
546 action_done = 0;
547 }
548 } while (!action_done);
549 return ret;
550}
static void enter_square(int, HDC, HBRUSH)
Definition: maze.c:552
int ret

◆ start_timer()

static void start_timer ( HWND  hWnd,
int  iTimeout 
)
static

Definition at line 573 of file maze.c.

574{
575 SetTimer(hWnd, 1, iTimeout, NULL);
576}
UINT_PTR WINAPI SetTimer(_In_opt_ HWND, _In_ UINT_PTR, _In_ UINT, _In_opt_ TIMERPROC)

Referenced by OnCreate(), ScreenSaverProc(), and WinMain().

◆ WriteRegistry()

static void WriteRegistry ( )
static

Definition at line 162 of file maze.c.

163{
164 LONG result;
165 HKEY skey;
166 DWORD disp;
167
169 if(result != ERROR_SUCCESS)
170 return;
171
172 RegSetValueEx(skey, _T("size"), 0, REG_DWORD, (LPBYTE)&size, sizeof(size));
173 RegSetValueEx(skey, _T("pre_solve_delay"), 0, REG_DWORD, (LPBYTE)&pre_solve_delay, sizeof(pre_solve_delay));
174 RegSetValueEx(skey, _T("post_solve_delay"), 0, REG_DWORD, (LPBYTE)&post_solve_delay, sizeof(post_solve_delay));
175 RegSetValueEx(skey, _T("solve_delay"), 0, REG_DWORD, (LPBYTE)&solve_delay, sizeof(solve_delay));
176
177 RegCloseKey(skey);
178}
#define REG_OPTION_NON_VOLATILE
Definition: nt_native.h:1057
#define KEY_WRITE
Definition: nt_native.h:1031
#define REG_DWORD
Definition: sdbapi.c:596
#define RegSetValueEx
Definition: winreg.h:533
#define RegCreateKeyEx
Definition: winreg.h:501

Referenced by ScreenSaverConfigureDialog().

Variable Documentation

◆ bw

◆ cur_sq_x

int cur_sq_x
static

Definition at line 117 of file maze.c.

Referenced by backup(), choose_door(), create_maze(), and initialize_maze().

◆ cur_sq_y

int cur_sq_y
static

Definition at line 117 of file maze.c.

Referenced by backup(), choose_door(), create_maze(), and initialize_maze().

◆ dir

Definition at line 112 of file maze.c.

Referenced by _Filebuf_base::_M_seek(), _makepath(), _set_elem_dir(), _tempnam(), _test_elem_dir(), _tgetcwd(), _tgetdcwd(), _tsplitpath_x(), _wmakepath(), _wtempnam(), AbsoluteToRelative(), CTipbarAccessible::accNavigate(), ACMWrapper_BreakConnect(), ACMWrapper_CompleteConnect(), ACMWrapper_SetMediaType(), add_dirent_to_buf(), add_favs_to_menu(), add_resource_data_entry(), add_resource_dir_entry(), StartMenu::AddEntries(), RecentStartMenu::AddEntries(), StartMenu::AddShellEntries(), af_axis_hints_new_edge(), af_direction_compute(), af_latin_hints_compute_edges(), AVIDec_BreakConnect(), AVIDec_SetMediaType(), AviMuxOut_AttemptConnection(), BtrFsLookupDirItem(), build_signature_table_name(), check_directory(), check_exe(), CheckCircularConnection(), CheckDirCount(), chmc_add_dir(), cleanup_gcc_dll(), cleanup_msvc_dll(), cmp_lfn(), FileChildWindow::collapse_entry(), CollectProgramsThread::collect_programs(), CommonDeskSave(), ShellEntry::create_absolute_pidl(), create_dest_dirs(), create_directory(), create_file(), create_file_test(), create_ico_file(), create_lost_and_found(), create_signature(), create_target_directory(), CreateShellLink(), CreateShortcut(), CurrentURL(), CURSORICON_LoadFromFileW(), CURSORICON_LoadImageW(), d3drm_frame1_GetOrientation(), d3drm_frame2_GetAxes(), d3drm_frame2_GetOrientation(), d3drm_frame3_GetAxes(), d3drm_frame3_GetOrientation(), D3DXSHEvalConeLight(), D3DXSHEvalDirection(), D3DXSHEvalDirectionalLight(), D3DXSHEvalHemisphereLight(), D3DXSHEvalSphericalLight(), DECLARE_INTERFACE_(), delete_directory(), delete_file(), dir_exists(), dir_find(), dir_read(), directedLine::directedLine(), DlgMainProc(), ShellEntry::do_context_menu(), DoInfInstall(), draw_solid_square(), draw_wall(), dwarf2_parse_line_numbers(), dwarfpctoline(), EMFDC_SetArcDirection(), enter_square(), EstimateStripByteCounts(), execute_command(), CAddressEditBox::ExecuteCommandLine(), FileChildWindow::expand_entry(), expect_files(), ext2_add_entry(), ext2_new_dir_block(), ext2_new_inode(), Ext2AddDotEntries(), Ext2RemoveEntry(), Ext2SetFileType(), ext3_add_entry(), ext3_check_dir_entry(), ext3_delete_entry(), ext3_find_entry(), extract_gcc_dll(), extract_msvc_dll(), extract_test(), ExtractFilesFromCab(), ExtractFilesFromZip(), f_chmod(), f_mkdir(), f_open(), f_rename(), f_sync(), f_unlink(), f_utime(), FD31_WMInitDialog(), ff_convert(), file_find(), FileSaveRestoreA(), FillBookmarkInfo(), FilterGraph2_Connect(), FilterGraph2_ConnectDirect(), FilterGraph2_Render(), FilterGraph2_RenderFile(), FilterGraph2_RenderRecurse(), find_entry_by_id(), find_entry_by_name(), find_entry_default(), find_entry_language(), find_first_entry(), find_html_symbol(), find_resource_data(), find_resource_dir_entry(), find_send_dir(), fit_lfn(), flush_refs(), follow_path(), CollectProgramsThread::free_dirs(), FTPFtw(), FTPFtwL2(), FtpGetCurrentDirectoryA(), FTPIsDir(), FTPMkdir2(), FTPRmdirRecursive(), get_assembly_directory(), get_base_dir(), get_best_icon_file_entry(), get_best_icon_file_offset(), get_fileinfo(), get_freespace(), get_temp_filepath(), GPOS_apply_feature(), HANDLE_CustomType23(), History(), ImageDirectoryEntryToData(), ImageDirectoryEntryToDataEx(), import_certs_from_dir(), Favorites::import_IE_favorites(), BookmarkList::import_IE_favorites(), directedLine::init(), insert_boot_cat(), Pane::insert_entries(), install_from_unix_file(), is_correct_dir(), ITERATE_CreateFolders(), ITERATE_InstallODBCDriver(), ITERATE_RemoveFiles(), ITERATE_RemoveFolders(), ITSS_create_chm_storage(), FileChildWindow::jump_to_int(), MDIShellBrowserChild::jump_to_int(), launch_exe(), ld_clust(), LISTBOX_HandleMouseMove(), LISTBOX_HandleTimer(), LISTVIEW_ScrollOnInsert(), LocalChdirCmd(), LocalGetPrinterDriverDirectory(), log_file_checksum_error(), look_for_collision(), lookup_manifest_file(), lookup_rpc(), LookupIconIdFromDirectoryEx(), main(), make_file_orphan(), MediaDet_get_OutputStreams(), MiniDumpReadDumpStream(), msi_build_directory_name(), msi_dialog_seltree_handler(), msi_get_loaded_folder(), MSI_InstallPackage(), MSI_SetTargetPathW(), CEnumZipContents::Next(), nfs41_bind_conn_to_session(), OnBrowse(), open_file_test(), open_fileref(), PAGER_Scroll(), PAGER_Timer(), PARSER_get_dest_dir(), PARSER_get_src_root(), PathWordBreakProc(), PeekHistory(), pick_lfn(), DesktopShellView::PositionIcons(), push_dir(), directedLine::putDirection(), pwlarc_intersect(), recurse_search_directory(), RecursiveCreateDirectory(), recvrequest(), BtrfsContextMenu::reflink_copy(), remove_dir(), RestrictDrawDirection(), rpcrt4_conn_secure_packet(), RPCRT4_default_secure_packet(), RtlCreateActivationContext(), runCmd(), RunSetupCommandA(), SampleGrabber_IPin_QueryDirection(), ScriptTextOut(), SdbpMatchExe(), search_dirblock(), strstreambuf::seekoff(), stdio_streambuf_base::seekoff(), send_inode_ref(), SendFilterMessage(), SendFurther(), server_lookup(), server_lookup_loop(), set_component_path(), set_syslog_conf_dir(), set_target_path(), SetCurPin(), SetupGetTargetPathW(), SetupSetDirectoryIdA(), SetupSetDirectoryIdW(), CShellDispatch::ShellExecute(), CEnumZipContents::Skip(), snapshot_EnumFormatEtc(), solve_maze(), SplitFileAndDirectory(), SplitFileSysURL(), st_clust(), START_TEST(), sum_sfn(), SymSetHomeDirectory(), SymSetHomeDirectoryW(), test_CreateActCtx(), test_D3DXSHEvalConeLight(), test_D3DXSHEvalDirectionalLight(), test_D3DXSHEvalHemisphereLight(), test_D3DXSHEvalSphericalLight(), test_directory(), test_FakeDLL(), test_filter_graph(), test_graph_builder(), test_inffilelist(), test_inffilelistA(), test_LongtoShortA(), test_name_collisions(), test_PathNameA(), test_query_attribute_information_file(), test_query_object(), test_query_volume_information_file(), test_readdirectorychanges_cr(), test_RunSetupCommand(), test_SetSearchPathMode(), test_ShellExecute(), test_splitpath(), test_SplitShortPathA(), test_symboliclink(), TIFFFetchDirectory(), TIFFFetchStripThing(), TIFFFetchSubjectDistance(), TIFFReadCustomDirectory(), TIFFReadDirectory(), TIFFReadDirectoryCheckOrder(), TIFFReadDirectoryFindEntry(), TIFFWriteDirectorySec(), TIFFWriteDirectoryTagAscii(), TIFFWriteDirectoryTagByteArray(), TIFFWriteDirectoryTagCheckedAscii(), TIFFWriteDirectoryTagCheckedByteArray(), TIFFWriteDirectoryTagCheckedDoubleArray(), TIFFWriteDirectoryTagCheckedFloatArray(), TIFFWriteDirectoryTagCheckedIfd8Array(), TIFFWriteDirectoryTagCheckedIfdArray(), TIFFWriteDirectoryTagCheckedLong(), TIFFWriteDirectoryTagCheckedLong8Array(), TIFFWriteDirectoryTagCheckedLongArray(), TIFFWriteDirectoryTagCheckedRational(), TIFFWriteDirectoryTagCheckedRationalArray(), TIFFWriteDirectoryTagCheckedSbyteArray(), TIFFWriteDirectoryTagCheckedShort(), TIFFWriteDirectoryTagCheckedShortArray(), TIFFWriteDirectoryTagCheckedSlong8Array(), TIFFWriteDirectoryTagCheckedSlongArray(), TIFFWriteDirectoryTagCheckedSrationalArray(), TIFFWriteDirectoryTagCheckedSshortArray(), TIFFWriteDirectoryTagCheckedUndefinedArray(), TIFFWriteDirectoryTagColormap(), TIFFWriteDirectoryTagData(), TIFFWriteDirectoryTagDoubleArray(), TIFFWriteDirectoryTagFloatArray(), TIFFWriteDirectoryTagIfdArray(), TIFFWriteDirectoryTagIfdIfd8Array(), TIFFWriteDirectoryTagLong(), TIFFWriteDirectoryTagLong8Array(), TIFFWriteDirectoryTagLongArray(), TIFFWriteDirectoryTagLongLong8Array(), TIFFWriteDirectoryTagRational(), TIFFWriteDirectoryTagRationalArray(), TIFFWriteDirectoryTagSampleformatArray(), TIFFWriteDirectoryTagSbyteArray(), TIFFWriteDirectoryTagShort(), TIFFWriteDirectoryTagShortArray(), TIFFWriteDirectoryTagShortLong(), TIFFWriteDirectoryTagShortPerSample(), TIFFWriteDirectoryTagSlong8Array(), TIFFWriteDirectoryTagSlongArray(), TIFFWriteDirectoryTagSrationalArray(), TIFFWriteDirectoryTagSshortArray(), TIFFWriteDirectoryTagSubifd(), TIFFWriteDirectoryTagTransferfunction(), TIFFWriteDirectoryTagUndefinedArray(), TRACKBAR_AutoPage(), TRACKBAR_LButtonDown(), triangulateRectTopGen(), unit_vec2(), unpack_iso(), Varray::update(), WhereFindByDirs(), WhereSearchFiles(), WhereSearchRecursive(), wpp_add_include_path(), wrapSdbSetPermLayerKeys2(), WshShell3_get_CurrentDirectory(), WshShell3_put_CurrentDirectory(), and XCOPY_ProcessDestParm().

◆ end_dir

int end_dir
static

Definition at line 118 of file maze.c.

Referenced by begin_solve_maze(), draw_maze_border(), and initialize_maze().

◆ end_x

◆ end_y

int end_y
static

◆ grid_height

int grid_height
static

Definition at line 119 of file maze.c.

Referenced by draw_maze_border(), draw_solid_square(), draw_wall(), OnCreate(), and set_maze_sizes().

◆ grid_width

int grid_width
static

Definition at line 119 of file maze.c.

Referenced by draw_maze_border(), draw_solid_square(), draw_wall(), OnCreate(), and set_maze_sizes().

◆ hBrushDead

HBRUSH hBrushDead

Definition at line 71 of file maze.c.

Referenced by begin_solve_maze(), OnCreate(), ScreenSaverProc(), and solve_maze().

◆ hBrushLiving

HBRUSH hBrushLiving

Definition at line 72 of file maze.c.

Referenced by begin_solve_maze(), OnCreate(), ScreenSaverProc(), and solve_maze().

◆ hDC

◆ hMainInstance

HINSTANCE hMainInstance
extern

Definition at line 26 of file scrnsave.c.

Referenced by ScreenSaverConfigureDialog().

◆ hPenWall

HPEN hPenWall

Definition at line 73 of file maze.c.

Referenced by draw_maze_border(), draw_wall(), and OnCreate().

◆ maze

◆ maze_size_x

int maze_size_x
static

Definition at line 115 of file maze.c.

Referenced by draw_maze_border(), initialize_maze(), and set_maze_sizes().

◆ maze_size_y

int maze_size_y
static

Definition at line 115 of file maze.c.

Referenced by draw_maze_border(), initialize_maze(), and set_maze_sizes().

◆ 

struct { ... } move_list[MOVE_LIST_SIZE]

◆ 

struct { ... } path[MOVE_LIST_SIZE]

◆ path_length

◆ pathi

int pathi = 0
static

Definition at line 121 of file maze.c.

Referenced by begin_solve_maze(), and solve_maze().

◆ post_solve_delay

int post_solve_delay
static

◆ pre_solve_delay

int pre_solve_delay
static

◆ registryPath

LPCWSTR registryPath = _T("Software\\Microsoft\\ScreenSavers\\mazescr")
static

Definition at line 122 of file maze.c.

Referenced by ReadRegistry(), and WriteRegistry().

◆ 

struct { ... } save_path[MOVE_LIST_SIZE]

Referenced by create_maze(), and MSI_OpenDatabaseW().

◆ size

int size
static

Definition at line 76 of file maze.c.

Referenced by OnCreate().

◆ solve_delay

◆ sqnum

long sqnum
static

Definition at line 116 of file maze.c.

Referenced by backup(), create_maze(), and initialize_maze().

◆ start_dir

int start_dir
static

Definition at line 118 of file maze.c.

Referenced by begin_solve_maze(), draw_maze_border(), and initialize_maze().

◆ start_x

◆ start_y

◆ state

int state = 1
static

Definition at line 121 of file maze.c.

Referenced by _test_readyState(), _test_state(), acpi_bus_get_power(), acpi_bus_set_power(), acpi_power_add(), acpi_power_get_list_state(), acpi_power_get_state(), acpi_power_resume(), acpi_power_transition(), acpi_suspend(), acpi_system_restore_state(), acpi_system_save_state(), acpi_system_suspend(), acquire_compute_pipeline_resources(), acquire_graphics_pipeline_resources(), acquire_shader_resources(), ACTION_GetFeatureInstallStates(), ActiveScript_GetScriptState(), ActiveScript_SetScriptSite(), ActiveScript_SetScriptState(), add_known_usage(), add_known_usages_to_list(), alpha_test_arbfp(), append_decl_element(), apply_device_state(), apply_frame_state(), apply_general_changes(), apply_lights(), apply_pixelshader(), async_apc_notifier_proc(), async_notifier_proc(), atifs_srgbwriteenable(), atifs_stage_constant(), atifs_tfactor(), AudioMediaStreamImpl_IAMMediaStream_SetState(), begin_container(), BitBltFromClipboard(), BookmarkCompletionFunction(), buffer_check_attribute(), buffer_find_decl(), buffer_refill(), buffer_refill8(), buffer_service(), buffer_service8(), buffer_silence(), buffer_silence8(), Bus_PDO_PnP(), BUTTON_DrawLabel(), BUTTON_WindowProc(), ButtonWndProc_common(), calc_chunk(), calc_sha256(), calculate_install_state(), CalculateBitmapSize(), cancel_lock(), cancel_open(), capture_buffer_service(), CB_Paint(), CB_ThemedPaint(), CertGetStoreProperty(), BtrfsPropSheet::change_inode_flag(), BtrfsPropSheet::change_perm_flag(), change_state(), check_emfplus(), check_execute_access(), check_menu_item_info(), check_metafile(), chomp(), client_state_add(), client_state_remove(), clipplane(), color_key_arbfp(), CommandCompletionFunction(), compile_state_table(), FxRequest::CompleteInternal(), CompletionFunction(), component_SetInstallQueueState(), context_apply_clear_state(), context_apply_compute_state(), context_apply_draw_state(), context_apply_state(), context_bind_shader_resources(), context_create(), context_invalidate_state(), context_load_shader_resources(), context_load_stream_output_buffers(), context_map_psamplers(), context_map_vsamplers(), context_preload_texture(), context_preload_textures(), context_state_drawbuf(), context_state_fb(), context_update_fixed_function_usage_map(), context_update_stream_info(), context_update_tex_unit_map(), convert_fvf_to_declaration(), create_open_state(), CreateNewFileFromPatch(), d3d8_device_GetRenderState(), d3d8_device_GetTransform(), d3d8_device_MultiplyTransform(), d3d8_device_SetRenderState(), d3d8_device_SetTransform(), d3d9_device_GetRenderState(), d3d9_device_GetSamplerState(), d3d9_device_GetTextureStageState(), d3d9_device_GetTransform(), d3d9_device_MultiplyTransform(), d3d9_device_SetRenderState(), d3d9_device_SetSamplerState(), d3d9_device_SetTextureStageState(), d3d9_device_SetTransform(), d3d_device2_GetLightState(), d3d_device2_GetRenderState(), d3d_device2_GetTransform(), d3d_device2_MultiplyTransform(), d3d_device2_SetLightState(), d3d_device2_SetRenderState(), d3d_device2_SetTransform(), d3d_device3_GetLightState(), d3d_device3_GetRenderState(), d3d_device3_GetTextureStageState(), d3d_device3_GetTransform(), d3d_device3_MultiplyTransform(), d3d_device3_SetLightState(), d3d_device3_SetRenderState(), d3d_device3_SetTextureStageState(), d3d_device3_SetTransform(), d3d_device7_GetRenderState(), d3d_device7_GetRenderState_FPUPreserve(), d3d_device7_GetRenderState_FPUSetup(), d3d_device7_GetTextureStageState(), d3d_device7_GetTextureStageState_FPUPreserve(), d3d_device7_GetTextureStageState_FPUSetup(), d3d_device7_GetTransform(), d3d_device7_GetTransform_FPUPreserve(), d3d_device7_GetTransform_FPUSetup(), d3d_device7_MultiplyTransform(), d3d_device7_MultiplyTransform_FPUPreserve(), d3d_device7_MultiplyTransform_FPUSetup(), d3d_device7_SetRenderState(), d3d_device7_SetRenderState_FPUPreserve(), d3d_device7_SetRenderState_FPUSetup(), d3d_device7_SetTextureStageState(), d3d_device7_SetTextureStageState_FPUPreserve(), d3d_device7_SetTextureStageState_FPUSetup(), d3d_device7_SetTransform(), d3d_device7_SetTransform_FPUPreserve(), d3d_device7_SetTransform_FPUSetup(), d3drm_device3_LightStateChange(), d3drm_device3_RenderStateChange(), d3dx9_apply_state(), d3dx9_get_param_value_ptr(), d3dx_effect_GetPassDesc(), d3dx_effect_ValidateTechnique(), d3dx_parse_array_selector(), d3dx_parse_resource(), d3dx_parse_state(), DATETIME_Button_Command(), debug_d3drenderstate(), debug_d3dsamplerstate(), debug_d3dstate(), debug_d3dtexturestate(), DECLARE_INTERFACE_(), decode_mcu(), decode_mcu_DC_first(), decode_mcu_sub(), decrease_state(), deleg_open_find(), delegation_create(), detach_buf_packed(), device_assign(), device_clear_render_targets(), device_fetch(), device_invalidate_state(), device_state_capture(), device_state_init(), device_state_release(), device_state_restore(), device_status(), DirectDrawMediaStreamImpl_IAMMediaStream_SetState(), dispatch_compute(), dispevent_Invoke(), DnsValidateName_W(), eater_codecvt::do_in(), generator_codecvt::do_in(), codecvt_byname< wchar_t, char, mbstate_t >::do_in(), generator_codecvt::do_length(), eater_codecvt::do_length(), codecvt_byname< wchar_t, char, mbstate_t >::do_length(), do_nfs41_close(), do_open(), codecvt_byname< wchar_t, char, mbstate_t >::do_out(), codecvt_byname< wchar_t, char, mbstate_t >::do_unshift(), CDefView::DoColumnContextMenu(), draw_diag_edge(), draw_indirect(), draw_primitive(), draw_primitive_arrays(), draw_primitive_immediate_mode(), draw_rect_edge(), PictureButton::DrawItem(), DrawTextFromClipboard(), dump_buffer_s(), EDIT_WM_NCPaint(), EffAppearanceDlg_Init(), EffAppearanceDlgUpdateControls(), EMF_RestoreDC(), EMF_SaveDC(), emit_bits_s(), emit_restart_s(), emit_set_rs(), emit_set_ts(), EmitREBytecode(), encode_mcu_huff(), encode_one_block(), end_container(), Graphics::EndContainer(), enum_emf_proc(), enum_metafile_proc(), EnumEnhMetaFile(), EventDispatch_Invoke(), ewmh_change_state(), ewmh_modify_state(), file_layout_fetch(), file_layout_recall(), file_layout_recall_fsid(), file_layout_return(), FilterGraph2_RemoveFilter(), find_arb_ps_compile_args(), find_arb_vs_compile_args(), find_draw_buffers_mask(), find_ds_compile_args(), find_gs_compile_args(), find_ps_compile_args(), find_vs_compile_args(), FindParenCount(), finish_pass_huff(), fixedtables(), flush_bits_s(), fragment_prog_arbfp(), free_state(), FreeBT_AddDevice(), frontface(), frontface_cc(), ft_lzwstate_done(), ft_lzwstate_get_code(), ft_lzwstate_init(), ft_lzwstate_io(), ft_lzwstate_prefix_grow(), ft_lzwstate_refill(), ft_lzwstate_reset(), ft_lzwstate_stack_grow(), GB_ThemedPaint(), GdipBeginContainer(), GdipBeginContainer2(), GdipBeginContainerI(), GdipEndContainer(), GdipEnumerateMetafileSrcRectDestPoints(), GdipRestoreGraphics(), GdipSaveGraphics(), gen_ffp_frag_op(), CTipbarAccessible::get_accState(), get_ea_list(), get_edge_brush(), get_edge_color(), get_edge_pen(), get_extrac_args(), get_fog_start_end(), get_key_state(), get_modelview_matrix(), get_pointsize(), get_pointsize_minmax(), get_projection_matrix(), get_service_state(), get_texture_matrix(), get_viewport(), get_volume_size_info(), GetDecimalValue(), FxPkgPnp::GetPnpState(), FxPkgPnp::GetPnpStateInternal(), gif_compress(), gl_client_state(), gl_enable(), Global_InvokeEx(), glsl_fragment_pipe_alpha_test(), glsl_fragment_pipe_alpha_test_func(), glsl_fragment_pipe_fog(), glsl_fragment_pipe_shader(), glsl_fragment_pipe_vdecl(), glsl_vertex_pipe_geometry_shader(), glsl_vertex_pipe_hs(), glsl_vertex_pipe_pixel_shader(), glsl_vertex_pipe_pointscale(), glsl_vertex_pipe_projection(), glsl_vertex_pipe_texmatrix_np2(), glsl_vertex_pipe_vdecl(), glsl_vertex_pipe_view(), glsl_vertex_pipe_viewport(), glsl_vertex_pipe_vs(), glsl_vertex_pointsprite_core(), gluDeleteQuadric(), gxv_EntryTable_validate(), gxv_just_classTable_entry_validate(), gxv_kern_subtable_fmt1_entry_validate(), gxv_mort_subtable_type0_entry_validate(), gxv_mort_subtable_type1_entry_validate(), gxv_mort_subtable_type1_offset_to_subst_validate(), gxv_mort_subtable_type2_entry_validate(), gxv_mort_subtable_type5_entry_validate(), gxv_morx_subtable_type0_entry_validate(), gxv_morx_subtable_type1_entry_validate(), gxv_morx_subtable_type2_entry_validate(), gxv_morx_subtable_type5_entry_validate(), gxv_XEntryTable_validate(), gz_avail(), gz_comp(), gz_decomp(), gz_error(), gz_fetch(), gz_init(), gz_load(), gz_look(), gz_open(), gz_read(), gz_reset(), gz_skip(), gz_write(), gz_zero(), gzbuffer(), gzclearerr(), gzclose(), gzclose_r(), gzclose_w(), gzdirect(), gzeof(), gzerror(), gzflush(), gzfread(), gzfwrite(), gzgetc(), gzgets(), gzoffset64(), gzprintf(), gzputc(), gzputs(), gzread(), gzrewind(), gzseek64(), gzsetparams(), gztell64(), gzungetc(), gzwrite(), handle_close(), handle_getacl(), handle_getattr(), handle_getexattr(), handle_lock(), handle_nfs41_link(), handle_nfs41_remove(), handle_nfs41_rename(), handle_nfs41_set_size(), handle_nfs41_setattr(), handle_open(), handle_readdir(), handle_setacl(), handle_setexattr(), handle_special_keys(), handle_symlink(), handle_unlock(), FxPkgPdo::HandleQueryCapabilities(), FxPkgFdo::HandleQueryCapabilitiesCompletion(), FxPkgPnp::HandleQueryPnpDeviceState(), HEADER_DrawItem(), HEADER_FillItemFrame(), HTMLEvents_Invoke(), HTMLXMLHttpRequest_get_statusText(), HTMLXMLHttpRequest_getAllResponseHeaders(), HTMLXMLHttpRequest_getResponseHeader(), CodecvtTest::in_out_test(), indexbuffer(), inflate(), inflate_fast(), inflateBack(), inflateBackInit_(), inflateCodesUsed(), inflateCopy(), inflateEnd(), inflateGetDictionary(), inflateGetHeader(), inflateInit2(), inflateInit2_(), inflateMark(), inflatePrime(), inflateReset(), inflateReset2(), inflateResetKeep(), inflateSetDictionary(), inflateStateCheck(), inflateSync(), inflateSyncPoint(), inflateUndermine(), inflateValidate(), CMiniportWaveStreamCMI::Init(), init_buf_state(), init_script_engine(), insert_menu_item(), IPADDRESS_Draw(), is_close_enabled(), is_invalid_op(), FxPkgPnp::IsDevicePowerUpIrpPending(), isStateDirty(), itemize_para(), jpeg_fill_bit_buffer(), jpeg_huff_decode(), layout_commit(), layout_coverage_status(), layout_fetch(), layout_ordered_insert(), layout_recall_range(), layout_return_status(), layout_state_deferred_recalls(), layout_state_free(), layout_state_free_layouts(), layout_state_free_recalls(), layout_state_merge(), layout_update(), layout_update_range(), layout_update_stateid(), CodecvtTest::length_test(), light(), load_numbered_arrays(), load_tex_coords(), load_vertex_data(), CDefView::LoadColumns(), lock_stateid_arg(), lock_stateid_update(), lzw_dict_add(), lzw_dict_lookup(), lzw_dict_reset(), lzw_flush_bits(), lzw_output_clear_code(), lzw_output_code(), lzw_output_eof_code(), lzw_state_init(), main(), MainWnd_OnActivate(), map_ds_error(), match_break(), match_mod(), mbrlen(), mbrtowc(), MCIQTZ_mciStatus(), MCIQTZ_mciUpdate(), MD_OnActivate(), MD_OnSize(), mds_commit(), MediaSeeking_SetPositions(), MediaStreamFilterImpl_GetState(), MMDevCol_Create(), MMDevEnum_GetDefaultAudioEndpoint(), MMDevice_Create(), MMDevice_GetState(), MONTHCAL_NotifyDayState(), MouseKeys_Update(), msi_check_product_patches(), msi_dialog_checkbox_handler(), msi_dialog_checkbox_sync_state(), msi_dialog_get_checkbox_state(), msi_dialog_set_checkbox_state(), msi_get_patch_state(), MSI_GetComponentPath(), MSI_GetFeatureCost(), MSI_GetUserInfo(), MSI_ProvideQualifiedComponentEx(), msi_seltree_update_feature_installstate(), msi_seltree_update_siblings_and_children_installstate(), MsiEndTransaction(), MsiEnumComponentCostsA(), MsiEnumComponentCostsW(), MsiInstallMissingComponentA(), MsiProvideComponentW(), MsiQueryFeatureStateExA(), MsiQueryFeatureStateExW(), MsiQueryFeatureStateW(), MsiQueryProductStateW(), MsiUseFeatureExW(), MSSTYLES_ParseIniSectionName(), multistate_apply_2(), multistate_apply_3(), NC_HandleNCLButtonDblClk(), needs_srgb_write(), netif_add(), NewRENode(), nfs41_client_delegation_return_lru(), nfs41_delegate_open(), nfs41_delegation_deref(), nfs41_delegation_granted(), nfs41_delegation_ref(), nfs41_DevFcbXXXControlFile(), nfs41_ea_set(), nfs41_open_state_deref(), nfs41_open_state_ref(), nfs41_open_stateid_arg(), nfs41_recover_client_state(), nsIOService_SetAppOffline(), nvrc_colorop(), nvrc_resultarg(), nvrc_texfactor(), nvts_activate_dimensions(), nvts_bumpenvmat(), nvts_texdim(), OB_Paint(), Window::OnActivate(), OnKeyScroll(), OnMouseScroll(), OnScroll(), opatmatch(), open_or_delegate(), open_state_free(), open_state_layout_cached(), open_state_rename(), paint_scrollbar(), parent_wnd_proc(), parse_prop(), ParseMinMaxQuantifier(), ParseQuantifier(), Parser_PullPin_Disconnect(), ParseRegExp(), ParseTerm(), patmatch(), pattern_init(), PB_Paint(), PB_ThemedPaint(), play_metafile(), play_metafile_proc(), pnfs_layout_io_finished(), pnfs_layout_io_start(), pnfs_layout_recall_fenced(), pnfs_layout_recall_status(), pnfs_layout_state_close(), pnfs_layout_state_open(), pnfs_layout_state_prepare(), pnfs_read(), pnfs_write(), FxPkgPdo::PnpEventEjectHardwareOverload(), FxPkgPnp::PnpEventQueryRemoveAskDriver(), FxPkgPnp::PnpEventQueryRemoveEnsureDeviceAwake(), FxPkgPnp::PnpEventQueryStopAskDriver(), FxPkgPnp::PnpEventQueryStopEnsureDeviceAwake(), FxPkgPnp::PnpEventStopped(), FxRequest::PostProcessSendAndForget(), FxPkgPnp::PowerGotoDxIoStopped(), FxPkgPnp::PowerGotoDxIoStoppedNP(), FxPkgPnp::PowerPolicySendDevicePowerRequest(), FxPkgPnp::PowerPolicySendWaitWakeRequest(), pp_internal_error(), pp_pop_define_state(), pp_push_define_state(), PrefOptCompletionFunction(), prepare_to_wait(), prepare_to_wait_exclusive(), print_driver_state(), process_state_property(), CTrayWindow::ProcessMouseTracking(), ProcessOp(), PropertyNotifySink_OnChanged(), PropertyStore_SetValueAndState(), PullPin_EndFlush(), push_state(), query_feature_state(), re_match_one(), read_header_file(), read_keyboard_state(), readdir_add_dots(), redraw_states(), regexp_new(), FxRequest::Release(), release_device_state(), release_shader_resources(), RemoteCompletionFunction(), RemoteDirCompletionFunction(), RemoteFileCompletionFunction(), remove_vbos(), reset_modifier_keys(), resolve_depth_buffer(), restore_dc(), CMiniportStream::ResumeDMA(), retrieve_device_state(), s_remote_EnumComponentCosts(), s_remote_GetFeatureCost(), s_remote_SetComponentState(), s_remote_SetFeatureState(), s_remote_SetMode(), sampler(), sampler_texdim(), sampler_texmatrix(), save_cert_mgr_usages(), scissorrect(), ScreenSaverProc(), seamless_process_line(), seamless_send_state(), SendGetState(), set_blocking(), set_bumpmat(), set_bumpmat_arbfp(), set_button_state(), set_download_state(), set_glsl_compute_shader_program(), set_glsl_shader_program(), set_menu_item_info(), set_plugin_readystate(), set_state(), set_tex_op(), set_tex_op_atifs(), set_tex_op_nvrc(), SetDIBitsToDeviceFromClipboard(), CListView::SetItemState(), setled(), CInternetToolbar::SetState(), shader_arb_load_constants(), shader_arb_load_constants_internal(), shader_arb_load_np2fixup_constants(), shader_arb_ps_local_constants(), shader_arb_select(), shader_arb_vs_local_constants(), shader_generate_code(), shader_get_position_fixup(), shader_glsl_clip_plane_uniform(), shader_glsl_end(), shader_glsl_ffp_vertex_light_uniform(), shader_glsl_ffp_vertex_lightambient_uniform(), shader_glsl_ffp_vertex_material_uniform(), shader_glsl_ffp_vertex_texmatrix_uniform(), shader_glsl_load_color_key_constant(), shader_glsl_load_constants(), shader_glsl_load_fog_uniform(), shader_glsl_load_np2fixup_constants(), shader_glsl_loop(), shader_glsl_pointsize_uniform(), shader_glsl_rep(), shader_glsl_select(), shader_glsl_select_compute(), shader_none_select(), software_vertex_blending(), CodecvtTest::special_encodings(), src_callback_read(), src_delete(), src_error(), src_get_channels(), src_process(), src_reset(), src_set_ratio(), state_alpha_test(), state_ambient(), state_anisotropy(), state_antialias(), state_arb_specularenable(), state_arbfp_fog(), state_blend(), state_blend_object(), state_blendfactor(), state_blendop(), state_bound(), state_cb(), state_cb_warn(), state_ckeyblend(), state_cleanup(), state_clipping(), state_colormat(), state_colorwrite(), state_colorwrite_i(), state_cs_resource_binding(), state_cs_uav_binding(), state_cullmode(), state_debug_monitor(), state_depthbias(), state_depthclip(), state_depthclip_w(), state_ditherenable(), state_extents(), state_fillmode(), state_flushbatch(), state_fog_fragpart(), state_fog_vertexpart(), state_fogcolor(), state_fogdensity(), state_fogstartend(), state_init(), state_init_default(), state_lastpixel(), state_lighting(), state_line_antialias(), state_linepattern(), state_localviewer(), state_mipmaplodbias(), state_monoenable(), state_msaa(), state_msaa_w(), state_multisampmask(), state_normaldegree(), state_normalize(), state_nvdb(), state_patchedgestyle(), state_patchsegments(), state_planemask(), state_pointsprite(), state_pointsprite_w(), state_positiondegree(), state_pscale(), state_psizemin_arb(), state_psizemin_ext(), state_psizemin_w(), state_rop2(), state_scissor(), state_selecting(), state_shademode(), state_shader_resource_binding(), state_so(), state_specularenable(), state_srgbwrite(), state_stencil(), state_stencilwrite(), state_stencilwrite2s(), state_stippledalpha(), state_stippleenable(), state_subpixel(), state_subpixelx(), state_swvp(), state_tessellation(), state_texfactor(), state_texfactor_arbfp(), state_to_str(), state_translucentsi(), state_tss_constant_arbfp(), state_uav_binding(), state_unbind_resources(), state_vertexblend(), state_vertexblend_w(), state_wrap(), state_wrapu(), state_wrapv(), state_zenable(), state_zfunc(), state_zvisible(), state_zwriteenable(), streamsrc(), TAB_DrawItem(), tcp_set_state(), test_accelerators(), test_buffer(), test_buffer8(), test_button_messages(), test_Cancel(), test_capture_buffer(), test_clipping(), test_CloseHandle(), test_CompleteLocal(), test_CompleteLocalURL(), test_component_states(), test_container_rects(), test_cookie_attrs(), test_daystate(), test_deleteitem(), test_eof_state(), test_feature_states(), test_filter_graph(), test_get_state(), test_GetAutoRotationState(), test_GetState(), test_HttpOptions(), test_inmemorystore(), test_insertitem(), test_manager_SetRenderState(), test_manager_SetTransform(), test_mbcp(), test_mbstowcs(), test_media_event(), test_menu_resource_layout(), Test_MessagesNonThemed(), Test_MessagesThemed(), test_MsiGetComponentPath(), test_MsiGetComponentPathEx(), test_MsiGetUserInfo(), test_MsiProvideComponent(), test_MsiProvideQualifiedComponentEx(), test_MsiQueryComponentState(), test_MsiQueryFeatureState(), test_MsiQueryProductState(), test_NamedPipeHandleState(), test_null(), test_parent_wndproc(), test_printers_folder(), test_publish(), test_read_state(), test_ResumeEmpty(), test_retval(), test_ScriptGetFontFunctions(), test_session(), test_state(), test_state_change(), test_states(), test_sys_menu(), test_ToAscii(), test_ToUnicode(), test_wctomb(), test_Win32_Service(), test_XMLHTTP(), testStoreProperty(), tex_alphaop(), tex_bumpenvlum_arbfp(), tex_colorop(), tex_coordindex(), textransform(), thread_count(), thread_next_unit(), TKeyDef::TKeyDef(), toggle_checkbox_state(), toggle_usage(), TOOLBAR_DrawString(), transform_projection(), transform_texture(), transform_view(), transform_world(), transform_worldex(), TREEVIEW_ToggleItemState(), UB_Paint(), ui_get_numlock_state(), ui_seamless_setstate(), UpdateLinesToScroll(), updatewindow(), UrlCanonicalizeW(), use_indexed_vertex_blending(), use_ps(), use_transform_feedback(), use_vs(), vdecl_miscpart(), vertexdeclaration(), viewport_miscpart(), viewport_miscpart_cc(), viewport_vertexpart(), vk2ascii(), walk_state_dep(), Widget_get_State(), Widget_put_State(), wined3d_blend_state_create(), wined3d_blend_state_decref(), wined3d_blend_state_get_parent(), wined3d_blend_state_incref(), wined3d_buffer_load(), wined3d_cs_emit_clear(), wined3d_cs_emit_dispatch(), wined3d_cs_emit_dispatch_indirect(), wined3d_cs_emit_draw(), wined3d_cs_emit_draw_indirect(), wined3d_cs_emit_set_blend_state(), wined3d_cs_emit_set_render_state(), wined3d_cs_emit_set_sampler_state(), wined3d_cs_emit_set_texture_state(), wined3d_cs_emit_set_transform(), wined3d_cs_exec_dispatch(), wined3d_cs_exec_draw(), wined3d_device_get_render_state(), wined3d_device_get_sampler_state(), wined3d_device_get_texture_stage_state(), wined3d_device_get_transform(), wined3d_device_multiply_transform(), wined3d_device_process_vertices(), wined3d_device_reset(), wined3d_device_set_render_state(), wined3d_device_set_rendertarget_view(), wined3d_device_set_sampler_state(), wined3d_device_set_texture_stage_state(), wined3d_device_validate_device(), wined3d_dualblend_enabled(), wined3d_ffp_get_vs_settings(), wined3d_rasterizer_state_create(), wined3d_rasterizer_state_decref(), wined3d_rasterizer_state_get_parent(), wined3d_rasterizer_state_incref(), wined3d_state_enable_light(), wined3d_state_get_light(), wined3d_stateblock_apply(), wined3d_stateblock_capture(), wined3d_stream_info_from_declaration(), wined3d_texture_apply_sampler_desc(), WinMain(), WndProc(), XInputGetState(), xkeymap_send_keys(), xkeymap_translate_key(), xmlParseComment(), xmlParseConditionalSections(), xmlParsePI(), xmlParseSystemLiteral(), xslprocessor_get_readyState(), XXH32(), XXH32_digest_endian(), XXH32_reset(), XXH32_update_endian(), XXH64(), XXH64_digest_endian(), XXH64_reset(), XXH64_update_endian(), ZSTD_ldm_fillHashTable(), and ZSTD_ldm_fillLdmHashTable().

◆ x

Definition at line 110 of file maze.c.

◆ y

Definition at line 111 of file maze.c.