Scramble vs unscramble bin
-
- Insane DCEmu
- Posts: 147
- https://www.artistsworkshop.eu/meble-kuchenne-na-wymiar-warszawa-gdzie-zamowic/
- Joined: Thu Dec 30, 2004 7:12 pm
- Has thanked: 0
- Been thanked: 0
- Contact:
-
- DC Developer
- Posts: 9951
- Joined: Sun Dec 30, 2001 9:02 am
- Has thanked: 0
- Been thanked: 1 time
An unscrambled binary is a plain memory dump of a program. It can be loaded quite simply, by copying it into the appropriate place in memory, and jumping to it.
The Dreamcast's bootloader doesn't load the 1ST_READ.BIN file normally. For some reason, it rearranges parts of it. So, when the file is loaded into memory, it doesn't really resemble the file on the disc. If you try loading a normal binary in this way, it won't work.
So, scrambling rearranges the parts of the binary so that, when loaded by the Dreamcast's bootloader, it becomes de-scrambled.
Basically, if you're self-booting something, a scrambled binary is required.
The Dreamcast's bootloader doesn't load the 1ST_READ.BIN file normally. For some reason, it rearranges parts of it. So, when the file is loaded into memory, it doesn't really resemble the file on the disc. If you try loading a normal binary in this way, it won't work.
So, scrambling rearranges the parts of the binary so that, when loaded by the Dreamcast's bootloader, it becomes de-scrambled.
Basically, if you're self-booting something, a scrambled binary is required.
-
- DCEmu Super Poster
- Posts: 1342
- Joined: Thu Aug 26, 2004 4:05 am
- Has thanked: 0
- Been thanked: 0
- Contact:
http://www.consolevision.com/members/fa ... info.shtml
The Dreamcast loads them in a specific way, which is the reasoning for the needs of scrambling and unscrambling. That's what I've always known.
EDIT: I didn't read you post BlackAura when I posted that, but you explanation gives me a perfect understanding of how it works.
Ip.bin just directs the Dreamcast to the main binary.So it's the IP.BIN the reason for the scrambled binaries? Would it be possible to make an IP.BIN which works with unscrambled binaries then?
The Dreamcast loads them in a specific way, which is the reasoning for the needs of scrambling and unscrambling. That's what I've always known.
EDIT: I didn't read you post BlackAura when I posted that, but you explanation gives me a perfect understanding of how it works.
-
- DC Developer
- Posts: 9951
- Joined: Sun Dec 30, 2001 9:02 am
- Has thanked: 0
- Been thanked: 1 time
Same way, basically.How does the Dreamcast load these things?
From a GD-ROM, it seems to load the binary without scrambling it. When loading from a CD, it does the scrambling thing.
Katana's disc reading code is a little simpler than KOS's. It makes the assumption that it's running from a GD-ROM, and that all the data is on the second session. Reasonable assumptions, since Katana apps were only ever meant to run off a GD-ROM. So, it has the LBA address of the high density session hard-coded into it (from memory, I think it's 45000). It also checks to see if it is running off a GD-ROM by checking the media type.What exactly does the BINHACK tool ECHELON created do?
Binhack replaces that LBA address with a different one, so it'll run off a CD. It also changes the media checking code. I think it might also remove some copy protection bits that might be present in commercial apps.
For DreamSpec, it would only be changing the LBA and media type.
-
- Damn Dirty Ape
- Posts: 5031
- Joined: Thu Nov 07, 2002 11:11 pm
- Location: Saugerties, NY
- Has thanked: 0
- Been thanked: 0
They won't selfboot unless you scramble them, but you can load them with DemoMenu or DCHakker, which you should be able to find at http://dchomebrew.org . Load one of those programs, press "Y" on your control pad, and it will allow you to load an unscrambled binary.Masen wrote:Is there anyway to boot an unscrambled bin file created with kos ??
You should be able to find tools to scramble your bins at:
http://www.dcemulation.org/neededtools.htm
http://www.consolevision.com/dreamcast/needed/
http://dcevolution.net/DCHelp/index.php?id=apps
I suggest fackue's file checker, which you can find on the third page I linked to above.