Post Reply 
Update of ILPer to 2.25 and all other IL programs
11-21-2017, 07:23 PM
Post: #1
Update of ILPer to 2.25 and all other IL programs
ILPer 2.25 fix an issue in the disk drive implementation in connection with new LIF disk images.

An a real HP9114 device we can distinguish the operation with
  1. no disk inserted
  2. not formatted disk inserted
  3. disk inserted with unknown disk format
  4. disk inserted with LIF or DOS data

What we need in the disk drive simulation:
  1. no disk inserted
  2. create a new disk and format it
  3. disk inserted with LIF or DOS data

How these three states are now simulated in v2.25?

1) no disk inserted

The LIF image filename edit box is empty or the content of the edit box contains a non valid filename (i.e. only path). In Windows a filename only consist of an extension like ".lif" is a valid filename!

2) create a new disk and format it

The LIF image filename edit box contains a valid filename, but the file itself don't exist. Read and Write is not possible, but you can initialize such a drive and than it's fully operable.

3) disk inserted with LIF or DOS data

Full access with no restrictions in the limits of the given sectors numbers.

Other fixes in ILPer
  • use the PIL-Box receive format for sending data back to the PIL-Box
  • fix window position restore when starting minimized

All other programs got also the "fix window position restore when starting minimized" change.

I also introduced the new program ILPilsim. ILPilsim is a PIL-Box Simulation to connect J-F Garniers DOS based emulators Emu41, Emu71/DOS and Emu75 to Virtual HP-IL. These DOS based emulators still have a COM port interface to connect a PIL-Box @ 9600 baud. On DOS environments like DOSBox or on Virtual machines (VM) like VirtualBox or VMware these COM ports can be redirected to a TCP/IP server or on Windows to named pipes. And so its possible to capture the forwarded serial traffic, decode the PIL-Box byte stream to IL frames and send the frames over the Virtual HP-IL interface to other external devices. For further information read the ILPilsim manual please.

Some years ago I just tried this in connection with DOSBox without success. I want to TNX Joachim, who made new attempt using a Virtual Machine. So I wrote the program to connect a guest DOS in a VM and it was working. Another try with DOSBox about three weeks ago failed with buffer overruns. A recent 2nd try after looking into the DOSBox source code about one week ago I found the parameters getting DOSBox working!

The programs are available at http://hp.giesselink.com/hpil.htm.
Visit this user's website Find all posts by this user
Quote this message in a reply
11-22-2017, 01:17 AM (This post was last modified: 11-22-2017 01:31 AM by Dave Frederickson.)
Post: #2
RE: Update of ILPer to 2.25 and all other IL programs
I see we have a new tool, ILPilsim, to link the Virtual HP-IL with J-F's DOS emulators.

Might we see an Emu75/Win emulator sometime in the future?
Find all posts by this user
Quote this message in a reply
11-22-2017, 08:55 AM
Post: #3
RE: Update of ILPer to 2.25 and all other IL programs
(11-22-2017 04:03 AM)Mike (Stgt) Wrote:  the HP-71B, it is not my machine in contrast to the giant HP-41.

Ciao.....Mike

make sure Valentin doesn't read this :-)

Cheers

PeterP

Cheers,

PeterP
Find all posts by this user
Quote this message in a reply
11-22-2017, 04:18 PM (This post was last modified: 11-22-2017 04:20 PM by Dave Frederickson.)
Post: #4
RE: Update of ILPer to 2.25 and all other IL programs
(11-22-2017 04:03 AM)Mike (Stgt) Wrote:  With ILPilsim I have now for the first time the chance to use a virtual HP41 (Emu41) as a controller for virtual HP-IL.

If used in conjunction with ILPilbox it should be possible to use Emu41 with real HP-IL peripherals, like a Data Acquisition unit or DMM.
Find all posts by this user
Quote this message in a reply
11-22-2017, 05:13 PM
Post: #5
RE: Update of ILPer to 2.25 and all other IL programs
(11-22-2017 01:17 AM)Dave Frederickson Wrote:  Might we see an Emu75/Win emulator sometime in the future?

Never say never, but it's extreme unlikely.

I don't have any knowledge about the used Capricorn CPU.
Visit this user's website Find all posts by this user
Quote this message in a reply
12-04-2017, 10:53 PM (This post was last modified: 12-05-2017 03:22 AM by rprosperi.)
Post: #6
RE: Update of ILPer to 2.25 and all other IL programs
Thanks Christoph for the new ILPer and the very interesting ILPilsim. At last, EMU71/DOS, EMU75/DOS and EMU41/DOS can use the ILPer client instead of just the built-in virtual devices. The built-in virtual drives clearly work fine, but they're a pain to manage - every time I want to change volumes, I need to quit, edit the .ini file, restart, etc.

I had immediate good results with both EMU71/DOS and EMU75/DOS, with no configuration issues. While I did take a couple of times reading through the ILPilsim documentation before starting, all the details are clearly explained and it worked first time.

Great job with some complex exploring, testing and documenting. This is a case of a few very small changes (by the user) has a very big effect. Great job!

A question (possibly for JFG, I'm not really sure who) and likely bug report:

1. As my internal devices include the :DOSLINK device, and another is provided by ILPer, is the 2nd one addressed as ":DOSLINK(2)" on the 71B and simply ":I2" on the '75?

2. On EMU75, I am inconsistently having one of the internal mass storage devices come up with an "ERROR: no medium" error when trying to read from that drive (I'm trying to copy files, one-by-one, from an EMU75 internal drive to a new image in ILPer). Note this error oddly only seems to happen when accessing internal EMU75 virtual drives and not the ILPer drives. To get it working again, sometimes I must restart the EMU75 session, sometimes it will work again after accessing another drive, sometimes it will work again after just waiting a while.

A screens shot is attached below.

I have used EMU75/DOS a lot, including lots of copying between drives and never saw this error, so I believe the issue is somehow related to the new interface; it seems that after access, something is possibly not continuing around the loop so the drive reports not ready.

Can you suggest some testing scenarios or sequence that will help to find a repeatable sequence that produces the error?

Update: The same problem also occurrs using EMU71/DOS, so it seems the problem is clearly related to the new ILPilsim interface.


Attached File(s) Thumbnail(s)
   

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
12-05-2017, 10:43 AM (This post was last modified: 12-05-2017 10:59 AM by J-F Garnier.)
Post: #7
RE: Update of ILPer to 2.25 and all other IL programs
(12-04-2017 10:53 PM)rprosperi Wrote:  A question (possibly for JFG, I'm not really sure who) and likely bug report:
Maybe me first ...

Quote:1. As my internal devices include the :DOSLINK device, and another is provided by ILPer, is the 2nd one addressed as ":DOSLINK(2)" on the 71B and simply ":I2" on the '75?
Yes. Or you can disable the Emu7x/DOS internal DOSLINK in the emu7x.ini file.

Quote:2. On EMU75, I am inconsistently having one of the internal mass storage devices come up with an "ERROR: no medium" error when trying to read from that drive (I'm trying to copy files, one-by-one, from an EMU75 internal drive to a new image in ILPer). Note this error oddly only seems to happen when accessing internal EMU75 virtual drives and not the ILPer drives. To get it working again, sometimes I must restart the EMU75 session, sometimes it will work again after accessing another drive, sometimes it will work again after just waiting a while.
I need to investigate. I see no obvious reason right now. It is strange that it happens for the internal devices.

Quote:Can you suggest some testing scenarios or sequence that will help to find a repeatable sequence that produces the error?
Well, I can suggest some tests:
Does it happen only with the latest ILPer 2.25, or also with the previous 2.2x?
If you don't access the ILPer devices at all in a session, can you still get the problem?
You could active the HPIL scope in ILper and capture the frames when the error happens.

A reproducible sequence will be very helpful for Christoph and/or me.

[Added:]
Additional question: your screenshot shows a "no medium" errror when trying to copy from internal drive to ILper drive. Why do you suspect that the error comes from the internal drive? Did you try CAT ':m1' and get the error again?

J-F
Visit this user's website Find all posts by this user
Quote this message in a reply
12-05-2017, 05:15 PM
Post: #8
RE: Update of ILPer to 2.25 and all other IL programs
(12-05-2017 10:43 AM)J-F Garnier Wrote:  A reproducible sequence will be very helpful for Christoph and/or me.

[Added:]
Additional question: your screenshot shows a "no medium" errror when trying to copy from internal drive to ILper drive. Why do you suspect that the error comes from the internal drive? Did you try CAT ':m1' and get the error again?

J-F

I will try to come up with a reproducible sequence this week, as time allows, and report it here.

Yes, sorry I should have been more clear, after getting the Error message, the internal virtual drive replies with the same error when attempting a CAT, and the ILPer drives are still accessible with no error. Verified again today with EMU75.

However... when trying to verify the same using EMU71/DOS, I was shocked that upon startup, RAM had been cleared; none of the files remain. The device and virtual IL configuration is all intact, but it appears that whatever is going on is possibly corrupting RAM as well.

I will report more as I have time to check in close detail, but feel to suggest other tests if you think of something.

I strongly suspect the issue must (somehow) be related to the new virtual interface as I don't believe I've ever had a MEM LOST on EMU71/DOS in the past, and yesterday's testing was simply copying a few files to/from drives.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
12-06-2017, 07:52 AM
Post: #9
RE: Update of ILPer to 2.25 and all other IL programs
(12-06-2017 05:15 AM)Mike (Stgt) Wrote:  In real world you can not put the same floppy in two different drives. In the virtual parallel with floppies being files it may be or it may be not possible to open a file for writing twice the same time.

For sure if you use the same image file in several virtual drives and attempt to copy, you will get strange results...
But I can't imagine Bob did this mistake. Bob?

J-F
Visit this user's website Find all posts by this user
Quote this message in a reply
12-06-2017, 02:44 PM
Post: #10
RE: Update of ILPer to 2.25 and all other IL programs
(12-06-2017 07:52 AM)J-F Garnier Wrote:  For sure if you use the same image file in several virtual drives and attempt to copy, you will get strange results...
But I can't imagine Bob did this mistake. Bob?

No, you're right Jean-Francois, they were distinctly different files.

I have continued testing, but with no conclusions yet. I can get the error with little effort, but cannot reproduce it with exact sequence yet. Will report here when I can. Very frustrating.

Can anyone else copy many files between internal (EMU71 or EMU75) drives and ILPer connected drives with no errors?

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
12-06-2017, 06:53 PM
Post: #11
RE: Update of ILPer to 2.25 and all other IL programs
(12-06-2017 06:26 PM)Mike (Stgt) Wrote:  I tried with Emu41....
[snip]
Without doubtless evidence I asume DOSBox could be the problem. In addition it is slow. So if you do have to copy disks and you are comfortable with HP71 I suggest to use Emu71/Win with ILper to do so.

Mike, thanks for the testing feedback. I do not use EMU41, so trying to learn that while testing will only lead to more confusion (mine!).

I too suspect DOSBox is part of the problem here, but only by testing and reporting can the issues be found and corrected. I think Christoph is correct that, as slow as it is, DOSBox is the easiest and best way for most users to get this working; the process to set up and configure a true VM is complex, time-consuming and varies greatly from host to host, so instructions and help are big problems.

And no, none of this is about files I must copy, just feedback about the new ILPer and ILPilsim.

@JFG - Is there a way to configure EMU7x to have the external HP-IL device chain be before the internal device chain? If so, then I can enable the Scope log in ILPer and capture the traffic going to the drive that is failing. But perhaps this is still useful even as-is? Please advise.

@CG - Can I use ILPer v2.24 or 2.23 with ILPilsim to see if the issue is connected with the changes in v2.25? As ILPilsim was released together with v2.25, I want to make sure older versions are also compatible.

Thanks guys!

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
12-06-2017, 11:38 PM
Post: #12
RE: Update of ILPer to 2.25 and all other IL programs
(12-06-2017 06:53 PM)rprosperi Wrote:  @CG - Can I use ILPer v2.24 or 2.23 with ILPilsim to see if the issue is connected with the changes in v2.25? As ILPilsim was released together with v2.25, I want to make sure older versions are also compatible.

Currently not much time, of course you use the older versions of ILPer. Nothing changed in the Virtual HP-IL protocol.

I just made a quick check under DOSBox. Copied REVERSI from ILPer to the internal drive and got an error. The file of the internal drive was corrupted and at a restart the Emu71/DOS memory was cleared.

I made the same test with Emu71/DOS but this time with VirtualBox and FreeDOS and everthing worked fine. Same virtual image, but now under VMware 12, also fine.

Final test with DOSBox and a shortcut in ILPilsim: Out Port = In Port, so no external device. The transfer from REVERSI memory to REVERSI:2 disk failed also.

Somewhere the serial implementation of DOSBox has a serious problem.
Visit this user's website Find all posts by this user
Quote this message in a reply
12-07-2017, 03:33 AM
Post: #13
RE: Update of ILPer to 2.25 and all other IL programs
(12-06-2017 11:38 PM)Christoph Giesselink Wrote:  
(12-06-2017 06:53 PM)rprosperi Wrote:  @CG - Can I use ILPer v2.24 or 2.23 with ILPilsim to see if the issue is connected with the changes in v2.25? As ILPilsim was released together with v2.25, I want to make sure older versions are also compatible.

Currently not much time, of course you use the older versions of ILPer. Nothing changed in the Virtual HP-IL protocol.

I just made a quick check under DOSBox. Copied REVERSI from ILPer to the internal drive and got an error. The file of the internal drive was corrupted and at a restart the Emu71/DOS memory was cleared.

I made the same test with Emu71/DOS but this time with VirtualBox and FreeDOS and everthing worked fine. Same virtual image, but now under VMware 12, also fine.

Final test with DOSBox and a shortcut in ILPilsim: Out Port = In Port, so no external device. The transfer from REVERSI memory to REVERSI:2 disk failed also.

Somewhere the serial implementation of DOSBox has a serious problem.

Thanks for your checking and confirmation Christoph. Do you think there is any point to do more testing to try to find an exact failure mode or sequence, or is it pointless since even if found, it would not appear DOSBox would be fixed, as the latest version is from 2010?

I guess it's time to install VirtualBox again. Does VB use the same named pipe to access the virtual serial port? If you don't have links handy for the configuration I can look around for details, I've found it fairly well documented in the past.

Thanks again.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
12-07-2017, 07:34 AM
Post: #14
RE: Update of ILPer to 2.25 and all other IL programs
(12-07-2017 03:33 AM)rprosperi Wrote:  
(12-06-2017 11:38 PM)Christoph Giesselink Wrote:  Somewhere the serial implementation of DOSBox has a serious problem.

Thanks for your checking and confirmation Christoph. Do you think there is any point to do more testing to try to find an exact failure mode or sequence, or is it pointless since even if found, it would not appear DOSBox would be fixed, as the latest version is from 2010?

I saw no error in the DOSBox status window, so it would be hard to find. Even more, as you wrote correctly, I don't think that anybody would fix it in a near future.

(12-07-2017 03:33 AM)rprosperi Wrote:  I guess it's time to install VirtualBox again. Does VB use the same named pipe to access the virtual serial port? If you don't have links handy for the configuration I can look around for details, I've found it fairly well documented in the past.

You can decide, using TCP like with DOSBox or under Windows named pipes. I saw no speed differences during my tests.

Serial ports:

Port Mode: TCP

Check Connect to existing pipe/socket

Path/Address: localhost:599999

or

Port Mode: Host Pipe

Check Connect to existing pipe/socket

Path/Address: \\.\pipe\pilpipe
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)