DM41X INFRARED COMPATIBILITY WITH HP-48GX

Discussion around the SwissMicros DM41X calculator
User avatar
3E0_RTN
Posts: 9
Joined: Mon Jan 23, 2023 9:28 pm
Location: FRANCE

DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by 3E0_RTN »

Hello,
Before buying the DM-41X to complete my system, i.e.
evolution_systemes-new.jpg
evolution_systemes-new.jpg (97.32 KiB) Viewed 1326 times
HP-67 (Teenix kit, Nav. Pac)
HP-41CV (Triple X-Fcn/X-Mem, Time, Nav. Pac, Wand, Card Reader, HP-IL, and Pilbox)
HP-48GX (2x 128K RAM Card, Celestial Nav. Pac, 41CV Emulator Card, and RS232c/USB Cable)
DM-15L (USB Cable), HP-15C and HP-34C (programs dedicated to astronomical navigation)

I have a fundamental question.
Is the DM-41X IR mode compatible with HP-48 series calculators?
I would like to use my 41CV Emulator Card ported to the HP-48GX by continuing transfering programs.
Can anyone do a test with INPRT?
Thanks.
Cheers.
Last edited by 3E0_RTN on Sat Jan 28, 2023 9:20 am, edited 1 time in total.
Celestial Navigation
HP-67 Nav. Pac / HP-41CV Nav. Pac / HP-48GX Celestial Nav. Pac / HP-34C / HP-15C / DM-15L / MK-52 BRP-2 / TI-58C Marine Nav.
MeinKuipers
Posts: 58
Joined: Mon Jan 13, 2020 4:49 pm
Location: Netherlands

Re: DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by MeinKuipers »

The DM41X IR port can only be used for printing to an HP82240 IR printer or emulator. It is output only.
Regards from NL,
Meindert Kuipers DM41X #48
User avatar
3E0_RTN
Posts: 9
Joined: Mon Jan 23, 2023 9:28 pm
Location: FRANCE

Re: DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by 3E0_RTN »

Hello Meindert,
Thanks.
I was unclear. I rephrase my question.
Can I transfer programs from the DM-41X to the HP-48 as I do with an HP-41 equipped with the HP82242A infrared module ?
KR.
Celestial Navigation
HP-67 Nav. Pac / HP-41CV Nav. Pac / HP-48GX Celestial Nav. Pac / HP-34C / HP-15C / DM-15L / MK-52 BRP-2 / TI-58C Marine Nav.
MeinKuipers
Posts: 58
Joined: Mon Jan 13, 2020 4:49 pm
Location: Netherlands

Re: DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by MeinKuipers »

The DM41X printing uses the standard PRINTER-1E rom, without any patches. The output is an HP82240 compatible IR stream. We can only assume that there is some internal translation going on. It would be an interesting experiment to plug the Blinky IR module in the DM41X, but I expect the output to be rubbish. Also just wondering if the DM41X Page 6 will support bank-switching. Not close to my calculators this week, so I cannot test.
Could you explain how a program transfer works with the HP82242 IR module? If the HP48 captures a printed listing than there might be a possibility. Otherwise it would be nice to know what program is needed on the HP41 to transfer data, maybe this can be useful.
Regards from NL,
Meindert Kuipers DM41X #48
ecsfang
Posts: 51
Joined: Sun Jan 26, 2020 5:21 pm
Location: Lund/Sweden

Re: DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by ecsfang »

As far as I know, the 48 can receive HP41 programs and data using the Blinky module in the 41-series.
By simply printing the program (PRP) on the 41 the program is transferred to the 48 which translate the printed listing to "code".

This should work with the DM41X as well, but there is one thing that might be a problem ...

I don't know how the IR-module for the 41 series is implemented (Blinky), but I have noticed that the DM41X translate some characters to graphics (mainly the up-arrow - used in ENTER^, R^, 10^X etc). This character is not sent by the DM41X as a character code but rather as a string of graphic bytes.

E.g the line "X^2" would not be sent as 3 characters but rather 11: "X+0x1B+0x07+0x00+0x08+0x04+0x7E+0x04+0x08+0x00+2".

Note that the graphics from the DM41X result in an up-arrow (ie '^' and '|' combined - which is not present in the 82240 charset), but the Blinky seems to print only a caret (^) for the same character, so I think it is another character (in the picture the left is 82240 and right is output from DM41X (not to scale)).
uparrow.png
uparrow.png (473 Bytes) Viewed 1472 times
Again, I don't know how Blinky actually sends the same character, or if the 41 Emulator is smart enough to decode the graphics as the wanted character.
It could also be that the emulator receives the bytes, but translate it to an non-existing function call, i.e. the line is transferred but has to be manually updated.

But, since I don't have an emulator card to my 48 I can't test, nor do I have a Blinky module so I can't test that either, but I do know that the DM41X sends graphics in some cases.

Just my two cents ...

