Post Reply 
pyILPER Version 1.3.3 released
04-06-2016, 05:06 AM
Post: #1
pyILPER Version 1.3.3 released
Release 1.3.3 of pyILPER, a Python implementation of the HP-IL peripheral emulator, is available for download on GitHub now.

This version has a full working implementation of a terminal emulator for the HP-71B.

The release includes the following user visible changes:
  • The virtual keyboard is stable now.
  • The terminal emulation was considerably enhanced (editing of wrapped lines, different cursor shapes for insert/replace mode, blinking cursor, configurable color schemes and font sizes).
  • The settings for terminal size, color scheme and font size were moved to the pyILPER configuration. They also affect the scope window.
  • Added configurable charsets for the text file viewer in the drive tab.
  • The PILTERM basic program does not require a certain revision of the KEYBOARD lex file any more. It sets the delay for fast scrolling now.
  • The virtual HP-IL device status was moved to the utilities menu. It now shows the internal HP-IL state of the devices as text.

If you installed pyILPER with the recommended Anaconda Python distribution you will get the updated version with a:
Code:
conda update --all

See the Installation Instructions for further details.
Find all posts by this user
Quote this message in a reply
04-06-2016, 12:16 PM
Post: #2
RE: pyILPER Version 1.3.3 released
Installed on OSX 10.11.4
For a complete installation I had to fetch and install LIFUTILS : OSX Binaries , All platforms binaries & Installation instructions
I did a quick reconfiguration, LIF files creation, basic file transfers, activated all tabs and everything is working perfectly.
Thank you!
Sylvain
Find all posts by this user
Quote this message in a reply
04-08-2016, 11:06 PM (This post was last modified: 04-09-2016 01:13 AM by rprosperi.)
Post: #3
RE: pyILPER Version 1.3.3 released
(04-06-2016 05:06 AM)jsi Wrote:  Release 1.3.3 of pyILPER, a Python implementation of the HP-IL peripheral emulator, is available for download on GitHub now.

Just installed this under Win-7, x64. Installed miniConda, updates, pyILPer, etc. All was obvious and smooth, no glitches.

But when I try to configure pyILPer to use my PIL-Box, I cannot choose COM5, which works fine with ILPer. pyILPer shows me COM1, COM2, COM3, and COM4 options, but there is no COM5 in the drop-down list.

FYI, on my PC COM1 and COM2 are true serial ports, while COM3, COM4, and COM5 are virtual COM ports for various USB cables I use.

Does this mean pyILPer cannot detect COM5 to add to the drop-down box, or maybe that it's only looking for COM1-COM4 (which is common in many programs - I've discovered). If so, can I just edit some .ini file to specify COM5 ?

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
04-09-2016, 12:32 AM
Post: #4
RE: pyILPER Version 1.3.3 released
(04-08-2016 11:06 PM)rprosperi Wrote:  If so, can I just edit the some .ini file to specify COM5 ?

Robert,

The file you are searching is pilwidgets.py and is located on my machine (OSX) at
~/miniconda3/lib/python3.5/site-packages/pyilper/pilwidgets.py
~/miniconda3/pkgs/pyilper-1.3.3-py35_0/lib/python3.5/site-packages/pyilper/pilwidgets.py

I assume here the first one is the good one but I have not tried it.
Now you have to find it on your Windows machine.

After that, with your preferred text editor, open the pilwidgets.py file and go to line 1178 where you will the following lines

#
# Windows COM1 .. COM4
#
for i in range (1,5):
port="COM"+str(i)
self.__ComboBox__.addItem( port, port )

modify the range to include your COM port number

#
# Windows COM1 .. COM8
#
for i in range (1,9):
port="COM"+str(i)
self.__ComboBox__.addItem( port, port )

Good luck,

Sylvain
Find all posts by this user
Quote this message in a reply
04-09-2016, 01:07 AM
Post: #5
RE: pyILPER Version 1.3.3 released
(04-09-2016 12:32 AM)Sylvain Cote Wrote:  The file you are searching is pilwidgets.py and is located on my machine (OSX) at
~/miniconda3/lib/python3.5/site-packages/pyilper/pilwidgets.py
~/miniconda3/pkgs/pyilper-1.3.3-py35_0/lib/python3.5/site-packages/pyilper/pilwidgets.py

Thanks Sylvain!

I modified the first one, no go, but then I also made the same change in the 2nd one and it now works fine. I am now connected to the PIL-Box. Not sure if onoy the 2nd one needs the change, or maybe both, but best to have them in-sync with each other.

