--- np2/win9x/scrnmng.cpp 2003/12/01 03:38:52 1.13 +++ np2/win9x/scrnmng.cpp 2004/08/15 11:17:58 1.18 @@ -28,15 +28,15 @@ typedef struct { LPDIRECTDRAWSURFACE clocksurf; LPDIRECTDRAWCLIPPER clipper; LPDIRECTDRAWPALETTE palette; - BYTE scrnmode; + UINT scrnmode; int width; int height; int extend; int cliping; RGB32 pal16mask; - BYTE r16b; - BYTE l16r; - BYTE l16g; + UINT8 r16b; + UINT8 l16r; + UINT8 l16g; BYTE menudisp; int menusize; RECT scrn; @@ -365,7 +365,10 @@ BOOL scrnmng_create(BYTE scrnmode) { } else { scrnmng.flag = SCRNFLAG_HAVEEXTEND; - winstyle |= WS_SYSMENU | WS_THICKFRAME; + winstyle |= WS_SYSMENU; + if (np2oscfg.thickframe) { + winstyle |= WS_THICKFRAME; + } if (np2oscfg.wintype < 2) { winstyle |= WS_CAPTION; } @@ -385,15 +388,14 @@ BOOL scrnmng_create(BYTE scrnmode) { if (scrnmode & SCRNMODE_FULLSCREEN) { dclock_init(); -#if 1 ddraw2->SetCooperativeLevel(hWndMain, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN); -#else - ddraw2->SetCooperativeLevel(hWndMain, - DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN | DDSCL_ALLOWREBOOT); -#endif height = (np2oscfg.force400)?400:480; +#if !defined(SUPPORT_PC9821) bitcolor = (scrnmode & SCRNMODE_HIGHCOLOR)?16:8; +#else + bitcolor = 16; +#endif if (ddraw2->SetDisplayMode(640, height, bitcolor, 0, 0) != DD_OK) { goto scre_err; } @@ -429,8 +431,7 @@ BOOL scrnmng_create(BYTE scrnmode) { dclock_init8(); } else { - make16mask(ddpf.dwBBitMask, ddpf.dwRBitMask, - ddpf.dwGBitMask); + make16mask(ddpf.dwBBitMask, ddpf.dwRBitMask, ddpf.dwGBitMask); dclock_init16(); } @@ -483,7 +484,11 @@ BOOL scrnmng_create(BYTE scrnmode) { } bitcolor = ddpf.dwRGBBitCount; if (bitcolor == 8) { +#if !defined(SUPPORT_PC9821) paletteinit(); +#else + goto scre_err; +#endif } else if (bitcolor == 16) { make16mask(ddpf.dwBBitMask, ddpf.dwRBitMask, ddpf.dwGBitMask); @@ -497,7 +502,7 @@ BOOL scrnmng_create(BYTE scrnmode) { } ddraw.extend = 1; } - scrnmng.bpp = (BYTE)bitcolor; + scrnmng.bpp = (UINT8)bitcolor; scrnsurf.bpp = bitcolor; ddraw.scrnmode = scrnmode; ddraw.width = 640; @@ -768,7 +773,7 @@ void scrnmng_dispclock(void) { ddraw.clocksurf->Unlock(NULL); } if (ddraw.primsurf->BltFast(640 - DCLOCK_X - 4, - ddraw.height - DCLOCK_Y, + ddraw.height - DCLOCK_Y, ddraw.clocksurf, (RECT *)&rectclk, DDBLTFAST_WAIT) == DDERR_SURFACELOST) { ddraw.primsurf->Restore();