PDA

View Full Version : Load THD slices and loopsets into a THDXL image to convert it to a true THD image?



bkdtv
05-28-2009, 07:22 PM
Over TCF, Jamie P posted the following in response to a comment about issues caused by running TivoHD XL image on an unmodified TivoHD:

It should be possible to load THD slices and loopsets into a THDXL image to convert it to a true THD image with the THDXL partition layout. You'd need a "hacked" tivo to do that, but once done, anyone would use the image, after a C&DE.

Has anyone done this?

tivo4mevo
05-28-2009, 07:27 PM
Ciper was experimenting with this, though I don't know how far he got.

Creating loopset slices is non-trivial; it would probably be easier to forge loopset objects to point to the XL's loopsets.

Jamie
05-28-2009, 07:41 PM
It's not that hard to extract loopset resources and move them to another tivo. See the "mfs from scratch" thread (http://www.dealdatabase.com/forum/showthread.php?t=29775). They don't have to be formatted as slices. The only tricky part may be making sure they get a low fsid so that they don't get lost when someone makes a backup with a low mfsbackup -f option value.

If I remember right, there are only two loopset resources that are different between the two platforms. Forging might be an option too, but it seems better to match the loopsets from a real THD image.

jt1134
05-30-2009, 03:38 PM
I created a loopset slice from THD loopsets a while back and tried to load them on my HR10-250. I never did get all of that working correctly, but the slice did load correctly, though. Perhaps it might be easier to get it to work in this case. I don't have the scripts anymore that I used to create the slice, but I could probably recreate them. I don't have any use for this myself, so I probably won't pursue it too far, but if someone else would want the slice, I'll post it somewhere if I can successfully build it again.

AlphaWolf
07-31-2009, 04:30 AM
The only tricky part may be making sure they get a low fsid so that they don't get lost when someone makes a backup with a low mfsbackup -f option value.

I think if you just loaded tivoapp in a minimal state (it's been a while but I think you comment out everything past stage d in the rc.sysinit,) you could mfsrubbishtree / (or if mfsrubbishtree doesn't allow doing that to the root directory for safety reasons, I haven't tried, then just zap each directory individually,) and after that is done do an mfslive truncated backup and it'll probably leave a completely blank mfs image when you restore.

From there boot to another minimal MFS state then dbload the loopsets and then the software slices and I don't think there'd be any issue.

I'd test this rather than just talk about it except I don't have the physical hardware needed to do so at the moment, and probably won't for a while.

Jamie
07-31-2009, 10:12 AM
I think if you just loaded tivoapp in a minimal state (it's been a while but I think you comment out everything past stage d in the rc.sysinit,) you could mfsrubbishtree / (or if mfsrubbishtree doesn't allow doing that to the root directory for safety reasons, I haven't tried, then just zap each directory individually,) and after that is done do an mfslive truncated backup and it'll probably leave a completely blank mfs image when you restore.

From there boot to another minimal MFS state then dbload the loopsets and then the software slices and I don't think there'd be any issue.

I'd test this rather than just talk about it except I don't have the physical hardware needed to do so at the moment, and probably won't for a while.I could be wrong, but I think your process doesn't reset the starting fsid for allocation, and you'll still end up with high fsid's for the loopset resources.

It would be nice if we had an mfs64 fsmake.

jt1134
01-26-2010, 09:43 PM
Got bored today and decided to give this a shot

The only differences (besides a few *.png refs) between the THD and XL images were the *Maroon* loopsets. I extracted these loopsets from a THD image and created a slice from them. I then restored an XL image to a spare drive and dbload'd that slice.

Even after nuking most everything from mfs and running a C&DE, I still couldn't get the loopsets inserted with a low fsid, but was still able to get everything backed up successfully.

Haven't tested the images on a drive larger than 1TB since I don't currently have a spare one, but everything seems to work fine on this drive so far.

If anyone would like to give the image a try, shoot me a pm. They're both (winmfs *.tbk & mfstools *.mfs) over 400 MB so it would be prefered if you're familiar with setting up an ftp server. A C&DE is not necessary before using these images since I nuked most everything from mfs before doing the backup.

Attached is the quick and dirty script I wrote to extract the loopsets and dump everything into a writeguide compatible format for slice creation. Source code for Tridge's writeguide can found here (http://sites.google.com/site/thomsontivo/usefultivoapplications) among other places on the 'net. Note that the script dumps all LoopSet resources, not just the *Maroon* ones, so some editing of the script or resultant output may be warranted before slice creation.

tivo4mevo
01-26-2010, 11:40 PM
I think you'd need a relatively "fresh" XL image (i.e., backup made before running the unit in earnest) to ensure the loaded loopset slices receive low FSIDs.

But to understand, after loading the TiVoHD loopsets onto the XL image, you confirmed that you could load TiVoHD software slices into the XL image and successfully install them? That would presumably yield a valid TiVoHD [non-XL] software image with base 1TB MFS, suitable for expansion to 2TB.

jt1134
01-27-2010, 12:16 AM
I believe you're correct. The XL image I started with contained a full keyring, guide data, etc. It certainly wasn't "fresh." (seems it came from an instantcake image)


But to understand, after loading the TiVoHD loopsets onto the XL image, you confirmed that you could load TiVoHD software slices into the XL image and successfully install them?
yup


TiVo_HD#[/] $ echo mls /SwSystem | tivosh
Directory of /SwSystem starting at ''

Name Type FsId Date Time Size
---- ---- ---- ---- ---- ----
11.0b-01-2-658 tyDb 13272 01/27/10 00:01 884
11.0d-01-2-652 tyDb 16163 01/27/10 00:07 908
ACTIVE tyDb 16163 01/27/10 00:07 908


That would presumably yield a valid TiVoHD [non-XL] software image with base 1TB MFS, suitable for expansion to 2TB.
Hopefully someone can test the image and see.

I've noticed a few oddities with the "hybrid" image however. For example, pdisk reports "No partition map exists". Will keep poking at it...


TiVo_HD#[/] $ mfs_info
Super:
state=0 magic=ebbafeed
devlist=/dev/hda10 /dev/hda11 /dev/hda12 /dev/hda13
zonemap_ptr=1121 total_secs=1951672320 next_fsid=200000
backup_zonemap_ptr=8fffe zonemap_size=1
/dev/hda10 has 589824 sectors
/dev/hda11 has 876054528 sectors
/dev/hda12 has 589824 sectors
/dev/hda13 has 1074438144 sectors
zone(0):
sector=1121 backup_sector=589822 next_zonemap_ptr=263266 backup_next_zonemap_ptr=589788 next_size=876052480
zone_start: 1122 zone_last: 263265 zone_size: 262144 free: 262144
next_zonemap_size: 34 zonemap_size: 1 per_chunk: 262144 next_per_chunk: 20480
logstamp: 73709 type: 0 crc: e3654be0 zero: 0 buddy_size: 1
00000000 00 00 00 00 00 00 04 61 00 00 00 00 00 08 ff fe
00000010 00 00 00 00 00 04 04 62 00 00 00 00 00 08 ff dc
00000020 00 00 00 00 34 37 80 00 00 00 00 00 00 00 04 62
00000030 00 00 00 00 00 04 04 61 00 00 00 00 00 04 00 00
00000040 00 00 00 00 00 04 00 00 00 00 00 22 00 00 00 01
00000050 00 04 00 00 00 00 50 00 00 01 1f ed 00 00 00 00
00000060 e3 65 4b e0 00 00 00 00 00 00 00 01 5f 18 0b 18
00000070 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 01
00000080 80 00 00 00 aa aa aa aa aa aa aa aa aa aa aa aa
00000090 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000a0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000b0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000c0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000d0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000e0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000f0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000100 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000110 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000120 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000130 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000140 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000150 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000160 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000170 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000180 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000190 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001a0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001b0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001c0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001d0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001e0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001f0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
zone(1):
sector=263266 backup_sector=589788 next_zonemap_ptr=263300 backup_next_zonemap_ptr=589754 next_size=326416
zone_start: 589824 zone_last: 876642303 zone_size: 876052480 free: 872509440
next_zonemap_size: 34 zonemap_size: 34 per_chunk: 20480 next_per_chunk: 8
logstamp: 73745 type: 2 crc: 052bb459 zero: 0 buddy_size: 17
00000000 00 00 00 00 00 04 04 62 00 00 00 00 00 08 ff dc
00000010 00 00 00 00 00 04 04 84 00 00 00 00 00 08 ff ba
00000020 00 00 00 00 00 04 fb 10 00 00 00 00 00 09 00 00
00000030 00 00 00 00 34 40 7f ff 00 00 00 00 34 37 80 00
00000040 00 00 00 00 34 01 70 00 00 00 00 22 00 00 00 22
00000050 00 00 50 00 00 00 00 08 00 01 20 11 00 00 00 02
00000060 05 2b b4 59 00 00 00 00 00 00 00 11 5f 18 0f 60
00000070 5f 18 2f 74 5f 18 3f 88 5f 18 47 9c 5f 18 4b b0
00000080 5f 18 4d c4 5f 18 4e d8 5f 18 4f 6c 5f 18 4f c0
00000090 5f 18 4f f4 5f 18 50 18 5f 18 50 34 5f 18 50 4c
000000a0 5f 18 50 64 5f 18 50 7c 5f 18 50 90 5f 18 50 a4
000000b0 00 01 00 00 00 00 00 01 00 00 a6 10 00 00 08 00
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
zone(2):
sector=263300 backup_sector=589754 next_zonemap_ptr=876644352 backup_next_zonemap_ptr=877234175 next_size=262144
zone_start: 263334 zone_last: 589749 zone_size: 326416 free: 193584
next_zonemap_size: 1 zonemap_size: 34 per_chunk: 8 next_per_chunk: 262144
logstamp: 73745 type: 1 crc: b58b5ef2 zero: 0 buddy_size: 17
00000000 00 00 00 00 00 04 04 84 00 00 00 00 00 08 ff ba
00000010 00 00 00 00 34 40 88 00 00 00 00 00 34 49 87 ff
00000020 00 00 00 00 00 04 00 00 00 00 00 00 00 04 04 a6
00000030 00 00 00 00 00 08 ff b5 00 00 00 00 00 04 fb 10
00000040 00 00 00 00 00 02 f4 30 00 00 00 01 00 00 00 22
00000050 00 00 00 08 00 04 00 00 00 01 20 11 00 00 00 01
00000060 b5 8b 5e f2 00 00 00 00 00 00 00 11 5f 18 55 68
00000070 5f 18 75 7c 5f 18 85 90 5f 18 8d a4 5f 18 91 b8
00000080 5f 18 93 cc 5f 18 94 e0 5f 18 95 74 5f 18 95 c8
00000090 5f 18 95 fc 5f 18 96 20 5f 18 96 3c 5f 18 96 54
000000a0 5f 18 96 6c 5f 18 96 84 5f 18 96 98 5f 18 96 ac
000000b0 00 01 00 00 00 00 00 02 00 00 02 ba 00 00 08 00
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000110 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
zone(3):
sector=876644352 backup_sector=877234175 next_zonemap_ptr=876906497 backup_next_zonemap_ptr=877234141 next_size=1074421760
zone_start: 876644353 zone_last: 876906496 zone_size: 262144 free: 262144
next_zonemap_size: 34 zonemap_size: 1 per_chunk: 262144 next_per_chunk: 20480
logstamp: 73709 type: 0 crc: a22dd95f zero: 0 buddy_size: 1
00000000 00 00 00 00 34 40 88 00 00 00 00 00 34 49 87 ff
00000010 00 00 00 00 34 44 88 01 00 00 00 00 34 49 87 dd
00000020 00 00 00 00 40 0a 60 00 00 00 00 00 34 40 88 01
00000030 00 00 00 00 34 44 88 00 00 00 00 00 00 04 00 00
00000040 00 00 00 00 00 04 00 00 00 00 00 22 00 00 00 01
00000050 00 04 00 00 00 00 50 00 00 01 1f ed 00 00 00 00
00000060 a2 2d d9 5f 00 00 00 00 00 00 00 01 5f 18 9b c8
00000070 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 01
00000080 80 00 00 00 aa aa aa aa aa aa aa aa aa aa aa aa
00000090 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000a0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000b0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000c0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000d0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000e0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000000f0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000100 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000110 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000120 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000130 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000140 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000150 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000160 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000170 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000180 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
00000190 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001a0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001b0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001c0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001d0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001e0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
000001f0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa
zone(4):
sector=876906497 backup_sector=877234141 next_zonemap_ptr=876906531 backup_next_zonemap_ptr=877234107 next_size=327536
zone_start: 877234176 zone_last: 1951655935 zone_size: 1074421760 free: 1072701440
next_zonemap_size: 34 zonemap_size: 34 per_chunk: 20480 next_per_chunk: 8
logstamp: 73745 type: 2 crc: 1e5dd144 zero: 0 buddy_size: 17
00000000 00 00 00 00 34 44 88 01 00 00 00 00 34 49 87 dd
00000010 00 00 00 00 34 44 88 23 00 00 00 00 34 49 87 bb
00000020 00 00 00 00 00 04 ff 70 00 00 00 00 34 49 88 00
00000030 00 00 00 00 74 53 e7 ff 00 00 00 00 40 0a 60 00
00000040 00 00 00 00 3f f0 20 00 00 00 00 22 00 00 00 22
00000050 00 00 50 00 00 00 00 08 00 01 20 11 00 00 00 02
00000060 1e 5d d1 44 00 00 00 00 00 00 00 11 5f 18 a0 a8
00000070 5f 18 c0 bc 5f 18 d0 d0 5f 18 d8 e4 5f 18 dc f8
00000080 5f 18 df 0c 5f 18 e0 20 5f 18 e0 b4 5f 18 e1 08
00000090 5f 18 e1 3c 5f 18 e1 60 5f 18 e1 7c 5f 18 e1 94
000000a0 5f 18 e1 ac 5f 18 e1 c4 5f 18 e1 d8 5f 18 e1 ec
000000b0 00 01 00 00 00 00 00 00 00 00 cc c8 00 00 08 00
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
zone(5):
sector=876906531 backup_sector=877234107 next_zonemap_ptr=0 backup_next_zonemap_ptr=-6148914691236517206 next_size=0
zone_start: 876906565 zone_last: 877234100 zone_size: 327536 free: 262912
next_zonemap_size: 0 zonemap_size: 34 per_chunk: 8 next_per_chunk: 0
logstamp: 73745 type: 1 crc: 850c87f2 zero: 0 buddy_size: 17
00000000 00 00 00 00 34 44 88 23 00 00 00 00 34 49 87 bb
00000010 00 00 00 00 00 00 00 00 aa aa aa aa aa aa aa aa
00000020 00 00 00 00 00 00 00 00 00 00 00 00 34 44 88 45
00000030 00 00 00 00 34 49 87 b4 00 00 00 00 00 04 ff 70
00000040 00 00 00 00 00 04 03 00 00 00 00 00 00 00 00 22
00000050 00 00 00 08 00 00 00 00 00 01 20 11 00 00 00 01
00000060 85 0c 87 f2 00 00 00 00 00 00 00 11 5f 18 e7 48
00000070 5f 19 07 5c 5f 19 17 70 5f 19 1f 84 5f 19 23 98
00000080 5f 19 25 ac 5f 19 26 c0 5f 19 27 54 5f 19 27 a8
00000090 5f 19 27 dc 5f 19 28 00 5f 19 28 1c 5f 19 28 34
000000a0 5f 19 28 4c 5f 19 28 64 5f 19 28 78 5f 19 28 8c
000000b0 00 01 00 00 00 00 00 00 00 00 98 3a 00 00 08 00
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
total_inodes: 262144

jt1134
01-27-2010, 11:39 PM
I've posted a link to the "hybrid" image here (http://dealdatabase.com/forum/showthread.php?p=306056#post306056) for anyone interested.

edit - download link removed

jt1134
01-28-2010, 02:51 PM
Managed to acquire a 1.5TB drive today and restore the hybrid image to it

System information screen reports 237 HD hours / 2072 SD hours



Partition Maps
#: type name length base ( size )
1 Apple_partition_map Apple 63@1 ( 31.5K)
2 Image Bootstrap 1 1@1950492736( 512.0 )
3 Image Kernel 1 8192@1950492737( 4.0M)
4 Ext2 Root 1 524288@1950500929( 256.0M)
5 Image Bootstrap 2 1@1951025217( 512.0 )
6 Image Kernel 2 8192@1951025218( 4.0M)
7 Ext2 Root 2 524288@1951033410( 256.0M)
8 Swap Linux swap 262144@1951557698( 128.0M)
9 Ext2 /var 524288@1951819842( 256.0M)
10 MFS MFS application region 589824@1952344130( 288.0M)
11 MFS MFS media region 876054528@1074438208( 417.7G)
12 MFS MFS application region 2 589824@1952933954( 288.0M)
13 MFS MFS media region 2 1074438144@64 ( 512.3G)
14 MFS MFS App by Winmfs 2048@1953523778( 1.0M)
15 MFS MFS Media by Winmfs 976732160@1953525826( 465.7G)




Zone Maps
Z0: type=0
map_start=1121 map_size=1 backup_map_start=589822
next_map_start=263266 next_map_size=34 next_backup_map_start=589788
zone_first=1122 zone_last=263265 zone_size=262144 min(chunk)=262144
free=262144 checksum=8ac81e70 logstamp=45323 num_bitmap=1
Z1: type=2
map_start=263266 map_size=34 backup_map_start=589788
next_map_start=263300 next_map_size=34 next_backup_map_start=589754
zone_first=589824 zone_last=876642303 zone_size=876052480 min(chunk)=20480
free=872714240 checksum=3877c27f logstamp=45397 num_bitmap=17
Z2: type=1
map_start=263300 map_size=34 backup_map_start=589754
next_map_start=876644352 next_map_size=1 next_backup_map_start=877234175
zone_first=263334 zone_last=589749 zone_size=326416 min(chunk)=8
free=254560 checksum=301b77a9 logstamp=45479 num_bitmap=17
Z3: type=0
map_start=876644352 map_size=1 backup_map_start=877234175
next_map_start=876906497 next_map_size=34 next_backup_map_start=877234141
zone_first=876644353 zone_last=876906496 zone_size=262144 min(chunk)=262144
free=262144 checksum=cb808ccf logstamp=45323 num_bitmap=1
Z4: type=2
map_start=876906497 map_size=34 backup_map_start=877234141
next_map_start=876906531 next_map_size=34 next_backup_map_start=877234107
zone_first=877234176 zone_last=1951655935 zone_size=1074421760 min(chunk)=20480
free=1072496640 checksum=721ed43f logstamp=45397 num_bitmap=17
Z5: type=1
map_start=876906531 map_size=34 backup_map_start=877234107
next_map_start=1951672320 next_map_size=35 next_backup_map_start=1951674333
zone_first=876906565 zone_last=877234100 zone_size=327536 min(chunk)=8
free=268112 checksum=b7846c41 logstamp=45479 num_bitmap=17
Z6: type=2
map_start=1951672320 map_size=35 backup_map_start=1951674333
next_map_start=0 next_map_size=0 next_backup_map_start=0
zone_first=1951674368 zone_last=2928406527 zone_size=976732160 min(chunk)=20480
free=976732160 checksum=6f43aee5 logstamp=0 num_bitmap=17

tivogre
02-09-2010, 09:53 PM
I got the image last night, and today, restored it to a 1.5TB Western Digital "Green" drive.

After going through Guided Set-Up, everything appears to be working fine!

System shows 237 / 2072 hours (as JT1134).

Someday soon, I'll try it on a 2TB expansion.

I still need to run the WD utility to fix the soft boot issue.

Anyone want any data / dumps / screenshots / etc?

tivogre
02-10-2010, 02:00 AM
Here's the MFSinfo...

It appears that the WinMFS I used to restore the image doesn't properly reflect the new drive size.... but the space is there, according to the Tivo.

tivogre
04-02-2010, 03:38 PM
An update.

The unit just took the latest software update from tivo (11.0g) with no issues.

All is well; I am enjoying the 1.5 TB of space.

Marconi
05-16-2010, 04:38 PM
The hybrid image discussed above, is it mfstools compatible or does it require WinMFS to install? (Or are they the same format? Does WinMFS use the same mfstools code?) As a Mac user, I normally use the mfsLive CD to boot a Mac. Will the image work with mfsLive?

Wondering too, how is the difference in max size implemented? That is, what about the XL allows a bigger volume size? Is it strictly the partition scheme used? Or is there code different in the two models?

It sounds like this image is an XL image with HD s/w inserted, replacing the XL s/w. So, what, exactly limits the normal HD to 1.2 TB?

jt1134
05-16-2010, 07:11 PM
The hybrid image discussed above, is it mfstools compatible or does it require WinMFS to install? (Or are they the same format? Does WinMFS use the same mfstools code?) As a Mac user, I normally use the mfsLive CD to boot a Mac. Will the image work with mfsLive?

WinMFS and MFSTools images are not the same format. The hybrid image was created with and is therefor only useable with WinMFS.

Wondering too, how is the difference in max size implemented? That is, what about the XL allows a bigger volume size? Is it strictly the partition scheme used? Or is there code different in the two models?
Current tivo software distributions can only address partitions 1TB in size. Current upgrade tools add partitions to the existing image, rather than actually increasing the size of the existing partitions. There is only room in the partition table to expand once. The THDXL starts off with a base of 1TB, so when you expand you can expand up to 2TB, whereas the THD starts off with a much smaller partition, so when you add the additional 1TB, you end up with 1.26TB in total.


It sounds like this image is an XL image with HD s/w inserted, replacing the XL s/w. So, what, exactly limits the normal HD to 1.2 TB?
Correct. The THD and THDXL use slightly different resources (Loopsets or the background video images). The tivo software has dependencies on the correct resources that must be satisfied before new software can be installed. As I explained above, I extracted the appropriate THD resources from a working box and inserted them into a THDXL image. This allowed the installation of the THD software which allowed the tivo to receive future guide data/software updates, while retaining the THDXL partition layout allowing the use of larger drives.

ciper
08-04-2010, 11:43 PM
Thanks to everyone who got this all sorted out. I now realize why a Tivo would screw up after an update when using the dirty THDXL image on THD.

Do one of you want to make a super clean image? I wouldnt mind to buy a brand new THDXL and make an image before booting it. Then send it to one of you to modify so we could have a virgin image with low fsid loopsets.

ciper
08-12-2010, 05:39 AM
Mr. Broflovski on TCF posted here http://www.tivocommunity.com/tivo-vb/showthread.php?p=7823170#post7823170

I have created an image that is useable with WinMFS and is not subject to these limitations, and will work with hard drives up to 2.0TB in size. Any interested parties with a TivoHD and hard drive > 1TB are welcome to PM me.

Is this someone we know? Was this image created the proper way (as indicated in this thread)?
edit: It looks like it was created the right way http://www.mfslive.org/forums/viewtopic.php?f=20&t=1496&p=6719#p6719

Soapm
12-30-2011, 06:11 PM
Anyone know if this hybrid image is still floating around? I would go to the begging thread but it's hard to describe what I'm begging for...

unitron
12-31-2011, 11:09 AM
So my little creation didn't work out?

Soapm
12-31-2011, 01:08 PM
So my little creation didn't work out?

Haven't tried it yet. I'm hoping to recover my season passes and some recordings before I consider blowing out my 2TB. I would like to have this image as a tool in my box...

Thinkdiff
01-11-2012, 03:56 AM
You're referencing the Hybrid 1TB TiVoHD image, correct?

If so, I have it somewhere. Let me know if that's what you want and I'll throw it up somewhere.

Soapm
01-11-2012, 01:44 PM
You're referencing the Hybrid 1TB TiVoHD image, correct?

If so, I have it somewhere. Let me know if that's what you want and I'll throw it up somewhere.

Yes, if you could toss it up that would be cool...

unitron
01-11-2012, 01:55 PM
You're referencing the Hybrid 1TB TiVoHD image, correct?

If so, I have it somewhere. Let me know if that's what you want and I'll throw it up somewhere.

Just out of curiousity, how would that be better than taking the HD's 160GB drive, using WinMFS to copy it to a 1TB drive, boosting the swap partition size up to 1GB on the way, and expanding, which, with WinMFS, doesn't leave an Apple Free partition, and then using jmfs to copy that to a 2TB and expand?

Other than not taking as long, or needing a 1TB as a temporary middleman, that is.

And of course my method does have the advantage of letting you use a 1TB if you already have one, and upping it to a 2TB later when prices come down.

I'm not claiming superior knowledge or TiVo-Fu, just wondering if there's something I don't know about, especially if it's going to come back to bite me later the way I did it.

Soapm
01-12-2012, 12:06 AM
Just out of curiousity, how would that be better than taking the HD's 160GB drive, using WinMFS to copy it to a 1TB drive, boosting the swap partition size up to 1GB on the way, and expanding, which, with WinMFS, doesn't leave an Apple Free partition, and then using jmfs to copy that to a 2TB and expand?.

Looks like this hybrid was made with WinMFS also. The only difference I can see from your hybrid is how the HD OS was inserted into the XL partition table. You just dd'd in the OS where as these guys used the slices and something called loopsets.

jkozee
01-13-2013, 04:19 PM
jt1134,

Thanks for sharing your dump_loopsets.tcl script, I recently put it to use. It worked great, but I did have to tweak it slightly. I found that it uses mfs_uberexport to dump the loopset, which by default exports total chunk count for a stream, not just the used chunk count. This means that when the slice is created, the extra junk from the mfs stream is also exported, and when the slice is imported back in, the junk is included as part of the recording. Here's is a patched version that corrects this behavior.