Page 2 of 3 FirstFirst 123 LastLast
Results 16 to 30 of 34

Thread: Tivoapp patch to remove Showcases

  1. #16
    Join Date
    Mar 2005
    Posts
    235
    Thanks Jamie, you beat me to it. I probably should've posted this info a while ago.

    As tivo4mevo pointed out, dropping message may anger the TiVo Gods, and cause the unit to hang while an client (e.g pid:SiHost_SiHo) waits for the packet to arrive. Unfortunately, routerplus itself will drop messages to client if the queue gets too full. By default I believe it was set to 64 messages. I found that it wasn't too difficult to overload the queue on my THD by simply channel surfing quickly. Experimentally I found the queue growing to 300, so I increased the MSG_MAX_PER_CLIENT to 512 to allow for some headroom. I also found that excessive "dropped notification"'s were reported when I ran in intercept clients, so I changed the source to only report when the client had a name.

    Even thought I only found this problem when I got my THD, I remember having lockups on my s2.5 in when I would navigate in the TiVo menu too quickly, and it wouldn't surprise me if this was the cause.

    I tried to post this to the pvrhax0r site but was not able to, so here it isif anyone needs it:
    Code:
    --- routerplus.c.orig	Sun Nov 09 21:36:56 2008
    +++ routerplus.c	Sun Nov 09 21:36:56 2008
    @@ -37,7 +37,7 @@
      * DEBUGGING
      */
     
    -#define DEBUG 
    +//#define DEBUG 
     
     #ifdef DEBUG
     #define DBG printk
    @@ -63,7 +63,10 @@
     #define SESS_ELEMENTS		64
     #define SERV_ELEMENTS		64
     
    -#define MSG_MAX_PER_CLIENT	64
    +// JKOZEE - Increased MSG_MAX_PER_CLIENT because some clients hang if they lose packets, 
    +//          specifically "XXX:SiHost_SiHo" on later platforms.
    +//#define MSG_MAX_PER_CLIENT	64
    +#define MSG_MAX_PER_CLIENT	512
     #define MSG_MAX_DEBUGGER	512
     
     #define MSG_MAX_FAKE		192
    @@ -745,9 +748,13 @@
     	down_write(&inst->msgsem);
     	if(msg_deliver(c, m) < 0)
     	{
    +		// JKOZEE - Change logging this warning to named clients only to prevent warnings for intercepters
    +		if (c->name[0] )
    +		{
     		printk(KERN_WARNING
     			"routerplus: dropped notification message to "
    -			"client %d\n", c->conn_id);
    +				"client 0x%x (%s)\n", c->conn_id, c->name);
    +		}
     		msg_free(m);
     	}
     	up_write(&inst->msgsem);

  2. #17
    Join Date
    Jan 2009
    Posts
    13
    Thanks for the patch, jkozee. Recompiled routerplus and been running for 2 days with no lockups at all.

  3. #18
    Join Date
    Jan 2009
    Posts
    13
    bump

    Still haven't found a tivoapp patch, but I've been avoiding ads successfully using routerplus for over a month now. Attached is a routerplus app, promo_killer, including the hacked up chanflip.c source code and a precompiled binary. This hack has only been tested on 11.x-01-652. On my boxes, apps like Netflix/Rhapsody still work while using this hack, only the ads are suppressed.

    Also attached is a sample program, drop_msg, that simply drops messages from the target you specify. Ex: 'drop_msg 0x29040' will piss off your wife until you kill off the program . Handy in testing (sometimes, I guess).

    Routerplus has been very helpful with tracing through the Tivo code. Thanks again! to tivo4mevo for his sendkeyplus/trickeyplus programs for lots of routerplus examples and jkozee for the routerplus fix. TvBus activity coupled with strings in tivoapp & mfs have made it much easier to understand what's going on under the Tivo's hood.

  4. #19
    Join Date
    Jun 2006
    Location
    Dougal County
    Posts
    1,007
    This tivoapp patch will nuke both the Yellow Star menu items as well as the "More about..." pause pop-ups. Rhapsody, YouTube, and all the other "Music & Photos" stuff still works, but the "Video on Demand" menu (Netflix,Amazon) does not

    I don't really use any of that stuff so I don't care

    Code:
    11.0d
    0x005542e8/0x001542e8 "0c15996e 00000000"
    Lightly tested. I'm sure there's a MUCH better way of doing it. worksforme, etc

  5. #20
    Join Date
    Jun 2006
    Location
    Dougal County
    Posts
    1,007
    This patch is not quite as ugly as the one above:
    Code:
    11.0d
    0x0079b6c4/0x0039b6c4 "0c21a33d 24020000"
    0x00868d68/0x00468d68 "0d293985 00000000"
    
    or:
    
    echo -ne "\x00\x00\x00\x00" | dd conv=notrunc of=tivoapp bs=1 seek=4623720
    It only differs in that the "Showcases" item from the Music&Photos menu is also suppressed. VoD menu is still broken.

    It traces back to the "TvPvrPromotionServer" code starting at 0x00868cf4 in the 11.0d tivoapp. Particularly, if you force the branch at 0x00868d3c to be taken, you'll get the same behavior as this patch. This is all possible because the jump at 0x00868d68 is being skipped as indicated in the edit above. Perhaps a more specific patch to avoid the loss of VoD could be developed by starting here.
    Last edited by jt1134; 09-12-2009 at 09:36 PM.

  6. #21
    Join Date
    Apr 2005
    Posts
    6
    Quote Originally Posted by alferd.packer View Post
    bump

    Still haven't found a tivoapp patch, but I've been avoiding ads successfully using routerplus for over a month now. Attached is a routerplus app, promo_killer, including the hacked up chanflip.c source code and a precompiled binary. This hack has only been tested on 11.x-01-652. On my boxes, apps like Netflix/Rhapsody still work while using this hack, only the ads are suppressed.
    So how do you go about getting the promo_killer app working on a Tivo?

  7. #22
    Join Date
    Jun 2006
    Location
    Dougal County
    Posts
    1,007
    Quote Originally Posted by ddoyle View Post
    So how do you go about getting the promo_killer app working on a Tivo?
    assuming you have routerplus installed and the message structure is the same on your sw version

    ./promo_killer &

  8. #23
    Join Date
    Feb 2006
    Posts
    64
    I patched tivoapp version 5.3-01-2-540 and got rid of the "Showcases and TV Guide" menu item by making it look for /Blowcase in MFS which probably will never exist. At VMA offset 0x01339b88 change 2f53686f to 2f426c6f.

    Works for me on 5.3.

  9. #24
    Join Date
    Jun 2010
    Posts
    60
    Quote Originally Posted by ddoyle View Post
    So how do you go about getting the promo_killer app working on a Tivo?
    My question exactly... also, where is routerplus and how would you use these programs with it?
    Last edited by Heartbreaker; 02-17-2011 at 03:47 AM. Reason: typo

  10. #25
    Join Date
    Feb 2004
    Location
    New York City
    Posts
    577
    Routerplus is here: http://www.pvrhax0r.com/forum/showth...hp?threadid=51

    You install the kernel module per the instructions included with routerplus. Paraphrasing from memory:

    Copy routerplus.o to /var, then:
    Code:
    mount -o remount,rw /
    cd /lib/modules
    cp router.o orig_router.bk
    cp /var/routerplus.o router.o
    mount -o remount,ro /
    reboot
    Then once you verify the TiVo works normally with the replacement router.o, you copy promo_killer to your TiVo's HD somewhere, chmod 755 it, and then run it:

    Code:
    cd /var/hacks
    chmod 755 promo_killer
    ./promo_killer &
    the & forces promo_killer to the background so it continues to run after you close the telnet session. You can also add those lines to your rc.sysinit.author file to run promo_killer whenever your tivo starts.

  11. #26
    Join Date
    May 2004
    Posts
    253
    Quote Originally Posted by Thinkdiff View Post
    Code:
    cd /var/hacks
    chmod 755 promo_killer
    ./promo_killer &
    the & forces promo_killer to the background so it continues to run after you close the telnet session.
    Does that work on a TiVo? Because the process is a child of the session, I'd expect it to get killed when logging out, unless you do a disown first.

  12. #27
    Join Date
    Jun 2010
    Posts
    60
    Quote Originally Posted by Thinkdiff View Post
    Routerplus is here: http://www.pvrhax0r.com/forum/showth...hp?threadid=51
    Code:
    cd /var/hacks
    chmod 755 promo_killer
    ./promo_killer &
    the & forces promo_killer to the background so it continues to run after you close the telnet session. You can also add those lines to your rc.sysinit.author file to run promo_killer whenever your tivo starts.
    this may seem like a silly question but can you just put the 2 lines
    chmod 755 promo_killer
    ./promo_killer &
    anywhere in your rc.sysinit.author file or does it have to be in a specific spot (i.e. at the end? or write it anywhere when in VI? etc?)

  13. #28
    Join Date
    Feb 2004
    Location
    New York City
    Posts
    577
    Those two lines alone won't do anything. The chmod command only needs to be run once when you copy the file to the TiVo, it doesn't have to be run every startup.

    First, you need to tell it where to look for promo_killer. You can either do this via cd:
    Code:
    cd /var/hacks/
    ./promo_killer &
    or by putting the full path name:
    Code:
    /var/hacks/promo_killer &
    The position inside the author file isn't that important, but it does have some implications. If you use the "cd" method, every command after the cd will run relative to the /var/hacks folder. So if there are any commands that rely on relative paths, they'll have to be adjusted.

    Common practice is to put new lines starting at the end of the author file, unless there's a specific need to have something load before another program.

  14. #29
    Join Date
    Feb 2004
    Location
    New York City
    Posts
    577
    Quote Originally Posted by mike_s View Post
    Does that work on a TiVo? Because the process is a child of the session, I'd expect it to get killed when logging out, unless you do a disown first.
    If you leave the command running and try to "exit", it just sits and doesn't close the session. However, if you forcibly close the session, it continues to run on the TiVo long after the session has been terminated. I'm not sure if there is some timeout for this, but it does seem to work, although I guess it's not the best practice.

  15. #30
    Join Date
    Jun 2010
    Posts
    60
    Quote Originally Posted by Thinkdiff View Post
    Routerplus is here: http://www.pvrhax0r.com/forum/showth...hp?threadid=51

    You install the kernel module per the instructions included with routerplus. Paraphrasing from memory:

    Copy routerplus.o to /var, then:
    Code:
    mount -o remount,rw /
    cd /lib/modules
    cp router.o orig_router.bk
    cp /var/routerplus.o router.o
    mount -o remount,ro /
    reboot
    When I downloaded routerplus-20050202, and unzipped there was no routerplus.o file in the folder. Is there a step missing? Closest I could find was in the routerplus/obj/ folder there are 2 files named routerplus-2.4.18.o and routerplus-2.4.20.o. Is it one of those?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •