[comp.sys.handhelds] Transfer HP28 -> HP48SX via IR

sharkey@unlisys.UUCP (Berhard Wolf) (04/11/90)

Hi there!

I hope this subject hasn't been discussed to death, at least I haven't
seen it posted here before :

Is it possible to download data (programs, lists, etc.) from my HP28
to my new HP48SX ? How can I do it ? Or , hmmm - *CAN* I do it ?????

I would not like to type in all these programs from the '28 again,
so it would be much more comfortable (and fun ;-) ) to do this job via
the IR.

Is there anyone out there who can help me ?

Thanx in advance,
Bernhard

PS: I liiiike this '48SX !!!! :-}

prestonb@hpcvra.CV.HP.COM (Preston Brown) (04/12/90)

# Okay here it is again.  This is the HP program INPRT that allows
# the 48SX to read printer output from the 28 or any other product
# that prints to the HP IR printer.
#
# This is a binary program that you must download to run.  If you
# are downloading it directly form a unix machine you must say:
# set file type binary
# in the unix kermit before downloading it.


# This is a shell archive.  Remove anything before this line,
# then unpack it by saving it in a file and typing "sh file".
#
# Wrapped by Preston Brown <prestonb@hpcvda> on Wed Mar 14 09:54:17 1990
#
# This archive contains:
#	inprt		inprt.txt	
#

LANG=""; export LANG
PATH=/bin:/usr/bin:$PATH; export PATH


rm -f /tmp/uud$$
(echo "begin 777 /tmp/uud$$\n \nend" | uudecode) >/dev/null 2>&1
if [ -f /tmp/uud$$ ]
then
	rm -f /tmp/uud$$
	unpacker=uudecode
else
	echo Compiling unpacker for non-ascii files
	pwd=`pwd`; cd /tmp
	cat >unpack$$.c <<-'EOF'
	#include <stdio.h>
	#define DEC(c)	(((c) - ' ') & 077)
	main()
	{
		int n;
		char dest[128], a,b,c,d;

		scanf("begin %o ", &n);
		gets(dest);

		if (freopen(dest, "w", stdout) == NULL) {
			perror(dest);
			exit(1);
		}

		while ((n=getchar()) != EOF && (n=DEC(n))!=0)  {
			while (n>0) {
				a = DEC(getchar());
				b = DEC(getchar());
				c = DEC(getchar());
				d = DEC(getchar());
				if (n-- > 0) putchar(a << 2 | b >> 4);
				if (n-- > 0) putchar(b << 4 | c >> 2);
				if (n-- > 0) putchar(c << 6 | d);
			}
			n=getchar();
		}
		exit(0);
	}
	EOF
	cc -o unpack$$ unpack$$.c
	rm unpack$$.c
	cd $pwd
	unpacker=/tmp/unpack$$
fi

echo x - inprt '[non-ascii]'
$unpacker <<'@eof'
begin 666 inprt
M2%!(4#0X+4*=+="$&!6*P=P">@6 OWD&^#YA@/3X!FC0.O00 .Y$@Y$O 8E?
M$0$(^/B]&Q"1^'E;H"\!+#1@!89?#@'8JF6 'V<6\0L!$/0(B!74^(\;@%\.
M 1& ;R94^)MG$,$-J$[@A,U7 T(#<P52JSFMD+,%.W6], 2  +<;U8*A WJT
M40TYO]%WDQ"AQPB][^ 31P@1[!; $W]=$<%,/@'1&<1A@4_' )02OQ  08^ 
M6 I,#0B8I<!5$-2V]<;P<"PQ%3620@!P Z)SA:#@M)CS\1;YX),-ZG3)#U-F
M-9#*_ZRI^<R?.F!5!L.?JOE<!C-@934 4_:LF<KOO8C;?B010D<7(G'4CKOH
M+7%$%[+HW8Z+V^Z]&$)W)'$D$4+GO8C;WHZ[Z$T7(G&TZ-V.*W%$%Q)"=R2!
MV^Z]F,K_K E39C4P8%4&H_G,GUH&,V#%GZKY_*R9RF\U %.F<P2 D2,Y+P\#
MQX*QHU,ZMW-*7_,@0!V*)3^P LJG.TAP.$+X=R44?U!"Z@@HQ 0 :DR[44=*
M5O)JQ'28;[EAM6&Q8:UAJ6&E8:%AG6&9895AD6&-88EAA6&!87UA>6&W8;-A
MKV&K8:=AHV&?89MAEV&388]ABV&'88-A?V%[87=A'6$9815A$6$-80EA!6$!
M8?U@^6#U8/%@[6#I8.5@X6"/8(M@AV"#8']@>V!W8'-@;V!K8&=@8V!?8%M@
M5V!38--@SV#+8,=@PV"_8+M@MV"S8*^ !@ (*-&B)FI>_%%'2E8(.KUS(( &
M5 @,D!,5.X4%2D^_:E[\44=*5A$(V#N'!@4ZS<47=11U%'5D.HX&)P@,$Q)(
M8+:/!CHE,/%PBH $]3GQ<'Q0CH &@E,"   +H3 3$O;WYMJ !]$%W*DK\1H!
MP$X344=*5O,3&N0!!S.AH.8$$'6D9"4_L:'FQ1]UI&0% *)3"Z=S2E\ <""_
MC3$B RPJ4!  (/?7@X2%AH>(B8J+C(V.M7^PJ[M_?W^RLW]_?W]_?W^ P,+(
MRLO.S[1@7JA^V=NCK]W]L,?GT?&AOZ2CI:=FHN+J]/OAZ?/ZX.CR^>3K]OS%
M[MC&Y>WXYL3LUMS)[]_4P</CT/#-S-/2U?53<]I9_][^M[6VOBV\O:JZJYZ[
*L:#Y(S,B RLQ -S)
 
end
@eof

chmod 666 inprt

