HP 48 serial transfer

  • Follow


Hello,

I am trying to convert a serial transmission at 9600 buad into an
image on my computer from the 48GX.  If the on button is held down and
1 is pushed on the calculator, the screen display can be captured. 
How do I know which bit corresponds to which pixel cordinate in a 68
by 134 pixel array?   Is the first byte(s) included as data in the
transmission?
Thx
0
Reply rmenigma 5/6/2004 5:00:36 AM

rmenigma@hotmail.com (ray) wrote in message news:<a8d6cc2d.0405052100.2688d75f@posting.google.com>...
> Hello,
> 
> I am trying to convert a serial transmission at 9600 buad into an
> image on my computer from the 48GX.  If the on button is held down and
> 1 is pushed on the calculator, the screen display can be captured. 
> How do I know which bit corresponds to which pixel cordinate in a 68
> by 134 pixel array?   Is the first byte(s) included as data in the
> transmission?
> Thx

The bit-to-pixel conversion is discussed in the HP48 FAQ, which you
can download from www.hpcalc.org (I don't know exactly what category,
but you'll get there if you enter HP48 FAQ in the Search window).

The HP48 LCD is 131 by 64 pixels, though.

Bill
0
Reply bmarkwick 5/8/2004 2:18:55 PM


ray wrote:
> Hello,
>
> I am trying to convert a serial transmission at 9600 buad into an
> image on my computer from the 48GX.  If the on button is held down and
> 1 is pushed on the calculator, the screen display can be captured.
> How do I know which bit corresponds to which pixel cordinate in a 68
> by 134 pixel array?   Is the first byte(s) included as data in the
> transmission?
> Thx

Thanks to this, I took another look at it. It turns out to be very
simple. It's sent as a series of eight column graphics escape
sequences, as they would be sent to an HP 82240A or 82240B printer,
except each escape sequence is followed by a LineFeed CarriageReturn
pair (regardless of the line termination string in PRTPAR) instead of
control code 4.

This is for at least for the 48GX; I haven't checked with the other
calculators yet. Greyscale displays may well complicate the format.

See http://page.mi.fu-berlin.de/~raut/WR49/Ioman.htm for more
information on the printers, but I'll give a short explanation here.

I'll use a notation where <n> means the character with decimal value
n. The first escape sequence is for the top eight rows of pixels, the
next escape sequence for the next eight pixel rows, and so on. Each
escape sequence starts out with <27><131>, which means that the next
131 characters represent dot patterns for columns, then the 131
characters, and is followed by <13><10> (the CRLF pair).

For each column, the character is the one whose value equals the sum
of the dot values, where the top dot has the value 2^0, the second dot
2^1, ... the bottom dot 2^7. A null character is a blank column,
character 255 a column with all eight dots printed. To put it
graphically (I hope the tab characters work in your newsreader):

	Dot	decimal	hex
	column	value	value

	X	1	1
	X	2	2
	X	4	4
	X	8	8
	X	16	10
	X	32	20
	X	64	40
	X	128	80

-- 
Regards,
James

0
Reply James 5/8/2004 9:42:04 PM

PS:

It turns out that the tab characters didn't work so well in my own
newsreader, so try this, with a fixed character width font.


         Dot     decimal hex
         column  value   value

         X       1       1
         X       2       2
         X       4       4
         X       8       8
         X       16      10
         X       32      20
         X       64      40
         X       128     80

-- 
Regards,
James

0
Reply James 5/8/2004 10:03:22 PM

3 Replies
184 Views

(page loaded in 0.053 seconds)


Reply: