[comp.protocols.tcp-ip.ibmpc] PCTCP and Windows 3.0

mrf@FTP.COM (08/23/90)

I have already received several requests for the Windows 3.0 and
PCTCP interoperability information.  Therefore, I am attaching a
copy of it to this group.  If you have any questions about this
information, please feel free to contact us by e-mail at support@
ftp.com or by phone at (617) 246-0900 x100.

Thanks for the interest!

Margaret Forsythe
Technical Support Manager
FTP Software, Inc.

mrf@ftp.com
(617)-246-0900 x100
FAX:  (617) 246-0901


This is somewhat long, sorry.

(cut here)
_________________________________________________________________________


                       PC/TCP v 2.04 pl 2 with MS-Windows 3.0


Hardware:
Compaq Deskpro 386, 20MHz machine with an NE1000 Ethernet Card.

Software:
The Compaq was running the following software:
    Compaq MSDOS version 3.3
    FTP's Software's PC/TCP version 2.04 pl2, using the kernel dp839eb.exe 
    (PC-213).
    Microsoft Windows version 3.0

Installation:
FTP Software's PC/TCP for the NE1000 card was installed using the interface
configuration of IRQ 4, Base I/O 0x300 and no DMA.  All the PC/TCP application
programs executed without an error.  MS Windows was then installed.  Various
utilities in the presentation manager such as the file manager and other 
window programs such as clock, calender,games etc all work fine.  This
verifies that windows 3.0 was installed fine.

Initial Configuration:
The following PIF files were created using the Windows PIFEDIT.exe utility.

1) dp839eb.pif:  executes the dp839eb.exe kernel in window mode
                
                 PROGRAM NAME:         dp839eb.exe
                 WINDOW TITLE:         dp839eb.pif
                 OPTIONAL PARAMETERS:
                 STARTUP DIRECTORY:    c:\2.04\bin
                 MEMORY REQUIREMENTS:  KB REQUIRED 128
                                       KB DESIRED  640
                 DISPLAY USAGE:        WINDOW
                 EXECUTION:            BACKGROUND
                 CLOSE WINDOW ON EXIT: NO (DO NOT MARK THIS OPTION)


2) inet.pif:    runs the inet.exe with the parameter "stat" in window mode
                
                 PROGRAM NAME:         inet.exe
                 WINDOW TITLE:         inet.pif
                 OPTIONAL PARAMETERS:  stat
                 STARTUP DIRECTORY:    c:\2.04\bin
                 MEMORY REQUIREMENTS:  KB REQUIRED 128
                                       KB DESIRED  640
                 DISPLAY USAGE:        WINDOW
                 EXECUTION:            BACKGROUND
                 CLOSE WINDOW ON EXIT: NO (DO NOT MARK THIS OPTION)


3) ping.pif:    runs the ping.exe with the parameter -t and ip address in window
                mode.
                
                 PROGRAM NAME:         ping.exe
                 WINDOW TITLE:         ping.pif
                 OPTIONAL PARAMETERS:  -t 128.127.2.102
                 STARTUP DIRECTORY:    c:\2.04\bin
                 MEMORY REQUIREMENTS:  KB REQUIRED 128
                                       KB DESIRED  640
                 DISPLAY USAGE:        WINDOW
                 EXECUTION:            BACKGROUND
                 CLOSE WINDOW ON EXIT: NO (DO NOT MARK THIS OPTION)


4) tnvt.pif:    executes the tnvt.exe with the parameter "ip address" in 
                window mode.

                 PROGRAM NAME:         tnvt.exe
                 WINDOW TITLE:         tnvt.pif
                 OPTIONAL PARAMETERS:  128.127.2.102
                 STARTUP DIRECTORY:    c:\2.04\bin
                 MEMORY REQUIREMENTS:  KB REQUIRED 128
                                       KB DESIRED  640
                 DISPLAY USAGE:        WINDOW
                 EXECUTION:            BACKGROUND
                 CLOSE WINDOW ON EXIT: NO (DO NOT MARK THIS OPTION)


5) idrive.pif:  executes the idrive.exe in window mode.

                 PROGRAM NAME:         idrive.exe
                 WINDOW TITLE:         idrive.pif
                 OPTIONAL PARAMETERS:  
                 STARTUP DIRECTORY:    c:\idrive\1.02
                 MEMORY REQUIREMENTS:  KB REQUIRED 128
                                       KB DESIRED  640
                 DISPLAY USAGE:        WINDOW
                 EXECUTION:            BACKGROUND
                 CLOSE WINDOW ON EXIT: NO (DO NOT MARK THIS OPTION)


6) idmnt.pif:  executes the idmnt.exe with the parameter jen in 
               window mode.

                 PROGRAM NAME:         idmnt.exe
                 WINDOW TITLE:         idmnt.pif
                 OPTIONAL PARAMETERS:  jen
                 STARTUP DIRECTORY:    c:\idrive\1.02
                 MEMORY REQUIREMENTS:  KB REQUIRED 128
                                       KB DESIRED  640
                 DISPLAY USAGE:        WINDOW 
                 EXECUTION:            BACKGROUND
                 CLOSE WINDOW ON EXIT: NO (DO NOT MARK THIS OPTION)



Tests Conducted:
These are the following cases PC/TCP, IDRIVE and windows were tested:

