[HECnet] Announcing TCP/IP for RSX-11M-PLUS

Mark Matlock mark at matlockfamily.com
Thu Aug 27 21:11:41 PDT 2015


Johnny,
   Thanks for the info below on your progress.txt documentation and the PCL printer info. I down loaded a fresh copy of your BQTCP.DSK to the PDP-11/83 and did a fresh IPGEN and tried to repeat the crash problem and it is still happening.

   Here is the simplest way to reproduce it. After booting and loading DECnet then TCP/IP I have a console window open connected at 19200 baud to the console. Then I open a telnet window to the 11/83 and start FTP and connect to a site.
After a directory or similar operation on the remote site with just the FTP> on the telnet window, hit a single carriage return and I get a crash. This is something I've done often with earlier versions with no problem.

   This is of course a Qbus system so BQTCP/IP runs throughout the DECnet QNA-0 which is a DELQA.
I did modify the Large Buffer size to 1518 and the EXE SEG BUF SIZ 576 as you mentioned in your documentation to handle the DELQA problem. This was done some time ago and has not changed. 

   I have not tried it on a Simh system yet to see what happens, but I'll try that next.

   I am leaving town tomorrow heading to San Antonio and won't be back for a week or so. Thus there is no hurry to fix this but I will be taking a Raspberry PI2 that I travel with to run Simh and RSX11M+. The PI has promiscuous ethernet  so DECnet is possible and it is a good platform to experiment with.

   Also, I saw in a list email that you have Magica is running! I would love to log on sometime knowing it is a real PDP-11/70. I saw one running at the Living Computer Museum in Seattle earlier this year but it was running Unix not RSX so that wasn't the same (the light pattern was just not the same).

Best Regards,
Mark



On Aug 27, 2015, at 9:43 AM, Johnny Billquist wrote:

