On 20/11/2015 13:17, Tom Ehlert wrote:
> a) you forgot to publish the source for picotcpl.lib and
No, I did not. The source archive contains everything that is necessary
to build picodosl.lib (have you tried? just type 'wmake').
picotcpl.lib, on the other hand, is the "stock" version of picoTCP. I
didn't include its source code on purpose, since that's out of scope of
my project. picoTCP's source code can be fetched from www.picotcp.com,
or their github profile. It does require some small patches however -
some of them have been already integrated into the upstream picoTCP, but
these that were not, are all present in the source package (inside the
> b) the only provided example program PING.EXE is HUGE (120K/63K when
> compressed) when compared to mTCP ping.exe (40K/28K compressed)
I noticed that picoTCP have a tendency to link almost all its code,
which indeed results in bigger-than-expected binaries. The good point is
that binaries don't grow if you use more features. But yes, for just
ICMP, it might look odd to end with 60K.
Note, that ping is not the only example program - there is a
socket-based program (very basic http downloader) in the source archive
called "socktest.c" that is probably a better example to look at. Its
binary size is 110K/57K upxed.
Second note: yes, picoTCP might end up statistically slightly bigger
than mTCP, but on the other hand it's far from what we end up using
Watt32 :) (ping.exe of almost 2M!)
> what exactly is the advantage of 'pico'TCP?
It's open-source and maintained. And it's used in a much broader scope
than just DOS, which is a big advantage considering the size of the DOS
community. Oh, there's also this IPv6 thing :) (beware however, that the
current version of ptcp4dos doesn't include ipv6 yet)
> am 19. November 2015 um 20:00 schrieben Sie:
>> Hello group,
>> I write this message to share a little news about what I was doing in my
>> spare time these last two months: porting picoTCP to DOS.
>> picoTCP is a modern, dual-stack, open-source TCP/IP stack. It has been
>> created by the good people at Intelligent Systems (Altran), primarily as
>> a stack designed for embedded computing (hence hardware with very
>> limited horse power). It is backed by a well established corporation and
>> it's actively maintained.
>> I played with the stack for some times now, and ended up building an
>> entire DOS compatibility layer around it. A few patches were required to
>> the stack, a few days of development, many hours of debugging - but here
>> it is - the first public release of picoTCP for DOS!
>> The project contains three major parts:
>> - ipcfg: a little tool that allows to configure networking on your DOS
>> machine (IP, DNS, etc). No, it's not a text file - I wanted to avoid the
>> complexity of parsing a text file, and opted for a binary configuration
>> file that is manipulated via ipcfg. It's much more flexible that a text
>> config file, while being much easier/faster to load at runtime.
>> - ping: no need to explain, I guess... my ping tool for DOS, based on
>> picoTCP - crucial when it comes to testing your networking
>> - an OpenWatcom library package (openwatcom, large memory model) - this
>> is for the fellow developers that would like to use the DOS version of
>> picoTCP inside their network-enabled, 16-bit DOS programs. I integrated
>> a packet driver schim, a DOS-compatible timer, as well as the whole IP
>> configuration logic, so it is now a simple (2 functions!) public API
>> that allows to load picoTCP, use it, and unload it.
>> *** Short how-to ***
>> 1. Download picotcp4dos and unzip it on your drive
>> 2. Set the location where the config file will be stored, for example:
>> SET PICOTCP=C:\PICOTCP.DAT
>> 3. Bind picoTCP to the interrupt vector of your packet driver, example:
>> ipcfg int 60
>> 4. Configure your IP settings using ipcfg, or use DHCP (ipcfg dhcp)
Freedos-user mailing list