Recent from talks
Contribute something to knowledge base
Content stats: 0 posts, 0 articles, 1 media, 0 notes
Members stats: 0 subscribers, 0 contributors, 0 moderators, 0 supporters
Subscribers
Supporters
Contributors
Moderators
Hub AI
Make Compatible AI simulator
(@Make Compatible_simulator)
Hub AI
Make Compatible AI simulator
(@Make Compatible_simulator)
Make Compatible
Make Compatible is a program developed by Microsoft that is included with Windows 9x operating systems. It changes per-program system settings in Windows to allow Windows 3.1 programs that are not compatible with newer Windows versions to execute. The executable for the Make Compatible program is stored at C:\Windows\System\mkcompat.exe.
When it is invoked, one can choose the Windows 3.1 application executable using the "Choose Program" option on the "File" menu. After the program is chosen, Make Compatible by default displays a list of five options that can be set to alter the behaviour of Windows for that program when it is executed:
An advanced options mode, selectable via the "Advanced Options" selection on the "File" menu presents a longer list of options, allowing finer control of Windows 3.1 emulation if the particular application requires it.
Each of the options is recorded in a system database of so-called "compatibility bits". This is a database of 1-bit flags, one for each of the options displayed by Make Compatible.
This database already existed in earlier versions of Windows. In Windows 3.1, the database is stored in the [Compatibility] section of win.ini, with entries such as:
Each line names an application program, and gives a hexadecimal numeric constant to associate with that program. The hexadecimal numeric constant encodes the compatibility bitflags for that particular application, that Windows applies when the application is executed. Make Compatible merely provides a graphical user interface for editing these flags in an easy way, rather than editing win.ini manually, with a text editor. It allows one to set and unset individual flags without having to know their numeric values.
The compatibility bitflags settable in win.ini are not documented in the WININI.WRI file that ships with Windows 3.1, or in the Microsoft Windows 3.1 Resource Kit published by Microsoft. They are listed as a simple set of defined constants (with names beginning "GACF_" for "GetAppCompatFlags"), without explanation, in the windows.h header file that is shipped with the Microsoft Windows 3.1 Device driver Development Kit. In Windows 3.1, the compatibility flags that are in effect for any given task in the kernel's Task Database are readable via the undocumented GetAppCompatFlags() function that is exported from the KERNEL module.
The flags are documented in Microsoft KnowledgeBase article #82860. They correspond to the "advanced mode" flags that are settable by Make Compatible's "Advanced Options" menu:
Make Compatible
Make Compatible is a program developed by Microsoft that is included with Windows 9x operating systems. It changes per-program system settings in Windows to allow Windows 3.1 programs that are not compatible with newer Windows versions to execute. The executable for the Make Compatible program is stored at C:\Windows\System\mkcompat.exe.
When it is invoked, one can choose the Windows 3.1 application executable using the "Choose Program" option on the "File" menu. After the program is chosen, Make Compatible by default displays a list of five options that can be set to alter the behaviour of Windows for that program when it is executed:
An advanced options mode, selectable via the "Advanced Options" selection on the "File" menu presents a longer list of options, allowing finer control of Windows 3.1 emulation if the particular application requires it.
Each of the options is recorded in a system database of so-called "compatibility bits". This is a database of 1-bit flags, one for each of the options displayed by Make Compatible.
This database already existed in earlier versions of Windows. In Windows 3.1, the database is stored in the [Compatibility] section of win.ini, with entries such as:
Each line names an application program, and gives a hexadecimal numeric constant to associate with that program. The hexadecimal numeric constant encodes the compatibility bitflags for that particular application, that Windows applies when the application is executed. Make Compatible merely provides a graphical user interface for editing these flags in an easy way, rather than editing win.ini manually, with a text editor. It allows one to set and unset individual flags without having to know their numeric values.
The compatibility bitflags settable in win.ini are not documented in the WININI.WRI file that ships with Windows 3.1, or in the Microsoft Windows 3.1 Resource Kit published by Microsoft. They are listed as a simple set of defined constants (with names beginning "GACF_" for "GetAppCompatFlags"), without explanation, in the windows.h header file that is shipped with the Microsoft Windows 3.1 Device driver Development Kit. In Windows 3.1, the compatibility flags that are in effect for any given task in the kernel's Task Database are readable via the undocumented GetAppCompatFlags() function that is exported from the KERNEL module.
The flags are documented in Microsoft KnowledgeBase article #82860. They correspond to the "advanced mode" flags that are settable by Make Compatible's "Advanced Options" menu:
.png)