Following the directions here:
https://archived.hpcalc.org/greendyk/hp4...er/49.html
with a confirmed good Virtual HP-IL link between V41 and HP-82240B emulator, PRPLOT fails when running the example program. Is there a way to set the emulated 82240B into TRACE mode?
The only time I've gotten PRPLOT to work was using the oorex 82162A which is so unreliable for me in windows 10 that it's functionally useless.
I have the following modules installed in V41
HP41CX Operating System
AVIATION
NAVIGATION
82160 HP-IL
PRFLAGS output:
SIZE = 100
DEG
FIX 4
FLAGS:
21, 26, 28, 29, 37, 40, 55
Here is what I am doing:
1) I create the "sinx" program as described in the manual "WIGGLE"
2) excute PRPLOT
3) follow the on screen prompts and the printer outputs the image which doesnt look anything like the expected plot
the listing for sinx
[
attachment=10398]
.
Perhaps the wrong angular mode (DEG, RAD) ?
V.
It looks like it doesn't emulate ACCOL and the other buffer-related print functions properly? Those are used by the PRPLOT program to print the axes and to position the little 'x' marks with single-pixel precision.
(02-25-2022 12:39 AM)Valentin Albillo Wrote: [ -> ]Perhaps the wrong angular mode (DEG, RAD) ?
V.
according to the calculator it's in degree mode
PRFLAGS output:
SIZE = 100
DEG
FIX 4
FLAGS:
21, 26, 28, 29, 37, 40, 55
the lower case w printing looks odd too.
the print should look like this:
[
attachment=10399]
so the formatting is incorrect in several locations
Lowercase w is binary 1110111, that's the bit pattern used to print a segment of the X axis. It should look like a vertical bar with a gap in the middle, but the printer emulator clearly isn't handling the codes that are being sent for graphics printing, and printing characters instead.
(02-25-2022 01:52 AM)Thomas Okken Wrote: [ -> ]Lowercase w is binary 1110111, that's the bit pattern used to print a segment of the X axis. It should look like a vertical bar with a gap in the middle, but the printer emulator clearly isn't handling the codes that are being sent for graphics printing, and printing characters instead.
Thanks for that insight about the bit patterns! I wonder if there is anything that can easily be done from a user perspective to address the issue or if this is a deeper issue. My guess is it's the latter.
Everything points to 82143A/82162A control codes being sent to an 82240B. Which isn't surprising, because that's what your setup sounds like. But how does the connection between the emulated 41 and the emulated 82240B even work? I'd expect an emulated IR module between the two, not emulated HP-IL. I'm afraid I can offer no advice on how to fix this...
I think I reproduced your set-up with:
I configured V41 as you did:
- HP41CX Operating System
- AVIATION
- NAVIGATION
- 82160 HP-IL
I started the ILBlinky interface, the 82240B printer and initialized the Virtual IL with PWRUP. Then printing to the virtual 82240B was functional.
I tried the example described
here to print graphics ensuring that the MAN mode was set (Flags 15 and 16 cleared) and it failed as visible on the screenshot below:
[
attachment=10402]
The first line printed was the X register with PRX
The second line is the ACCOL graphic output where clearly the printer is interpreting the print buffer as characters and not as graphic. After each ACCOL the character was visible on the printer text window but not on the graphic window, it's only after the last PRBUF that the line appeared on the graphic window.
Then I switched to TRACE mode (flag 15 set, flag 16 cleared) to verify the print mode was working correctly, and it was.
I tried also to build a special character as described
here and again it failed, no graphic output.
[
attachment=10403]
So it seems that the HP82240B Printer Simulator and/or the ILBlinky are not handling the HP 41 graphic instructions correctly.
Yup that looks like the issue. I too was unable to build a custom character. I followed the instructions for the chars program:
https://archived.hpcalc.org/greendyk/hp4...er/23.html
this was the output, it looks like it fails on a lot of characters if the 82240B shares the same character set as the 82143A:
https://archived.hpcalc.org/greendyk/hp4...er/37.html
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13|
14
15
16
17
18
19
20
21
22
23
24
25
26
27 30
31
32
33!
34"
35#
36$
37%
38&
39'
40(
41)
42*
43+
44,
45-
46.
47/
480
491
502
513
524
535
546
557
568
579
58:
59;
60<
61=
62>
63?
64@
65A
66B
67C
68D
69E
70F
71G
72H
73I
74J
75K
76L
77M
78N
79O
80P
81Q
82R
83S
84T
85U
86V
87W
88X
89Y
90Z
91[
92\
93]
94^
95_
96`
97a
98b
99c
100d
101e
102f
103g
104h
105i
106j
107k
108l
109m
110n
111o
112p
113q
114r
115s
116t
117u
118v
119w
120x
121y
122z
123{
124|
125}
126
127░
[
attachment=10404]
(02-25-2022 09:09 AM)Thomas Okken Wrote: [ -> ]Everything points to 82143A/82162A control codes being sent to an 82240B. Which isn't surprising, because that's what your setup sounds like. But how does the connection between the emulated 41 and the emulated 82240B even work? I'd expect an emulated IR module between the two, not emulated HP-IL. I'm afraid I can offer no advice on how to fix this...
That's a good point. If the control codes being sent aren't for the correct printer then it would stand to reason it should fail. I tried using the V41 Ir-Print.mod module but it immediately sends the cpu into a loop.
I configured the setup as follows the HP-41 uses the HP-IL module, the HP-IL module to connect to the IR Blinky program then that outputs to the printer.
(02-25-2022 11:09 AM)Didier Lachieze Wrote: [ -> ]I tried the example described here to print graphics ensuring that the MAN mode was set (Flags 15 and 16 cleared) and it failed as visible on the screenshot below:
Where did you find the reference to which flags set the printer mode? I saw it once and can't seem to locate it again.
Although Sylvain's reply provides the settings, the answer to where they are described is in the 82160A HP-IL module User Manual and Quick Ref Guide. Since the 82162A HP-IL peripheral printer could be controlled by various controllers (41, 71, 75, 85) the configuration logic is in the IL controller, not the printer itself.