C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Ulta Low Level Hard Drive Access:

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ language (comp.lang.c++)
View previous topic :: View next topic  
Author Message
Erich Keane
Guest





PostPosted: Mon Oct 27, 2003 2:15 am    Post subject: Ulta Low Level Hard Drive Access: Reply with quote



Ok, first a quick background: I, along with a small group of diehards
came up with a way to disable the EU volume cap protection on the
european ipods. Unfortunately, this way never caught on, as it is a
VERY difficult process for people used to apple products to handle.
Now, to solve the problem, and possibly make it more mainstream, i
would like to create a C++ (or java, altho i hate the language, i also
know a little about it) application to accomplish the task for the
user.

Herein lies the problem, i cannot for the life of me find any API or
class file that will allow me to accomplish the specific tasks
required. I believe it would require Very Very low level hard drive
access, and some way to determine which drive is the ipod on everyones
computer (ipod is treated as a standard Hard Disk by linux, only as an
SDA device, if that helps), and accomplish the following processes
(first on the win 2k/xp platform, then possibly on the osx platform):
1) Completely repartition a hard drive, including hidden partitions.
The way the ipod is set up, there is 3 partitions, only 1 of which is
viewable to the OS.
AS read in osx

#: type name length base ( size
)
1: Apple_partition_map partition map 62 @ 1
2: Apple_MDFW firmware 81920 @ 63 (
40.0M)
3: Apple_HFS* disk 29215536 @ 81983 (
13.9G**)
Device block size=512, Number of Blocks=29215536
DeviceType=0x0, DeviceId=0x0

*can also be FAT32 for windows formatted ipods
** Can be anywhere from 10G(advertisers gb, not a real one, the 13.9
is supposedly a 15gb) worth, to now 40G worth.

The 3rd partition is unimportant at the moment, only the first 2.
2) Write back a firmware image onto the MDFW partition from a binary
file previously captured. EAsy enough.

Basically, what needs to be done is the MDFW partition needs to be
resized from 32 mb to 40mb and a new firmware file written back to it.

If anyone has any information whatsoever on something that you think
will help me with my task, i would be very gratefull.

Thank you all,
Erich Keane
Back to top
David White
Guest





PostPosted: Mon Oct 27, 2003 4:14 am    Post subject: Re: Ulta Low Level Hard Drive Access: Reply with quote



Erich Keane <erich.keane (AT) verizon (DOT) net> wrote


[snip]

This is a long way from a C++ question. What you need is the relevant
hardware or OS information, and once you get it you can write your code in
any sufficiently capable language. This newsgroup is for _standard_ C++, so
your question is off-topic here.

DW



Back to top
Christian Gollwitzer
Guest





PostPosted: Fri Oct 31, 2003 10:03 pm    Post subject: Re: [OT] Ulta Low Level Hard Drive Access: Reply with quote



Erich Keane wrote:

Quote:
1) Completely repartition a hard drive, including hidden partitions.
The way the ipod is set up, there is 3 partitions, only 1 of which is
viewable to the OS.
AS read in osx

#: type name length base ( size
)
1: Apple_partition_map partition map 62 @ 1
2: Apple_MDFW firmware 81920 @ 63 (
40.0M)
3: Apple_HFS* disk 29215536 @ 81983 (
13.9G**)
Device block size=512, Number of Blocks=29215536
DeviceType=0x0, DeviceId=0x0

*can also be FAT32 for windows formatted ipods
** Can be anywhere from 10G(advertisers gb, not a real one, the 13.9
is supposedly a 15gb) worth, to now 40G worth.

The 3rd partition is unimportant at the moment, only the first 2.
2) Write back a firmware image onto the MDFW partition from a binary
file previously captured. EAsy enough.

Basically, what needs to be done is the MDFW partition needs to be
resized from 32 mb to 40mb and a new firmware file written back to it.


Although being Off-Topic here, it can be done on Linux within a
shell-script, since you state the drive works the standard drivers (usb-
mass storage, I suppose). So you can use the sfdisk program from a
shellscript to create the new partition table, and then dd or cat or
simple redirect from gzip to write the image. No problem with that.
Creating an empty filesystem (="formatting") can be done using standard
mkfs command. Since OSX has BSD kernel and UNIX-Tools installed, it
should be possible to write similar program for OSX.

BTW: Do you know about the legal consequences of what you are planning
to do?

--
Vale !
Christianus Auriocus


Back to top
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ language (comp.lang.c++) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.