pyilper2 2.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. pyilper2/Manual/basics.html +239 -0
  2. pyilper2/Manual/changelog.html +457 -0
  3. pyilper2/Manual/css/w3-theme-black.css +22 -0
  4. pyilper2/Manual/css/w3.css +235 -0
  5. pyilper2/Manual/drive.html +269 -0
  6. pyilper2/Manual/features.html +168 -0
  7. pyilper2/Manual/filemenu.html +269 -0
  8. pyilper2/Manual/helpmenu.html +127 -0
  9. pyilper2/Manual/hp2225b.html +201 -0
  10. pyilper2/Manual/hp82162a.html +189 -0
  11. pyilper2/Manual/images/EMU71-controller.svg +245 -0
  12. pyilper2/Manual/images/HP-71-controller.svg +249 -0
  13. pyilper2/Manual/images/complex.svg +504 -0
  14. pyilper2/Manual/images/loop.svg +586 -0
  15. pyilper2/Manual/index.html +133 -0
  16. pyilper2/Manual/interface.html +271 -0
  17. pyilper2/Manual/license.html +136 -0
  18. pyilper2/Manual/miscellaneous.html +133 -0
  19. pyilper2/Manual/parameters.html +178 -0
  20. pyilper2/Manual/plotter.html +211 -0
  21. pyilper2/Manual/printer.html +162 -0
  22. pyilper2/Manual/quickstart.html +153 -0
  23. pyilper2/Manual/rawdrive.html +179 -0
  24. pyilper2/Manual/releasenotes.html +130 -0
  25. pyilper2/Manual/scope.html +170 -0
  26. pyilper2/Manual/terminal.html +299 -0
  27. pyilper2/Manual/troubleshooting.html +280 -0
  28. pyilper2/Manual/userinterface.html +141 -0
  29. pyilper2/Manual/utilitiesmenu.html +172 -0
  30. pyilper2/__init__.py +29 -0
  31. pyilper2/__main__.py +404 -0
  32. pyilper2/acmbox.py +294 -0
  33. pyilper2/controlthread.py +391 -0
  34. pyilper2/iothread.py +164 -0
  35. pyilper2/lifcore.py +277 -0
  36. pyilper2/lifexec.py +2067 -0
  37. pyilper2/lifimage/CASSETTE.DAT +0 -0
  38. pyilper2/lifimage/FLOPPY.DAT +0 -0
  39. pyilper2/lifimage/HDRIVE1.DAT +0 -0
  40. pyilper2/lifimage/HDRIVE16.DAT +0 -0
  41. pyilper2/lifimage/HDRIVE2.DAT +0 -0
  42. pyilper2/lifimage/HDRIVE4.DAT +0 -0
  43. pyilper2/lifimage/HDRIVE8.DAT +0 -0
  44. pyilper2/lifimage/PILIMAGE.DAT +0 -0
  45. pyilper2/lifimage/README.TXT +15 -0
  46. pyilper2/lifutils.py +313 -0
  47. pyilper2/penconfig.py +274 -0
  48. pyilper2/pilbox.py +443 -0
  49. pyilper2/pilcharconv.py +1372 -0
  50. pyilper2/pilconfig.py +142 -0
  51. pyilper2/pilcore.py +167 -0
  52. pyilper2/pildevbase.py +510 -0
  53. pyilper2/pildrive.py +1805 -0
  54. pyilper2/pilglobals.py +372 -0
  55. pyilper2/pilhp2225b.py +1937 -0
  56. pyilper2/pilhp82162a.py +2184 -0
  57. pyilper2/pilinterface.py +328 -0
  58. pyilper2/pilkeymap.py +217 -0
  59. pyilper2/pilpdf.py +219 -0
  60. pyilper2/pilplotter.py +1722 -0
  61. pyilper2/pilprinter.py +157 -0
  62. pyilper2/pilprobe.py +90 -0
  63. pyilper2/pilqterm.py +1954 -0
  64. pyilper2/pilscope.py +308 -0
  65. pyilper2/pilsocket.py +350 -0
  66. pyilper2/piltcpip.py +348 -0
  67. pyilper2/pilterminal.py +169 -0
  68. pyilper2/pilwidgets.py +1695 -0
  69. pyilper2/pyilpermain.py +1015 -0
  70. pyilper2/serialio.py +190 -0
  71. pyilper2/shortcutconfig.py +329 -0
  72. pyilper2/usbbox.py +298 -0
  73. pyilper2/usbio.py +208 -0
  74. pyilper2/userconfig.py +73 -0
  75. pyilper2-2.0.0.dist-info/METADATA +457 -0
  76. pyilper2-2.0.0.dist-info/RECORD +79 -0
  77. pyilper2-2.0.0.dist-info/WHEEL +4 -0
  78. pyilper2-2.0.0.dist-info/entry_points.txt +2 -0
  79. pyilper2-2.0.0.dist-info/licenses/LICENSE +280 -0
@@ -0,0 +1,457 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <title>pyILPER Help</title>
5
+ <meta charset="UTF-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1">
7
+ <link rel="stylesheet" href="css/w3.css">
8
+ <link rel="stylesheet" href="css/w3-theme-black.css">
9
+
10
+ <style>
11
+ html,body,h1,h2,h3,h4,h5,h6 {font-family: "Roboto", sans-serif;}
12
+ .w3-sidebar {
13
+ z-index: 3;
14
+ width: 250px;
15
+ top: 43px;
16
+ bottom: 0;
17
+ height: inherit;
18
+ }
19
+ </style>
20
+ </head>
21
+ <body>
22
+
23
+ <!-- Navbar -->
24
+ <div class="w3-top">
25
+ <div class="w3-bar w3-theme w3-top w3-left-align w3-large">
26
+ <a class="w3-bar-item w3-button w3-right w3-hide-large w3-hover-white w3-large w3-theme-l1" href="javascript:void(0)" onclick="w3_open()">&#9776;</a>
27
+ <a href="index.html" class="w3-bar-item w3-button w3-theme-l1">pyILPER</a>
28
+ </div>
29
+ </div>
30
+
31
+ <!-- Sidebar -->
32
+ <nav class="w3-sidebar w3-bar-block w3-collapse w3-large w3-theme-l5 w3-animate-left" id="mySidebar">
33
+ <a href="javascript:void(0)" onclick="w3_close()" class="w3-right w3-xlarge w3-padding-large w3-button w3-hide-large" title="Close Menu">
34
+ x
35
+ </a>
36
+ <h4 class="w3-bar-item"><b>Menu</b></h4>
37
+ <a href="quickstart.html" class="w3-bar-item w3-button">Quick Start Guide</a>
38
+ <a href="features.html" class="w3-bar-item w3-button">pyILPER Features</a>
39
+ <a href="basics.html" class="w3-bar-item w3-button">The Basics</a>
40
+ <div class="w3-dropdown-hover">
41
+ <button class="w3-button">User Interface &#751;</button>
42
+ <div class="w3-dropdown-content w3-white w3-card-4">
43
+ <a href="userinterface.html" class="w3-bar-item w3-button">Overview</a>
44
+ <a href="filemenu.html" class="w3-bar-item w3-button">File menu</a>
45
+ <a href="utilitiesmenu.html" class="w3-bar-item w3-button">Utilities menu</a>
46
+ <a href="helpmenu.html" class="w3-bar-item w3-button">Help menu</a>
47
+ <a href="interface.html" class="w3-bar-item w3-button">Interface Tab</a>
48
+ <a href="drive.html" class="w3-bar-item w3-button">Drive Tab</a>
49
+ <a href="rawdrive.html" class="w3-bar-item w3-button">Raw Drive Tab</a>
50
+ <a href="printer.html" class="w3-bar-item w3-button">Generic Printer Tab</a>
51
+ <a href="terminal.html" class="w3-bar-item w3-button">Terminal Tab</a>
52
+ <a href="plotter.html" class="w3-bar-item w3-button">Plotter Tab</a>
53
+ <a href="hp82162a.html" class="w3-bar-item w3-button">HP82162A Tab</a>
54
+ <a href="hp2225b.html" class="w3-bar-item w3-button">HP2225B Tab</a>
55
+ <a href="scope.html" class="w3-bar-item w3-button">Scope Tab</a>
56
+ </div>
57
+ </div>
58
+ <div class="w3-dropdown-hover">
59
+ <button class="w3-button">Miscellaneous &#751;</button>
60
+ <div class="w3-dropdown-content w3-white w3-card-4">
61
+ <a href="releasenotes.html" class="w3-bar-item w3-button">Release Notes</a>
62
+ <a href="changelog.html" class="w3-bar-item w3-button">Change Log</a>
63
+ <a href="parameters.html" class="w3-bar-item w3-button">Command line parameters</a>
64
+ <a href="troubleshooting.html" class="w3-bar-item w3-button">Troubleshooting</a>
65
+ <a href="license.html" class="w3-bar-item w3-button">License</a>
66
+ </div>
67
+ </div>
68
+ </nav>
69
+ <!-- Overlay effect when opening sidebar on small screens -->
70
+ <div class="w3-overlay w3-hide-large" onclick="w3_close()" style="cursor:pointer" title="close side menu" id="myOverlay"></div>
71
+
72
+ <!-- Main content: shift it to the right by 250 pixels when the sidebar is visible -->
73
+ <div class="w3-main" style="margin-left:250px">
74
+ <div class="w3-row w3-padding-64">
75
+ <div class="w3-twothird w3-container">
76
+
77
+ <!-- Begin content --->
78
+ <h2 class="w3-text-teal">Change Log</h2>
79
+
80
+ <h3 class="w3-text-teal">pyILPER 1.2.2</h3>
81
+ <p>First public release.</p>
82
+
83
+ <h3 class="w3-text-teal">pyILPER 1.2.3</h3>
84
+ <p>Enabled for Python 3.5.</p>
85
+
86
+ <h3 class="w3-text-teal">pyILPER 1.3.0</h3>
87
+
88
+ <ul class="w3-ul">
89
+ <li>IDY frame processing for terminal emulator to make
90
+ keyboard operation more reliable.</li>
91
+ <li>Show IDY frames option added to the scope tab.</li>
92
+ <li>Less strict LIF media header checking when mounting image files.</li>
93
+ </ul>
94
+
95
+ <h3 class="w3-text-teal">pyILPER 1.3.1</h3>
96
+
97
+ <p>Introduced IDY frame configuration option.</p>
98
+
99
+ <h3 class="w3-text-teal">pyILPER 1.3.2</h3>
100
+
101
+ <ul class="w3-ul">
102
+ <li>Added LIF image file management functions (export, import, rename, purge, pack, view, label) to the drive tab.</li>
103
+ <li>Added utility functions to initialize LIF image files and to fix invalid header information.</li>
104
+ <li>Added navigation controls to the help window. Make the help window resizeable</li>
105
+ <li>Renamed and added file types for the drive tab directory. All file types of the Online LIF Disk Project should be considered now.</li>
106
+ <li>The PILTERM basic program requires Rev C of the KEYBOARD lex file.</li>
107
+ <li>HDRIVE1 drive type now accepts arbitrary medium layouts.</li>
108
+ <li>pyILPER reinstates the previous display position at launch.</li>
109
+ </ul>
110
+
111
+ <h3 class="w3-text-teal">pyILPER 1.3.3</h3>
112
+
113
+ <ul class="w3-ul">
114
+ <li>Added configurable charset for the text file viewer.</li>
115
+ <li>The virtual keyboard is stable now.</li>
116
+ <li>The PILTERM basic program does not require a certain revision of the KEYBOARD lex file anymore.</li>
117
+ <li>The PILTERM basic program now sets the delay for fast scrolling.</li>
118
+ <li>The virtual HP-IL device status was moved to the utilities menu.</li>
119
+ <li>Scrolling left and right now works for wrapped lines in the terminal.</li>
120
+ <li>Terminal now supports switching between insert and replace cursor. The indicator was removed.</li>
121
+ <li>Terminal size, terminal font size, and terminal color scheme can now be configured via the pyILPER configuration menu. These settings now also affect the printer and the scope.</li>
122
+ <li>Improved virtual device status window: shows internal HP-IL state as text.</li>
123
+ </ul>
124
+
125
+ <h3 class="w3-text-teal">pyILPER 1.3.4</h3>
126
+
127
+ <ul class="w3-ul">
128
+ <li>Support for 230400 baud. Requires at least PIL-Box firmware version 2.0.</li>
129
+ <li>Changed the configuration file format from binary to JSON. It is not compatible with the previous format. Please configure pyILPER again.</li>
130
+ <li>The device configuration dialog now detects the available COM ports on Windows (contributed by Christoph Giesselink). The device detection on macOS X was improved.</li>
131
+ <li>Device clear now resets the printer display.</li>
132
+ <li>The open file dialog now lists files without extension (bugfix) and remembers the last directory.</li>
133
+ <li>On Windows the %APPDATA% path is used to store the pyILPER configuration.</li>
134
+ <li>The baud rate of the PIL-Box device can now be auto-detected (contributed by Christoph Giesselink).</li>
135
+ <li>The IDY frame processing option is now enabled by default.</li>
136
+ <li>The scope can now be configured to show inbound, outbound, or inbound/outbound traffic.</li>
137
+ <li>The scope log file is now written without buffering. This slows down file output, but you can now watch the file output with external commands.</li>
138
+ <li>The terminal, printer, and scope windows are now scrollable. The scroll buffer size is configurable.</li>
139
+ </ul>
140
+
141
+ <h3 class="w3-text-teal">pyILPER 1.4.0</h3>
142
+
143
+ <ul class="w3-ul">
144
+ <li>The script <em>startup.py</em> now accepts a parameter <em>-instance INSTANCE-NAME</em> to start multiple independent instances of pyILPER. Each instance has its own configuration file. Only letters or digits are allowed in an <em>INSTANCE-NAME.</em></li>
145
+ <li>New device configuration facility to add or remove virtual HP-IL devices or
146
+ to change their tab position. If a new device is added, you must give it a
147
+ unique name. Since the configuration file format was changed in this case,
148
+ you have to re-establish a previous custom configuration.</li>
149
+ <li>In the initial configuration of pyILPER, the printer is the first virtual
150
+ device now (as in the original ILPer) to avoid MANIO issues with the HP-41C.</li>
151
+ <li>New virtual HP-IL device: the HP7470A plotter! Note: at least version
152
+ 1.7.6 of the <em>LIFUTILS</em> must be installed to make use of the plotter.
153
+ </li>
154
+ <li>Configuration dialog for the plotter pens added.</li>
155
+ <li>Redraw the screen when the application window was resized (bug fix).</li>
156
+ <li>Use wcat41 instead of wall to display wall files (bug fix).</li>
157
+ <li>Allow mounting LIF image files with directories not starting at record 2.</li>
158
+ <li>An experimental new version of the <em>PILTERM</em> utility (PILPERM2) to set up
159
+ the printer, the display, and the keyboard of the HP-71B.</li>
160
+ <li>New release notes and getting started documents.</li>
161
+ </ul>
162
+
163
+ <h3 class="w3-text-teal">pyILPER 1.5.0</h3>
164
+
165
+ <ul class="w3-ul">
166
+ <li>Improved stability for virtual HP-IL over TCP/IP.</li>
167
+ <li>New <em>PILTERM</em> version 2 is default now. You find the old version as
168
+ <em>PILTERM1</em> on the PILIMAGE.DAT image.</li>
169
+ <li>Transition to Qt5.</li>
170
+ <li>The font size of the drive directory listing can now be configured. The row
171
+ height of the directory entries is now properly adjusted to the font size.</li>
172
+ <li>Improved online manual. The position and size of the manual browser is recorded in the program configuration file.</li>
173
+ </ul>
174
+
175
+ <h3 class="w3-text-teal">pyILPER 1.6.0</h3>
176
+
177
+ <ul class="w3-ul">
178
+
179
+ <li>The number of lines of the printer, scope, and drive directory output is adjusted
180
+ to the size of the main window automatically.</li>
181
+
182
+ <li>The output window of the plotter is adjusted to the size of the main window,
183
+ maintaining the aspect ratio of the paper size setting (see below).</li>
184
+
185
+ <li>The terminal, printer, and scope now support copying selected text to the system
186
+ clipboard. The terminal supports pasting text from the system clipboard.</li>
187
+
188
+ <li>Most <em>pyILPER</em> configuration parameters that control the GUI layout now
189
+ take effect at runtime. Only the scroll-up buffer size and the paper size require a
190
+ restart of the application.</li>
191
+
192
+ <li>The <em>pyILPER</em> configuration dialog now informs if configuration changes
193
+ issue a reset of the communication or require a restart of the application.</li>
194
+
195
+ <li>The previous size of the <em>pyILPER</em> main window is restored
196
+ on the start of the program.</li>
197
+
198
+ <li>The HP82162A printer is now included as a virtual HP-IL device. </li>
199
+
200
+ <li>Barcodes can be created from the context menu in the drive tab for
201
+ HP-41 program and SDATA files.</li>
202
+
203
+ <li>Directory listings can be created from the tool menu in the drive tab.</li>
204
+
205
+ <li>The paper size option was moved from the plotter configuration to the
206
+ <em>pyILPER</em> configuration in the file menu. It controls the paper size of PDF
207
+ output, the plotter paper size switch, and the aspect ratio of the plotter output
208
+ window. A reconfiguration is required if the letter format is used.</li>
209
+
210
+ <li>The <em>terminal size</em> configuration parameter was replaced by the
211
+ parameter <em>terminal width</em>. A reconfiguration is required.</li>
212
+
213
+ <li>The scope got an option to display the frames as hex codes.</li>
214
+
215
+ <li>Added mouse screen scrolling support for terminal, scope, and printer output
216
+ window.</li>
217
+
218
+ <li>Various bug fixes of the terminal.</li>
219
+
220
+ <li>The ROMAN8 character set now includes control pictures for most of the
221
+ C0 control codes (codes 0-31).</li>
222
+
223
+ <li>Improved diagnostics if the configuration file is corrupt.</li>
224
+
225
+ <li>The address of a reenabled virtual device is reset to zero if an HP-IL
226
+ device addressing operation took place while the device was not enabled.</li>
227
+
228
+ <li>Version 1.7.7 of the <em>LIFUTILS</em> is needed.</li>
229
+
230
+ <li>The detection of <em>LIFUTILS</em> installations was improved. A path can be configured to use <em>LIFUTILS</em>, which were installed at non-standard locations.</li>
231
+
232
+ <li>The <em>PILTERM</em> utility was updated to version 2.1. This version deassigns any <em>DISPLAY IS, PRINTER IS</em> and <em>KEYBOARD IS</em>
233
+ assignments before issuing a <em>RESTORE IO</em> to avoid possible data
234
+ corruptions.</li>
235
+
236
+ <li>The default <em>pyILPER</em> configuration now puts the virtual drive tabs at the end of the tab menu and therefore at the end of the virtual device chain.</li>
237
+
238
+ <li>Added a PIL-Box emulation by means of a TCP/IP socket server.</li>
239
+
240
+ </ul>
241
+
242
+ <h3 class="w3-text-teal">pyILPER 1.7.0</h3>
243
+
244
+ <ul class="w3-ul">
245
+
246
+ <li>Virtual device widgets can now be undocked from the tab into floating
247
+ windows.</li>
248
+ <li>The configuration of a device tab/window is now implemented as cascading
249
+ menus.</li>
250
+ <li>Pixel size of HP82162A display is now configurable.</li>
251
+ <li>Log buffering can now be configured individually for all virtual tabs/windows that support logging.</li>
252
+ <li>The number of terminal columns, the color scheme, and the number of lines
253
+ in the display scroll buffer are now configured individually in the
254
+ configuration menu of the device tab/window.</li>
255
+ <li>Terminal, printer, scope, and HP82162A now keep their scroll position on resize.</li>
256
+ <li>File management functions of the drive tab/window are now accessible by
257
+ push buttons.</li>
258
+ <li>Display size indicator for terminal, printer, and scope tab.</li>
259
+ <li>A device as active talker now checks if the incoming data frame is equal
260
+ to the last send data frame. Sends ETE if not.
261
+ Fix a bug in handling the SRQ bit in DOE frames (Both changes are courtesy of
262
+ Christoph Gie&szlig;elink).</li>
263
+ <li>The selection feature of the terminal, printer, and scope now supports autoscrolling.</li>
264
+ <li>Removed the external plot view window.</li>
265
+ <li>All font size parameters can be configured either at the application or the
266
+ tab/window level.</li>
267
+ <li>Fixed crash if the selection area exceeds the display buffer
268
+ (Scope/Printer/Terminal).</li>
269
+ <li>An "IN" command now terminates digitizing mode (Plotter).</li>
270
+ <li>Writing a byte order mark (BOM) at the beginning of UTF-8 files was
271
+ removed on Linux and macOS. It can be enabled on Windows to avoid problems with
272
+ Windows programs that do not recognize the UTF-8 encoding correctly.</li>
273
+ <li>Allow smaller font sizes for the directory listing and the terminal
274
+ widget.</li>
275
+ <li>Added the --clean startup option to clear an existing config file.</li>
276
+ <li>Added the "paper" colorscheme</li>
277
+ <li>Various other bug fixes; see the internal changelogs. This change makes
278
+ the log files compatible with other programs like the <em>LIFUTILS</em></li>
279
+ </ul>
280
+ <h3 class="w3-text-teal">pyILPER 1.7.1</h3>
281
+
282
+ <ul class="w3-ul">
283
+ <li>Disabled the automatic shrinking of parent widgets. It caused
284
+ unpredictable results on virtual device reconfiguration.</li>
285
+ </ul>
286
+
287
+ <h3 class="w3-text-teal">pyILPER 1.7.2</h3>
288
+
289
+ <ul class="w3-ul">
290
+ <li>Extend the ASCII file import of the virtual drive. Distinguish between
291
+ an import for the HP-71 and the import for the HP-41 wich needs special handling.</li>
292
+ <li>Check the minimum required Python version at the start of the application.</li>
293
+ <li>Force to use a monospaced font for PDF listings because system defaults are not reliable on certain platforms.</li>
294
+ <li>Added custom keyboard shortcuts for the terminal.</li>
295
+ <li>Added scope log tagging.</li>
296
+ </ul>
297
+
298
+ <h3 class="w3-text-teal">pyILPER 1.8.0</h3>
299
+
300
+ <ul class="w3-ul">
301
+ <li>Added the HP-2225B ThinkJet printer.</li>
302
+ <li>Keyboard handler code of the terminal tab rewritten. Keystroke definitions are now table-driven (see pilkeysym.py).</li>
303
+ <li>Added complete virtual terminal support for the HP-75 with a dedicated character set and keyboard layout and an HP-75 version of the <em>PILTERM</em> program, which is provided on a new version of the <code>PILIMAGE.DAT</code> LIF image file.</li>
304
+ <li><code>Next port</code> key supported for the HP-71.</li>
305
+ <li>Added local controls to the terminal tab to scroll up and down one page. This required minor changes to the HP-71 keyboard layout (see below).</li>
306
+ <li>Terminal emulation bug fixes.</li>
307
+ <li>Various documentation amendments</li>
308
+ <li>The most recent version of the <code>PILTERM</code> program is now 2.3.</li>
309
+ <li>The minimum required version for Python is now 3.5 instead of 3.4. Features of Python 3.5 and above make the code for calling external applications clearer and easier to maintain.</li>
310
+ </ul>
311
+ <p><b>Incompatibilities with previous pyILPER versions:</b></p>
312
+ <ul>
313
+ <p>Due to the introduction of the HP-75 character set, the configuration of character sets in existing <em>pyILPER</em> installations must be adjusted if the <em>Roman-8</em> character set was used.</p>
314
+ <p>For the HP-71 terminal emulation, the keystrokes for <code>far left, far right, far up</code> and <code>far down</code> are now <code>shift left, shift right, shift up</code> and <code>shift down</code>.</p>
315
+ </ul>
316
+
317
+ <h3 class="w3-text-teal">pyILPER 1.8.1</h3>
318
+
319
+ <ul class="w3-ul">
320
+ <li>Added HP-75 text file import and export to the file management functions of the drive tab</li>
321
+ <li>Show HP-75 text files optional with or without line numbers from the context menu of the drive tab directory list</li>
322
+ <li>Show keywords of HP-75 lex files from the context menu of the drive tab directory list</li>
323
+ <li><em>pyILPER</em> now requires at least version 1.7.9 of the <em>LIFUTILS</em>.</li>
324
+ </ul>
325
+
326
+ <h3 class="w3-text-teal">pyILPER 1.8.2</h3>
327
+ <ul class="w3-ul">
328
+ <li>Python 3.8 compatibility</li>
329
+ <li>Fixed wrong address view for addresses &gt; 15 and changed device # address view to HP71 style in the virtual HP-IL device status window (courtesy of Christoph Gießelink)</li>
330
+ <li>Clear device buffers on LIF image file change and clear disk drive status after successful reading or writing (hint from Christoph Gießelink)</li>
331
+ </ul>
332
+
333
+ <h3 class="w3-text-teal">pyILPER 1.8.3</h3>
334
+ <ul class="w3-ul">
335
+ <li>Disable right clicks into an empty directory listing in the drive tab.</li>
336
+ <li>Left-clicking on a selected row in the directory listing now deselects it.</li>
337
+ <li>Fix a bug that the file management controls in the drive tab were not disabled if no valid version of the <i>LIFUTILS</i> was installed.</li>
338
+ <li>Fix that some error messages of the <i>LIFUTILS</i> were not shown in the graphical user interfaces.</li>
339
+ </ul>
340
+
341
+ <h3 class="w3-text-teal">pyILPER 1.8.4</h3>
342
+ <ul class="w3-ul">
343
+ <li>Plotter Tab: Activate the ENTER key after having digitized or entered a
344
+ coordinate</li>
345
+ </ul>
346
+
347
+ <h3 class="w3-text-teal">pyILPER 1.8.5</h3>
348
+ <ul class="w3-ul">
349
+ <li>New device tab for virtual RAW disk drive devices.</li>
350
+ <li>Fixed crash when pasting text in the terminal.</li>
351
+ <li>Configuration file version check on startup.</li>
352
+ <li>Tab title text color problem (macOS Big Sur) fixed.</li>
353
+ <li>pyILPER command line parameters documented in online manual</li>
354
+ <li>New function to exchange config files between devel/beta and production versions (start with command line parameter)</li>
355
+ </ul>
356
+
357
+ <h3 class="w3-text-teal">pyILPER 1.8.6</h3>
358
+ <ul class="w3-ul">
359
+ <li>Qt5 (PyQt5 binding) and Qt6 (Pyside6) compatibility.</li>
360
+ <li>Python 3.10 compatibility.</li>
361
+ <li>Tty device selection combo box improved.</li>
362
+ </ul>
363
+
364
+ <h3 class="w3-text-teal">pyILPER 1.8.7</h3>
365
+ <ul class="w3-ul">
366
+ <li>HP 82162A printer font improvements (contributed by Christoph Gießelink).</li>
367
+ <li>HP 82162A printer output width corrected for pixelsize=1</li>
368
+ <li>Harmonization of hex number output in the scope window (contributed by Christoph Gießelink).</li>
369
+ <li>Fixed a cursor width problem, which occurred on some platforms.</li>
370
+ </ul>
371
+
372
+ <h3 class="w3-text-teal">pyILPER 1.8.8</h3>
373
+ <ul class="w3-ul">
374
+ <li>HTML reformatting of online documentation.</li>
375
+ <li>Fixed some PySide6 deprecation warnings.</li>
376
+ <li>Forced plotter background color to be always white.</li>
377
+ </ul>
378
+
379
+ <h3 class="w3-text-teal">pyILPER 1.8.9</h3>
380
+ <ul class="w3-ul">
381
+ <li>
382
+ <li>Fix: Do not enable logging, if openening th logfile fails.</li>
383
+ <li>HP 82162A line spacing fix (contributed by Christoph Gießelink).</li>
384
+ <li>Added /dev/tty/ACMxx to PIL-Box device dropdown list for Linux.</li>
385
+ </ul>
386
+
387
+ <h3 class="w3-text-teal">pyILPER 1.8.10</h3>
388
+ <ul class="w3-ul">
389
+ <li>Required LIFUTILS version is now 2.0.0</li>
390
+ <li>Add HP-41 FOCAL source code compile and import to disk (Drive Tab).</li>
391
+ <li>Add a selection of more XROM files for HP-41 FOCAL compile and decompile (Drive Tab).</li>
392
+ </ul>
393
+
394
+ <h3 class="w3-text-teal">pyILPER 1.9.0</h3>
395
+ <ul class="w3-ul">
396
+ <li>Required Python version is now 3.7.</li>
397
+ <li>Configurable auto(re)connect for serial interfaces.</li>
398
+ <li>Show additional information about serial devices in the tty selection window.</li>
399
+ <li>Thinkjet printer tab now shows page brakes.</li>
400
+ <li>Qt style configurable.</li>
401
+ <li>Added command line parameter to force scaling for high-DPI displays.</li>
402
+ <li>Command line parameters are now only accepted if <em>pyILPER</em> is called as a module (Incompatibility).</li>
403
+ <li>Location of configuration files changed from AppData to the user home directory (Incompatibility, Windows only).</li>
404
+ <li>Serial device name changed (Incompatibility, macOS only)</li>
405
+ </ul>
406
+
407
+ <h3 class="w3-text-teal">pyILPER 2.0.0</h3>
408
+ <ul class="w3-ul">
409
+ <li>Operating requirements are now Python >= 3.11, Pyside6 >= 6.8, pySerial >= 3.5 and LIFUTILS 2.0.2. Qt5 is not supported anymore.</li>
410
+ <li>There can now be multiple interfaces of the PIL-Box, TCP/IP or socket type</li>
411
+ <li>The scope now receives data from two probes, which can be placed anywhere between the virtual devices.</li>
412
+ <li>The scope now has a button to clear the display.</li>
413
+ <li>Virtual devices are now enabled by default when created.</li>
414
+ <li>The <em>HP82161A</em> and <em>HP9114B</em> drive types can now only process LIF image files of the <em>HP82161A Cassette</em> and <em>HP9114B Double-Sided Disk</em> types, respectively. For other LIF image file types, the <em>HDRIVE1</em> drive type must be used.</li>
415
+ <li>You can now set the print output color for the HP82161A printer to black or blue.</li>
416
+ <li>Automatic selection of the Pil-Box operating mode on loop start.</li>
417
+ <li>The virtual HP-IL device status window is restored to the last position.</p>
418
+ </ul>
419
+
420
+ <!-- End content -->
421
+ </div>
422
+ </div>
423
+ <footer id="myFooter">
424
+ <div class="w3-container w3-theme-l1">
425
+ <p>Powered by <a href="https://www.w3schools.com/w3css/default.asp" target="_blank">w3.css</a></p>
426
+ </div>
427
+ </footer>
428
+ <!-- END MAIN -->
429
+ </div>
430
+
431
+ <script>
432
+ // Get the Sidebar
433
+ var mySidebar = document.getElementById("mySidebar");
434
+
435
+ // Get the DIV with overlay effect
436
+ var overlayBg = document.getElementById("myOverlay");
437
+
438
+ // Toggle between showing and hiding the sidebar, and add overlay effect
439
+ function w3_open() {
440
+ if (mySidebar.style.display === 'block') {
441
+ mySidebar.style.display = 'none';
442
+ overlayBg.style.display = "none";
443
+ } else {
444
+ mySidebar.style.display = 'block';
445
+ overlayBg.style.display = "block";
446
+ }
447
+ }
448
+
449
+ // Close the sidebar with the close button
450
+ function w3_close() {
451
+ mySidebar.style.display = "none";
452
+ overlayBg.style.display = "none";
453
+ }
454
+ </script>
455
+
456
+ </body>
457
+ </html>
@@ -0,0 +1,22 @@
1
+ .w3-theme-l5 {color:#000 !important; background-color:#f0f0f0 !important}
2
+ .w3-theme-l4 {color:#000 !important; background-color:#cccccc !important}
3
+ .w3-theme-l3 {color:#fff !important; background-color:#999999 !important}
4
+ .w3-theme-l2 {color:#fff !important; background-color:#666666 !important}
5
+ .w3-theme-l1 {color:#fff !important; background-color:#333333 !important}
6
+ .w3-theme-d1 {color:#fff !important; background-color:#000000 !important}
7
+ .w3-theme-d2 {color:#fff !important; background-color:#000000 !important}
8
+ .w3-theme-d3 {color:#fff !important; background-color:#000000 !important}
9
+ .w3-theme-d4 {color:#fff !important; background-color:#000000 !important}
10
+ .w3-theme-d5 {color:#fff !important; background-color:#000000 !important}
11
+
12
+ .w3-theme-light {color:#000 !important; background-color:#f0f0f0 !important}
13
+ .w3-theme-dark {color:#fff !important; background-color:#000000 !important}
14
+ .w3-theme-action {color:#fff !important; background-color:#000000 !important}
15
+
16
+ .w3-theme {color:#fff !important; background-color:#000000 !important}
17
+ .w3-text-theme {color:#000000 !important}
18
+ .w3-border-theme {border-color:#000000 !important}
19
+
20
+ .w3-hover-theme:hover {color:#fff !important; background-color:#000000 !important}
21
+ .w3-hover-text-theme:hover {color:#000000 !important}
22
+ .w3-hover-border-theme:hover {border-color:#000000 !important}