Skip to content

Commit ea56e7b

Browse files
committed
Prepare for version 1.2.
1 parent f9ff464 commit ea56e7b

2 files changed

Lines changed: 32 additions & 7 deletions

File tree

Readme.md

Lines changed: 31 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
## Introduction
1212

13-
This application is an example 16 bit Windows application written in C. It
13+
This application is an example Windows 1 application written in C. It
1414
accompanies the
1515
[Building Win16 GUI Applications in C](http://www.transmissionzero.co.uk/computing/win16-apps-in-c/)
1616
article on [Transmission Zero](http://www.transmissionzero.co.uk/).
@@ -36,10 +36,28 @@ Windows 3.1.
3636

3737
## Building the Application
3838

39-
To build the application you will either need Microsoft C 4 with a Windows 1 SDK
40-
or Microsoft C 5 with a Windows 2 SDK. To perform the build, open a command
41-
prompt (with the relevant environment variables set that Microsoft C needs),
42-
change to the directory containing the Makefile, and run "make Win1App".
39+
To build the application you will need Microsoft C 4 and a Windows 1 SDK.
40+
Microsoft C 4 also works with a Windows 2 SDK, and although the executables it
41+
produces target Windows 2, they seem to run fine on Windows 1. You can also
42+
build the application with Microsoft C 5 and a Windows 2 SDK. Other combinations
43+
of Microsoft C and Windows SDK either won't work at all, or will work with some
44+
modifications but produces an executable which only works on Windows 3.x and
45+
later.
46+
47+
To perform the build with Microsoft C 4, open a command prompt (with the
48+
relevant environment variables set that Microsoft C needs), change to the
49+
directory containing the Makefile, and run "make Win1App".
50+
51+
If you are using Microsoft C 5, the build depends on how you configured the
52+
Windows 2 SDK. If you configured it to replace the standard C libraries with the
53+
special Windows combined libraries, the build is the same as the Microsoft C 4
54+
build. If not, you will first need to change the linker command line as follows:
55+
56+
```$(LINK) /NOD [obj files],$(EXE) /align:16,/map,slibw.lib slibcew.lib,Win1App.def```
57+
58+
The `/NOD` tells the linker not to link the default libraries (e.g.
59+
`slibce.lib`), and the addition of `slibcew.lib` causes it to link against this
60+
special Windows version instead.
4361

4462
Note that Microsoft C should not be confused with Visual C++, as Visual C++ 4.0
4563
arrived on the scene nearly 10 years after Visual C 4.0. Even Visual C++ 1.0 is
@@ -68,6 +86,13 @@ article. If you are still having trouble, you can
6886

6987
## Changelog
7088

89+
3. 2017-05-21: Version 1.2
90+
- Removed unnecessary whitespace from source files.
91+
- Corrected min / max window size handling, which should have been using a far
92+
pointer for the MINMAXINFO struct.
93+
- Makefile enhancements and support for Microsoft C 5.
94+
- Target 8086 instead of 80286, and use emulation if x87 isn't available.
95+
7196
2. 2016-08-28: Version 1.1
7297
- Corrected name in module definition file. This was causing an odd issue
7398
where launching the Windows 3.x version of the application while the Windows
@@ -78,4 +103,4 @@ article. If you are still having trouble, you can
78103
- First release.
79104

80105
Transmission Zero
81-
2016-08-28
106+
2017-05-21

Resource.rc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ CAPTION "About"
2424
BEGIN
2525
ICON IDI_APPICON,IDC_STATIC,7,7,20,20
2626
LTEXT "Windows 1 Example application.",IDC_STATIC,34,7,125,8
27-
LTEXT "�2016 Transmission Zero",IDC_STATIC,34,17,100,8
27+
LTEXT "�2017 Transmission Zero",IDC_STATIC,34,17,100,8
2828
DEFPUSHBUTTON "OK",IDOK,103,46,50,14,WS_GROUP
2929
END
3030

0 commit comments

Comments
 (0)