Discussion:
RJE80 : 3780 Emulator for Hercules, beta version available
(too old to reply)
ceo1944
2004-03-13 03:03:23 UTC
Permalink
Hi Herculeans,

I've uploaded to the files section RJE80.ZIP, which contains
source and windows executable version of my brand-new and still very
beta 3780 emulator program.

It's been tested and works reasonably well with VM/370 R6 and
DOS/VS release 34. It does not yet work with OS/360. I believe
that the transparent transmission code in the 2703 emulation in
hercules is broken, and OS/360 does everything in transparent mode.
Still much work to be done. Fun, fun, fun.

Dutch
Ivan Warren
2004-03-13 10:55:35 UTC
Permalink
Post by ceo1944
Hi Herculeans,
I've uploaded to the files section RJE80.ZIP, which contains
source and windows executable version of my brand-new and still very
beta 3780 emulator program.
It's been tested and works reasonably well with VM/370 R6 and
DOS/VS release 34. It does not yet work with OS/360. I believe
that the transparent transmission code in the 2703 emulation in
hercules is broken, and OS/360 does everything in transparent mode.
Still much work to be done. Fun, fun, fun.
Dutch
WTG Dutch !

If you accept it, I would like to ask for a small correction in the readme file :

<Original>
Configuring Hercules
- --------------------

Note: To use RJE80 with Hercules, you need version 3.01 or above. The
2703 emulation is broken in earlier releases.

Configuring Bisync lines is easy. For each line you want to use, put a
line in your Hercules configuration file:

0070 2703 dial=IN lhost=my.hostname.com lport=3780

This line places a 2703 compatible bisync line at device 0070. You need
to supply the internet name or IP address in the lhost parameter, and
the port that Hercules will use to listen for incoming "calls" from RJE80
in the lport parameter. If you are only going to use RJE80 to connect
to Hercules running on the same machine, use 127.0.0.1 as the lhost.
The lport is your choice, but it should be above 1000 and each separate
bisync line requires its own unique port.
</original>

<proposed>
Configuring Hercules
- --------------------

Note: To use RJE80 with Hercules, you need version 3.01 or above. The
2703 emulation is broken in earlier releases.

Configuring Bisync lines is easy. For each line you want to use, put a
line in your Hercules configuration file:

0070 2703 dial=IN <lhost=my.hostname.com> lport=3780

This line places a 2703 compatible bisync line at device 0070. You must supply
the port that Hercules will use to listen for incoming "calls" from RJE80
in the lport parameter. If you specify the 'lhost' parameter, hercules will only
Listen on that address. If you do not specify the lhost parameter, hercules will
listen on all IP addresses available to the local machine.
If you are only going to use RJE80 to connect to Hercules running on the same machine,
You may use 127.0.0.1 as the lhost.
The lport is your choice, but, if you are not a priviledged user on your system,
it should be above 1024. each separate bisync line requires its own unique port and
Local ip address pair. If you do not specify a local ip address (lhost), then the
Lport number specified should be unique.
</proposed>

Explanation (about lhost) :

Let's assume you have a machine with the following local addresses available :
127.0.0.1 (loopback)
192.168.0.1
192.168.0.2

If you specify a definition like :
2703 CCUU DIAL=IN LHOST=192.168.0.1 LPORT=8888
Then the client should connect to 192.168.0.1

If you specify a definition like :
2703 CCUU DIAL=IN LPORT=8888
Then the client may connect to 192.168.0.1, 10.0.0.1 and 127.0.0.1 (the last works only if the client runs on the same machine).

If you specifify
2703 CCUU1 DIAL=IN LHOST=192.168.0.1 LPORT=8888
You can also have another line in the same configuration with
2703 CCUU2 DIAL=IN LHOST=192.168.0.2 LPORT=8888
and
2703 CCUU3 DIAL=IN LHOST=127.0.0.1 LPORT=8888
Then the client can connect to 127.0.0.1, 192.168.0.1 and 192.168.0.2.
But depending on the IP address used, it will direct you to separate lines.
CCUU3 will only be available to a client running on the same machine.
This is some sort of 'virtual hosting' !

Explanation about lport :
On un*x, A local port below 1024 (non inclusive) can only be bound (see bind(2) and tcp(7)) by a superuser. Any port above 1024 (inclusive) can be bound without needing special priviledge. I am not sure about Windoze, but I would assume that binding a port below 1024 requires the user to be of the administrator group.

If you want to include the change to the file, you may edit this at will !

As for transparent mode, I'll use your program to determine what is wrong. Hopefully, it will be fixed soon !

Thanks for all !

- --Ivan
ceo1944
2004-03-13 15:30:17 UTC
Permalink
Hiyas Ivan,

Correction already made. Any and all fixes and improvements are
appreciated!

Feel free to fix/change/correct/improve RJE80 itself. You can
send updates to me at dutch (at) sysun (dot) com.

BTW, compilation should be very easy. I used Vistual C++ on
Windows, and good old gcc on Linux. rje80.c is all you need, no
other files such as headers are needed. I like to keep things
simple.

Dutch
Post by Ivan Warren
WTG Dutch !
[ Major SNIP]
Post by Ivan Warren
Thanks for all !
- --Ivan
-----BEGIN PGP SIGNATURE-----
Version: PGP 8.0.2
iQA/AwUBQFLon4dFv4a3KlzEEQJRzwCggufyVKQfMV1c7qiafyFNl/ClwosAnjt3
CuDNix1Mliz8xRqdVFg3/MJY
=SyRc
-----END PGP SIGNATURE-----
Loading...