RFC: test of 16 bit wine (DOS)

Morten Rønne morten.roenne at tdcadsl.dk
Mon Aug 23 15:58:52 CDT 2010


I have been working on creating tests for the 16 bit implementation of 
wine, and now I have come so far that I would like some comments on the 
way I have chosen to do it.

16 bit programs require a compiler that is able to create the old style 
address method in order to be able to test those parts of wine. I have 
been told by Dmitry Timoshkov that I should use OpenWatcom for that. So 
that is what I have done.
OpenWatcom also supports building DOS32 (using a number of extenders) 
and WIN 3.x programs.

Since the DOS program can't run in the current test enviroment, because 
that is new style 32 bit address method, I am using a wrapper program 
which start the old style program from the 32 bit environment. The 
wrapper also makes it possible to do a skip message in case the needed 
DOS program is missing (due to no OpenWatcom compiler).

In order to be able to create a stand-alone DOS program I have modified 
the wine/test.h file so that certain parts got omitted, while others 
were added. This means that writing a DOS test will be the same as 
writing normal 32 bit tests, except that you include a different test 
include file.
The current version uses the define __WINE_WINE_DOS16_TEST_H from the 
include file that defines the DOS environment, since I haven't been able 
to find a better name. Suggestions for a better name are most welcome.

The DOS test it self, is only a very simple one because I consider this 
more a proof of concept than a full test.
Also a full test will require a number of changes in the current 16 bit 
tree to move a number of definitions from .c files to .h files so the 
test can reference them.
Once this have been commited work can start towards making more complete 
test of the 16 bit environment.

I hope that the naming will make Wine Testbot able to detect changes to 
the test suite.

As can be seen above the OpenWatcom compiler is needed to build the DOS 
16 bit programs.
Currently only Linux 32 bit platform is supported.
The compiler can't be built on 64 bit yet, this includes Mac.
The easiest way to install the compiler is to download the binary 
installer from:

Select one of the mirrors and download the file: open-watcom-c-linux-1.9
Ignore the fact that the main download page points to other places to 
get the linux version.

This is a binary program that you have to run.
It will ask you were to install OpenWatcom and all files will be 
installed under that tree.
After that you must add a definition of WATCOM to your shell profile, 
pointing it to the directory you selected.
After that change PATH to search in $WATCOM/binl as the LAST thing. 
Watcom includes programs that are called the same as some wine programs 
(wrc for one), so be sure you don't find these by searching OpenWatcom last.

As a note I can tell that Debian have rejected the Sybase license  
(under which OpenWatcom is released) as not being free, and therefore 
there will be no official debian packages of OpenWatcom.

Best Regards
Morten Rønne

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0001-Add-build-extensions-used-by-DOS-programs.txt
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20100823/4d39da37/attachment.txt>

More information about the wine-devel mailing list