-
Softmod bioses seem to have the most advanced features, but I like to TSOP flash whenever possible. I want the best of both worlds if xman or someone can help a bit.
What I am looking for is the ability to have a system with a simple 256K bios (likely x2 4981) that I use with TSOPs that does nothing boot boot a bios loader with all the latest features. I would have the ability to have proper up-to-date lba48 support, eeprom protection, shadow C, ISO loading, etc. At the same time if i swap out the hard drive I can set it up quickly with an autoInstaller.
I haven't read about this stuff in awhile - I think i may have known how at one point but I don't know now - How should I set this up?
-
Complicated. You'd need to use PBL to chainload a BFM stock BIOS, otherwise the softmod wouldn't work (because the softmod patches the stock BIOS in-memory, and if you aren't running a stock BIOS then the patch just gives you a blank screen and an unresponsive Xbox). I'm sure you could make it work with a bit of effort, but I'm not sure what you'd achieve in reality. With a TSOP you don't really need eeprom protection and shadow C, and I'm sure that there's a BIOS that does ISO loading, and apart from that there aren't many features I can think of that you get with a softmod that you don't get with a flashed BIOS.
This post has been edited by Heimdall: Jun 19 2011, 06:19 PM
-
QUOTE
because the softmod patches the stock BIOS in-memory, and if you aren't running a stock BIOS then the patch just gives you a blank screen and an unresponsive Xbox
This.
Yes I knew that would be an issue. I am just not happy with any of the bioses out there and don't want to screw around with patchers just for ISO loading. I would probably just turn off virtual eeprom and shadow C, but this seems the most elegant solution, plus I feel softmods are the most up date (most recent work).
-
Tsop splitting a 1.0/1.1 and switching between retail bios+nkpatcher and non-retail bios on different banks could achieve your objectives.
-
Yeah I could also flash retail and flash back before removing the harddrive... but I don't want the flubber.
-
nkpatcher patches kernel by specific memory addresses for each kernel version. If you could locate the flubber animation code in the retail bios and NOP the whole chunk, nkpatcher might still work. Somebody like FrostytheSnowman could pull this off.
-
Might be possible - I think i could do it (I know enough about assembly generally) but with no experience it would take a lot of exploring code. I think it would be easier to load a retail into memory and then patch it.. Ideally chain load the bios patcher without needing to use an exploit.
-
I'm fairly certain you have to load the BIOS patcher with an exploit because the BFM stock BIOS will only run signed code, but it should be easy - a standard softmod will do that for you. So, you install PBL as your hacked dash, use that to chainload the BFM stock BIOS, that loads the softmod xboxdash.xbe, which loads the fonts to trigger nkpatcher.
-
QUOTE(ldotsfan @ Jun 20 2011, 03:51 PM)

nkpatcher patches kernel by specific memory addresses for each kernel version. If you could locate the flubber animation code in the retail bios and NOP the whole chunk, nkpatcher might still work. Somebody like FrostytheSnowman could pull this off.
I'm not sure that this is possible, being as the softmod (and bios loader) wouldn't take hold of the system until the console attempts to load the dash (after the flubber has been displayed), so how can the flubber be removed beforehand?
-
QUOTE(xboxmods2977 @ Jun 21 2011, 11:23 AM)

I'm not sure that this is possible, being as the softmod (and bios loader) wouldn't take hold of the system until the console attempts to load the dash (after the flubber has been displayed), so how can the flubber be removed beforehand?
nop it.. or more likey jmp over the flubber code and flash the bios back to the chip. Not sure if, or how well the xbox validates the bios, but sounds like it would work.
QUOTE(Heimdall @ Jun 20 2011, 03:14 PM)

I'm fairly certain you have to load the BIOS patcher with an exploit because the BFM stock BIOS will only run signed code, but it should be easy - a standard softmod will do that for you. So, you install PBL as your hacked dash, use that to chainload the BFM stock BIOS, that loads the softmod xboxdash.xbe, which loads the fonts to trigger nkpatcher.
Yes I am am not sure if it is possible to skip the exploit part since you have a retail bios at that point.. but it should be possible to create a tool if one doesn't exist to load a retail bios and patch it at once, or load the bios, then load and run the patcher without calling the bios.. just ideas.
I was thinking of simply setting up a softmod bios I like and dumping the active bios uses xmans bios dumping tool and flashing to the TSOP? Not sure if there are issues there.
-
Oh ok. IC. So your saying, to dump the retail kernel, modify it, and then flash it back to the TSOP? (IMG:style_emoticons/default/biggrin.gif) I wouldn't be brave enough to try that.
How about this? Flash iND to the TSOP (or any bios that can skip flubber) and set it to skip flubber. Then, set the first dash to PBL. PBL then loads the retail BFM. Then, softmod the retail BFM. The softmod exploits the retail BFM, and in turn, loads it's payload BFM hacked bios.
The result: All the advantages of hardmod and the luxuries of a softmodded box.
EDIT: I may try this myself right now....
This post has been edited by xboxmods2977: Jun 21 2011, 05:43 PM
-
Yes that should work.. I would go with X2 with flubber turned turned off since it doesn't hit the hard drive. I was hoping to avoid the softmod files, but might be good enough..
-
OK, my first snag/problem.
I'm trying this out on a 1.4 xbox running X2 5035 from a chip.
So far, I have PBL (pbl-lite) set up to load as my first dash. When it starts, it boots 5101 bfm (semi) successfully to the M$dash, but the screen is garbled like there is a vertical hold issue. I thought maybe it might correct itself when I went to load the 007 game to start the exploit but it too boots garbled.
Any ideas?
-
http://forums.xbox-scene.com/index.php?s=&...t&p=4163480
Maybe. edit.. nevermind, you used the right version.
This post has been edited by Movax: Jun 21 2011, 07:09 PM
-
I'm gonna try it now on a 1.0 just for sh!ts.
EDIT: Not worth the trouble. Here is what happens:
It works, up until the softmod installer says "softmod installed successfully, power down now blah, blah"
When I restarted the xbox, it boots to the famous "hacked bios present with softmod" black screen. If I start it with a game, the game loads, but somewhere in the dash exploit process, things don't go good.
Here is why it isn't worth it.
All of your hardmod advantages are lost because when PBL loads, your xbox is retail again, which means no unlocked HD's and no missing DVDRom's or the M$ dash will error. Same case with after the softmod is finished, that is if someone successfully gets past post-install. (Maybe, hot-swap and then NDURE?)
So, I guess if you want to go through all this crap, just so you can hide/customize your flubber on your softmod box, be my guest. That is the only advantage.
PS, I never got it to work with 1.4 xbox. Only the 1.0 was free of the graphical issue, but still never got past the first reboot during the softmod process. (krayzies 1.1)
The hacked (flubber removal) retail bios idea is probably the only option
This post has been edited by xboxmods2977: Jun 21 2011, 08:08 PM
-
You could just FTP over the softmod with a Kingroach ndure setup.. but wouldn't solve most of the things you were saying. Some variation of creating a flashable bios from a softmod or loading and patching in one shot should be possible.
-
QUOTE
Yes I am not sure if it is possible to skip the exploit part since you have a retail bios at that point.. but it should be possible to create a tool if one doesn't exist to load a retail bios and patch it at once, or load the bios, then load and run the patcher without calling the bios.. just ideas
here is the code to patch the public key (to run habi signed xbe)
CODE
patchpublickey:
mov ebx,[ebp+XePublicKeyData-base]
test ebx,ebx
jnz .chk
.searchkey:
mov ebx,esi
inc esi
.chk: cmp dword [ebx],31415352h
jne .searchkey
cmp dword [ebx+10h],10001h
jne .searchkey
.searchkeyend:
inc ebx
cmp dword [ebx],0A44B1BBDh
jne .searchkeyend
pushf
cli
mov ecx,cr0
push ecx
and ecx,0FFFEFFFFh
mov cr0,ecx
xor dword [ebx],2DD78BD6h
pop ecx
mov cr0,ecx
popf
decript the stock bios
find 31415352h ( 52534131 bytes reversed lo to hi)
verfy found location + 10h = 00010001 (010001000)
find A44B1BBD ( BD1B4BA4 ) should be next string
replace with 899C906B ( 6B909C89 )
if the bios editer lets you change the boot dash then change it to nkpatcher (default.xbe)
or change all occrences of xboxdash.xbe and/or xboxdash to nboxdash (nkpatcher.xbe)
-
I think I get it.
1)Flash TSOP
2)set up ROM BIOS to Boot PBL + BFM retail BIOS
- Retail bios was patched to allow it to boot knpatcher (habi public key rather than MS public key)
3) Point retail bios to nkpatcher file in some manner - hex edit retail bios or rename files on disk.
So I just patch those four bytes in the retail kernel to allow nkpatcher to boot?
What about unlocked harddrives, or no DVD roms?
This post has been edited by Movax: Jun 22 2011, 05:27 PM
-
1 to 3 yes
QUOTE
So I just patch those four bytes in the retail kernel to allow nkpatcher to boot
yes, it should work
QUOTE
What about unlocked harddrives, or no DVD roms
i have no info on that
but im sure it could be done
there is a windows program that will help, IDA Pro Disassembler (bios must be decrepted first)
you could look at stock bios and a very old hacked bios to get some idea
if your brave or have a bank switch you could flash the non BFM version once you know it works
also any other habi signed xbe IE: evox as a BFM bios selector / nkpatcher
i have a old executer 1 chip non flash that nkpatcher works with but has LBA problems
could dump the Kernal as a starting point
you should be able to remove/jump over the fluber code and nkpatcher still work
This post has been edited by xman954: Jun 22 2011, 07:13 PM
-
found this nkpatcher.asm
CODE
;;; --------------------------------------------------------------------------
;;; Helper macros for patchers
;;; --------------------------------------------------------------------------
%macro patcherinit 0
pushad
mov eax,[esp+32+12]
mov [caller_param],eax
mov edx,[esp+32+8]
push edx
mov ecx,[esp+36+4]
call init_patcher_vars
%endmacro
%macro patcherfinish 0
pop edx
call erasescrap
popad
ret 12
%endmacro
CODE_SECTION
init_patcher_vars:
push ecx
sub ecx,80010000h
mov [memdiff],ecx
then
CODE
%macro m7extra 2
%ifdef INIT_SEC_PATCHES
mov eax,[memdiff]
;; HD locking check bypass (?). No importance for nkpatcher and
;; cannot be enabled anyway because inside INIT section.
mov word [eax+%1],9090h
;; DVD drive check bypass (?). No importance for nkpatcher and
;; cannot be enabled anyway because inside INIT section.
mov byte [eax+%2],0EBh
%endif; INIT_SEC_PATCHES
%endmacro
also at end of nkpatcher.asm it lists all kernal versions
CODE
patcher_4034:
m7extra 800551E6h,8005558Dh
looks easy if you can find the right place in the INT section (if you want to flash moded stock bios)
NOTE that a BFM skips the init section so a stock bios chained should work with a unlocked HDD, i think...
edit::::
QUOTE
find A44B1BBD ( BD1B4BA4 ) should be next string
it's not next string its found location + 110h
This post has been edited by xman954: Yesterday, 06:34 AM
-
Awesome! Thanks for the help/knowledge. Now I just have to learn how to encrypt and decrypt bioses and I can give it a try.
-
Error 5 - HD not locked..
Locked the HD.. it works! Pretty cool.. got to patch the no DVD, locked HD check and it's perfect!
All I installed was PBL with retail bios, bios.xbe from Kingroach ndure setup and my dash in E:\dash\default.xbe where nkpatcher likes it. (no exploit files).
Edit.. Strange - it seems to load unleashX fine.. I can browse files, but any attempt to launch an xbe creates a lockup..IGR seems to do that same thing...?
This post has been edited by Movax: Yesterday, 09:33 PM
-
http://www.xbox-scen...kFpppFyUAcKwoNZ
XBtool
so you decrypted the stock bios and hex edited the 4 bytes and encryped it with BFM set ??
-
Yes.. v1.1 ..4817.. I patched it, it was easy to find the string.. I think I encrypted it correctly. I used xbtool to decrypt it, I may have not encrypted it back correctly? It does boot though. And it does check the hard drive.
I have to go, I'll try encrypting it again tomorrow.
-
Still can't get it to work. Can anyone walk me through on how to encrypt a BFM bois to make sure I am doing it correctly?
Are there other files nkpatcher needs to function correctly?
I added e:\NKP11\eeprom_off.bin,shadowc_off.bin
I also installed the ndure toolset (which freezes like other xbes)
I deleted unleashx from e:\dash and added TEAM XBMC shortcut - XBMC boots, but I still can't launch anything, which is odd considering the shortcut launches XBMC.
Why would it be happy to boot the dash and not anything else?
-
There may be nothing wrong with your encryption.
Keep in mind that upon loading an XBE from a dash, the bios image stored in ram is "checked", or re-verified before said XBE is launched so, refresh my memory on how you have it set up. Maybe I can come up with an idea on what is going on.
So far, I got that you've modified the retail kernel a little and flashed it back to the TSOP, right? What does this bios (on the TSOP) load first?
-
Right now, My boot process is
1)X2 4981 (TSOP),
2)PBLmetoo+BFM 4817 patched as described, (C:\evoxdash.xbe, 4817_retail.bin)
3)nkpatcher, (C:\xboxdash.xbe)
4)XBMCshortcut, (e:\dash\default.xbe)
5)XBMC (e:\apps\xbmc\default.xbe)
XBMC works fine, shows xbox info fine, can't launch xbe s. BTW I have (and it seems faster) tried PBLite. Actually it boots extremely fast with PBLite.
-
Yep. PBLlite is fast. That is what I used.
I have a suspicion that what is happening is redundant patching.
In your step 2, you have loaded your custom retail, which has the signature modification done, but in step 3, NKP loads the softmod bios which attempts to also patch the same section of the bios (in memory) that you've already modified (in the BFM). It should crash before it even loads the dash, but it doesn't, and for some reason, the effect of this "redundant patching" doesn't occur until you try to load an xbe after the xbox has fully booted to the dash.
Here is an idea. (I think I have this thing licked)
Try this. Take another fresh copy of retail 4817 and ONLY remove the HD check and DVD-Rom check, BFM it, and then use that in your step 2. From there, you will be "ever-so-slightly" modified retail, and should be able to install, and boot a softmod.
The reason this should work is because in theory, it isn't possible for a softmod bios to patch out the HD and DVD checks, because these checks are done before the BFM loads, therefore, it is safe to assume that BFM's don't touch the regions of memory where these checks are contained. If this is indeed the case, we should be able to remove the checks without repercussion, while still allowing NKPatcher to do it's thing.
-
I thought about redundant patching, but my understanding is that the code contained in the font exploit patches the four bytes I have patched (that is all I have patched thus far). Therefore nkpatcher should be getting the same kernel it would have gotten from retail+exploit.
-
My theory to be confirmed by xman954/Movax:
1. BFM bios was patched to execute habibi signed XBE, ie the dash, or first XBE.
2. When nkpatcher loads, it no longer finds the byte sequence hence no more patching of public key.
By the way, good work guys. It's incredible that the xbox 1 scene is capable of doing stuff like this so late in its life cycle thanks to the collective experience/knowledge of all of you who contributed in the thread.
-
QUOTE(Movax @ Jun 24 2011, 04:38 PM)

