Jump to content

-Archive- Macefix86 2006 -Archive-


  • This topic is locked This topic is locked
442 replies to this topic

#81
Kiko

Kiko

    You Dont Understand Me

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 2,889 posts
  • Gender:Female
  • Location:United States Of Israel
OMG, i've been away for what? Like 2 days and look how much stuff has already been done; WHOA.

Damn this is great thanks heaps to Urby, Bofors, Superhai, sbheeree and everyone whop has helped damn, im gonna havea a bit of a play around with hfsplus.efi now :)

EDIT: I think that there are 100+ efi modules

#82
bofors

bofors

    ConvertIt2Mac.com

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 3,462 posts

not much.
a few hours in all.
Do you happen to know how many there are?


It may be depend on exactly which version of the firmware you are working with, but I think the pervious number was 170.

Can you state exactly which Mac you are working with and which version of firmware is installed (perhaps the lastest)?

Would all the drivers in the drivers.txt that i posted above be everything we need?


Those are just the drivers, we need everthing.

Is this illegal?


Perhaps, but we are only talking about a potential basic copyright violation not a DMCA violation. Anyways, the complete set of .efi files should probably be discreetly distributed on something like RapidShare, not posted here.

#83
bofors

bofors

    ConvertIt2Mac.com

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 3,462 posts
What is most important is that you write up a detailed list of instructions on how to extract the .efi files and also include any scripts that you wrote to seperate the actual hex code from the additional dmem junk.

#84
sbeehre

sbeehre

    InsanelyMac Geek

  • Retired Developers
  • 196 posts
  • Location:New Zealand
Awesome stuff Urby! now only 106 more EFI modules to go :) btw how do i add this to the MacEFIx86 Sample implementation?

#85
Kiko

Kiko

    You Dont Understand Me

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 2,889 posts
  • Gender:Female
  • Location:United States Of Israel
hahha lol, "only" 106 to go, yeah same question as sbheere
i've been trying of weeks to mount the disk.img file but i just couldnt

#86
sbeehre

sbeehre

    InsanelyMac Geek

  • Retired Developers
  • 196 posts
  • Location:New Zealand
just mount the efi floppy and dump the hfsplus.efi file in there kiko, and you are good to go. The you just navigate to fs1:

** UPDATE **

I tried to run the HFSPlus.efi just from the command line typing hfsplus but i get an error saying Image is not an Application exit status code: Invalid Parameter


Any ideas?

#87
Kiko

Kiko

    You Dont Understand Me

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 2,889 posts
  • Gender:Female
  • Location:United States Of Israel
Yeha i think rogabena said sumthing about that b4, the intel implementation is full yet, so id try compile the tianocore edk and work from there.

#88
Superhai

Superhai

    InsanelyMac Legend

  • Retired Developers
  • 1,425 posts
Because it is not an application it is a driver, and must be loaded as such. Type help in the sample implementation and you find a command which loads drivers.

#89
Urbz

Urbz

    La cr�me de la cr�me...(?)

  • Retired Developers
  • 837 posts
  • Gender:Male
  • Location:Montreal, QC, Canada

I tried to run the HFSPlus.efi just from the command line typing hfsplus but i get an error saying Image is not an Application exit status code: Invalid Parameter
Any ideas?


That's because it isn't an application. Try "load hfsplus.efi" and see what happens.

Ok, lemme ramble for a bit.

With 100+ modules, it'll take more than a few hours. I am still confident i can do it rather quickly, though. It is still too early to say how quickly, but a month would be the maximum if i were super busy in real life.

bofors, i wish i could let you all do it with a script, but i can't. Once i had the dmem file of the hex i needed, i turned to mac os x. Opened the file and printed it to pdf. Then I cropped it to just the area i needed: the beginning of each hex string to the end with one extra space. I cropped all pages (at once) and saved. Then i printed again but as postscript and finally i had a selection of only the hex i had cropped! For this one, pages 5, 6, 14 had extra spaces on the left for some odd reason, so i recropped those pages individually. Finally, i just selected it all and brought it to textedit. I replaced the - with a space, and that was the file hex code.txt. Finally, in windows, opened in wordpad (notepad scrwed it up for me..)i downloaded 010 Editor, created a new file, copied the contents of hex code.txt, did "paste from > paste from hex text (shift+ctrl + V) and saved as an efi file. No scripts or c programs, just my experience as a graphic artist (sorta...!)!

As you can see, it really isn't that complicated. I'm going to get the whole firmware in stages: first all the dmem outputs, then all pdf files, etc.

I am working on a 17" Intel iMac with the stock 512MB of ram.
It is fully updated and has an EFI Specification Revision of 1.10, EFI Vedor: Apple, and EFI revision: 8192.1.
For the record, i think i should get the exact same number as previously recorded.
Currently, I am in the efi shell, testing with the number of modules.
Some handles give me only one memory address,
which is simply no good. Others cannot be identified, but can be successfully turned into efi modules.

What is the exact number of efi modules i should get: 170 or 107?

#90
Neonkoala

Neonkoala

    Neon Prowess

  • Members
  • PipPipPipPipPipPip
  • 411 posts
Apparently theres a bug in notepad that causes incorrect handling of certain unicode combinations of letters - so stick with wordpad.

