Page 1 of 2

Using special pause protocol

Posted: Fri Sep 02, 2005 3:47 am
by clinkme
Hello,
please help me to use a special pause protocol from URC-8040 extender. the code for it is:
tv_1104:
db FB ;Protocol = 0x1FB
db 0 ;No digit map
db 1 ;No defined keys

Protocol_1FB:
db 00,00,01
org Ram
LD W2, R03 ;Get count
CALL BlinkW2Times ;Pause by blinking LED
RET
There is no parameters, as for other pause protocol I've found at this forum, it only blinks.
I don't want to use the entire extender code, but only this pause proto. Because it is not binded to any button, so I don't know how to put in in my macro.

Anyhow, is there any advanced manuals, how the microprocessor handles the upgrade codes and so on? Or, the guide how to write my own extender? I'm using RM (KM doesn't work on my system) and IR 6.15 and have good knowledge about assemblers and microprocessors, but there is no docs about how to my new code should be interpreted by host.

Thanks in advance,
Il

Posted: Fri Sep 02, 2005 5:05 am
by Capn Trips
This device upgrade and protocol do not CREATE a pause function (hence it's not "bound"to a button), they provide the CAPABILITY to create a pause function. From the extender readme:
For a long delay, use a KeyMove connected to the Pause protocol (TV/1104).
The hex command is the amount of delay from 01 (smallest) to FF. The delay
is in units of about 0.4 seconds.
I'm not sure whether this protocol requires the extender to work, although I would doubt it.

Disclaimer: If this protocol ONLY works with the extender, I apologize for confusing the issue. I have not seen a standalone Pause protocol for this remote.


Here's what I would try:

Why don't you open two IR windows side by side. In one, open a bare IR file for the extended 8040 with the extender installed. In the second, view YOUR IR file.

Go to the protocol tab on each, select the Pause protocol for editing on the first one, create a new protocol in yours, and copy all of the entries from one to the other.

Repeat this for the Pause device upgrade on the device upgrade tab.

Now you have the protocol and device upgrade in your IR file. The next step is to build a keymove, calling on device TV/1104, as described in the quoted text above, (a Hex value of 0A should give you about a 4 sec. delay, if the readme's correct) and insert this pause into whatever macro requires it.

Posted: Fri Sep 02, 2005 7:27 am
by clinkme
OK, at now it's clear for me. The pause function, because it is only "virtual", can be inserted into macro *only* from the PC with IR.EXE. Thanks...
But what about the second question about guidelines how the microprocessor handles the upgrade code (I mean what registers|memory area it uses, for example). Again, the extender uses some subroutines like
BlinkW2Times = 3149.
Where they are from? Is they documented (usage, input\output parameters and so on)?

Posted: Fri Sep 02, 2005 7:54 am
by Capn Trips
clinkme wrote: But what about the second question about guidelines how the microprocessor handles the upgrade code (I mean what registers|memory area it uses, for example). Again, the extender uses some subroutines like
BlinkW2Times = 3149.
Where they are from? Is they documented (usage, input\output parameters and so on)?
I don't know, and frankly, such knowledge is unnecessary for USING the tools provided here. If you want to get into the details of HOW all of these various tools are built and developed, that's significantly beyond the NORMAL types of questions people bring to this forum. There is, of course, the handful of true experts, who actually developed (and continue to improve) these tools who will have to address your question.

My question to you is, "Why do you need to know?"

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 9:27 am
by mr_d_p_gumby
clinkme wrote:I'm using RM (KM doesn't work on my system) and IR 6.15
Why are you trying to use the extender's pause protocol? The latest versions of RM now support the stand-alone pause protocol, so you could always use that version.

The extender versions of the pause protocol usually work by calling a subroutine that blinks the LED in order to provide a time delay. I don't know specifically about the URC-8040, but many remotes (without the extender installed) disable the LED blink routine during macro execution, so it's possible that this may not work in your case without further modification. I know that some of them don't work as intended even when used within their extender (i.e., they provide very short delay times because the LED blink routine is still disabled).
clinkme wrote:Anyhow, is there any advanced manuals, how the microprocessor handles the upgrade codes and so on? Or, the guide how to write my own extender?
About the only guide you'll find to writing an extender is the source code to another extender. :eek: Maybe one of the extender authors can help you modify the protocol.

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 10:13 am
by underquark
mr_d_p_gumby wrote:The extender versions of the pause protocol usually work by calling a subroutine that blinks the LED in order to provide a time delay. I don't know specifically about the URC-8040...
No LED - it's a blue-elctroluminescent Kameleon. Interesting to see what happens - whole thing flashes or no delay to speak of because no LED? Either way sounds like use a different delay.

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 10:23 am
by Mark Pierson
underquark wrote:No LED - it's a blue-elctroluminescent Kameleon.
I belive it still uses the BlinkLED routine to flash the Kameleon's IR icon.

Posted: Fri Sep 02, 2005 11:05 am
by underquark
Ah1, the )) bit?

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 11:16 am
by mtakahar
mr_d_p_gumby wrote:I know that some of them don't work as intended even when used within their extender (i.e., they provide very short delay times because the LED blink routine is still disabled).
I believe this problem is specific to the extenders for LCD remotes that do not have the LED blinking routine.

Hal

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 11:47 am
by Capn Trips
mr_d_p_gumby wrote:
clinkme wrote:I'm using RM (KM doesn't work on my system) and IR 6.15
Why are you trying to use the extender's pause protocol? The latest versions of RM now support the stand-alone pause protocol, so you could always use that version.
That seemed to be his original question, i.e.

Is there a standalone Pause protocol, and if so WHERE?

I searched the file section and could find none, so I tried to advise a possible workaround (with disclaimer).

If there is a standalone pause protocol for that remote (or ANY remote, for that matter) WHERE ARE THEY HIDING?

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 12:28 pm
by Mark Pierson
Capn Trips wrote:If there is a standalone pause protocol for that remote (or ANY remote, for that matter) WHERE ARE THEY HIDING?
Both KM and RM have had the Pause Protocol for a while.

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 12:50 pm
by The Robman
Capn Trips wrote:If there is a standalone pause protocol for that remote (or ANY remote, for that matter) WHERE ARE THEY HIDING?
You can find them in the Special Protocols folder in the old Yahoo file section.

pause.txt - robman1994 - Apr 12, 2004
Allows to insert a variable length pause inside a macro

pause_protocol_example_for_KM.txt - mr_d_p_gumby - May 31, 2004
An example KM upgrade file that shows how to set up the Pause special protocol in KM. This example is setup for a URC-881x, but can be set for any other remote. Can be used with or without an extender, and it can generate key moves for remotes using the new-style keymoves, such as the URC-6131 and Atlas DVR.

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 2:53 pm
by mr_d_p_gumby
mtakahar wrote:
mr_d_p_gumby wrote:I know that some of them don't work as intended even when used within their extender (i.e., they provide very short delay times because the LED blink routine is still disabled).
I believe this problem is specific to the extenders for LCD remotes that do not have the LED blinking routine.
You may be right Hal, but I think the URC-6131/Atlas extenders exhibit this behavior too. Also, if I'm remembering right, I think we've had trouble with the URC-881x version as well.

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 2:57 pm
by mr_d_p_gumby
Mark Pierson wrote:
Capn Trips wrote:If there is a standalone pause protocol for that remote (or ANY remote, for that matter) WHERE ARE THEY HIDING?
Both KM and RM have had the Pause Protocol for a while.
They both provide support for ANY remote, possibly even yours. :D (Can I find the ANY remote somewhere near the ANY key on my keyboard?)

Re: Using special pause protocol

Posted: Fri Sep 02, 2005 3:15 pm
by underquark
mr_d_p_gumby wrote: Can I find the ANY remote somewhere near the ANY key on my keyboard?
Yes, but its functionality is limited as you can only HIT it to continue.