I thought about redundant patching, but my understanding is that the code contained in the font exploit patches the four bytes I have patched (that is all I have patched thus far). Therefore nkpatcher should be getting the same kernel it would have gotten from retail+exploit.
Ok. Sounds good. So, lets explore our options. Possibilities? The only 2 are these:
1. Have you chosen the correct softmod bios for NKPatcher to load according to your kernel? (probably. SO,)
2. If so, let's go back a little further.
What you say above is true, so your setup may/must vary from a natural retail+exploit environment somehow.
Could there be any remnants of 4981 leftover in memory after PBL has loaded 4817? We know that BFMs do not overwrite all of the bios in ram.
That's all I have got.
-
I did use the correct exploit, maybe try everything again step by step really carefully..only possible wild card is I am using Linux.. I'll try again from Windows in a bit. (All the windows tools were run in wine.)
-
I re copied over some of the files, re encrypted the bios, etc from windows, no obvious change.
BUT, if I rename the ndts folder to dash and have it as my dashboard I can launch other apps and my IGR works perfect (and is really fast! I was using IND before this).
A clue?
.. Oh I see PBL is there.. still.. is this helpful?
-
Yes and no. ndts uses PBL to load Frosty's hand hacked Evox M8 BIOS before it loads UnleashX. In other words, it sounds as though you're loading a different BIOS, which is why it's working. Is the LED red?
-
Yep.. red LED, (..and my green is working properly.) My best idea with my limited experience is to try and dump the kernel from RAM and take a look.. compare to the kernel image I patched.
-
Excellent cross-reference

Yes, that means your system is working because you're reloading a different BIOS.
-
I dumped the kernel right after the BFM was loaded - I chained the dumper as xboxdash.xbe. I see the four bytes I patched, but, while overall very similar, there are tons of differences between this and the kernel image I started with, besides the obvious huge filesize difference. Why does the extacted kernel image have a filesize of over 600Kb while the dumped kernel is 262,144 bytes?
Any insight appreciated.. does this info help?
-
The extracted kernel is uncompressed, the BIOS is compressed.
-
QUOTE
My theory to be confirmed by xman954/Movax:
1. BFM bios was patched to execute habibi signed XBE, ie the dash, or first XBE.
2. When nkpatcher loads, it no longer finds the byte sequence hence no more patching of public key.
#2
QUOTE
Excellent cross-reference
Yes, that means your system is working because you're reloading a different BIOS.
that version of dash is habi signed
try signing one of your game xbe's
the loading of BFM stock bios may have different offset in mem that nkpatcher is unable to calculate for some reason or it's fixed
the 4 bytes patched are the same that ernie.xtf does
i think the direction to go is:
patch the 4 bytes
and flash it to a chip that has 2 or more banks
and see what happens
that will confirm some things
also dumping the kernal on a normal softmoded xbox
then again after PBL reloads it
-
I can't seem to build a retail bios after patching .. xbtool crashes.
Any help welcome.
-
I haven't read all the posts but did you try Ind-Bios 5003. It allows you to load a bfm bios so you dont need to use pbl loader. Flash the 5003 bios to TSOP and place stock bfm bios in c:/xboxrom.bin.