#91
~Neo

~Neo

    The installer man. Formerly known as "NeoPheus"

  • Retired Developers
  • 644 posts
  • Gender:Male
  • Location:Germany
Great work man!
But how can I mount my OS X install dvd? The driver is successfully loaded (see screen)

Attached Files



#92
Urbz

Urbz

    La cr�me de la cr�me...(?)

  • Retired Developers
  • 837 posts
  • Gender:Male
  • Location:Montreal, QC, Canada
just type "map" and you'll see a list of all the drives in the virtual environment. The drives themselves are known as blk0, 1, 2, 3, etc. The filesystems mounted from the drives are fs0, 1, 2, etc.
To mount a blk as an fs, just type "mount *blk of cd drive* *unused fs # of your choice*.
It should tell you it forced the mount ok, and then just type the fs with the new number, followed by a colon, and you should be able to browse the dvd with the dir and cd commands.

hey bofors, i'm not home right now, but i printes out some handles. I am assuming that the only useful handles are the "image" ones: the ones that use the image protocol. The others are either blank and do nothing, or point to devices, and are not drivers or programs themselves.

I jst need a number. I think i went over the images and it cam out to like 112 handles...or 113. Is that pretty much correct?

#93
sbeehre

sbeehre

    InsanelyMac Geek

  • Retired Developers
  • 196 posts
  • Location:New Zealand
i know when omni ripped the efi modules the first time there were 107 but since the firmware has been updated since then i guess there are more now.

#94
Urbz

Urbz

    La cr�me de la cr�me...(?)

  • Retired Developers
  • 837 posts
  • Gender:Male
  • Location:Montreal, QC, Canada
do you happen to know if they were all using the image protocol?

#95
sbeehre

sbeehre

    InsanelyMac Geek

  • Retired Developers
  • 196 posts
  • Location:New Zealand
So the right format for the hex code would be

4D5A0000000000000000000000000000

instead of

4D 5A 00 00 00 00 00 00 00 00 00 00 00 00 00 00

if that is the case im going to try and write a c application to do the work

do you happen to know if they were all using the image protocol?


no i dont sorry

#96
Urbz

Urbz

    La cr�me de la cr�me...(?)

  • Retired Developers
  • 837 posts
  • Gender:Male
  • Location:Montreal, QC, Canada

So the right format for the hex code would be

4D5A0000000000000000000000000000

instead of

4D 5A 00 00 00 00 00 00 00 00 00 00 00 00 00 00

if that is the case im going to try and write a c application to do the work


Thanks!

But actually, it would be 4D 5A 00 00 00 00 00 00 00 00 00 00 00 00 00 00. The reason for this is that there needs to be exactly one space between every 2 character. This would also imply there would be one space at the end of every line, and none at the beginning of the next.

Reason for this is i switched hex editor! So yeah, this new way is the right one.

But really, if you can't do it, don't break your head. I'm really gonna begin the work tomorow, and i should be done by the end of the week. It's a lot easier than i thought.

-Urby

#97
bofors

bofors

    ConvertIt2Mac.com

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 3,462 posts

hey bofors, i'm not home right now, but i printes out some handles. I am assuming that the only useful handles are the "image" ones: the ones that use the image protocol. The others are either blank and do nothing, or point to devices, and are not drivers or programs themselves.


Ok.

I jst need a number. I think i went over the images and it cam out to like 112 handles...or 113. Is that pretty much correct?


Sounds about right to me.

#98
Urbz

Urbz

    La cr�me de la cr�me...(?)

  • Retired Developers
  • 837 posts
  • Gender:Male
  • Location:Montreal, QC, Canada
I have begun the process of extraction of Apple's EFI Firmware.
The process will see a total of 114 EFI modules be converted from memory to modular form.
I will be posting progress report to this very thread as I go along.

sbeehre, if you write the script, I unfortunately won't be using it because I am too far along to go back and start over, but it will probably be useful for future extractions.

So basically there are 3 steps for every module:
1- Dump dmem output to text file.
2- Strip text file of everything but essential hex.
3- Copy the hex strings as real hex and save efi file.

I will begin by getting all 114 modules through the first step.

I started maybe 15 minutes ago.

_____________________________

Current Status: 22 Modules dumped to text files.

#99
bofors

bofors

    ConvertIt2Mac.com

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 3,462 posts

im going to try and write a c application to do the work


To really develop EFI for OSx86 we need to be striving for an advanced technical understanding and ability. This means being able to write, compile, load and execute simple EFI programs to do things like extract all the .efi modules in a few seconds (or at least dumping them in a hex-only format). Again, the actually writing of such programs should be very easy. The major issue is setting up the development environment in Windows to compile EFI programs.

#100
Urbz

Urbz

    La cr�me de la cr�me...(?)

  • Retired Developers
  • 837 posts
  • Gender:Male
  • Location:Montreal, QC, Canada
I'm taking a break...going for some fresh air, stretching my legs. My eyes hurt!

I figured i'll first post my plan:

Goal: Have all 114 modules by Sunday.
-Complete Step 1 Tuesday, step 2 friday, and step 3 sunday.

I will not have time during the day for the simple reason that it's back to work tomorrow.

_____________________________

Status Update: 45 text files dumped.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy