|
|
| version 1.5, 2003/10/26 11:51:46 | version 1.7, 2003/10/28 22:05:46 |
|---|---|
| Line 10 | Line 10 |
| #include "sysmng.h" | #include "sysmng.h" |
| #include "dclock.h" | #include "dclock.h" |
| #include "menu.h" | #include "menu.h" |
| #include "pccore.h" | |
| #include "scrndraw.h" | #include "scrndraw.h" |
| #include "palettes.h" | #include "palettes.h" |
| Line 208 static void clearoutofrect(const RECT *t | Line 209 static void clearoutofrect(const RECT *t |
| static void clearoutscreen(void) { | static void clearoutscreen(void) { |
| RECT base; | RECT base; |
| POINT clipt; | |
| RECT target; | RECT target; |
| GetClientRect(hWndMain, &base); | GetClientRect(hWndMain, &base); |
| clipt.x = 0; | |
| clipt.y = 0; | |
| ClientToScreen(hWndMain, &clipt); | |
| base.left += clipt.x; | |
| base.top += clipt.y; | |
| base.right += clipt.x; | |
| base.bottom += clipt.y; | |
| target.left = base.left + ddraw.scrn.left; | target.left = base.left + ddraw.scrn.left; |
| target.top = base.top + ddraw.scrn.top; | target.top = base.top + ddraw.scrn.top; |
| target.right = base.left + ddraw.scrn.right; | target.right = base.left + ddraw.scrn.right; |
| Line 354 BOOL scrnmng_create(BYTE scrnmode) { | Line 363 BOOL scrnmng_create(BYTE scrnmode) { |
| if (scrnmode & SCRNMODE_FULLSCREEN) { | if (scrnmode & SCRNMODE_FULLSCREEN) { |
| dclock_init(); | dclock_init(); |
| #if 1 | |
| ddraw2->SetCooperativeLevel(hWndMain, | |
| DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN); | |
| #else | |
| ddraw2->SetCooperativeLevel(hWndMain, | ddraw2->SetCooperativeLevel(hWndMain, |
| DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN | DDSCL_ALLOWREBOOT); | DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN | DDSCL_ALLOWREBOOT); |
| #endif | |
| height = (np2oscfg.force400)?400:480; | height = (np2oscfg.force400)?400:480; |
| bitcolor = (scrnmode & SCRNMODE_HIGHCOLOR)?16:8; | bitcolor = (scrnmode & SCRNMODE_HIGHCOLOR)?16:8; |
| if (ddraw2->SetDisplayMode(640, height, bitcolor, 0, 0) != DD_OK) { | if (ddraw2->SetDisplayMode(640, height, bitcolor, 0, 0) != DD_OK) { |
| Line 468 BOOL scrnmng_create(BYTE scrnmode) { | Line 482 BOOL scrnmng_create(BYTE scrnmode) { |
| ddraw.height = height; | ddraw.height = height; |
| ddraw.cliping = 0; | ddraw.cliping = 0; |
| renewalclientsize(); | renewalclientsize(); |
| screenupdate = 3; // update! | |
| return(SUCCESS); | return(SUCCESS); |
| scre_err: | scre_err: |
| Line 477 scre_err: | Line 492 scre_err: |
| void scrnmng_destroy(void) { | void scrnmng_destroy(void) { |
| scrnmng_enablemenubar(); | |
| if (ddraw.clocksurf) { | if (ddraw.clocksurf) { |
| ddraw.clocksurf->Release(); | ddraw.clocksurf->Release(); |
| } | } |
| Line 501 void scrnmng_destroy(void) { | Line 517 void scrnmng_destroy(void) { |
| if (ddraw.ddraw1) { | if (ddraw.ddraw1) { |
| ddraw.ddraw1->Release(); | ddraw.ddraw1->Release(); |
| } | } |
| scrnmng_enablemenubar(); | |
| ZeroMemory(&ddraw, sizeof(ddraw)); | ZeroMemory(&ddraw, sizeof(ddraw)); |
| } | } |