I have personally developed a software called "WINSail", which is a completely free set of software. The complete "library files", "header files", "instructions", and "source code" can be downloaded from "www.FirstSail.B2B.Cn". It is a software development package developed under the Large model using Borland C++ 3.1 language based on the DOS system. Although the complete software package is about 450K, the programs generated under DOS can have the exactly same interface as WIN9x, with interface elements such as Group, Label, Edit, ComboBox, Button, Radio, Check, ListBox, Grid, ScrollBar, Desktop, ToolsBar, StatusBar, Menu, PopuMenu, Window, Dialog, ICON, Bitmap, oscilloscope, etc. It supports the mouse, and the operation of controls is 99.9% compatible with Windows! It can load and run script dialog boxes; supports Socket socket programming; the smallest application with a complete window graphic interface is about 150K and can run in an electronic disk with only 1M; has a delay function with an accuracy of 0.5 microseconds. It can be said that DOS + WinSail >= Windows CE.
The "WinSail Industrial Control Development System" currently supports:
(1) The API of "WinSail" coexists with the "C++ For DOS" function library, especially coexists with the graphic function BGI of the C language.
(2) Supports multi-tasking with priorities, and can reach up to 50 tasks. (Note: The configuration script file can be used to not require multi-tasking support, so that the program runs in a single task.)
(3) Supports databases, and the generated files are compatible with Foxpro 2.6 libraries and can be directly opened in Microsoft Office's Excel.
(4) Uses 16*16 simplified and traditional Chinese character fonts, 8*16 English character fonts, and supports TrueType character fonts.
(5) The "dialog box" can be pre-made in Visual C++, and then through the conversion software, the Windows dialog box interface can be converted into the interface code source file or script file of the "WinSail" system, making full use of the superiority of Visual, so that the interface development of application programs on the DOS platform "is no longer difficult"!!!!!
(6) Supports multiple resolutions such as 600*480*16, 600*400*256, 800*600*256, 1024*768*256.
(7) Supports interface elements such as Group, Label, Edit, ComboBox, Button, Radio, Check, ListBox, Grid, ScrollBar, Desktop, ToolsBar, StatusBar, Menu, PopuMenu, Window, Dialog, ICON, Bitmap, MessageBox, oscilloscope, multi-ordinate oscilloscope, etc.
(8) Supports memory access to extended memory - XMS and expanded memory EMS.
(9) Supports reading and writing of text registry - INI files, and when writing key values, it can ensure that the "comment content" behind the key values still exists.
(10) Supports object-oriented I/O access and shields the underlying I/O ports.
(11) Has a COMM port communication interface and supports multiple parity bits, including "no parity bit", "odd parity bit", "even parity bit", "parity bit always 1", "parity bit always 0". The latter two parity methods are mostly used in multi-machine communication to distinguish "address" and "data".
(12) Supports barcode display. Including EAN_8, UPC_A, UPC_E, EAN_13 (product code), ISBN, ISSN, 39, 128, Codabar, cross 25 code.
(13) The window supports multiple callback functions such as "virtual keyboard defined by I/O port", "window timer", "call a function when idle", "call a function when the window is refreshed", etc.
(14) Multiple common mathematical operations, including the generation of coefficients of "low-pass", "high-pass", "band-pass", "band-stop" filters (rectangular window, triangular window, Hanning window, Hamming window, Blackman window, Sin(x)/x window, cosine window, Kaiser window can be added), filtering, interpolation, fitting, calculus, correlation analysis, FFT, DFT, etc.
(15) Statistical process SPC and histogram, measurement reliability and repeatability GageR&R report.
(16) Supports display of "Bitmap", "ICON" image files and playback of "Wav" sound files.
(17) Supports "ordinary oscilloscope" and "multi-ordinate oscilloscope".
(18) Supports Socket socket programming.
The "WinSail Industrial Control Development System" currently supports:
(1) The API of "WinSail" coexists with the "C++ For DOS" function library, especially coexists with the graphic function BGI of the C language.
(2) Supports multi-tasking with priorities, and can reach up to 50 tasks. (Note: The configuration script file can be used to not require multi-tasking support, so that the program runs in a single task.)
(3) Supports databases, and the generated files are compatible with Foxpro 2.6 libraries and can be directly opened in Microsoft Office's Excel.
(4) Uses 16*16 simplified and traditional Chinese character fonts, 8*16 English character fonts, and supports TrueType character fonts.
(5) The "dialog box" can be pre-made in Visual C++, and then through the conversion software, the Windows dialog box interface can be converted into the interface code source file or script file of the "WinSail" system, making full use of the superiority of Visual, so that the interface development of application programs on the DOS platform "is no longer difficult"!!!!!
(6) Supports multiple resolutions such as 600*480*16, 600*400*256, 800*600*256, 1024*768*256.
(7) Supports interface elements such as Group, Label, Edit, ComboBox, Button, Radio, Check, ListBox, Grid, ScrollBar, Desktop, ToolsBar, StatusBar, Menu, PopuMenu, Window, Dialog, ICON, Bitmap, MessageBox, oscilloscope, multi-ordinate oscilloscope, etc.
(8) Supports memory access to extended memory - XMS and expanded memory EMS.
(9) Supports reading and writing of text registry - INI files, and when writing key values, it can ensure that the "comment content" behind the key values still exists.
(10) Supports object-oriented I/O access and shields the underlying I/O ports.
(11) Has a COMM port communication interface and supports multiple parity bits, including "no parity bit", "odd parity bit", "even parity bit", "parity bit always 1", "parity bit always 0". The latter two parity methods are mostly used in multi-machine communication to distinguish "address" and "data".
(12) Supports barcode display. Including EAN_8, UPC_A, UPC_E, EAN_13 (product code), ISBN, ISSN, 39, 128, Codabar, cross 25 code.
(13) The window supports multiple callback functions such as "virtual keyboard defined by I/O port", "window timer", "call a function when idle", "call a function when the window is refreshed", etc.
(14) Multiple common mathematical operations, including the generation of coefficients of "low-pass", "high-pass", "band-pass", "band-stop" filters (rectangular window, triangular window, Hanning window, Hamming window, Blackman window, Sin(x)/x window, cosine window, Kaiser window can be added), filtering, interpolation, fitting, calculus, correlation analysis, FFT, DFT, etc.
(15) Statistical process SPC and histogram, measurement reliability and repeatability GageR&R report.
(16) Supports display of "Bitmap", "ICON" image files and playback of "Wav" sound files.
(17) Supports "ordinary oscilloscope" and "multi-ordinate oscilloscope".
(18) Supports Socket socket programming.