> On 2015-08-27 13:03, Mark Matlock wrote:
>> Johnny,
>>    Thanks for the info on connecting to madame.update.uu.se I tried using ftp to it from the 11/83 just now and that works very nicely is the RSX mode. I had not seen the progress.txt before and that is great to see what you are working on at the moment. I'll rework my batch job to grab the disk image from there in the future or perhaps change it up to use the .TAP to reduce the file transfer size. It was only taking about 9-10 minutes to transfer the RL02 image from ftp.update.uu.se but the transfer from madame.update.uu.se took 6 minutes.
> 
> If you are clever, you'll fetch the latest progress.txt, purge that file to just keep the two latest versions, do a CMP between them to see if they differ. If they don't then your job is done. If they differ, suck down the new version.
> 
> progress.txt do not who what I am working on, but what I have been working on, as it documents things that have been done.
> 
> Also, the speed difference is because in RSX mode, the file is transferred as pure blocks without any further interpretation. Much easier, and you can transfer any kind of file between two RSX machine that way. RMS indexed, tape images, stream files... You name it...
> 
> 
>>     I thing that has happened twice now with this latest release is that RSX dropped straight to ODT on the console. Once time, it happened when I called a web page from the web server on the 11/83 and just now again during an ftp of the .TAP file.
> 
> I wonder if you managed to hit an unfortunate time window. After I cut the release yesterday, I found a bug that I fixed. But for a short time, there was a broken version to be downloaded.
> I have a new version today anyway, as I noticed that the RMD pages were not working. :-)
> 
>>    05:30:58  Login  user MATLOCK        [6,1] TT14:
>> 017402
>> @y?
>> @R7/017404
>> @R6/000664
>> @R5/134544
>> @R4/000000
>> @R3/050420
>> @R2/140010
>> @R1/000056
>> @R0/050010
>> 
>>    I poked around a bit on ODT and found that I did not have the CRASH driver loaded. I am using SCSI2SD cards that I don't want to over write so I'll have to figure something out if we need a crash dump. The one thing that I think might have generated the crash perhaps in both cases was that I had just switched from the telnet terminal window to the console terminal window and when I typed the first few characters to the console window, it crashed. I can work on repeating the behavior but I thought I should tell you about it right away. I have not seen this in any of the previous versions.
>> 
>>    One other thing I was wondering is how to use the PCL print symbiont with a networked printer. I use to use LATCP for print queues but the printer I have now (Brother MFC-L8850CDW) doesn't support LAT.
> 
> You might have to do some work here, especially as I don't know how well it sets up the printer for landscape and portrait. I have only tested it against one printer at home.
> But assuming you have a printer that understands PCL, and is listening on port 9100 with TCP, you can live with pretty ugly banner pages, and you only print out using the PRINT command, then you can use it.
> It is not able (right now) to pick up a file by the file id, which is required if you print through the SP: device.
> 
> Anyway, a short description:
> PCL$PRINTER should have the hostname/ip address of the printer. (global)
> 
> To get it playing through the symbiont:
> INS PCL
> QUE PCL:/SP/EX/LO/FL:1/FO:124.
> QUE PCL:/AS:PRINT
> 
> This is what I use anyway, and then form 0 when printing is landscape, and form 1 is portrait.
> 
> I have not really done any work on that code in a long while. I don't think it would be that much work to improve on the things I mentioned not working right yet...
> 
> 	Johnny
> 
>> 
>> Mark
>> 
>> On Aug 27, 2015, at 4:33 AM, Johnny Billquist wrote:
>> 
>>> Mi, Mark. Nice batch job. :-)
>>> 
>>> Just a short detail: if you instead go to madame.update.uu.se, you can transfer the disk, or tape, using RSX mode, which is slightly more efficient for you.
>>> If you want to be even more clever, you would download progress.txt first, and if it has not changed, you do not need to download the disk image at all.
>>> 
>>> 	Johnny
>>> 
>>> On 2015-08-27 04:30, Mark Matlock wrote:
>>>> Johnny,
>>>>    Thanks again for the updates to BQTCP/IP !!!
>>>> 
>>>>     It has been running great on my PDP-11/83 and for a bit now I've been picking up your RL02 disk images directly from the 11/83 with this batch job:
>>>> 
>>>> $JOB /TIME=(1:00) FTPXFR
>>>> $SET /UIC=[6,1]
>>>> $SET /DEF=DU1:[MATLOCK]
>>>> $FTP
>>>> open ftp.update.uu.se
>>>> anonymous
>>>> anonymous
>>>> cd pub
>>>> dir
>>>> cd pdp11
>>>> dir
>>>> cd rsx
>>>> dir
>>>> cd tcpip
>>>> dir
>>>> status
>>>> rstatus
>>>> mode block
>>>> progress
>>>> get bqtcp.dsk
>>>> close
>>>> quit
>>>> $vcp con bqtcp.dsk/DRV:DU
>>>> $vcp show all
>>>> $mou du2:/ovr/pub/vi
>>>> $EOJ
>>>> 
>>>>     My system startup file asks whether to bring up BQTCP/IP and after I download the new version, I reboot not loading  BQTCP/IP and then have a command file that copies the updated files from the BQTCPIP.DSK to LB: and I run a fresh IPGEN This has made the updates pretty quick to apply from your updates that have been coming over the summer.
>>>> 
>>>>   The telnet client has made it very convenient to open multiple terminal windows on my iMac using PowerTerm to telnet to the 11/83. It has made RSX programming and debugging much more fun.
>>>> 
>>>> Thanks and keep up the great work,
>>>> Mark
>>>> 
>>>> On Jun 30, 2015, at 6:46 AM, Johnny Billquist wrote:
>>>> 
>>>>> I'm happy to announce a new release of TCP/IP for RSX-11M-PLUS.
>>>>> 
>>>>> Since I'm broadening the scope of the announcement slightly, a more complete list of features is included, and not just what changed since last. For anyone who is currently running TCP/IP for RSX, I strongly encourage you to update to this latest version. Several improvements have gone in in the last couple of weeks. Most important change is that there now is telnet support, both client and server side.
>>>>> 
>>>>> The TCP/IP for RSX that I've written is sometimes referred to as BQTCP/IP, just to make clear that it is a different product than Process Software's TCPWARE, or JSA's TCP/IP.
>>>>> 
>>>>> BQTCP/IP is a rather feature rich TCP/IP implementation, which also comes with libraries for various high level languages. The API is not compatible, even at the source level, with Unix, but on the other hand, if people write some code, they will see that it is a very easy API to work with. The reasons for the incompatibilities are several, including both resource concerns and differences between how RSX works and Unix like operating systems.
>>>>> 
>>>>> BQTCP/IP has tried to comply with all relevant RFCs, but I'm sure there are corners where it does not do things right. It also does not demand much resources. It do require RSX-11M-PLUS with split I/D space, and it has only been tested properly on RSX-11M-PLUS V4.6. It should work on any version 4 release of RSX-11M-PLUS, but there might be a couple of tweaks or fixes needed.
>>>>> 
>>>>> BQTCP/IP is distributed in binary form, so very little compilation is required to get it up and running. However, pretty much all utilities do come with sources. The actual TCP/IP stack sources are not included. I do not have a good setup for distributing them in a sane way, and it has had a low priority on my list of things to do. But I do not mind distributing the sources as a general principle.
>>>>> 
>>>>> All that said, BQTCP/IP current supports the following protocols:
>>>>> 
>>>>> o Ethernet and loopback interfaces.
>>>>> o ARP. BQTCP/IP can use Ethernet in co-existance with DECnet, or
>>>>>  standalone using the provided Unibus ethernet device driver.
>>>>> o IP. The largest IP packets supported are approximately
>>>>>  8KB.
>>>>> o ICMP.
>>>>> o UDP. The largest UDP packets supported are approximately
>>>>>  8KB.
>>>>> o TCP. The window is approximately 8KB in size, and TCP do
>>>>>  manage out of order packets in an efficient way.
>>>>> 
>>>>> BQTCP/IP supports the following applications:
>>>>> o DHCP. DHCP can be used to configure interface addresses, network
>>>>>  masks, default gateways, DNS servers and NTP servers dynamically.
>>>>> o NTP. NTP can be used to set the local time.
>>>>> o TELNET. The TELNET server hooks in to the standard TT: terminal
>>>>>  driver, and the number of terminals to create is configurable.
>>>>>  The TELNET client can be used to connect to other systems.
>>>>> o FTP. The FTP server can serve all kind of files to other RSX
>>>>>  systems, and can serve text and binary files to any system.
>>>>>  The FTP client can retrieve RSX format files from RSX servers,
>>>>>  and text, binary and block format files from any system.
>>>>> o TFTP. The TFTP server and client can be used for simpler file
>>>>>  transfer operations.
>>>>> o RWHOD. RWHOD is a program that reports current users and uptime
>>>>>  from RSX, for other systems to collect.
>>>>> o IRC. IRC is a program to communicate with other users around
>>>>>  the world.
>>>>> o IRCBOT. IRCBOT is a small example robot program connecting to IRC
>>>>>  and performing a service for IRC users.
>>>>> o PCL. PCL is a protocol for printing, used by HP (and other) printers
>>>>>  over a network. The PCL implementation in BQTCP/IP appears as a
>>>>>  print symbiont, which you can create a printer queue for.
>>>>> o WWW. WWW (or World Wide Web) is a service that can present hypertext
>>>>>  information to clients. The WWW server in BQTCP/IP also supports CGI,
>>>>>  which makes it possible to create dynamic content.
>>>>> o DNS. BQTCP/IP have DNS implemented as an ACP, that anyone can query
>>>>>  to get translations between IP addresses and domain names. It also
>>>>>  supports different users using different name servers, or private
>>>>>  translations.
>>>>> o SINK. A standard TCP service.
>>>>> o ECHO. A standard TCP service.
>>>>> o DAYTIME. A standard TCP service.
>>>>> o QUOTD. A standard TCP service.
>>>>> o IDENTD. A standard TCP service.
>>>>> 
>>>>> BQTCP/IP also have automatic IP spoof detection and prevention.
>>>>> 
>>>>> Additional tools are IFCONFIG, PING, TRACEROUTE, NETSTAT as well as two new pages for RMD.
>>>>> 
>>>>> High level language libraries exists for BASIC+2, PDP-11 C and FORTRAN-77.
>>>>> 
>>>>> I'm sure I have forgotten a thing or three, but that's a fairly comprehensive list.
>>>>> 
>>>>> The documentation is a weak point, but there is hopefully enough documentation to get people running, and I am happy to answer any questions, or give support if needed. BQTCP/IP is already running on the internet, and have been for a while. People who are curious to check it out can ether look at http://madame.update.uu.se/, or telnet to telnet://madame.update.uu.se and login as user GUEST with password GUEST, or use ftp against ftp://madame.update.uu.se. Anonymous ftp account exist.
>>>>> 
>>>>> As usual, the distribution is available from:
>>>>> ftp://madame.update.uu.se/bqtcp.dsk
>>>>> ftp://madame.update.uu.se/bqtcp.tap
>>>>> ftp://ftp.update.uu.se/pub/pdp11/rsx/tcpip/tcpip.dsk
>>>>> 
>>>>> The .tap file is an RSX virtual tape. It is only possible to download and use if you are using FTP from anther RSX system and fetch the file. The .dsk files are virtual RL02 images that are useful both from within RSX as well as through emulators.
>>>>> 
>>>>> The documentation is also available through ftp on Madame, or also at http://madame.update.uu.se/tcpipdoc
>>>>> 
>>>>>    Johnny
>>>> 
>>> 
>>> 
>>> --
>>> Johnny Billquist                  || "I'm on a bus
>>>                                  ||  on a psychedelic trip
>>> email: bqt at softjar.se             ||  Reading murder books
>>> pdp is alive!                     ||  tryin' to stay hip" - B. Idol
>> 
> 




More information about the Hecnet-list mailing list