[comp.sys.handhelds] Remote control with HP28C 1BB

jurjen@cwi.nl (Eric Toonen) (08/06/90)

		Use your HP28C (Version 1BB) as a remote control

This article is republished and translated with permission from
the STORC Newsletter. STORC is the Dutch support group for the
HP48SX, HP28S and HP28C (The RPL calculators).
You can reach STORC at this address:
	STORC p.a. Christ van Willegen
	Dordognelaan 45
	5627 HB  Eindhoven
	The Netherlands


I posted the RC5-sender for the HP28S (Ver 2BB) earlier. This is
the patch to send those codes with the HP28C (Mind you, 1BB only!)

RC5 code is the infrared code, used by PHILIPS to remote control
their machines, like TV's, Audio sets etc.

The machine language program we use is the following:

	; RC5 sender
	; In:  Level 1: pt
	; Out: -

	; ROM routines used:
	SAVER	EQU	#04EE2h		;Save registers
	CONTN	EQU	#0485Ch		;Restore regs & cont RPL
	GETPT	EQU	#04D88h		;Read pt from stack in A

	; MIO address used:
	IRLED	EQU	#4070Dh		;IR led: #2h=On, #0h=Off

8F2EE40		CALL.A	SAVER		;Save registers
8FC5840		CALL.A	GETPT		;Read value from stack
1BD0704		MOVE.5	IRLED,D0	;Point to LED value
30D		MOVE.P1	#Dh,C		;Send 13 bits
816		RRN.W	C

C4	L1:	ADD.A	A,A		; 1 or 0 ?
5E0		BRCC	L2

7120		CALL.3	L4		;Send 1-bit
7420		CALL.3	L5
6B00		JUMP.3	L3

7C10	L2:	CALL.3	L5		;Send 0-bit
7110		CALL.3	L4

	L3:	;Next bit
A4E		DEC.S	C
53E		BRCC	L1		;All bits done?

7700		CALL.3	L4		;Turn LED off
8DC5840		JUMP.A	CONTN

	L4:	;LED Off
300		MOVE.P1	#0h,C
6600		JUMP.3	L6

	L5:	;LED On
302		MOVE.P1	#2h,C
		;JUMP.3	L6

	L6:	;Put(c)
1540		MOVE.P	C,(D0)		;Set LED
31F1		MOVE.P2	#1Fh,C		;Wait
A6E	L7:	DEC.B	C
5CF		BRCC	L7
01		RET

		END


So the HEX-string you must HEXIFY and assemble is:

8F2EE408FC58401BD070430D816C45E0712074206B007C10
7110A4E53E77008DC58403006600302154031F1A6E5CF01

You can use the processor notes of Alonzo Gariepy, BUT YOU MUST
KEEP IN MIND THAT RAM ENDS AT 04FFFF, (not 0CFFFF as on the 28S).

The object type adresses are the same.

Store the machine code program (It will get to be a System Object)
in the variable 'SEND.OBJ'.

Now type in the following program:
'RC5'
<< IP 128 MOD
  IF DUP 64 <
  THEN 12288
  ELSE 8192
  END SWAP 64 MOD + GROUP IP 32 MOD 64 * + DUP
  IF OLD SAME
  THEN 4096 +
  END DUP 'OLD' STO 64 *
  #1C490 SYSEVAL SEND.OBJ DROP
>>

Now, type
0 'GROUP' STO and you are ready to go.

Store the group-number of the machine you want
to control in 'GROUP'.

You can send the commands by entering the command-number and
pressing RC5.

	Good Luck!


B.T.W. Some group numbers:

	00 TV1		12 LV2 / CDLV
	01 TV2		16 Pre Amp 1
	02 TXT		17 Tuner
	03 VD		18 Recorder 1
	04 LV1		19 Pre Amp 2
	05 VCR1		20 CD
	06 VCR2		21 Phono
	08 Satelite	23 Recorder 2

----------------------------------------------------------
Eric Toonen
Djept-Zuid 6
5502 RP  Veldhoven
The Netherlands
----------------------------------------------------------
--
|                 | "Never imagine yourself not to be otherwise than what |
| Jurjen N.E. Bos | it might appear to others that what you were or might |
|                 | have been was not otherwise than what you had been    |
|  jurjen@cwi.nl  | would have appeared to them to be otherwise."         |

frechett@snoopy.Colorado.EDU (Mac the Ripper/ / / /) (08/06/90)

This sounds VERY interesting.  BUT I don't have a 28C.   Is anybody working
on a method of doing this on the 48?  I think this could be quite impressive.
If anyone has something like this or is working on it for the hp48sx I would
love a copy.    

	ian frechett                   frechett@snoopy.colorado.edu

akcs.michaelv@hpcvbbs.UUCP (Michael VanLoon) (10/19/90)

What would be REALLY impressive (and I assume quite possible) is to use
that IR receiver diode to make the 48 learn your remotes like a universal
remote controler does, then use the sender diode to control your
equipment!  "It could happin..."--Judy Tenuda

Michael V
ISU

akhiani@ricks.enet.dec.com (Homayoon Akhiani) (10/25/90)

I think I missed the source for Remote control with HP28C 1BB
Can someone please mail it to me
Thanks in advance,

Homayoon

akhiani@ricks.enet.dec.com