Unfortunately, it seems my PIL-Box f/w needs to be updated to v1.6 to work with pyILPer. The client shows it's connected, but the 71B does not seem to be able to see anything on the loop (literally the same configuration used daily with ILPer).

I'll look into f/w upgrade options....

Thanks again.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
04-09-2016, 01:22 AM
Post: #6
RE: pyILPER Version 1.3.3 released
(04-09-2016 01:07 AM)rprosperi Wrote:  Unfortunately, it seems my PIL-Box f/w needs to be updated to v1.6 to work with pyILPer.
Robert,
What version of the firmware do you have ?
I just did a quick test with PIL-Box firmwares v1.4, v1.5 & v1.6 and they all works.
Sylvain
Find all posts by this user
Quote this message in a reply
04-09-2016, 05:48 AM
Post: #7
RE: pyILPER Version 1.3.3 released
Hello Robert,

you can simply overwrite the com port name in the list box and enter an arbitrary com port number.

pyILPER requires only firmware revision 1.6 for the virtual keyboard of the terminal tab.
All other devices (including the display emulation of the terminal tab) should work with
previous firmware revisions. Please also check the baud rate in the configuration menu.

If the status line of pyILPER shows "connected to PILBOX" then serial communication should
be ok. Please mind to enable the virtual HP-IL devices with the check box at the bottom of each
tab. Then do a "RESTORE IO" on the HP-71. Now the virtual devices should be available to
the loop.
You may check the virtual device status in the Utilities menu an look if the virtual devices got
an HP-IL address.

Regards
Joachim
Find all posts by this user
Quote this message in a reply
04-09-2016, 02:17 PM (This post was last modified: 04-09-2016 02:26 PM by Sylvain Cote.)
Post: #8
RE: pyILPER Version 1.3.3 released
Hello Joachim,

I did some other basic tests (1h) this morning with:
> HP-71B: HP71:1BBBB, HPIL:1B, KBD:B
> PIL-Box running v1.6 firmware
> MacBookPro v6.1
> Softwares: OSX 10.11.4, Python v3.5.1, Conda v4.0.5, pyserial v2.7, QT v4.8.7, lifutils v1.7.5, pyILPER v1.3.3

Drive [:TAPE(1) & :TAPE(2)]
> transferred ROM files from mass storage to FRAM71, no issues
> tried to load non LIF file and it rejected them correctly
> changed LIF file while 71B is on and the changes is reflected on the 71
> initialize works (more testing is needed here regarding the resulting LIF file size vs drive type)
> I still need to do testing with 41 & 75

Printer [PRINTER IS :PRINTER]
> works perfectly, no issues

Display [DISPLAY IS :DISPLAY]
> works perfectly, no issues

Display [KEYBOARD IS :DISPLAY]
> warning: I have not yet re-learned the technical background needed on the keyboard remapping feature to have a proper technical discussion here
> after the KEYBOARD IS :DISPLAY is entered, the IDY frame is constantly issued until I issue the KEYBOARD IS * and the RESET HPIL commands
>> (as seen in the Scope Window and on the internal PIL-Box LED)
> All the escape type keys does not works, including: ENTER, BACKSPACE, DELETE, ...
>> I assume I will have to create a keyboard mapping file using the ESCAPE keyword on the 71 to correct these

Scope
> an option to see either the incoming, the outgoing or both in/out IL frames would be fantastic
>> another option would be to have one incoming frames scope window and one outgoing frames window
> a raw hex window side-by-side with the decoded frames window would be great for debugging

On Score/Printer/Display windows
> a clear window button would be nice
> a scroll bar with a active/inactive auto scroll check box would be appreciated
>> another option would be to do a regular file flush, so that tail/cat/less/.. commands could be used on live data

Best regards,

Sylvain

edit: add lifutils version
Find all posts by this user
Quote this message in a reply
04-09-2016, 03:21 PM
Post: #9
RE: pyILPER Version 1.3.3 released
(04-09-2016 05:48 AM)jsi Wrote:  ...you can simply overwrite the com port name in the list box and enter an arbitrary com port number....

Joachim,

Thanks for this very simple solution, I should have tried this. Sylvain's solution worked and I am now connected and running fine. Very nice!

My main goal exploring pyILPer is the remote terminal, which needs v1.6 PILBox, which I have not yet updated. I will soon, and once done will get back to using pyILPer's terminal. I like the integrated LIF Tools feature, it makes LIF file management quite complete. I'll report any issues here should they occur.