Case I:   Load the kernel, start up windows and then use the network applications.
   
Loaded the kernel by entering on the command line:  dp839eb.exe
Kernel loaded fine.  Pinged another machine succussfully.
Loaded the windows software by entering on the command line: win
Windows 3.0 was started.

The following network applications were run inside a window.
i)   Ping.pif, as defined above, worked inside a window.  The message
     "host responding" was produced, so the host was successfully pinged
     from inside a window.

ii)  The Tnvt.pif was run inside a window, so a telnet connection could be
     established inside a window.  This connection was successful inside a
     window.  Multiple telnet sessions were established through the tnvt.exe
     program from one window.  F10 0 was connected to pennzoil and F10 1 was
     connected to the vax.  Again, all this was done from one window.

iii) Inet.pif, as defined above, worked inside a window.
                              
The next thing to try is to run two network applications inside two seperate 
window at the same time:
  The ping.pif was executed in a window, this repeatedly pinged pennzoil
  with 0 failures.  In another window, tnvt.pif was executed to establish
  a telnet connection.  PC/TCP kernel did not like that and the message
  "Kernel Reentered" was produced.  When our kernel scheduler is busy with
  one task, it cannot be interrupted to handle another task.

Case II: Start up Windows and then load the kernel.

Loaded the windows software by entering on the command line: win
Windows 3.0 was started.
Loaded the kernel by running the dp839eb.pif file.  This will 
successfully load the kernel in that window, as the PC/TCP banner was
displayed.  The following message was also displayed " Microsoft Windows
Pop Up program support. When you have finished using it, press Ctrl-C
to close this window & return to windows".    
At this point, you cannot run any network application in this window.  You
have to press Ctrl-C to  close the window.  When you do this the window is 
closed and the kernel is not loaded anymore.   The window was then left up and
Ping.pif was loaded in another window and the message " Resident module
is not loaded ".  The reason is that in window 3.0, when you open a 
window, a virtual machine is created. So referring to the following picture:


              |------------------------------------------------------|
              |  Kernel (dp839eb) |    ping -t 128.127.2.102         |
              |-------------------|----------------------------------|
              |              Windows  3.0                            |
              |------------------------------------------------------|
              |               Network Card                           |
              |------------------------------------------------------|


The kernel which is loaded in a window is actually loaded in a seperate virtual
dos box, then when the ping.pif file was executed in another window, it
is actually being loaded in another virtual dos box.  This application does not
see the kernel, as you can see the kernel is in the other box.
That is why the message "Resident module is not loaded".


Case III: Open a DOS window, load the kernel and run applications.

Using the PIFEDIT.exe utility, a dos.pif file was created that would run the 
command.com.  Using this file, a DOS window was created successfully.  In this
window, the kernel was loaded fine.  All the PC/TCP network applications 
could be executed successfully in this window.

Case IV: Open two DOS window, load the kernel in each of those windows.

(I knew this was not going to work, but I tried it for the heck of it !!!)
Another DOS window was opened, leaving the other DOS window opened with the
kernel loaded in it.  The kernel was loaded again,  with a different 
software interrupt vector  in the second DOS  window, and  got 
a bad system error message.


Case V: Load the Kernel, load idrive, mount a file system and run windows.

Loaded the kernel by entering on the command line: dp839eb.exe
The kernel loaded fine.
Loaded the Interdrive kernel on the command line:  idrive.exe
The Interdrive Kernel loaded fine.
Mounted the Vax on the G: drive using the command: idmnt jen 
where jen was defined in the config file as
[pctcp idrive]
jen = vax.ftp.com /homes/vaxeline/jdsouza g: user jdsouza

Windows 3.0 was started up by entering the command: win
Once windows was loaded.  With the File Manager, the a:, c: and the
net drive g: was also displayed.  All the files were displayed on the g: drive.
Opened one window to display all the files in drive c: and another window
to display all the files in drive g:.  Then copied files from c: to g: and
vice versa.  This process was completely successful.
Loaded the kernel and mounted two network drives on G: and I:.  Copied
files from g: to i: and vice versa.

Case VI: Load the kernel, Startup Windows, then load Idrive and mount a file
         system.

              |------------------------------------------------------|
              |  idrive.exe             |         idmnt jen          |
              |-------------------------|----------------------------|
              |              Windows  3.0                            |
              |------------------------------------------------------|
              |               Kernel                                 |
              |------------------------------------------------------|
              |               Network Card                           |
              --------------------------------------------------------


Referring to the above picture, when interdrive gets loaded in a window, it is
actually being loaded on a virtual dos box.  Since another application
could not be loaded in that window, so in another window, idmnt.pif was
loaded.  It did not mount jen, as the idrive kernel could not be found.
The idrive kernel was loaded on the other virtual box.

Case VII: Startup Windows, Open a DOS Window, Load the PC/TCP Kernel, Load the
          Interdrive Kernel and then mount the filesystem.

Started up windows by enterring the command: win
Open a dos window by running my command.pif file.  In that Window, the
PC/TCP kernel, the Interdrive Kernel and mounted a filesystem successfully.
Also,  mounted another filesystem.  And could copy files between the two
network drives.


Conclusion:  PC/TCP and Interdrive works fine in Windows 3.0 provided the
kernels are loaded prior the windows software is started.  Only one network
application can be run at a time.