Skip to content

Commit b0a91e4

Browse files
committed
new release
1 parent 3321fd8 commit b0a91e4

8 files changed

Lines changed: 56 additions & 59 deletions

File tree

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,14 +100,14 @@ General instruction for most machines:
100100
1) Copy installation files on formatted HDD and apply **patcher9x** [Optional but recommended]
101101
2) Install the Windows 95/98/Me [Windows 98 SE is recommended]
102102
3) [optional] install **PATCHMEM by rloew** and increase VM memory (1024 MB is usually enough)
103-
4) [optional] install audio drivers ([the most common drivers are below](#extra-drivers))[^1]
103+
4) [optional] install audio drivers ([the most common drivers are below](#extra-drivers))[^3]
104104
5) Run setup with `softgpu.exe`
105105
6) Select *Hypervisor preset* to match your VM software
106106
7) Press *Install!*
107107
8) [optional] Install additional drivers, for example USB (if you added USB controller)
108108
9) Have fun!
109109

110-
[^1]: Do this before install/update DirectX redistributable, because audio drivers usually overwrite DX files with outdated versions.
110+
[^3]: Do this before install/update DirectX redistributable, because audio drivers usually overwrite DX files with outdated versions.
111111

112112
### Windows 95 installation
113113

actions.c

Lines changed: 28 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -809,15 +809,9 @@ BOOL setLineQemu(char *buf, size_t bufs)
809809
BOOL setLineSvgaReg(char *buf, size_t bufs)
810810
{
811811
(void)bufs;
812-
813-
strcpy(buf, "AddReg=VMSvga.AddReg,VM.AddReg");
814-
815-
if(isSettingSet(CHBX_WINE) && version_compare(&sysver, &WINVERME) >= 0)
816-
{
817-
/* these entries is only relevant to system, that cannot replace ddraw.dll */
818-
strcat(buf, ",DX.addReg");
819-
}
820-
812+
813+
strcpy(buf, "AddReg=VMSvga.AddReg,VM.AddReg,DX.addReg");
814+
821815
if(isSettingSet(CHBX_QXGA))
822816
strcat(buf, ",VM.QXGA");
823817

@@ -838,17 +832,12 @@ BOOL setLineSvgaReg(char *buf, size_t bufs)
838832
BOOL setLineVboxReg(char *buf, size_t bufs)
839833
{
840834
(void)bufs;
841-
842-
strcpy(buf, "AddReg=VBox.AddReg,VM.AddReg");
843-
844-
if(isSettingSet(CHBX_WINE) && version_compare(&sysver, &WINVERME) >= 0)
845-
{
846-
strcat(buf, ",DX.addReg");
847-
}
848-
835+
836+
strcpy(buf, "AddReg=VBox.AddReg,VM.AddReg,DX.addReg");
837+
849838
if(isSettingSet(CHBX_QXGA))
850839
strcat(buf, ",VM.QXGA");
851-
840+
852841
if(isSettingSet(CHBX_1440))
853842
strcat(buf, ",VM.WQHD");
854843

@@ -857,8 +846,7 @@ BOOL setLineVboxReg(char *buf, size_t bufs)
857846

858847
if(isSettingSet(CHBX_5K))
859848
strcat(buf, ",VM.R5K");
860-
861-
849+
862850
strcat(buf, ",VM.regextra");
863851

864852
return TRUE;
@@ -867,14 +855,9 @@ BOOL setLineVboxReg(char *buf, size_t bufs)
867855
BOOL setLineQemuReg(char *buf, size_t bufs)
868856
{
869857
(void)bufs;
870-
871-
strcpy(buf, "AddReg=Qemu.AddReg,VM.AddReg");
872-
873-
if(isSettingSet(CHBX_WINE) && version_compare(&sysver, &WINVERME) >= 0)
874-
{
875-
strcat(buf, ",DX.addReg");
876-
}
877-
858+
859+
strcpy(buf, "AddReg=Qemu.AddReg,VM.AddReg,DX.addReg");
860+
878861
if(isSettingSet(CHBX_QXGA))
879862
strcat(buf, ",VM.QXGA");
880863

@@ -1149,36 +1132,38 @@ BOOL set_inf_regs(HWND hwnd)
11491132
strcat(dstfile, iniValue("[softgpu]", "drvfile"));
11501133

11511134
if(isSettingSet(RAD_DD_WINE))
1152-
registryWriteInf("HKLM\\Software\\vmdisp9x\\global\\global\\ddraw", "wine", WINREG_STR, dstfile);
1135+
registryWriteInf("HKLM\\Software\\vmdisp9x\\apps\\global\\ddraw", "wine", WINREG_STR, dstfile);
11531136
else
1154-
registryWriteInf("HKLM\\Software\\vmdisp9x\\global\\global\\ddraw", "system", WINREG_STR, dstfile);
1137+
registryWriteInf("HKLM\\Software\\vmdisp9x\\apps\\global\\ddraw", "system", WINREG_STR, dstfile);
11551138

11561139
if(isSettingSet(RAD_D8_NINE))
1157-
registryWriteInf("HKLM\\Software\\vmdisp9x\\global\\global\\d3d8", "nine", WINREG_STR, dstfile);
1158-
else if(isSettingSet(RAD_D8_NINE))
1159-
registryWriteInf("HKLM\\Software\\vmdisp9x\\global\\global\\d3d8", "wine", WINREG_STR, dstfile);
1140+
registryWriteInf("HKLM\\Software\\vmdisp9x\\apps\\global\\d3d8", "nine", WINREG_STR, dstfile);
1141+
else if(isSettingSet(RAD_D8_WINE))
1142+
registryWriteInf("HKLM\\Software\\vmdisp9x\\apps\\global\\d3d8", "wine", WINREG_STR, dstfile);
11601143
else
1161-
registryWriteInf("HKLM\\Software\\vmdisp9x\\global\\global\\d3d8", "system", WINREG_STR, dstfile);
1144+
registryWriteInf("HKLM\\Software\\vmdisp9x\\apps\\global\\d3d8", "system", WINREG_STR, dstfile);
11621145

11631146
if(isSettingSet(RAD_D9_NINE))
1164-
registryWriteInf("HKLM\\Software\\vmdisp9x\\global\\global\\d3d9", "nine", WINREG_STR, dstfile);
1165-
else if(isSettingSet(RAD_D8_NINE))
1166-
registryWriteInf("HKLM\\Software\\vmdisp9x\\global\\global\\d3d9", "wine", WINREG_STR, dstfile);
1147+
registryWriteInf("HKLM\\Software\\vmdisp9x\\apps\\global\\d3d9", "nine", WINREG_STR, dstfile);
1148+
else if(isSettingSet(RAD_D8_WINE))
1149+
registryWriteInf("HKLM\\Software\\vmdisp9x\\apps\\global\\d3d9", "wine", WINREG_STR, dstfile);
11671150
else
1168-
registryWriteInf("HKLM\\Software\\vmdisp9x\\global\\global\\d3d9", "system", WINREG_STR, dstfile);
1151+
registryWriteInf("HKLM\\Software\\vmdisp9x\\apps\\global\\d3d9", "system", WINREG_STR, dstfile);
11691152

11701153
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\svga\\NoMultisample", settingReadDW(CHBX_NO_MULTISAMPLE), dstfile);
11711154
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\svga\\AsyncMOBs", settingReadDW(INP_ASYNCMOBS), dstfile);
11721155

1173-
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\global\\mesa\\SVGA_GMR_CACHE_ENABLED", settingReadDW(CHBX_GMR_CACHE), dstfile);
1174-
1156+
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\apps\\global\\mesa\\SVGA_GMR_CACHE_ENABLED", settingReadDW(CHBX_GMR_CACHE), dstfile);
1157+
1158+
#if 0
11751159
if(settingReadDW(IMP_SVGA_MEM_MAX) != 400)
11761160
{
1177-
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\global\\mesa\\SVGA_MEM_MAX", settingReadDW(IMP_SVGA_MEM_MAX), dstfile);
1161+
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\apps\\global\\mesa\\SVGA_MEM_MAX", settingReadDW(IMP_SVGA_MEM_MAX), dstfile);
11781162
}
1163+
#endif
11791164

1180-
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\global\\mesa\\MESA_SW_GAMMA_ENABLED", settingReadDW(CHBX_SW_GAMMA), dstfile);
1181-
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\global\\mesa\\SVGA_DMA_TO_FB", settingReadDW(CHBX_DMA_TO_FB), dstfile);
1165+
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\apps\\global\\mesa\\MESA_SW_GAMMA_ENABLED", settingReadDW(CHBX_SW_GAMMA), dstfile);
1166+
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\apps\\global\\mesa\\SVGA_DMA_TO_FB", settingReadDW(CHBX_DMA_TO_FB), dstfile);
11821167

11831168
registryWriteInfDWORD("HKLM\\Software\\vmdisp9x\\svga\\HWCursor", settingReadDW(CHBX_HWCURSOR), dstfile);
11841169

settings.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,11 @@ static const settings_item_t settings_def[] =
7676
{CHBX_5K, T_CHECKBOX, 14, "res_2880", 0, NULL, NULL, 0, 0},
7777
{RAD_DD_HAL, T_RADIO, 15, "dd_hal", 1, NULL, NULL, 2, 0},
7878
{RAD_DD_WINE, T_RADIO, 16, "dd_wine", 0, NULL, NULL, 2, 0},
79-
{RAD_D8_HAL, T_RADIO, 45, "d8_hal", 1, NULL, NULL, 3, 0},
80-
{RAD_D8_WINE, T_RADIO, 17, "d8_wine", 0, NULL, NULL, 3, 0},
79+
{RAD_D8_HAL, T_RADIO, 45, "d8_hal", 0, NULL, NULL, 3, 0},
80+
{RAD_D8_WINE, T_RADIO, 17, "d8_wine", 1, NULL, NULL, 3, 0},
8181
{RAD_D8_NINE, T_RADIO, 18, "d8_nine", 0, NULL, NULL, 3, 0},
82-
{RAD_D9_HAL, T_RADIO, 46, "d9_hal", 1, NULL, NULL, 4, 0},
83-
{RAD_D9_WINE, T_RADIO, 19, "d9_wine", 0, NULL, NULL, 4, 0},
82+
{RAD_D9_HAL, T_RADIO, 46, "d9_hal", 0, NULL, NULL, 4, 0},
83+
{RAD_D9_WINE, T_RADIO, 19, "d9_wine", 1, NULL, NULL, 4, 0},
8484
{RAD_D9_NINE, T_RADIO, 20, "d9_nine", 0, NULL, NULL, 4, 0},
8585
{CHBX_BUG_PREFER_FIFO, T_CHECKBOX, 21, "fifo", 1, NULL, NULL, 0, 0},
8686
{CHBX_BUG_RGB565, T_CHECKBOX, 22, "rgb565", 1, NULL, NULL, 0, 0},

softgpu.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -911,7 +911,12 @@ int main(int argc, const char *argv[])
911911

912912
ShowWindow(win_cust, SW_HIDE);
913913

914-
SetForegroundWindow(win_main);
914+
SetForegroundWindow(win_main);
915+
916+
if(iniValue("[softgpu]", "warn") != NULL)
917+
{
918+
MessageBoxA(win_main, iniValue("[softgpu]", "warn"), "Warning", MB_ICONWARNING);
919+
}
915920

916921
timer_proc(win_main);
917922

softgpu.ini

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ ws2path=redist\ws2setup.exe
3636
default_profile=7
3737
default_path=C:\drivers\SG25.50
3838
mesa_alt=mesa25
39-
settings_level=40
39+
;settings_level=40
40+
warn=This is release preview, make sure you save all your data (eg. created VM snaphot).
4041

4142
[defaults]
4243
dxflags=0
@@ -56,6 +57,9 @@ asyncmobs=0
5657
hwcursor=0
5758
dmatofb=0
5859
gmrcache=0
60+
dd_hal=1
61+
d8_wine=1
62+
d9_wine=1
5963

6064
[profile]
6165
name=QEMU (software 3D only)
@@ -66,6 +70,7 @@ name=QEMU-3dfx
6670
mesa_alt=1
6771
glide=0
6872
3dfx=0
73+
dd_wine=1
6974

7075
[profile]
7176
name=VirtualBox 5.x, 6.0 (software 3D only)
@@ -165,11 +170,11 @@ error=1
165170
desc=ISA VGA or PCI VGA without PCI bus detected, this can't work! Please check Device manager before continue!
166171
167172
[version]
168-
vmdisp9x=1.2025.0.xyz
169-
mesa9x_main=23.1.9.xyz
170-
mesa9x_alt=25.0.2.xyz
171-
wine9x=1.7.55.40
172-
openglide9x=0.1.2024.17
173+
vmdisp9x=1.2025.0.105
174+
mesa9x_main=23.1.9.135
175+
mesa9x_alt=25.1.4.135
176+
wine9x=1.7.55.45
177+
openglide9x=0.1.2024.23
173178
simd95=1.0.0.0
174179
175180
[fixes]

softgpuver.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
#define SOFTGPU_BUILD 50
1717
#endif
1818

19-
#define SOFTGPU_TAG "BETA1"
19+
#define SOFTGPU_TAG "preview"
2020

2121
#define SOFTGPU_VERSION_STR_BUILD(_ma, _mi, _pa, _bl, _tag) \
2222
_ma "." _mi "." _pa "." _bl "-" _tag

window.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -382,13 +382,15 @@ void softgpu_cur_window_create(HWND hwnd, LPARAM lParam)
382382
CHECKBOX(CHBX_GMR_CACHE, CUST_WIDTH, LINE_HEIGHT, "GMR cache (vGPU9, inefficient)");
383383
CHECKBOX(CHBX_SW_GAMMA, CUST_WIDTH, LINE_HEIGHT, "Enable gamma globaly (slow)");
384384

385+
#if 0
385386
DRAW_DIRECTION_RIGHT;
386387
LABEL(0, 200, LINE_HEIGHT, "SVGA RAM limit (MB): ", 0);
387388
INPUT(IMP_SVGA_MEM_MAX, 50, LINE_HEIGHT, "", 0);
388389
draw_x = DRAW_START_X;
389390
draw_y += LINE_HEIGHT;
390391
DRAW_DIRECTION_DOWN;
391-
392+
#endif
393+
392394
//LABEL(0, 200, LINE_HEIGHT, "VB = VirtualBox, VMW = WMware Workstation ", 0);
393395

394396
settingsApply(hwnd);

winres.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ BOOL is_wrapper(const char *dll, BOOL need_exists)
3535
VerQueryValueA(res, "\\VarFileInfo\\Translation", (LPVOID *)&lpTranslate, &cbTranslate);
3636

3737
for(i = 0; i < (cbTranslate/sizeof(struct LANGANDCODEPAGE)); i++)
38-
{
38+
{
3939
void *desc;
4040
UINT descLen;
4141

0 commit comments

Comments
 (0)