Thanks for sharing this new tool!

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
04-09-2016, 08:18 PM
Post: #10
RE: pyILPER Version 1.3.3 released
Sylvian,

the PILTERM BASIC program which is part of the pyILPER software distribution will set up all necessary keyboard mapping for you.
  • Copy the PILIMAGE.DAT to the current working directory. A function in the utilities menu will do the job.
  • Mount PILIMAGE.DAT and copy PILTERM to the HP71. Run it.
  • The keyboard mappings are documented in the online manual. See "User Interface" -> "Terminal Tab"
  • For MAC OS X users the terminal tab supports additional keyboard shortcuts
  • If you need to reconfigure the loop run PILPERM again.
Thank you for your suggestions to improve the pyILPER. I'll get back to that.

Regards
Joachim
Find all posts by this user
Quote this message in a reply
04-09-2016, 09:20 PM
Post: #11
RE: pyILPER Version 1.3.3 released
(04-09-2016 08:18 PM)jsi Wrote:  [*]The keyboard mappings are documented in the online manual. See "User Interface" -> "Terminal Tab"

Joachim,

This was a clear case of not RTFM on my part.
I should have read it, everything was clearly explained, sorry about that. 8-(
The remote keyboard works superbly now.
Thank you!

Regards,
Sylvain
Find all posts by this user
Quote this message in a reply
04-12-2016, 04:51 AM
Post: #12
RE: pyILPER Version 1.3.3 released
Still using without issue:

Code:

pre:

sudo port install py34-pyqt4 py34-serial
sudo port select --set python3 python34

build:

git clone https://github.com/bug400/pyilper
cd pyilper
export PYTHONPATH=/Users/egan/Library/Python/3.4/lib/python/site-packages
python3 setup.py install --user
export PATH=$PATH:~/Library/Python/3.4/bin

run:

pyilper
Find all posts by this user
Quote this message in a reply
04-13-2016, 04:10 PM (This post was last modified: 04-13-2016 04:38 PM by Dave Frederickson.)
Post: #13
RE: pyILPER Version 1.3.3 released
I'm having some problems with pyILPER.

1. If I initialize a LIF image file and do not give the image a file extension then it doesn't show up in the Select LIF Image dialog even if all file types are shown.

2. I installed pyILPER on a Win7 system and the working directory was set to $HOME\Appdata\Roaming\pyilper. Unfortunately $HOME was set to C:\Users\<me>\AppData\Roaming\SPB_Data by OrCAD\PSpice. Consequently my config file is buried in the wrong directory.

3. Keyboard input isn't echoed to the terminal window or the 71 until I press ATTN on the 71B. I have v1.6 firmware in the PIL-Box and LIFUTILS 1.7.5 installed. The same thing occurs on a different Win7 system with Emu71/Win.

4. It would be nice if the Drives remembered the last used directory.

5. It would also be nice if the configuration file was a standard text file.

Dave
Find all posts by this user
Quote this message in a reply
04-13-2016, 05:10 PM
Post: #14
RE: pyILPER Version 1.3.3 released
(04-13-2016 04:10 PM)Dave Frederickson Wrote:  3. Keyboard input isn't echoed to the terminal window or the 71 until I press ATTN on the 71B. I have v1.6 firmware in the PIL-Box and LIFUTILS 1.7.5 installed. The same thing occurs on a different Win7 system with Emu71/Win.

The HP-IL I/O processor simulation inside the actual Emu71 v1.07 don't support the IDY polling command, so this couldn't work. In Emu71 v1.08beta6 is an implementation that works together with the terminal of pyILPER.
Visit this user's website Find all posts by this user
Quote this message in a reply
04-13-2016, 08:27 PM
Post: #15
RE: pyILPER Version 1.3.3 released
Hello Dave,
  • The change LIF image file dialog remembers the last visited directories in the "look in" drop down menu.
  • At the bottom of the dialog choose the "All files" in the "file of type" drop down menu. Now the dialog lists all files in the directory.
  • I recommend to run the PILTERM Basic program each if you power on your HP-71 to ensure that everything is set up correctly for the remote keyboard and display.
  • The location of the configuration file is documented in the online manual. See "Miscellaneous-> Troubleshooting". You may copy your configuration file to theproper location if you changed your HOME directory.


Regards
Joachim
Find all posts by this user
Quote this message in a reply
04-13-2016, 09:59 PM
Post: #16
RE: pyILPER Version 1.3.3 released
Hi Joachim,

(04-13-2016 08:27 PM)jsi Wrote:  The change LIF image file dialog remembers the last visited directories in the "look in" drop down menu.

It does, but it would be nice if it were the default.

Quote:At the bottom of the dialog choose the "All files" in the "file of type" drop down menu. Now the dialog lists all files in the directory.

It does not. I stated that "all files" was selected. The image will only be listed if it has an extension. Not that I create images without filename extensions, but I expected the tool to assign a default extension, which it didn't, thus the bug.

Quote:I recommend to run the PILTERM Basic program each if you power on your HP-71 to ensure that everything is set up correctly for the remote keyboard and display.

I still have not got this to work. Christoph's instructions are to cycle power after copying KEYBOARD LEX in order to "activate" it. I'll try that tonight.

Quote:The location of the configuration file is documented in the online manual. See "Miscellaneous-> Troubleshooting". You may copy your configuration file to theproper location if you changed your HOME directory.

My point is that the config file was installed in the $HOME path, which had been modified by OrCAD/PSpice. Not where the Working Directory should be.

Thanks,
Dave
Find all posts by this user
Quote this message in a reply
04-13-2016, 10:46 PM
Post: #17
RE: pyILPER Version 1.3.3 released
(04-13-2016 08:27 PM)jsi Wrote:  [*]The location of the configuration file is documented in the online manual. See "Miscellaneous-> Troubleshooting". You may copy your configuration file to theproper location if you changed your HOME directory.

Under Windows, the path environment variable (I think) you are referring to should be HOMEPATH, not $HOME; there is no environment variable $HOME. Perhaps you are just using this to represent a user's home directory, but it's probably more clear to specify it exactly, as unlike Linux, many Windows users don't even know what environment variables or their home path are.

The full path should be specified as:

Windows: %HOMEPATH%\Appdata\Roaming\pyilper

I'm not sure if this is related to the issue Dave is commenting on or not.

Also, I agree with Dave that it would be nice if the .ini file was in text format, both to learn how the program uses settings, but also to let users share configuration/setup information with other users.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
04-13-2016, 10:59 PM
Post: #18
RE: pyILPER Version 1.3.3 released
(04-13-2016 10:46 PM)rprosperi Wrote:  The full path should be specified as:

Windows: %HOMEPATH%\Appdata\Roaming\pyilper

As I mentioned, OrCAD/PSpice has been having fun with my environment variables. On this computer:
HOMEPATH=\
HOME=C:\Users\<me>\AppData\Roaming\SPB_Data

SPB_Data belongs to OrCAD/PSpice.

Bob, if you execute "echo %HOME%" what do you get? I believe HOME is correct in most cases, but apparently not all.

Dave
Find all posts by this user
Quote this message in a reply
04-14-2016, 02:11 AM
Post: #19
RE: pyILPER Version 1.3.3 released
(04-13-2016 10:59 PM)Dave Frederickson Wrote:  As I mentioned, OrCAD/PSpice has been having fun with my environment variables. On this computer:
HOMEPATH=\
HOME=C:\Users\<me>\AppData\Roaming\SPB_Data

SPB_Data belongs to OrCAD/PSpice.

Bob, if you execute "echo %HOME%" what do you get? I believe HOME is correct in most cases, but apparently not all.

"Echo %home%" simply displays "%home%", which is correct if there is no environment variable called "home" defined.

HOMEPATH is used by Windows XP, Vista, 7, and 10. I don't have a Win-8 machine to test, but it's almost certainly the same (and if not, who cares, since the 9 happy Win-8 users probably aren't members here).

FYI, you can just type "set" at a command prompt to see all the currently defined env. variables.

It seems that OrCAD/PSpice (whatever that is) (ab)uses environment variables in an odd and non-standard way, though it's not of much general consequence as very few programs use environment variables these days. Probably a vestige of ancient versions of that program, which they hacked to use under more modern OS's while using the old environment setup. (but that's just a guess)

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
04-14-2016, 04:58 AM
Post: #20
RE: pyILPER Version 1.3.3 released
The python function os.expand.userpath determines the "HOME" directory in the following way:

"On Windows, HOME and USERPROFILE will be used if set, otherwise a combination of HOMEPATH and HOMEDRIVE will be used."

Dave, did you check the "Enable IDY frames option" in the pyILPER configuration?

Regards
Joachim
Find all posts by this user
Quote this message in a reply
Post Reply 




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