echo x - inprt.txt '[non-ascii]'
$unpacker <<'@eof'
begin 666 inprt.txt
M#0H-"B @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @24Y04E0N5%A4
M($9I;&4-"@T*(" @(" @(" @(" @(" @(" @(" H8RD@($AE=VQE='0M4&%C
M:V%R9"!#;VUP86YY+" Q.3DP#0H-"@T*3U9%4E9)15<-"BTM+2TM+2TM#0H-
M"E1H92!)3E!25"!A<'!L:6-A=&EO;B!R96%D<R!I;F9R87)E9" H25(I('!R
M:6YT97(@;W5T<'5T(&9R;VT@9&EF9F5R96YT#0I(97=L971T+5!A8VMA<F0@
M8V%L8W5L871O<G,@:6YT;R!T:&4@2% @-#@@<W1A8VLN("!)3E!25"!A<W-U
M;65S('1H870@=&AE#0II;F-O;6EN9R!B>71E<R!W;W5L9"!P<FEN="!W:71H
M('1H92!2;VUA;B X(&-H87)A8W1E<B!S970@;VX@86X@2% @.#(R-# -"G!R
M:6YT97(L(&%N9"!I="!R96UA<',@=&AE<V4@8GET97,@=&\@=&AE($A0(#0X
M(&-H87)A8W1E<B!S970@*$E33R X.#4Y#0I,871I;B Q*2X-"@T*#0I04D]#
M14154D4-"BTM+2TM+2TM+0T*#0I4:&5S92!A<F4@=&AE('-T97!S(&9O<B!T
M<F%N<V9E<G)I;F<@25(@<')I;G1E<B!O=71P=70@=&\@=&AE($A0(#0X.@T*
M#0H@,2X@(%1R86YS9F5R('1H92!)3E!25"!F:6QE(&9R;VT@>6]U<B!C;VUP
M=71E<B!T;R!T:&4@2% @-#@N("A5<V4@8FEN87)Y( T*(" @("!I9B!Y;W4G
M<F4@=')A;G-F97)R:6YG($E.4%)4(&9R;VT@=&AE($A0(#0X+BD@5&AE('M)
M3E!25'T@;65N=2!L86)E; T*(" @("!W:6QL("!S:&]W('5P(&EN('EO=7(@
M2% @-#@@5D%2(&UE;G4N#0H-"B R+B @3&EN92!U<"!T:&4@8V%L8W5L871O
M<G,N(" H4V5E(")!;&EG;FUE;G0@26YS=')U8W1I;VYS(B!B96QO=RXI#0H-
M"B S+B @4')E<W,@>TE.4%)4?2!O;B!T:&4@2% @-#@N(" H24Y04E0@=&5R
M;6EN871E<R!I;B Q,"!S96-O;F1S(&EF(&YO($E2#0H@(" @(&]U='!U="!I
M<R!R96-E:79E9"XI#0H-"B T+B @17AE8W5T92!T:&4@<')I;G0@8V]M;6%N
M9"!O;B!T:&4@;W1H97(@8V%L8W5L871O<BX-"@T*(#4N("!297!E870@<W1E
M<',@,B!T:')O=6=H(#0@87,@;F5E9&5D('1O('1R86YS9F5R(&%D9&ET:6]N
M86P@;W5T<'5T+@T*#0I215-53%13#0HM+2TM+2TM#0H-"E=H96X@=&AE('1R
M86YS9F5R(&ES(&-O;7!L971E+"!T:&4@2% @-#@@<F5T=7)N<R!T:&4@<F5C
M96EV960@9&%T82!T;R!T:&4-"G-T86-K(&EN('1H92!F;W)M(&]F(&$@<W1R
M:6YG('1O(&QE=F5L(#(@86YD(&$@9FQA9R!T;R!L979E;" Q+B @268@=&AE
M(&9L86<-"FES(# L('5N8V]R<F5C=&%B;&4@=')A;G-F97(@97)R;W)S('=E
M<F4@9&5T96-T960[(&EF('1H92!F;&%G(&ES(#$L('1H97)E#0IS=&EL;"!M
M87D@8F4@;6ES<VEN9R!B>71E<RX@5&AE(#$@;65A;G,@=&AA="!E86-H(&)Y
M=&4@=&AA="!W87,@9&5T96-T960@=V%S#0IR96-E:79E9"!C;W)R96-T;'DN
M("!9;W4@<VAO=6QD('-T:6QL(&-H96-K('1H92!R96-E:79E9"!D871A('-I
M;F-E('1H97)E#0IM87D@8F4@82!L:6YE9F5E9"!I;B!S=')I;F=S+"!N86UE
M<RP@97AP<F5S<VEO;G,L(&5T8RX@;6]R92!T:&%N(#(T#0IC:&%R86-T97)S
M(&QO;F<N($EF('1H92!F;&%G(&ES(# L(&5A8V@@8GET92!T:&%T('=A<R!N
M;W0@8V]R<F5C=&%B;&4@:7,@82!G<F%Y#0IB;&]T("AC:&%R86-T97(@;G5M
M8F5R(#$R-RD@:6X@=&AE(&QE=F5L(#(@<W1R:6YG+@T*#0H-"D%,24=.345.
M5"!)3E-44E5#5$E/3E,-"BTM+2TM+2TM+2TM+2TM+2TM+2TM+2T-"@T*5&AE
M('1R86YS;6ET=&EN9R!C86QC=6QA=&]R)W,@3$5$(&UU<W0@8F4@86QI9VYE
M9"!W:71H('1H92!(4" T."=S('!H;W1O+0T*=')A;G-I<W1O<BP@=VAI8V@@
M:7,@;&]C871E9"!A="!T:&4@=&]P(&5N9"!O9B!T:&4@2% @-#@L(&EN(&QI
M;F4@=VET:"!T:&4-"F9I<G-T(%0@:6X@=&AE($A%5TQ%5%0@<&%R="!O9B!T
M:&4@2$573$545"U004-+05)$(&QO9V\N("!4:&4@8V%L8W5L871O<G,-"G-H
M;W5L9"!B92!N;R!M;W)E('1H86X@,"XU(&EN8VAE<R H,2XS(&-M*2!A<&%R
M="!F;W(@=&AE('1R86YS;6ES<VEO;BX@($%L<V\L#0IO=&AE<B!A;&EG;FUE
M;G0@:7-S=65S(&%P<&QY('1O('-E=F5R86P@8V%L8W5L871O<G,L(&%S(&9O
M;&QO=W,Z#0H-"B @;R @1F]R('1H92!(4" T,3H@(%1H92!)4B!P<FEN=&5R
M(&UO9'5L92!S:&]U;&0@8F4@:6X@;VYE(&]F('1H92!T;W -"B @(" @<&]R
M=',L(&%N9"!T:&4@<VAI;GD@(DE2(&-O;F4B(&EN('1H92!C96YT97(@;V8@
M=&AE(&UO9'5L92!S:&]U;&0@8F4@#0H@(" @(&%L:6=N960@=VET:"!T:&4@
M2% @-#@G<R!S;6%L;"!T<FEA;F=U;&%R(&EN9&EC871O<B!A8F]V92!T:&4@
M9&ES<&QA>2X-"@T*("!O("!&;W(@=&AE($A0(#(W4RP@2% @,3="+"!A;F0@
M2% @-#)3.B @5&AE(&-A;&-U;&%T;W(@;75S="!B92!R86ES960@,"XS#0H@
M(" @(&EN8VAE<R H,"XW-2!C;2DN(%1H92!C96YT97(@;V8@=&AE($Q%1" H
M=VAI8V@@:7,@;&]C871E9"!A="!T:&4@=&]P(&5N9" -"B @(" @;V8@=&AE
M(&-A;&-U;&%T;W(@:6X@;&EN92!B971W965N('1H92!%(&%N9"!7(&]F($A%
M5TQ%5%0I('-H;W5L9"!B92 -"B @(" @86QI9VYE9"!W:71H('1H92!(4" T
M."=S('-M86QL('1R:6%N9W5L87(@:6YD:6-A=&]R(&%B;W9E('1H92!D:7-P
M;&%Y+@T*#0H@(&\@($9O<B!T:&4@2% @,C@L($A0(#$X0RP@86YD($A0+3$Y
M0CH@($IU<W0@;&EN92!U<"!T:&4@8V%L8W5L871O<B=S($Q%1" -"B @(" @
M=VET:"!T:&4@2% @-#@G<R!S;6%L;"!T<FEA;F=U;&%R(&EN9&EC871O<B!A
38F]V92!T:&4@9&ES<&QA>2X-"F%L
 
end
@eof

chmod 666 inprt.txt

rm -f /tmp/unpack$$
exit 0

umapd51@sunb.cc.ic.ac.uk (W.A.C. Mier-Jedrzejowicz) (04/13/90)

The question of transfer from other HP calculators to the HP 48SX via
Infra-Red has not yet been done to death as the questioner asks, but
it has already been mentioned that the software with the I/O kit
(available any day now, so they say) includes a program INPRT to do
this job. Documentation is included too, so I'll not repeat it here.
At present this program is most useful for copying HP-28 programs to
the HP 48SX, but other uses will develop, especially for HP-41 owners.
What is still missing is a comprehensive list of HP-28 commands and
features that have changed from the HP-28 to the 48. A few have been
mentioned. How about the fact that RND now uses TWO arguments, the
object to round in level 2, and the number of digits in level 1. This
REALLY confused some of our members at the club meeting here when the 48
was introduced.
Wlodek Mier-Jedrzejowicz,
Space and Atmospheric Physics, Imperial College, London
BITNET: MIER@SPVA.PH.IC.AC.UK