Cheers,
Thomas
[35/45/55/65/67/97/21/25/29C/31E/33E/38E/41C|CV|CX/71B/10C/11C/15C/16C/32SII/42S/28S/48GX/49G/35S/DM41X(#00456)]
(7397)[134]
MeinKuipers
Posts: 58
Joined: Mon Jan 13, 2020 4:49 pm
Location: Netherlands

Re: DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by MeinKuipers »

Good info. If we coould find out what Blinky really sends for the up-arrow that would be nice. I have none of these modules, but I checked the manuals of the Blinky module and the HP82240 printer, and they all have the up arrow as character 94 ^ available, so that would be the most logical substitution, although it is not a real arrow like the HP82143 character set, but is is still the same character 94.
So the translation to graphics in the DM41X does not seem to make much sense here.
Regards from NL,
Meindert Kuipers DM41X #48
ecsfang
Posts: 51
Joined: Sun Jan 26, 2020 5:21 pm
Location: Lund/Sweden

Re: DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by ecsfang »

Hi, just to be clear, the DM41X sends the graphical representation of the up-arrow instead of character 94 (eg by 94 ACCHR ADV).
I guess that Blinky really sends 94 and not a graphical string representing '^', but we don't know yet .

Cheers,
Thomas
[35/45/55/65/67/97/21/25/29C/31E/33E/38E/41C|CV|CX/71B/10C/11C/15C/16C/32SII/42S/28S/48GX/49G/35S/DM41X(#00456)]
(7397)[134]
ecsfang
Posts: 51
Joined: Sun Jan 26, 2020 5:21 pm
Location: Lund/Sweden

Re: DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by ecsfang »

Another thing that one needs to be aware of, is that the character output from the DM41X does not really match the "expected" charset.

I.e. we can't always output any specific character - the following hex-table is the only characters that the DM41X can generate (code 0x80-0xFF is just a duplication of 0x00-0x7F (ie msb is not used 0xC2 == 0x42)).

Read the table as "input AA generates output BB", so if we do "16 ACCHR ADV" the DM41X will output character 0xBA instead of 0x10, meaning that we can never output character 16 (0x10) to the printer (or any other character in the range 0x00-0x1F). Also you will notice that some characters are over-represented (like 0xBA, replacing at least 9 other characters - and printed as the "delta" symbol).

I assume that the implementation in DM41X is made to make basic functionality with the HP82240A/B work (but doesn't explain why e.g. not using '^' instead of up-arrow which is available on the 82240 (as Blinky seems to do)), nor taking advantage of the full character set of the printer at hands.

Had the DM41X been able to output the real character code, then a printer emulator could be made and have eg. synthetic text-strings decoded in program listings, but that is impossible with the current implementation. And since all characters (0x00-0x7F) were possible to print on the HP82143 it will be hard to make a good 82143 emulator for the DM41X.

But, one should never say never to the sharp minds on these forums!
Maybe we could hack the printer-ROM to actually output the wanted characters ... ;)

Cheers,
Thomas

--- .0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
00: 86 82 BA 8E 8C DE BA xx BA BA yy BA 8F A0 BA F0
10: BA BA BA D0 C0 D8 CC AE DA DB CF D3 BA 8B AF 7F
20: 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
30: 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
40: 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F
50: 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D zz 5F
60: 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F
70: 70 71 72 73 74 75 76 77 78 79 7A 87 7C 8D 85 94

The following three characters are sent as graphics instead of the character code
xx: 1B 07 00 10 20 7E 20 10 00 (0x07 - down arrow)
yy: 1B 07 00 08 1C 3E 1C 08 00 (0x0A - diamond)
zz: 1B 07 00 08 04 7E 04 08 00 (0x5E - up arrow)
[35/45/55/65/67/97/21/25/29C/31E/33E/38E/41C|CV|CX/71B/10C/11C/15C/16C/32SII/42S/28S/48GX/49G/35S/DM41X(#00456)]
(7397)[134]
User avatar
3E0_RTN
Posts: 9
Joined: Mon Jan 23, 2023 9:28 pm
Location: FRANCE

Re: DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by 3E0_RTN »

FYI

I transferred the following program by INPRT and the CPTR function (41CV Emulator Card) :
01 LBL TEST
02 'TEST OK'
03 AVIEW
04 RTN

INPRT can be found here :
https://www.hpcalc.org/details/2296

The corresponding results are available here :
INPRT
https://drive.google.com/file/d/1vfqi-F ... share_link
CPTR
https://drive.google.com/file/d/1gwEGZR ... share_link

Thanks.
Celestial Navigation
HP-67 Nav. Pac / HP-41CV Nav. Pac / HP-48GX Celestial Nav. Pac / HP-34C / HP-15C / DM-15L / MK-52 BRP-2 / TI-58C Marine Nav.
ecsfang
Posts: 51
Joined: Sun Jan 26, 2020 5:21 pm
Location: Lund/Sweden

Re: DM41X INFRARED COMPATIBILITY WITH HP-48GX

Post by ecsfang »

Looks promising!

How does it work with a program that contains instructions with an "up-arrow"?
E.g. ENTER^, X^2, etc.

Cheers,
Thomas
[35/45/55/65/67/97/21/25/29C/31E/33E/38E/41C|CV|CX/71B/10C/11C/15C/16C/32SII/42S/28S/48GX/49G/35S/DM41X(#00456)]
(7397)[134]
Post Reply