| Index: dxglcfg/dxglcfg.c |
| — | — | @@ -222,8 +222,8 @@ |
| 223 | 223 |
|
| 224 | 224 | void FloatToAspect(float f, LPTSTR aspect)
|
| 225 | 225 | {
|
| 226 | | - float integer;
|
| 227 | | - float dummy;
|
| | 226 | + double integer;
|
| | 227 | + double dummy;
|
| 228 | 228 | float fract;
|
| 229 | 229 | TCHAR denominator[5];
|
| 230 | 230 | int i;
|
| — | — | @@ -542,7 +542,7 @@ |
| 543 | 543 | ReleaseDC(hGLWnd,dc);
|
| 544 | 544 | DestroyWindow(hGLWnd);
|
| 545 | 545 | // Load global settings.
|
| 546 | | - // scaler
|
| | 546 | + // video mode
|
| 547 | 547 | _tcscpy(buffer,_T("Change desktop resolution"));
|
| 548 | 548 | SendDlgItemMessage(hWnd,IDC_VIDMODE,CB_ADDSTRING,0,(LPARAM)buffer);
|
| 549 | 549 | _tcscpy(buffer,_T("Stretch to screen"));
|
| — | — | @@ -560,7 +560,7 @@ |
| 561 | 561 | _tcscpy(buffer,_T("Crop to screen (experimental)"));
|
| 562 | 562 | SendDlgItemMessage(hWnd,IDC_VIDMODE,CB_ADDSTRING,7,(LPARAM)buffer);
|
| 563 | 563 | SendDlgItemMessage(hWnd,IDC_VIDMODE,CB_SETCURSEL,cfg->scaler,0);
|
| 564 | | - // fullmode
|
| | 564 | + // fullscreen window mode
|
| 565 | 565 | _tcscpy(buffer, _T("Exclusive fullscreen"));
|
| 566 | 566 | SendDlgItemMessage(hWnd, IDC_FULLMODE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| 567 | 567 | _tcscpy(buffer, _T("Non-exclusive fullscreen"));
|
| — | — | @@ -577,7 +577,26 @@ |
| 578 | 578 | // colormode
|
| 579 | 579 | if(cfg->colormode) SendDlgItemMessage(hWnd,IDC_COLOR,BM_SETCHECK,BST_CHECKED,0);
|
| 580 | 580 | else SendDlgItemMessage(hWnd,IDC_COLOR,BM_SETCHECK,BST_UNCHECKED,0);
|
| 581 | | - // scalingfilter
|
| | 581 | + // first scaling filter
|
| | 582 | + _tcscpy(buffer, _T("Nearest"));
|
| | 583 | + SendDlgItemMessage(hWnd, IDC_PRESCALE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 584 | + _tcscpy(buffer, _T("Bilinear"));
|
| | 585 | + SendDlgItemMessage(hWnd, IDC_PRESCALE, CB_ADDSTRING, 1, (LPARAM)buffer);
|
| | 586 | + SendDlgItemMessage(hWnd, IDC_PRESCALE, CB_SETCURSEL, cfg->scalingfilter, 0);
|
| | 587 | + // first scaling sizes
|
| | 588 | + _tcscpy(buffer, _T("Auto"));
|
| | 589 | + SendDlgItemMessage(hWnd, IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 590 | + _tcscpy(buffer, _T("1x"));
|
| | 591 | + SendDlgItemMessage(hWnd, IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 592 | + _tcscpy(buffer, _T("1x2"));
|
| | 593 | + SendDlgItemMessage(hWnd, IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 594 | + _tcscpy(buffer, _T("2x"));
|
| | 595 | + SendDlgItemMessage(hWnd, IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 596 | + _tcscpy(buffer, _T("3x"));
|
| | 597 | + SendDlgItemMessage(hWnd, IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 598 | + _tcscpy(buffer, _T("4x"));
|
| | 599 | + SendDlgItemMessage(hWnd, IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 600 | + // final scaling filter
|
| 582 | 601 | _tcscpy(buffer,_T("Nearest"));
|
| 583 | 602 | SendDlgItemMessage(hWnd,IDC_SCALE,CB_ADDSTRING,0,(LPARAM)buffer);
|
| 584 | 603 | _tcscpy(buffer,_T("Bilinear"));
|
| Index: dxglcfg2/dxglcfg2.c |
| — | — | @@ -270,8 +270,8 @@ |
| 271 | 271 |
|
| 272 | 272 | void FloatToAspect(float f, LPTSTR aspect)
|
| 273 | 273 | {
|
| 274 | | - float integer;
|
| 275 | | - float dummy;
|
| | 274 | + double integer;
|
| | 275 | + double dummy;
|
| 276 | 276 | float fract;
|
| 277 | 277 | TCHAR denominator[5];
|
| 278 | 278 | int i;
|
| — | — | @@ -774,7 +774,7 @@ |
| 775 | 775 | tabopen = 0;
|
| 776 | 776 |
|
| 777 | 777 | // Load global settings.
|
| 778 | | - // scaler
|
| | 778 | + // video mode
|
| 779 | 779 | _tcscpy(buffer,_T("Change desktop resolution"));
|
| 780 | 780 | SendDlgItemMessage(hTabs[0], IDC_VIDMODE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| 781 | 781 | _tcscpy(buffer,_T("Stretch to screen"));
|
| — | — | @@ -792,10 +792,43 @@ |
| 793 | 793 | _tcscpy(buffer,_T("Crop to screen (experimental)"));
|
| 794 | 794 | SendDlgItemMessage(hTabs[0],IDC_VIDMODE,CB_ADDSTRING,7,(LPARAM)buffer);
|
| 795 | 795 | SendDlgItemMessage(hTabs[0],IDC_VIDMODE,CB_SETCURSEL,cfg->scaler,0);
|
| | 796 | + // fullscreen window mode
|
| | 797 | + _tcscpy(buffer, _T("Exclusive fullscreen"));
|
| | 798 | + SendDlgItemMessage(hTabs[0], IDC_FULLMODE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 799 | + _tcscpy(buffer, _T("Non-exclusive fullscreen"));
|
| | 800 | + SendDlgItemMessage(hTabs[0], IDC_FULLMODE, CB_ADDSTRING, 1, (LPARAM)buffer);
|
| | 801 | + _tcscpy(buffer, _T("Non-resizable window"));
|
| | 802 | + SendDlgItemMessage(hTabs[0], IDC_FULLMODE, CB_ADDSTRING, 2, (LPARAM)buffer);
|
| | 803 | + _tcscpy(buffer, _T("Resizable window"));
|
| | 804 | + SendDlgItemMessage(hTabs[0], IDC_FULLMODE, CB_ADDSTRING, 3, (LPARAM)buffer);
|
| | 805 | + _tcscpy(buffer, _T("Borderless window"));
|
| | 806 | + SendDlgItemMessage(hTabs[0], IDC_FULLMODE, CB_ADDSTRING, 4, (LPARAM)buffer);
|
| | 807 | + _tcscpy(buffer, _T("Borderless window (scaled)"));
|
| | 808 | + SendDlgItemMessage(hTabs[0], IDC_FULLMODE, CB_ADDSTRING, 5, (LPARAM)buffer);
|
| | 809 | + SendDlgItemMessage(hTabs[0], IDC_FULLMODE, CB_SETCURSEL, cfg->fullmode, 0);
|
| 796 | 810 | // colormode
|
| 797 | 811 | if (cfg->colormode) SendDlgItemMessage(hTabs[0], IDC_COLOR, BM_SETCHECK, BST_CHECKED, 0);
|
| 798 | 812 | else SendDlgItemMessage(hTabs[0], IDC_COLOR, BM_SETCHECK, BST_UNCHECKED, 0);
|
| 799 | | - // scalingfilter
|
| | 813 | + // first scaling filter
|
| | 814 | + _tcscpy(buffer, _T("Nearest"));
|
| | 815 | + SendDlgItemMessage(hTabs[0], IDC_PRESCALE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 816 | + _tcscpy(buffer, _T("Bilinear"));
|
| | 817 | + SendDlgItemMessage(hTabs[0], IDC_PRESCALE, CB_ADDSTRING, 1, (LPARAM)buffer);
|
| | 818 | + SendDlgItemMessage(hTabs[0], IDC_PRESCALE, CB_SETCURSEL, cfg->scalingfilter, 0);
|
| | 819 | + // first scaling sizes
|
| | 820 | + _tcscpy(buffer, _T("Auto"));
|
| | 821 | + SendDlgItemMessage(hTabs[0], IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 822 | + _tcscpy(buffer, _T("1x"));
|
| | 823 | + SendDlgItemMessage(hTabs[0], IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 824 | + _tcscpy(buffer, _T("1x2"));
|
| | 825 | + SendDlgItemMessage(hTabs[0], IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 826 | + _tcscpy(buffer, _T("2x"));
|
| | 827 | + SendDlgItemMessage(hTabs[0], IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 828 | + _tcscpy(buffer, _T("3x"));
|
| | 829 | + SendDlgItemMessage(hTabs[0], IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 830 | + _tcscpy(buffer, _T("4x"));
|
| | 831 | + SendDlgItemMessage(hTabs[0], IDC_PRESCALESIZE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| | 832 | + // final scaling filter
|
| 800 | 833 | _tcscpy(buffer,_T("Nearest"));
|
| 801 | 834 | SendDlgItemMessage(hTabs[0], IDC_SCALE, CB_ADDSTRING, 0, (LPARAM)buffer);
|
| 802 | 835 | _tcscpy(buffer,_T("Bilinear"));
|
| Index: dxglcfg2/dxglcfg2.rc |
| — | — | @@ -57,8 +57,8 @@ |
| 58 | 58 | LTEXT "DPI scaling mode", IDC_STATIC, 7, 107, 55, 8, SS_LEFT, WS_EX_LEFT
|
| 59 | 59 | COMBOBOX IDC_DPISCALE, 7, 117, 102, 30, CBS_DROPDOWNLIST | CBS_HASSTRINGS, WS_EX_LEFT
|
| 60 | 60 | AUTOCHECKBOX "Change display color depth", IDC_COLOR, 9, 158, 100, 10, 0, WS_EX_LEFT
|
| 61 | | - LTEXT "Fullscreen mode", IDC_STATIC, 7, 132, 78, 9, SS_LEFT, WS_EX_LEFT
|
| 62 | | - COMBOBOX IDC_FULLMODE, 8, 143, 101, 30, CBS_DROPDOWN | CBS_HASSTRINGS, WS_EX_LEFT
|
| | 61 | + LTEXT "Fullscreen window mode", IDC_STATIC, 7, 132, 78, 9, SS_LEFT, WS_EX_LEFT
|
| | 62 | + COMBOBOX IDC_FULLMODE, 8, 143, 101, 30, CBS_DROPDOWNLIST | CBS_HASSTRINGS, WS_EX_LEFT
|
| 63 | 63 | LTEXT "Scaling method (1st pass)", IDC_STATIC, 7, 32, 83, 9, SS_LEFT, WS_EX_LEFT
|
| 64 | 64 | COMBOBOX IDC_PRESCALE, 7, 43, 102, 30, CBS_DROPDOWNLIST | CBS_HASSTRINGS, WS_EX_LEFT
|
| 65 | 65 | LTEXT "1st Pass Scale size", 0, 114, 32, 60, 9, SS_LEFT, WS_EX_LEFT
|