home *** CD-ROM | disk | FTP | other *** search
-
- this directory contains the source
- files of IPXCOPY.EXE.
- IPXCOPY.EXE can be made by calling
-
- wmake
-
- The source has been created with WATCOM 10.6
- C compiler. Most parts of the program should
- be compatible with other compilers, but IPX.C
- depends on the WATCOM extenstions to the
- pragma keyword (inline assembly statements).
-
- IPX.C must be compiled in the LARGE 16 BIT model.
- The LARGE model, because assembler statements
- assume LARGE pointers. The 16 Bit model,
- because DOS4GW does NOT support DPMI far calls
- (ok, we probably could use PMODEW).
-
- File CBREAK.C
- Ctrl-C and Ctrl-Break are catched to prevent
- DOS from leaving open socket numbers.
-
- File CRC32.C, CRC16.C
- Useful function for calculating CRC-32/16.
- Look into the source for description
- and copyright infos.
-
- File CMDLINE.C
- Just for interpreting commandline args.
-
- File MAIN.C
- Calls to TPTX.C or TPRX.C, depending on
- commandline args.
-
- File TPTX.C and TPRX.C
- Transmitter and Receiver. Both are implemented as
- state machines. The state machine is NOT created
- with case statements. I used indirect function
- calls, which should be a little bit faster.
-
- The CRDIR.C package
- Portable file access subroutines.
-
- The following table gives some ideas of the
- transfer algorithm. Messages (IPX-packets) are
- written in normal text.
-
-
- Transmitter Receiver
- -----------------------------------------------------------------
- Request (filesize)
- [CHECK EXISTENCE]
- Ack Request (overwrite?)
- - - - wait user - - - - - - - - - - wait user - - - - - - - - - -
- File Skip File Skip
-
- [OPEN FILE (READ)]
- File Start
- [OPEN FILE (WRITE)]
- Ack File Start
- - - - - - - - - - - - Begin Loop - - - - - - - - - - - - - - - - -
- [READ DATA]
- [CRC32]
- Block Start
- Ack Block Start
- Data
- Block End (crc)
- Missing Data/Ack Block End
- [CRC32]
- [WRITE DATA]
- - - - - - - - - - - - End Loop - - - - - - - - - - - - - - - - - -
- [CLOSE FILE]
- File End
- [CLOSE FILE]
- Ack File End
-
-
- Oliver Kraus
- E-Mail: kraus@lrs.e-technik.uni-erlangen.de
-