Skip to content

Commit

Permalink
MAXEDIT added as sysedit stub
Browse files Browse the repository at this point in the history
  • Loading branch information
prokushev committed Nov 19, 2023
1 parent b983035 commit a16e864
Show file tree
Hide file tree
Showing 51 changed files with 4,166 additions and 1,133 deletions.
205 changes: 0 additions & 205 deletions doc/README
Original file line number Diff line number Diff line change
@@ -1,117 +1,6 @@
This is archive file. Subject for future delete.
=================================================

This is the standalone distribution of Willows Twin Libraries.

If you find bugs in Willows Software Twin Libraries, send reports to
[email protected]. To have source extensions and additions added
to the software libraries, send your modifications and updates to
[email protected]. For additional information about the Willows Twin
libraries, and download the latest versions of the software, contact
http://www.willows.com.

The Willows Twin Libraries are distributed under the GNU Library General
Public License. See the file COPYING.LIB for copying conditions.

The makefile builds libtwin.so. You may optionally build libtwin32.so,
or static libraries libtwin.a or libtwin32.a. The makefile will also
build a library tester, xwin which can execute existing windows 16
executables.

These are the instructions for doing a source build.
For additional information see the README file in
the makeinclude subdirectory.


Basic Installations to build Willows TWIN libraries
===================================================

1. [REQUIRED]

Configuring the source makefiles for your platform.
---------------------------------------------------

The sources are rooted in a tree based on the version of the
release, eg. ./twin/3.v.r/..., multiple releases can be kept
under the ./twin hierarchy. The environment variable TWINDIR
can be set to this path, eg. /home/robf/src/twin/3.v.r in for
example.

Change to the $TWINDIR directory, and run the ./configure script.

This script will create three files that will be included by the
various makefiles.

./Makefile.config
./makeinclude/Makefile.rules
./makeinclude/Makeinclude.config

This script is generated by the autoconf, and the input file,
configure.in.

The script understands the following options:

--with-win32 to build as a win32 library
--with-optimization to build without debug information

(not yet implemented)

--with-debugger to use built-in debugger (if possible)
--with-notrace to build without tracing

====================================================================
NOTE: The library is compiled as an implementation of either
the win16 or win32 interfaces. Support for win16 binary applications
is provided in a binary interface library that should correctly call
the twin library you've built, allowing win16 binary applications to
be executed with the win32 library. If any differences are noted in
the behavior of the win32 vs. the win16 library when executing a 16bit
binary application, it is a bug in th win16 binary interface, and
should be reported to me to fix.
======================================================================

2. [OPTIONAL (should be done after changing configurations)]

Verify a clean build environment.
---------------------------------

make clean

3. [REQUIRED]

Building the libraries.
-----------------------

The Willows TWIN libraries are a collection of shared libraries that
have the equivalent functionality of windows. The library has been
broken out into multiple dll's, (shared libraries), rather than having
a monolithic library. The build process will build each of the
components libraries, in addition to the main library, libtwin.so.

The component libraries that are built are:
libcommdlg.so all functions from COMMDLG.DLL
libcommctrl.so all functions from COMMCTRL.DLL
libshell.so all functions from SHELL.DLL
libwinsock.so all functions from WINSOCK.DLL
libmmsystem.so all functions from MMSYSTEM.DLL
libkeyboard.so all functions from KEYBOARD.DLL
libsound.so all functions from SOUND.DLL
libddeml.so all functions from DDEML.DLL
liblzexpand.so all functions from LZEXPAND.DLL

Having these libraries separate will allow them to be developed and
extended separate from the twin library, and reduce the sizes of the
libraries that need to be downloaded in the future.

To build libtwin.so, and the component libraries, and the Willows
Windows resource compiler, type:

make

To build the source samples, you can type

make world

4. [REQUIRED]

Run Time Configuration.
Expand Down Expand Up @@ -160,55 +49,6 @@ Basic Installations to build Willows TWIN libraries
./template/readme.twinrc for more information, and file
./template/sample.twinrc for an example file.

5. [OPTIONAL]

Verifying the library.
----------------------

