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
|