Support and General Use > Hardware

How to distinguish 32M 5.5G iPod from 64M 5.5G iPod?

(1/2) > >>

Scorpius:
Hi!

I have 240GB 5.5G iPod video. Original Apple FW works great, no problem with playback. But in rockbox I get either "Undefined instruction" or "Data error" after ~5sec of playback. This is if I install 64M version of rockbox. If I install 32M version, it plays nothing and complains codec not supported... Both build are unofficial 240G builds, and they are working perfectly on other users.

I found however, some strange things:

When using newest ipodpatcher, it says:


--- Code: ---ipodpatcher -a bootloader_ipodvideo.ipod
ipodpatcher v3.0 with v3.0 bootloaders - (C) Dave Chapman 2006-2007
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[INFO] Scanning disk devices...
[INFO] Ipod found Video (aka 5th Generation) ("winpod") - disk device 1
[INFO] Reading partition table from \.\\PhysicalDrive1
[INFO] Sector size is 512 bytes
[INFO] Part    Start Sector    End Sector   Size (MB)   Type
[INFO]    0              63          160649        78.4   Empty (0x00)
[INFO]    1           160650     468862126    228858.1   W95 FAT32 (0x0b)
[INFO] Ipod model: Video (aka 5th Generation) ("winpod")
[INFO] Checksum OK in bootloader_ipodvideo.ipod
[INFO] Moving images to create room for new firmware...
[INFO] Reading original firmware...
[INFO] Wrote 7609856 bytes to firmware partition
[INFO] Bootloader bootloader_ipodvideo.ipod written to device.
--- End code ---

Other poster (who has 240G 5.5gen iPod working with rockbox perfectly) has posted his ipodpatcher output:

--- Code: ---$ sudo ./ipodpatcher /dev/sdb -a rockbox.ipod
ipodpatcher v3.0 with v3.0 bootloaders - (C) Dave Chapman 2006-2007
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[INFO] Reading partition table from /dev/sdb
[INFO] Sector size is 2048 bytes
[INFO] Part    Start Sector    End Sector   Size (MB)   Type
[INFO]    0              63         64259       125.4   Empty (0x00)
[INFO]    1           64260     117215530    228811.1   W95 FAT32 (0x0b)
[INFO] Read XML info (9692 bytes)
[INFO] Ipod model: Video (aka 5th Generation) (64MB RAM) ("winpod")
[INFO] Checksum OK in rockbox.ipod
[INFO] Moving images to create room for new firmware...
[INFO] Reading original firmware...
[INFO]  Wrote 8220672 bytes to firmware partition
[INFO] Bootloader rockbox.ipod written to device.
--- End code ---

It makes no sense. If sector size is 512 then RAM = (160649-63)/512 = 313.6M = nonsense. Only if sector size would be 2048 then RAM = (160649-63)/2148 = 78.4M = same that ipodpatcher displays. And in latter case sector size 2048 will yeld RAM = (64259-63)/2048 = 31.3M but poster claims that his iPod is 64M version! If sector size would be 512 then RAM = (64259-63)/512 = 125.4M = same that ipodpatcher displays. Did I miss something here or is ipodpatcher calculating/displayin stuff incorrectly?

I am not an expert, so I ask:
- why my sector size is 512 instead of 2048
-why my RAM is only 78.4MB instead of 125.4MB
- why these weird numbers (78.4MB) and (125.4MB) instead of 64MB or 32MB?
- is there any way to distinguish 32M iPod from 64M ?

I ran iPod's own diagnostics (in reboot hold select and rew) and SDRAM test was a pass... can other 5.5G users please post their ipodpatcher output, so I can compare?

AlexP:
Why does the RAM have to be the same size as the firmware partition?

cpu98:
MK2431GAH's actually a 4096 bytes/sector drive and
5.5G ipod's controller export any disk as a 2048bytes/sector drive.
5G export it as 512, so your 512 is correct.

What you tried to calculate was a hidden partition size on the disk.
Diag. mode on 64MB display that they have 64MB.
Your one seems 5G with 32MB.

There are many ways to distinguish ram size.
open up the device, or issue a scsi command,
or throw 64MB build and check if it dies, etc... ;D

If you build and use svn ipodpatcher, it will detect ram size.

I think 32MB version was not built properly.
Maybe codecs included in 32MB build are actually for 64MB bin?

edit:typo

AlexP:
Yes, I suspect that he actually has a 32 mb board, and the 32 MB (30 GB) build wasn't properly installed leading to the codec failures.

Try reinstalling the 32 MB build (all files, not just rockbox.ipod).

Scorpius:

--- Quote from: cpu98 on September 17, 2009, 05:54:44 AM ---I think 32MB version was not built properly.
Maybe codecs included in 32MB build are actually for 64MB bin?

edit:typo

--- End quote ---

Indeed, this makes sense. There was this user who claimed that 64M version did crash always after 5 sec of playback...

but I can make proper 32M version myself, yeh? this (and only this) is what builder of 64M/32M unsupported rockbox claims to have done to code:


--- Code: ---#define HAVE_LBA48
#define MAX_LOG_SECTOR_SIZE 16384
#define MAX_PHYS_SECTOR_SIZE 4096
--- End code ---

So I guess this data is in rockbox.ipod. so all I need is move *some* of 64M .rockbox data into 32M version. but what to move? I have XP and linux, but not installed any compilers so recompiling is a nasty option which can get ugly...


--- Quote ---Yes, I suspect that he actually has a 32 mb board, and the 32 MB (30 GB) build wasn't properly installed leading to the codec failures.

Try reinstalling the 32 MB build (all files, not just rockbox.ipod).
--- End quote ---
I always reinstall by deleting .rockbox folder and move new .rockbox folder to root.

P.S. these users have also released 2 versions of bootloader-ipodvideo.ipod. One for 32M and other for 64M, theyre seem not identical. I looked into bootloader source and could not find any reason those 3 lines needs to be added there, so why 32M bootloader file is different than 64M ?

Navigation

[0] Message Index

[#] Next page

Go to full version