The library has a win16 binary emulator, that will load and execute
win16 applications. We provide an interpreter for risc CPU's, and
can run the win16 applications on risc or intel. The binary emulator
is called xwin, and is located/built in the ./win directory. You
can run the emulator with no arguments, and will be prompted for
the application to run, or you can type the application as an argument
to xwin. Since the libraries are built as shared libraries, you may
need to configure your systems run-time dynamic linker to be able to
load the twin shared libraries. On linux, you can set the environment
variable LD_LIBRARY_PATH=$(TWINDIR)/win, and export it. You may
need to run the system utility ldconfig, and modify your system's
ld.so.conf file to include the path to the twin libraries.


./win/xwin will bring up the common file dialog asking for
what 16 bit windows executable to run.

note: if you've built the shared library, libtwin.so,
be sure to make it available to the run-time linker
ld.so.

./win/xwin sol.exe or
./win/xwin sol
will run sol.exe. The ~/.twinrc configuration
file should have an entry for openpath that points
to where the win 16 binaries are kept.



6. [OPTIONAL (installation of libraries)]

Installation of the libraries and executables.
----------------------------------------------

We do not provide an installation script to install the libraries
on your machine. You can run:

make install INSTALLDIR=<TWINROOT>

where <TWINROOT> is where you want to keep the Twin files. The
TWINROOT will have subdirectories for bin, lib and include. You
will need to modify the shared library loader setup configured
in step 5 to account for the new library locations.


7. [OPTIONAL (tracing binary applications)

Expand Down Expand Up @@ -255,49 +95,4 @@ Basic Installations to build Willows TWIN libraries
progbar win32 demo of progress bar


Source Directory Layout (see the file MANIFEST for specific file information)
=============================================================================

bin: directory containing source for resource compiler and
help file viewer.
bmp: directory containing binary resources, icons, bitmaps, etc.
commctrl: directory with win32 common controls dll.
commdlg: directory with common dialogs dll.
configs: directory with platform configuration files.
debugger: directory with built-in debugger, for x86 platforms.
dll: directory with sources to give shared libraries the same
interfaces as windows DLL's, ie. LibMain, DllEntry...
doc: directory with supplemental documentation.
include: directory of public header files.
intp32: directory with source to x86 interpreter.
makeinclude: directory with platform independent makefile components.
multimedia: directory with sources to multimedia libraries.
pal: directory of platform abstraction layer sources, ie. x11...
readline: directory with readline for debugger.
samples: directory of sample sources demonstrating twin libraries.
shell: directory of windows shell dll.
template: directory with sample win.ini and ~/.twinrc files.
utilities: directory of support functions for common controls.
xdos: directory with dos emulation library.
win: directory of core Willows Twin Library files.

Alternative Configuration
=========================

The configure script will allow you to build 1 of 4 different
configurations. The alternatives are debug version vs not, and
win32 vs win16. The default configuration will be set in the
file .config, and in the variable TWIN. It will be of the form:

TWIN=$(TARGET)$(TWIN_APISIZE)-$(TWINCPU)-$(TWINOPT)

where TARGET will be one of Linux, hppa, SunOS, Solaris, etc.
TWIN_APISIZE will be empty, or the value 32
TWINCPU will be X386, sparc, hppa, etc.
TWINOPT will be DBG, OPT


A make clean MUST be done afterwards. The build script shows
how to build all combinations, automatically, using the setup script.

Copyright (c) 1997, Willows Software Inc. All rights reserved.
57 changes: 0 additions & 57 deletions doc/lib-verify.txt
Original file line number Diff line number Diff line change
@@ -1,61 +1,4 @@

Verifying the installation of the Willows XPDK

The following steps are used to verify proper installation of the Willows Twin
Libraries. Each of the steps, and what is verified is identified in the table
below.

1) Running xwin 1 Run-Time Tools and Library installed
and configured.
2 The location of Windows directory is
correctly set.

2) Building twin samples 1 Compiler Tools and Libraries installed
and configured.
2 Environment variables correctly set
to target specific libraries and
header files.

Note:
No configuration file is needed to use the Willows Twin XPDK. Only the
environment variables described in the installation section are required.

Running xwin

The xwin program is a windows binary emulator that is linked with the Willows
Twin XPDK library. In its simplest form, it may be run by itself with no
arguments, as in:

xwin

In this form, xwin will put up a dialog box which allows the filesystem to
be browsed for a suitable windows binary to execute. If the dialog box does
not come up on your display, then check the following:

1) The DISPLAY variable is properly set.
2) You have permission to execute applications that access the display.

If the application displays the message, "Cannot find library, xxxx.yyy.so",
then the library is not configured properly to work with the operating system;
either the dynamic linker, ld.so, cannot find the library, or the
LD_LIBRARY_PATH environment variable is not set.

Note:
The Willows Twin XPDK Libraries are released as shared libraries, and may
require some systems to be upgraded to ELF support. Additional information
about this may be found in the platform specific README file in the
$TWINDIR/$TARGET directory.

The xwin binary emulator may also be run with command line arguments as in:

xwin <program name>

In this form, xwin will look for <program name>.exe in the current directory
and in the WINDOWS directory. If the application cannot be found, a dialog
box will be displayed as appropriate. The Willows Twin configuration file
can be modified to print the names of programs and their directories that are
searched.

Building twin samples

The Willows Twin XPDK provides samples that illustrate various aspects of the
Expand Down
31 changes: 0 additions & 31 deletions doc/wrt-setup.txt
Original file line number Diff line number Diff line change
@@ -1,35 +1,4 @@

Configuring Willows Twin Software for MS Applications.

This is the first of a multi-part message, that will describe how to configure
the Willows twin software to run MS Applications. Although a specific
configuration will be described, the same procedures can be modified to run
in other configurations. In this message, I discuss specifically configuring
xwin to run ms applications from a linux partition dedicated to dos/windows.

Configuration

In this example, I have a linux partition with the windows executables that I
want to run. I have chosen to NOT use the 'real' windows directory, but to
have a windows directory in the unix file system. This allows me to avoid
writing to the 'real' windows directory, and modifying any 'real' files. The
next version of this example will actually use the real directory, and show
how to map the logical C: and D: drives to their DOS counterparts.

Setup

The essential parts to run the Willows Twin Emulator, xwin, are a version of
xwin for your platform, the shared library libtwin.so, in either the debug
or optimized flavors and a Twin Configuration file, twinrc. As described in
the Getting Started Guide, you may need to configure your system to run xwin
by setting up the dynamic loader, in the case of linux it is /lib/ld.so.

I have configured ld.so to recognize where libtwin.so actually lives, but on
most machines, you can also use the environment variable LD_LIBRARY_PATH as
a colon separated list of directories that ld.so should search to find dynamic
libraries. Once xwin runs you have passed the first milestone, and are now
ready to start configuring it to run your windows applications.

Configure

The key to configuring Willows TWIN software is to setup a twin configuration
Expand Down
19 changes: 19 additions & 0 deletions programs/sysedit/CVERSION.H
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
// $Header: P:/PVCS/MAX/MAXEDIT/CVERSION.H_V 1.9 10 Jul 1996 10:59:16 BOB $
//
// CVERSION.H - component version info file for MaxEdit
//
// ---------------------------------------------------------
// Copyright (C) 1995 Qualitas, Inc. GNU General Public License version 3
// ---------------------------------------------------------

#include <ver.h> // Version resource definitions from DDK
#include <maxnames.h>

#define VER_MODULE 11
#define VER_MODULE_STR "011"

#define VER_FILETYPE VFT_APP
#define VER_FILESUBTYPE VFT2_UNKNOWN
#define VER_FILEDESCRIPTION_STR "Qualitas MaxEdit"
#define VER_INTERNALNAME_STR "MAXEDIT"
#define VER_ORIGINALFILENAME_STR "MAXEDIT.EXE"
2 changes: 2 additions & 0 deletions programs/sysedit/MAKEFILE
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
!include <maxedit.mak>

41 changes: 41 additions & 0 deletions programs/sysedit/MAXEDEP.INC
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@

# Dependencies generated by DepScan v1.10

MAXEDIT_DEP =\
maxedit.h\
messages.h

MAXEDIT_RCDEP =\
resource.h\
cversion.h\
$(H)mversion.h\
$(H)common.ver\
maxedit.h\
maxedit.ico\
meicon.ico\
tnew.ico\
topen.ico\
tsave.ico\
tprint.ico\
tundo.ico\
tcut.ico\
tcopy.ico\
tpaste.ico\
tcascade.ico\
ttile.ico\
tini.ico\
texit.ico\
thelp.ico

TOOLBAR_DEP =\
maxedit.h


# Header dependencies

cversion.h:\
$(H)maxnames.h

maxedit.h:\
resource.h

Loading

0 comments on commit a16e864

Please sign in to comment.