#define IDM_WINDOW_FONT_6 216
#define IDM_WINDOW_FONT_7 217
+#define IDM_WINDOW_POS_0 220
+#define IDM_WINDOW_POS_1 221
+#define IDM_WINDOW_POS_2 222
+#define IDM_WINDOW_POS_3 223
+#define IDM_WINDOW_POS_4 224
+#define IDM_WINDOW_POS_5 225
+#define IDM_WINDOW_POS_6 226
+#define IDM_WINDOW_POS_7 227
+
#define IDM_WINDOW_BIZ_0 230
#define IDM_WINDOW_BIZ_1 231
#define IDM_WINDOW_BIZ_2 232
#define IDM_OPTIONS_NO_GRAPHICS 400
#define IDM_OPTIONS_OLD_GRAPHICS 401
#define IDM_OPTIONS_NEW_GRAPHICS 402
+#define IDM_OPTIONS_BIGTILE 409
#define IDM_OPTIONS_SOUND 410
#define IDM_OPTIONS_SAVER 420
#define IDM_OPTIONS_MAP 430
uint keys;
- int rows;
- int cols;
+ uint rows; /* int -> uint */
+ uint cols;
uint pos_x;
uint pos_y;
LOGFONT lf;
#endif
+ bool posfix;
+
/* bg */
#if 0
char *bgfile;
/*
* Directory names
*/
-static cptr ANGBAND_DIR_XTRA_FONT;
static cptr ANGBAND_DIR_XTRA_GRAF;
static cptr ANGBAND_DIR_XTRA_SOUND;
-static cptr ANGBAND_DIR_XTRA_MUSIC;
static cptr ANGBAND_DIR_XTRA_HELP;
+#ifndef JP
+static cptr ANGBAND_DIR_XTRA_FONT;
+#endif
+#ifdef USE_MUSIC
+static cptr ANGBAND_DIR_XTRA_MUSIC;
+#endif
/*
#endif
/* bg */
-static void delete_bg()
+static void delete_bg(void)
{
if (hBG != NULL)
{
}
}
-static int init_bg()
+static int init_bg(void)
{
char * bmfile = bg_bitmap_file;
int i, j;
delete_bg();
-
+
wnddc = GetDC(hwnd);
dcimage = CreateCompatibleDC(wnddc);
dcbg = CreateCompatibleDC(wnddc);
-
+
bmimage = LoadImage(NULL, "bg.bmp", LR_LOADFROMFILE, 0, 0, 0);
if (!bmimage) quit("bg.bmp¤¬Æɤߤ³¤á¤Ê¤¤¡ª");
bmimage_old = SelectObject(dcimage, bmimage);
-
+
CreateCompatibleBitmap();
ReleaseDC(hwnd, wnddc);
DeleteDC(hdcSrc);
}
+#if 0
/*
* Hack -- given a pathname, point at the filename
*/
/* Return file name */
return (p+1);
}
+#endif
/*
if (td->cols < 1) td->cols = 1;
if (td->rows < 1) td->rows = 1;
- /* Paranoia */
- if (td->cols > 80) td->cols = 80;
- if (td->rows > 24) td->rows = 24;
-
/* Window sizes */
wid = td->cols * td->tile_wid + td->size_ow1 + td->size_ow2;
hgt = td->rows * td->tile_hgt + td->size_oh1 + td->size_oh2;
/* Window position (y) */
wsprintf(buf, "%d", rc.top);
WritePrivateProfileString(sec_name, "PositionY", buf, ini_file);
+
+ /* Window Z position */
+ strcpy(buf, td->posfix ? "1" : "0");
+ WritePrivateProfileString(sec_name, "PositionFix", buf, ini_file);
}
sprintf(buf, "%d", arg_graphics);
WritePrivateProfileString("Angband", "Graphics", buf, ini_file);
+ /* Save the "arg_bigtile" flag */
+ strcpy(buf, arg_bigtile ? "1" : "0");
+ WritePrivateProfileString("Angband", "Bigtile", buf, ini_file);
+
/* Save the "arg_sound" flag */
strcpy(buf, arg_sound ? "1" : "0");
WritePrivateProfileString("Angband", "Sound", buf, ini_file);
/* Window position */
td->pos_x = GetPrivateProfileInt(sec_name, "PositionX", td->pos_x, ini_file);
td->pos_y = GetPrivateProfileInt(sec_name, "PositionY", td->pos_y, ini_file);
+
+ /* Window Z position */
+ td->posfix = GetPrivateProfileInt(sec_name, "PositionFix", td->posfix, ini_file);
}
/* Extract the "arg_graphics" flag */
arg_graphics = GetPrivateProfileInt("Angband", "Graphics", GRAPHICS_NONE, ini_file);
+ /* Extract the "arg_bigtile" flag */
+ arg_bigtile = GetPrivateProfileInt("Angband", "Bigtile", FALSE, ini_file);
+ use_bigtile = arg_bigtile;
+
/* Extract the "arg_sound" flag */
arg_sound = (GetPrivateProfileInt("Angband", "Sound", 0, ini_file) != 0);
}
/* Access the bitmap file */
- path_build(buf, 1024, ANGBAND_DIR_XTRA_GRAF, name);
+ path_build(buf, sizeof(buf), ANGBAND_DIR_XTRA_GRAF, name);
/* Load the bitmap or quit */
if (!ReadDIB(data[0].w, buf, &infGraph))
if (arg_graphics == GRAPHICS_ADAM_BOLT)
{
/* Access the mask file */
- path_build(buf, 1024, ANGBAND_DIR_XTRA_GRAF, "mask.bmp");
+ path_build(buf, sizeof(buf), ANGBAND_DIR_XTRA_GRAF, "mask.bmp");
/* Load the bitmap or quit */
if (!ReadDIB(data[0].w, buf, &infMask))
sprintf(wav, "%s.wav", angband_sound_name[i]);
/* Access the sound */
- path_build(buf, 1024, ANGBAND_DIR_XTRA_SOUND, wav);
+ path_build(buf, sizeof(buf), ANGBAND_DIR_XTRA_SOUND, wav);
/* Save the sound filename, if it exists */
if (check_file(buf)) sound_file[i] = string_make(buf);
/* Resize the window */
SetWindowPos(td->w, 0, 0, 0,
- td->size_wid, td->size_hgt,
- SWP_NOMOVE | SWP_NOZORDER);
+ td->size_wid, td->size_hgt,
+ SWP_NOMOVE | SWP_NOZORDER);
/* Redraw later */
InvalidateRect(td->w, NULL, TRUE);
if (!td->font_id) return (1);
#else
td->font_id = CreateFont(hgt, wid, 0, 0, FW_DONTCARE, 0, 0, 0,
- ANSI_CHARSET, OUT_DEFAULT_PRECIS,
- CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,
- FIXED_PITCH | FF_DONTCARE, base);
+ ANSI_CHARSET, OUT_DEFAULT_PRECIS,
+ CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,
+ FIXED_PITCH | FF_DONTCARE, base);
#endif
if (term_force_font(td, tmp))
{
/* Access the standard font file */
- path_build(tmp, 1024, ANGBAND_DIR_XTRA_FONT, "8X13.FON");
+ path_build(tmp, sizeof(tmp), ANGBAND_DIR_XTRA_FONT, "8X13.FON");
/* Force the use of that font */
(void)term_force_font(td, tmp);
}
-
+/*
+ * Allow the user to lock this window.
+ */
+static void term_window_pos(term_data *td, HWND hWnd)
+{
+ SetWindowPos(td->w, hWnd, 0, 0, 0, 0,
+ SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE);
+}
static void windows_map(void);
term_data *td = &data[i];
/* Update resized windows */
- if ((td->cols != td->t.wid) || (td->rows != td->t.hgt))
+ if ((td->cols != (uint)td->t.wid) || (td->rows != (uint)td->t.hgt))
{
/* Activate */
Term_activate(&td->t);
/*
* Low level graphics (Assumes valid input).
*
+ * Draw a "big cursor" at (x,y), using a "yellow box".
+ */
+static errr Term_bigcurs_win(int x, int y)
+{
+ term_data *td = (term_data*)(Term->data);
+
+ RECT rc;
+ HDC hdc;
+
+ int tile_wid, tile_hgt;
+
+ if (td->map_active)
+ {
+ /* Normal cursor in map window */
+ Term_curs_win(x, y);
+ return 0;
+ }
+ else
+ {
+ tile_wid = td->tile_wid;
+ tile_hgt = td->tile_hgt;
+ }
+
+ /* Frame the grid */
+ rc.left = x * tile_wid + td->size_ow1;
+ rc.right = rc.left + 2 * tile_wid;
+ rc.top = y * tile_hgt + td->size_oh1;
+ rc.bottom = rc.top + tile_hgt;
+
+ /* Cursor is done as a yellow "box" */
+ hdc = GetDC(td->w);
+ FrameRect(hdc, &rc, hbrYellow);
+ ReleaseDC(td->w, hdc);
+
+ /* Success */
+ return 0;
+}
+
+
+/*
+ * Low level graphics (Assumes valid input).
+ *
* Erase a "block" of "n" characters starting at (x,y).
*/
static errr Term_wipe_win(int x, int y, int n)
for (i = 0; i < n; i++)
{
#ifdef JP
- if ( iskanji(*(s+i)) ) /* £²¥Ð¥¤¥Èʸ»ú */
+ if (use_bigtile && *(s+i)=="¢£"[0] && *(s+i+1)=="¢£"[1])
+ {
+ rc.right += td->font_wid;
+
+ oldBrush = SelectObject(hdc, myBrush);
+ oldPen = SelectObject(hdc, GetStockObject(NULL_PEN) );
+
+ /* Dump the wall */
+ Rectangle(hdc, rc.left, rc.top, rc.right+1, rc.bottom+1);
+
+ SelectObject(hdc, oldBrush);
+ SelectObject(hdc, oldPen);
+ rc.right -= td->font_wid;
+
+ /* Advance */
+ i++;
+ rc.left += 2 * td->tile_wid;
+ rc.right += 2 * td->tile_wid;
+ }
+ else if ( iskanji(*(s+i)) ) /* £²¥Ð¥¤¥Èʸ»ú */
{
rc.right += td->font_wid;
/* Dump the text */
ExtTextOut(hdc, rc.left, rc.top, ETO_CLIPPED, &rc,
- s+i, 2, NULL);
+ s+i, 2, NULL);
+ rc.right -= td->font_wid;
/* Advance */
i++;
} else {
/* Dump the text */
ExtTextOut(hdc, rc.left, rc.top, ETO_CLIPPED, &rc,
- s+i, 1, NULL);
+ s+i, 1, NULL);
/* Advance */
rc.left += td->tile_wid;
#else
/* Dump the text */
ExtTextOut(hdc, rc.left, rc.top, 0, &rc,
- s+i, 1, NULL);
+ s+i, 1, NULL);
/* Advance */
rc.left += td->tile_wid;
{
/* Dump the text */
ExtTextOut(hdc, rc.left, rc.top, ETO_OPAQUE | ETO_CLIPPED, &rc,
- s, n, NULL);
+ s, n, NULL);
}
/* Release DC */
int i;
int x1, y1, w1, h1;
- int x2, y2, w2, h2;
+ int x2, y2, w2, h2, tw2;
# ifdef USE_TRANSPARENCY
{
w2 = td->tile_wid;
h2 = td->tile_hgt;
+ tw2 = w2;
+
+ /* big tile mode */
+ if (use_bigtile) tw2 *= 2;
}
/* Location of window cell */
y3 = (tap[i] & 0x7F) * h1;
/* Perfect size */
- if ((w1 == w2) && (h1 == h2))
+ if ((w1 == tw2) && (h1 == h2))
{
/* Copy the terrain picture from the bitmap to the window */
- BitBlt(hdc, x2, y2, w2, h2, hdcSrc, x3, y3, SRCCOPY);
+ BitBlt(hdc, x2, y2, tw2, h2, hdcSrc, x3, y3, SRCCOPY);
/* Mask out the tile */
- BitBlt(hdc, x2, y2, w2, h2, hdcMask, x1, y1, SRCAND);
+ BitBlt(hdc, x2, y2, tw2, h2, hdcMask, x1, y1, SRCAND);
/* Draw the tile */
- BitBlt(hdc, x2, y2, w2, h2, hdcSrc, x1, y1, SRCPAINT);
+ BitBlt(hdc, x2, y2, tw2, h2, hdcSrc, x1, y1, SRCPAINT);
}
/* Need to stretch */
SetStretchBltMode(hdc, COLORONCOLOR);
/* Copy the terrain picture from the bitmap to the window */
- StretchBlt(hdc, x2, y2, w2, h2, hdcSrc, x3, y3, w1, h1, SRCCOPY);
+ StretchBlt(hdc, x2, y2, tw2, h2, hdcSrc, x3, y3, w1, h1, SRCCOPY);
/* Only draw if terrain and overlay are different */
if ((x1 != x3) || (y1 != y3))
{
/* Mask out the tile */
- StretchBlt(hdc, x2, y2, w2, h2, hdcMask, x1, y1, w1, h1, SRCAND);
+ StretchBlt(hdc, x2, y2, tw2, h2, hdcMask, x1, y1, w1, h1, SRCAND);
/* Draw the tile */
- StretchBlt(hdc, x2, y2, w2, h2, hdcSrc, x1, y1, w1, h1, SRCPAINT);
+ StretchBlt(hdc, x2, y2, tw2, h2, hdcSrc, x1, y1, w1, h1, SRCPAINT);
}
}
}
{
/* Perfect size */
- if ((w1 == w2) && (h1 == h2))
+ if ((w1 == tw2) && (h1 == h2))
{
/* Copy the picture from the bitmap to the window */
- BitBlt(hdc, x2, y2, w2, h2, hdcSrc, x1, y1, SRCCOPY);
+ BitBlt(hdc, x2, y2, tw2, h2, hdcSrc, x1, y1, SRCCOPY);
}
/* Need to stretch */
SetStretchBltMode(hdc, COLORONCOLOR);
/* Copy the picture from the bitmap to the window */
- StretchBlt(hdc, x2, y2, w2, h2, hdcSrc, x1, y1, w1, h1, SRCCOPY);
+ StretchBlt(hdc, x2, y2, tw2, h2, hdcSrc, x1, y1, w1, h1, SRCCOPY);
}
}
}
}
-#ifdef USE_TRANSPARENCY
-extern void map_info(int y, int x, byte *ap, char *cp, byte *tap, char *tcp);
-#else /* USE_TRANSPARENCY */
-extern void map_info(int y, int x, byte *ap, char *cp);
-#endif /* USE_TRANSPARENCY */
-
-
static void windows_map(void)
{
term_data *td = &data[0];
t->user_hook = Term_user_win;
t->xtra_hook = Term_xtra_win;
t->curs_hook = Term_curs_win;
+ t->bigcurs_hook = Term_bigcurs_win;
t->wipe_hook = Term_wipe_win;
t->text_hook = Term_text_win;
t->pict_hook = Term_pict_win;
td->size_oh2 = 2;
td->pos_x = 7 * 30;
td->pos_y = 7 * 20;
+ td->posfix = FALSE;
#ifdef JP
td->bizarre = TRUE;
td->size_oh2 = 1;
td->pos_x = (7 - i) * 30;
td->pos_y = (7 - i) * 20;
+ td->posfix = FALSE;
#ifdef JP
td->bizarre = TRUE;
#endif
/* Main window (need these before term_getsize gets called) */
td = &data[0];
td->dwStyle = (WS_OVERLAPPED | WS_THICKFRAME | WS_SYSMENU |
- WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_CAPTION |
- WS_VISIBLE);
+ WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_CAPTION |
+ WS_VISIBLE);
td->dwExStyle = 0;
td->visible = TRUE;
#ifdef JP
strncpy(td->lf.lfFaceName, td->font_want, LF_FACESIZE);
- td->lf.lfHeight = td->tile_hgt;
- td->lf.lfWidth = td->tile_wid;
td->lf.lfCharSet = SHIFTJIS_CHARSET;
td->lf.lfPitchAndFamily = FIXED_PITCH | FF_DONTCARE;
/* Activate the chosen font */
td->tile_hgt = td->font_hgt;
#else
/* Access the standard font file */
- path_build(buf, 1024, ANGBAND_DIR_XTRA_FONT, td->font_want);
+ path_build(buf, sizeof(buf), ANGBAND_DIR_XTRA_FONT, td->font_want);
/* Activate the chosen font */
if (term_force_font(td, buf))
{
/* Access the standard font file */
- path_build(buf, 1024, ANGBAND_DIR_XTRA_FONT, "8X13.FON");
+ path_build(buf, sizeof(buf), ANGBAND_DIR_XTRA_FONT, "8X13.FON");
/* Force the use of that font */
(void)term_force_font(td, buf);
my_td = td;
td->w = CreateWindowEx(td->dwExStyle, AngList,
- td->s, td->dwStyle,
- td->pos_x, td->pos_y,
- td->size_wid, td->size_hgt,
- HWND_DESKTOP, NULL, hInstance, NULL);
+ td->s, td->dwStyle,
+ td->pos_x, td->pos_y,
+ td->size_wid, td->size_hgt,
+ HWND_DESKTOP, NULL, hInstance, NULL);
my_td = NULL;
#ifdef JP
if (!td->w) quit("¥µ¥Ö¥¦¥£¥ó¥É¥¦¤ËºîÀ®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿");
{
/* Activate the window */
SetActiveWindow(td->w);
+ }
- /* Bring window to top */
- SetWindowPos(td->w, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
+ if (data[i].posfix)
+ {
+ term_window_pos(&data[i], HWND_TOPMOST);
+ }
+ else
+ {
+ term_window_pos(&data[i], td->w);
}
}
/* Main window */
my_td = td;
td->w = CreateWindowEx(td->dwExStyle, AppName,
- td->s, td->dwStyle,
- td->pos_x, td->pos_y,
- td->size_wid, td->size_hgt,
- HWND_DESKTOP, NULL, hInstance, NULL);
+ td->s, td->dwStyle,
+ td->pos_x, td->pos_y,
+ td->size_wid, td->size_hgt,
+ HWND_DESKTOP, NULL, hInstance, NULL);
my_td = NULL;
#ifdef JP
if (!td->w) quit("¥á¥¤¥ó¥¦¥£¥ó¥É¥¦¤ÎºîÀ®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿");
/* Menu "File", Disable all */
EnableMenuItem(hm, IDM_FILE_NEW,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_FILE_OPEN,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_FILE_SAVE,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_FILE_EXIT,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_FILE_SCORE,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
/* No character available */
{
/* Menu "File", Item "Save" */
EnableMenuItem(hm, IDM_FILE_SAVE,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
/* Menu "File", Item "Exit" */
EnableMenuItem(hm, IDM_FILE_EXIT,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
EnableMenuItem(hm, IDM_FILE_SCORE,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
/* Menu "Window::Visibility" */
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_VIS_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
CheckMenuItem(hm, IDM_WINDOW_VIS_0 + i,
- (data[i].visible ? MF_CHECKED : MF_UNCHECKED));
+ (data[i].visible ? MF_CHECKED : MF_UNCHECKED));
EnableMenuItem(hm, IDM_WINDOW_VIS_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
/* Menu "Window::Font" */
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_FONT_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_FONT_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
+ }
+ }
+
+ /* Menu "Window::Window Position Fix" */
+ for (i = 0; i < MAX_TERM_DATA; i++)
+ {
+ EnableMenuItem(hm, IDM_WINDOW_POS_0 + i,
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+
+ CheckMenuItem(hm, IDM_WINDOW_POS_0 + i,
+ (data[i].posfix ? MF_CHECKED : MF_UNCHECKED));
+
+ if (data[i].visible)
+ {
+ EnableMenuItem(hm, IDM_WINDOW_POS_0 + i,
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_BIZ_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
CheckMenuItem(hm, IDM_WINDOW_BIZ_0 + i,
- (data[i].bizarre ? MF_CHECKED : MF_UNCHECKED));
+ (data[i].bizarre ? MF_CHECKED : MF_UNCHECKED));
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_BIZ_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_I_WID_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_I_WID_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_D_WID_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_D_WID_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_I_HGT_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_I_HGT_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
for (i = 0; i < MAX_TERM_DATA; i++)
{
EnableMenuItem(hm, IDM_WINDOW_D_HGT_0 + i,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
if (data[i].visible)
{
EnableMenuItem(hm, IDM_WINDOW_D_HGT_0 + i,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
}
}
/* Menu "Options", disable all */
EnableMenuItem(hm, IDM_OPTIONS_NO_GRAPHICS,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_OPTIONS_OLD_GRAPHICS,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_OPTIONS_NEW_GRAPHICS,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ EnableMenuItem(hm, IDM_OPTIONS_BIGTILE,
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
EnableMenuItem(hm, IDM_OPTIONS_SOUND,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
#ifndef JP
EnableMenuItem(hm, IDM_OPTIONS_SAVER,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
#endif
/* Menu "Options", Item "Map" */
EnableMenuItem(GetMenu(data[0].w), IDM_OPTIONS_MAP, MF_BYCOMMAND | MF_ENABLED);
else
EnableMenuItem(GetMenu(data[0].w), IDM_OPTIONS_MAP,
- MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+ MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
/* Menu "Options", update all */
CheckMenuItem(hm, IDM_OPTIONS_NO_GRAPHICS,
- (arg_graphics == GRAPHICS_NONE ? MF_CHECKED : MF_UNCHECKED));
+ (arg_graphics == GRAPHICS_NONE ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(hm, IDM_OPTIONS_OLD_GRAPHICS,
- (arg_graphics == GRAPHICS_ORIGINAL ? MF_CHECKED : MF_UNCHECKED));
+ (arg_graphics == GRAPHICS_ORIGINAL ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(hm, IDM_OPTIONS_NEW_GRAPHICS,
- (arg_graphics == GRAPHICS_ADAM_BOLT ? MF_CHECKED : MF_UNCHECKED));
+ (arg_graphics == GRAPHICS_ADAM_BOLT ? MF_CHECKED : MF_UNCHECKED));
+ CheckMenuItem(hm, IDM_OPTIONS_BIGTILE,
+ (arg_bigtile ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(hm, IDM_OPTIONS_SOUND,
- (arg_sound ? MF_CHECKED : MF_UNCHECKED));
+ (arg_sound ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(hm, IDM_OPTIONS_BG,
- (use_bg ? MF_CHECKED : MF_UNCHECKED));
+ (use_bg ? MF_CHECKED : MF_UNCHECKED));
#ifndef JP
CheckMenuItem(hm, IDM_OPTIONS_SAVER,
- (hwndSaver ? MF_CHECKED : MF_UNCHECKED));
+ (hwndSaver ? MF_CHECKED : MF_UNCHECKED));
#endif
#ifdef USE_GRAPHICS
EnableMenuItem(hm, IDM_OPTIONS_OLD_GRAPHICS, MF_ENABLED);
/* Menu "Options", Item "Graphics" */
EnableMenuItem(hm, IDM_OPTIONS_NEW_GRAPHICS, MF_ENABLED);
+ /* Menu "Options", Item "Graphics" */
+ EnableMenuItem(hm, IDM_OPTIONS_BIGTILE, MF_ENABLED);
#endif /* USE_GRAPHICS */
#ifdef USE_SOUND
#ifdef USE_SAVER
/* Menu "Options", Item "ScreenSaver" */
EnableMenuItem(hm, IDM_OPTIONS_SAVER,
- MF_BYCOMMAND | MF_ENABLED);
+ MF_BYCOMMAND | MF_ENABLED);
#endif /* USE_SAVER */
}
if (!can_save)
{
#ifdef JP
- plog("º£¤Ï½ªÎ»¤Ç¤¤Þ¤»¤ó¡£");
+ plog("º£¤Ï½ªÎ»¤Ç¤¤Þ¤»¤ó¡£");
#else
plog("You may not do that right now.");
#endif
/* Save the game */
#ifdef ZANGBAND
- do_cmd_save_game(FALSE);
+ /* do_cmd_save_game(FALSE); */
#else /* ZANGBAND */
- do_cmd_save_game();
+ /* do_cmd_save_game(); */
#endif /* ZANGBAND */
+ Term_key_push(SPECIAL_KEY_QUIT);
+ break;
}
quit(NULL);
break;
char buf[1024];
/* Build the filename */
- path_build(buf, 1024, ANGBAND_DIR_APEX, "scores.raw");
+ path_build(buf, sizeof(buf), ANGBAND_DIR_APEX, "scores.raw");
/* Open the binary high score file, for reading */
highscore_fd = fd_open(buf, O_RDONLY);
else
{
td->visible = FALSE;
+ td->posfix = FALSE;
ShowWindow(td->w, SW_HIDE);
}
break;
}
+ /* Window Z Position */
+ case IDM_WINDOW_POS_1:
+ case IDM_WINDOW_POS_2:
+ case IDM_WINDOW_POS_3:
+ case IDM_WINDOW_POS_4:
+ case IDM_WINDOW_POS_5:
+ case IDM_WINDOW_POS_6:
+ case IDM_WINDOW_POS_7:
+ {
+ i = wCmd - IDM_WINDOW_POS_0;
+
+ if ((i < 0) || (i >= MAX_TERM_DATA)) break;
+
+ td = &data[i];
+
+ if (!td->posfix && td->visible)
+ {
+ td->posfix = TRUE;
+ term_window_pos(td, HWND_TOPMOST);
+ }
+ else
+ {
+ td->posfix = FALSE;
+ term_window_pos(td, data[0].w);
+ }
+
+ break;
+ }
+
/* Bizarre Display */
case IDM_WINDOW_BIZ_0:
case IDM_WINDOW_BIZ_1:
break;
}
+ case IDM_OPTIONS_BIGTILE:
+ {
+ term_data *td = &data[0];
+
+ /* Paranoia */
+ if (!inkey_flag)
+ {
+ plog("You may not do that right now.");
+ break;
+ }
+
+ /* Toggle "arg_sound" */
+ arg_bigtile = !arg_bigtile;
+
+ /* Activate */
+ Term_activate(&td->t);
+
+ /* Resize the term */
+ Term_resize(td->cols, td->rows);
+
+ /* Redraw later */
+ InvalidateRect(td->w, NULL, TRUE);
+
+ break;
+ }
+
case IDM_OPTIONS_SOUND:
{
/* Paranoia */
if (GetSaveFileName(&ofn))
{
- extern void do_cmd_save_screen_html_aux(char *filename, int message);
do_cmd_save_screen_html_aux(buf, 0);
}
break;
{
/* Create a screen scaver window */
hwndSaver = CreateWindowEx(WS_EX_TOPMOST, "WindowsScreenSaverClass",
- "Angband Screensaver",
- WS_POPUP | WS_MAXIMIZE | WS_VISIBLE,
- 0, 0, GetSystemMetrics(SM_CXSCREEN),
- GetSystemMetrics(SM_CYSCREEN),
- NULL, NULL, hInstance, NULL);
+ "Angband Screensaver",
+ WS_POPUP | WS_MAXIMIZE | WS_VISIBLE,
+ 0, 0, GetSystemMetrics(SM_CXSCREEN),
+ GetSystemMetrics(SM_CYSCREEN),
+ NULL, NULL, hInstance, NULL);
if (hwndSaver)
{
{
#ifdef HTML_HELP
char tmp[1024];
- path_build(tmp, 1024, ANGBAND_DIR_XTRA_HELP, "zangband.chm");
+ path_build(tmp, sizeof(tmp), ANGBAND_DIR_XTRA_HELP, "zangband.chm");
if (check_file(tmp))
{
HtmlHelp(data[0].w, tmp, HH_DISPLAY_TOPIC, 0);
#else /* HTML_HELP */
char buf[1024];
char tmp[1024];
- path_build(tmp, 1024, ANGBAND_DIR_XTRA_HELP, "zangband.hlp");
+ path_build(tmp, sizeof(tmp), ANGBAND_DIR_XTRA_HELP, "zangband.hlp");
if (check_file(tmp))
{
sprintf(buf, "winhelp.exe %s", tmp);
#ifdef __MWERKS__
LRESULT FAR PASCAL AngbandWndProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam);
+ WPARAM wParam, LPARAM lParam);
LRESULT FAR PASCAL AngbandWndProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#else /* __MWERKS__ */
LRESULT FAR PASCAL AngbandWndProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#endif /* __MWERKS__ */
{
PAINTSTRUCT ps;
case WM_GETMINMAXINFO:
{
-#if 0
+ MINMAXINFO FAR *lpmmi;
+ RECT rc;
+
lpmmi = (MINMAXINFO FAR *)lParam;
/* this message was sent before WM_NCCREATE */
if (!td) return 1;
- /* Minimum window size is 8x2 */
+ /* Minimum window size is 80x24 */
rc.left = rc.top = 0;
- rc.right = rc.left + 8 * td->tile_wid + td->size_ow1 + td->size_ow2;
- rc.bottom = rc.top + 2 * td->tile_hgt + td->size_oh1 + td->size_oh2 + 1;
+ rc.right = rc.left + 80 * td->tile_wid + td->size_ow1 + td->size_ow2;
+ rc.bottom = rc.top + 24 * td->tile_hgt + td->size_oh1 + td->size_oh2 + 1;
/* Adjust */
AdjustWindowRectEx(&rc, td->dwStyle, TRUE, td->dwExStyle);
lpmmi->ptMinTrackSize.x = rc.right - rc.left;
lpmmi->ptMinTrackSize.y = rc.bottom - rc.top;
- /* Maximum window size */
- rc.left = rc.top = 0;
- rc.right = rc.left + 80 * td->tile_wid + td->size_ow1 + td->size_ow2;
- rc.bottom = rc.top + 24 * td->tile_hgt + td->size_oh1 + td->size_oh2;
-
- /* Paranoia */
- rc.right += (td->tile_wid - 1);
- rc.bottom += (td->tile_hgt - 1);
-
- /* Adjust */
- AdjustWindowRectEx(&rc, td->dwStyle, TRUE, td->dwExStyle);
-
- /* Save maximum size */
- lpmmi->ptMaxSize.x = rc.right - rc.left;
- lpmmi->ptMaxSize.y = rc.bottom - rc.top;
-
- /* Save maximum size */
- lpmmi->ptMaxTrackSize.x = rc.right - rc.left;
- lpmmi->ptMaxTrackSize.y = rc.bottom - rc.top;
-#endif
return 0;
}
{
if (!can_save)
{
+#ifdef JP
+ plog("º£¤Ï½ªÎ»¤Ç¤¤Þ¤»¤ó¡£");
+#else
plog("You may not do that right now.");
+#endif
return 0;
}
/* Save the game */
#ifdef ZANGBAND
- do_cmd_save_game(FALSE);
+ /* do_cmd_save_game(FALSE); */
#else /* ZANGBAND */
- do_cmd_save_game();
+ /* do_cmd_save_game(); */
#endif /* ZANGBAND */
+ Term_key_push(252);
+ return 0;
}
quit(NULL);
return 0;
case SIZE_RESTORED:
{
- uint old_tile_wid = td->tile_wid;
- uint old_tile_hgt = td->tile_hgt;
+ uint cols = (LOWORD(lParam) - td->size_ow1) / td->tile_wid;
+ uint rows = (HIWORD(lParam) - td->size_oh1) / td->tile_hgt;
- td->size_hack = TRUE;
+ /* New size */
+ if ((td->cols != cols) || (td->rows != rows))
+ {
+ /* Save the new size */
+ td->cols = cols;
+ td->rows = rows;
- td->tile_wid = LOWORD(lParam) / td->cols;
- td->tile_hgt = HIWORD(lParam) / td->rows;
+ /* Activate */
+ Term_activate(&td->t);
- if ((td->tile_wid != old_tile_wid) ||
- (td->tile_hgt != old_tile_hgt))
- {
- term_getsize(td);
+ /* Resize the term */
+ Term_resize(td->cols, td->rows);
/* Redraw later */
InvalidateRect(td->w, NULL, TRUE);
}
+ td->size_hack = TRUE;
+
/* Show sub-windows */
for (i = 1; i < MAX_TERM_DATA; i++)
{
/* Do something to sub-windows */
for (i = 1; i < MAX_TERM_DATA; i++)
{
- SetWindowPos(data[i].w, hWnd, 0, 0, 0, 0,
- SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE);
+ if (!data[i].posfix) term_window_pos(&data[i], hWnd);
}
/* Focus on main window */
break;
}
+
+ case WM_ACTIVATEAPP:
+ {
+ for (i = 1; i < MAX_TERM_DATA; i++)
+ {
+ if(data[i].visible)
+ {
+ if (wParam == TRUE)
+ {
+ ShowWindow(data[i].w, SW_SHOW);
+ }
+ else
+ {
+ ShowWindow(data[i].w, SW_HIDE);
+ }
+ }
+ }
+ }
}
return DefWindowProc(hWnd, uMsg, wParam, lParam);
#ifdef __MWERKS__
LRESULT FAR PASCAL AngbandListProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam);
+ WPARAM wParam, LPARAM lParam);
LRESULT FAR PASCAL AngbandListProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#else /* __MWERKS__ */
LRESULT FAR PASCAL AngbandListProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#endif /* __MWERKS__ */
{
term_data *td;
case WM_GETMINMAXINFO:
{
-#if 0
- /* this message was sent before WM_NCCREATE */
- if (!td) return 1;
+ MINMAXINFO FAR *lpmmi;
+ RECT rc;
lpmmi = (MINMAXINFO FAR *)lParam;
- /* Minimum size */
+ /* this message was sent before WM_NCCREATE */
+ if (!td) return 1;
+
+ /* Minimum window size is 80x24 */
rc.left = rc.top = 0;
- rc.right = rc.left + 8 * td->tile_wid + td->size_ow1 + td->size_ow2;
- rc.bottom = rc.top + 2 * td->tile_hgt + td->size_oh1 + td->size_oh2;
+ rc.right = rc.left + 20 * td->tile_wid + td->size_ow1 + td->size_ow2;
+ rc.bottom = rc.top + 3 * td->tile_hgt + td->size_oh1 + td->size_oh2 + 1;
/* Adjust */
AdjustWindowRectEx(&rc, td->dwStyle, TRUE, td->dwExStyle);
- /* Save the minimum size */
+ /* Save minimum size */
lpmmi->ptMinTrackSize.x = rc.right - rc.left;
lpmmi->ptMinTrackSize.y = rc.bottom - rc.top;
- /* Maximum window size */
- rc.left = rc.top = 0;
- rc.right = rc.left + 80 * td->tile_wid + td->size_ow1 + td->size_ow2;
- rc.bottom = rc.top + 24 * td->tile_hgt + td->size_oh1 + td->size_oh2;
-
- /* Paranoia */
- rc.right += (td->tile_wid - 1);
- rc.bottom += (td->tile_hgt - 1);
-
- /* Adjust */
- AdjustWindowRectEx(&rc, td->dwStyle, TRUE, td->dwExStyle);
-
- /* Save maximum size */
- lpmmi->ptMaxSize.x = rc.right - rc.left;
- lpmmi->ptMaxSize.y = rc.bottom - rc.top;
-
- /* Save the maximum size */
- lpmmi->ptMaxTrackSize.x = rc.right - rc.left;
- lpmmi->ptMaxTrackSize.y = rc.bottom - rc.top;
-#endif
return 0;
}
case WM_SIZE:
{
- uint old_tile_wid = td->tile_wid;
- uint old_tile_hgt = td->tile_hgt;
-
+ uint cols;
+ uint rows;
+
/* this message was sent before WM_NCCREATE */
if (!td) return 1;
td->size_hack = TRUE;
- td->tile_wid = LOWORD(lParam) / td->cols;
- td->tile_hgt = HIWORD(lParam) / td->rows;
+ cols = (LOWORD(lParam) - td->size_ow1) / td->tile_wid;
+ rows = (HIWORD(lParam) - td->size_oh1) / td->tile_hgt;
- if ((td->tile_wid != old_tile_wid) ||
- (td->tile_hgt != old_tile_hgt))
+ /* New size */
+ if ((td->cols != cols) || (td->rows != rows))
{
- if (((td->tile_wid < td->font_wid) ||
- (td->tile_hgt < td->font_hgt)) ||
- ((td->cols < 80) || (td->rows < 24)))
- {
- td->tile_wid = td->font_wid;
- td->tile_hgt = td->font_hgt;
+ /* Save old term */
+ term *old_term = Term;
- td->cols = (LOWORD(lParam) - td->size_ow1 - td->size_ow2) / td->tile_wid;
- td->rows = (HIWORD(lParam) - td->size_oh1 - td->size_oh2) / td->tile_hgt;
- }
+ /* Save the new size */
+ td->cols = cols;
+ td->rows = rows;
+
+ /* Activate */
+ Term_activate(&td->t);
- term_getsize(td);
+ /* Resize the term */
+ Term_resize(td->cols, td->rows);
- MoveWindow(hWnd, td->pos_x, td->pos_y, td->size_wid, td->size_hgt, TRUE);
+ /* Activate */
+ Term_activate(old_term);
/* Redraw later */
InvalidateRect(td->w, NULL, TRUE);
+
+ /* HACK - Redraw all windows */
+ p_ptr->window = 0xFFFFFFFF;
+ window_stuff();
}
td->size_hack = FALSE;
#ifdef __MWERKS__
LRESULT FAR PASCAL AngbandSaverProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam);
+ WPARAM wParam, LPARAM lParam);
LRESULT FAR PASCAL AngbandSaverProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#else /* __MWERKS__ */
LRESULT FAR PASCAL AngbandSaverProc(HWND hWnd, UINT uMsg,
- WPARAM wParam, LPARAM lParam)
+ WPARAM wParam, LPARAM lParam)
#endif /* __MWERKS__ */
{
static int iMouse = 0;
{
#ifdef JP
MessageBox(NULL, str, "·Ù¹ð¡ª",
- MB_ICONEXCLAMATION | MB_OK);
+ MB_ICONEXCLAMATION | MB_OK);
#else
MessageBox(NULL, str, "Warning",
- MB_ICONEXCLAMATION | MB_OK);
+ MB_ICONEXCLAMATION | MB_OK);
#endif
}
{
#ifdef JP
MessageBox(NULL, str, "¥¨¥é¡¼¡ª",
- MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
+ MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
#else
MessageBox(NULL, str, "Error",
- MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
+ MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
#endif
}
{
#ifdef JP
MessageBox(data[0].w, str, "·Ù¹ð¡ª",
- MB_ICONEXCLAMATION | MB_OK);
+ MB_ICONEXCLAMATION | MB_OK);
#else
MessageBox(data[0].w, str, "Warning",
- MB_ICONEXCLAMATION | MB_OK);
+ MB_ICONEXCLAMATION | MB_OK);
#endif
}
{
#ifdef JP
MessageBox(data[0].w, str, "¥¨¥é¡¼¡ª",
- MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
+ MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
#else
MessageBox(data[0].w, str, "Error",
- MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
+ MB_ICONEXCLAMATION | MB_OK | MB_ICONSTOP);
#endif
}
/* Build the filename */
#ifdef JP
- path_build(path, 1024, ANGBAND_DIR_FILE, "news_j.txt");
+ path_build(path, sizeof(path), ANGBAND_DIR_FILE, "news_j.txt");
#else
- path_build(path, 1024, ANGBAND_DIR_FILE, "news.txt");
+ path_build(path, sizeof(path), ANGBAND_DIR_FILE, "news.txt");
#endif
#ifndef JP
/* Build the "font" path */
- path_build(path, 1024, ANGBAND_DIR_XTRA, "font");
+ path_build(path, sizeof(path), ANGBAND_DIR_XTRA, "font");
/* Allocate the path */
ANGBAND_DIR_XTRA_FONT = string_make(path);
validate_dir(ANGBAND_DIR_XTRA_FONT, TRUE);
/* Build the filename */
- path_build(path, 1024, ANGBAND_DIR_XTRA_FONT, "8X13.FON");
+ path_build(path, sizeof(path), ANGBAND_DIR_XTRA_FONT, "8X13.FON");
/* Hack -- Validate the basic font */
validate_file(path);
#ifdef USE_GRAPHICS
/* Build the "graf" path */
- path_build(path, 1024, ANGBAND_DIR_XTRA, "graf");
+ path_build(path, sizeof(path), ANGBAND_DIR_XTRA, "graf");
/* Allocate the path */
ANGBAND_DIR_XTRA_GRAF = string_make(path);
#ifdef USE_SOUND
/* Build the "sound" path */
- path_build(path, 1024, ANGBAND_DIR_XTRA, "sound");
+ path_build(path, sizeof(path), ANGBAND_DIR_XTRA, "sound");
/* Allocate the path */
ANGBAND_DIR_XTRA_SOUND = string_make(path);
#ifdef USE_MUSIC
/* Build the "music" path */
- path_build(path, 1024, ANGBAND_DIR_XTRA, "music");
+ path_build(path, sizeof(path), ANGBAND_DIR_XTRA, "music");
/* Allocate the path */
ANGBAND_DIR_XTRA_MUSIC = string_make(path);
#endif /* USE_MUSIC */
/* Build the "help" path */
- path_build(path, 1024, ANGBAND_DIR_XTRA, "help");
+ path_build(path, sizeof(path), ANGBAND_DIR_XTRA, "help");
/* Allocate the path */
ANGBAND_DIR_XTRA_HELP = string_make(path);
int FAR PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst,
- LPSTR lpCmdLine, int nCmdShow)
+ LPSTR lpCmdLine, int nCmdShow)
{
int i;
switch(lpCmdLine[1])
{
case 'p':
+ case 'P':
{
if (!lpCmdLine[2]) break;
chuukei_server = TRUE;
}
case 'c':
+ case 'C':
{
if (!lpCmdLine[2]) break;
chuukei_client = TRUE;