Welcome to Obscure Gamers

Join us now to get access to all our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, and so, so much more. It's also quick and totally free, so what are you waiting for?

OG Group Buy 2.0

OG is trying to raise money to save hundreds of discs. We need to secure a few to start which'll help us get trust from the seller. If you're able to help please check the spreadsheet on google. Thank you!

Things to Batty for you?

You can disable the halloween effects by visiting User Preferences and hitting the "Disable holiday styling" option.

Dreamcast Wince+CDDA Fix

truemaster

AG Refugee
Refugee
Registered
Joined
May 31, 2019
Messages
199
Reaction score
155
Points
43
guys as much as i love dc scene (long live) as much as i respect those who contribute and help them any way i can. i also need to tell you this
gdrom is old even those that are in working contition how much life they have? consider your self an ode you will never look back;)
 

Pitito

AG Refugee
Refugee
Registered
Joined
Jun 19, 2019
Messages
122
Reaction score
124
Points
43
AG User Name
pitito
AG Join Date
03/08/2015

blackwaltz

Registered
Registered
Joined
Jul 3, 2020
Messages
19
Reaction score
15
Points
3
(y)yes i tried on cd and it works.More i tried your fix in another game bust a move 4 where the cdda always start from track one and repeats eveywhere, and it fixes all, play perfect.Great job man:DI will continue testing other games and posting resultscomic2.PNG
 

Pitito

AG Refugee
Refugee
Registered
Joined
Jun 19, 2019
Messages
122
Reaction score
124
Points
43
AG User Name
pitito
AG Join Date
03/08/2015
Ok I will post in the main post the games that you tested and are corrected
There are more games with problems, these are the ones that I know
Worms ARMAGEDON audio cdda works perfectly in menus, but ingame is not heard
Spirits of Speed audio cdda works perfectly in menus, but ingame is not heard
Rainbow Six audio cdda works perfectly in menus(Although sometimes you don't hear), but ingame is not heard
Armada Audio works perfect, but restarts when paused

Now I am testing in games like sega rally.
I think there is something in the original ip.bin, that when passing it to cd it doesn't work

Edit: The tests I have done with sega rally 2 are the same as with Nightmare Creatures, with ip.bin hack, original, custom ... etc
In none of them have I managed to make the tracks work

As I mentioned previously in position 2C0013D0, every time a track is played, the values of this position change.
While in cdi they always remain static
I think this is the call to the tracks

It is possible that the game when passing it to cd has information that is not loaded, such as a GD-ROM protection, or perhaps another type of protection

Perhaps a new ip.bin hacked is required for this type of wince.
Since most likely the problem is also here.
 
Last edited:

blackwaltz

Registered
Registered
Joined
Jul 3, 2020
Messages
19
Reaction score
15
Points
3
Bang gunship elite -same problems as before, music during mission work, in main menu dont work
 

Pitito

AG Refugee
Refugee
Registered
Joined
Jun 19, 2019
Messages
122
Reaction score
124
Points
43
AG User Name
pitito
AG Join Date
03/08/2015
If the audio works you may need another fix in ip.bin
 

Pitito

AG Refugee
Refugee
Registered
Joined
Jun 19, 2019
Messages
122
Reaction score
124
Points
43
AG User Name
pitito
AG Join Date
03/08/2015
@FamilyGuy @darcagn @megavolt85 @SiZiOUS First of all say that I have found this in Ram inside the ip.bin, I suppose it is the boot sector that injects binhack so that a cdi is loaded, and it is in that sector where the problem may be in games like sega rally
Captura de pantalla (12).png

Specifically in the offset 2C0013D0
In this test you can see it, as you see when a track is activated this happens, while in Sega Rally copy it continues as if nothing.
Maybe modifying boot sector could correct the problem of tracks in sega rally 2 and other games of your nature.

Captura de pantalla (13).png
 

FamilyGuy

2049 Donator
2020 Donator
2019 Donator
Refugee
Registered
Joined
May 31, 2019
Messages
286
Reaction score
290
Points
63
AG User Name
-=FamilyGuy=-
AG Join Date
March 3, 2007
Do you run bincon on the binaries?

IIRC, bincon actually moves a chunk of data around in the binary, that might explain the differences.
 

Pitito

AG Refugee
Refugee
Registered
Joined
Jun 19, 2019
Messages
122
Reaction score
124
Points
43
AG User Name
pitito
AG Join Date
03/08/2015
Yes, I have used bincon.
What bincon does is remove 800 bytes from the beginning of the wince binary and add them to the end
In ip.bin I don't think I haven't looked to see if it does something.

Keep in mind that tracks did not work with original ip.bin, but 0winceos was hacked by bincon

So what you say is possible and something should be changed
 

FamilyGuy

2049 Donator
2020 Donator
2019 Donator
Refugee
Registered
Joined
May 31, 2019
Messages
286
Reaction score
290
Points
63
AG User Name
-=FamilyGuy=-
AG Join Date
March 3, 2007
Yes, I have used bincon.
What bincon does is remove 800 bytes from the beginning of the wince binary and add them to the end
In ip.bin I don't think I haven't looked to see if it does something.

Keep in mind that tracks did not work with original ip.bin, but 0winceos was hacked by bincon

So what you say is possible and something should be changed
I was under the impression that it was 2048 bytes, so I guess you mean 0x800.

My point is that that operation might mess with a program if it expects a specific memory address to contain a specific routine.
 

Pitito

AG Refugee
Refugee
Registered
Joined
Jun 19, 2019
Messages
122
Reaction score
124
Points
43
AG User Name
pitito
AG Join Date
03/08/2015
Yes, sorry I meant 0x800
There may be something interfering

But maybe it can be repaired from the boot sector

@FamilyGuy Do you know what the program can be?
Do you remember my theory?
All wince like sega rally must have BGM selector in sound options

If I remember correctly virtua cop 2 the tracks are not heard either
and I think I remember that it also has BGM selector in options
 
Last edited:

blackwaltz

Registered
Registered
Joined
Jul 3, 2020
Messages
19
Reaction score
15
Points
3
bincon removes data from the begining,moving all information offsets up and only adds zeros to the end to make the binary stay with same size, so if information is needed to be in a specific offset it will not be there.I already try to copy the information of original 0winceos.bin to the bincon one( the last part full of zeros(that was before your fix) and it dont work my now will...
 

darcagn

AG Refugee
Refugee
Registered
Joined
May 30, 2019
Messages
138
Reaction score
175
Points
43
Location
Louisiana
Website
dcemulation.org
AG User Name
darcagn
AG Join Date
May 12, 2007
bincon.exe removes 2048 bytes from the beginning of 0WINCEOS.BIN and discards those bytes. It does not fill the last 2048 with zeros, it copies the previous 2048 bytes and duplicates it at the end of the file.

Just taking a step backing and thinking about some things here for a moment. Why do we do this with bincon?

Kalisto's release of Midway's Vol. 1 was the earliest time I see someone running WinCE code, on 7/25/2000. This was using Utopia bootCD, and the 0WINCEOS.BIN was renamed 1ST_READ.BIN and they cut the first 2048 bytes and repeated the last 2048:
Today we bring you the first working Windows CE game for your DC. This works with the current boot loader and once again shows you what is possible with the current boot loader. Have fun with the first WinCE game and remember who did it first.
They also did Sega Rally 2 without CDDA on 7/27 and Nightmare Creatures 2 with CDDA on 7/28, Armada on 7/29, etc.
Meanwhile bincon was written by dopefish so that 0WINCEOS.BIN could be loaded by the Utopia Boot CD, released on 7/28, clearly he copied Kalisto's work:
usage: bincon <0WINCEOS.BIN file> <new 1ST_READ.BIN to create>
example: bincon 0WINCEOS.BIN 1ST_READ.BIN

It does what it says it does. It allows you to run DC WinCE apps withUtopia's Boot Disc v1.1.
[...]
Thanks to:
-Utopia for the boot disc; we wouldn't be here without them.
-Kalisto for cracking the first WinCE games; I couldn't have written this without that.
Kalisto did the first selfboot pirate with Katana-developed Virtua Fighter 3tb next month on 8/19/2000 and a month later on 9/19/2000 Echelon released the selfboot toolkit, designed to allow people to make non-selfboot pirate releases into selfboots. It says WinCE binaries won't need to be binhacked and mentions nothing about bincon. This makes sense because clearly Utopia bootCD pirate versions already had their binaries "bincon'ed"

So it sounds to me like:
1. The Dreamcast loads binaries differently depending on if they're Katana or WinCE games, and the Utopia only wrote their loader to load binaries Katana-style
2. Instead of writing a WinCE type loader, Kalisto modified the binary so that it would load like a Katana binary
3. When converting these Kalisto releases to selfboot with the selfboot toolkit, Echelon realized WinCE bins worked if you kept the Katana binary format and made sure it was set to Katana in the IP.BIN meta info
4. Everyone has just taken for granted that we can do bincon+Echelon IP.BIN+check Katana in IP.BIN to load WinCE binaries, thus no one ever bothered to do a disc with WinCE OS selected and WinCE IP.BIN (esp. since it needs assembly hacking to unlock the drive)?

Does anyone know what the difference is between loading with Katana OS vs. WinCE OS set in IP.BIN?
Perhaps this is causing an incorrect/unexpected memory state?
 

blackwaltz

Registered
Registered
Joined
Jul 3, 2020
Messages
19
Reaction score
15
Points
3
that true..the tools were made too make katana games work not wince.they were just "converted"...
 

Pitito

AG Refugee
Refugee
Registered
Joined
Jun 19, 2019
Messages
122
Reaction score
124
Points
43
AG User Name
pitito
AG Join Date
03/08/2015
The case is that in the original game those 0x800 bytes do not appear in RAM, it does not load them.
The game starts in Ram right at position 0x800 of the wince at offset 2C010000, which is just what bincon does, remove that 0x800, so that it loads into Ram at that offset.
Since if you leave it as the original 0winceos it is not found.

The case is that with the original ip.bin and with wince scrambled if it finds 0wiceos, but in Ram it comes out complete, that is with that 0x800 bytes that should not be loaded, therefore the game is not launched


bincon.exe removes 2048 bytes from the beginning of 0WINCEOS.BIN and discards those bytes. It does not fill the last 2048 with zeros, it copies the previous 2048 bytes and duplicates it at the end of the file.

Just taking a step backing and thinking about some things here for a moment. Why do we do this with bincon?

Kalisto's release of Midway's Vol. 1 was the earliest time I see someone running WinCE code, on 7/25/2000. This was using Utopia bootCD, and the 0WINCEOS.BIN was renamed 1ST_READ.BIN and they cut the first 2048 bytes and repeated the last 2048:

They also did Sega Rally 2 without CDDA on 7/27 and Nightmare Creatures 2 with CDDA on 7/28, Armada on 7/29, etc.
Meanwhile bincon was written by dopefish so that 0WINCEOS.BIN could be loaded by the Utopia Boot CD, released on 7/28, clearly he copied Kalisto's work:

Kalisto did the first selfboot pirate with Katana-developed Virtua Fighter 3tb next month on 8/19/2000 and a month later on 9/19/2000 Echelon released the selfboot toolkit, designed to allow people to make non-selfboot pirate releases into selfboots. It says WinCE binaries won't need to be binhacked and mentions nothing about bincon. This makes sense because clearly Utopia bootCD pirate versions already had their binaries "bincon'ed"

So it sounds to me like:
1. The Dreamcast loads binaries differently depending on if they're Katana or WinCE games, and the Utopia only wrote their loader to load binaries Katana-style
2. Instead of writing a WinCE type loader, Kalisto modified the binary so that it would load like a Katana binary
3. When converting these Kalisto releases to selfboot with the selfboot toolkit, Echelon realized WinCE bins worked if you kept the Katana binary format and made sure it was set to Katana in the IP.BIN meta info
4. Everyone has just taken for granted that we can do bincon+Echelon IP.BIN+check Katana in IP.BIN to load WinCE binaries, thus no one ever bothered to do a disc with WinCE OS selected and WinCE IP.BIN (esp. since it needs assembly hacking to unlock the drive)?

Does anyone know what the difference is between loading with Katana OS vs. WinCE OS set in IP.BIN?
Perhaps this is causing an incorrect/unexpected memory state?

@FamilyGuy The same thought I, who had adapted the boot katana to WinCE, and he was right.
 
Last edited:

darcagn

AG Refugee
Refugee
Registered
Joined
May 30, 2019
Messages
138
Reaction score
175
Points
43
Location
Louisiana
Website
dcemulation.org
AG User Name
darcagn
AG Join Date
May 12, 2007
What happens when using the legitimate GD-ROM or GDI file? Are those 0x800 bytes loaded into memory? And perhaps the BIOS jumps past them?

What would happen if instead of truncating those 0x800 bytes from the beginning, you filled them with 0x800 bytes of NOPs instead?
Thus filling the area with actual instructions that won't crash the console, but also keeping the rest of the binary in memory?
Or putting an instruction to jump past the block?
 

Pitito

AG Refugee
Refugee
Registered
Joined
Jun 19, 2019
Messages
122
Reaction score
124
Points
43
AG User Name
pitito
AG Join Date
03/08/2015
I am going to try
 

Pitito

AG Refugee
Refugee
Registered
Joined
Jun 19, 2019
Messages
122
Reaction score
124
Points
43
AG User Name
pitito
AG Join Date
03/08/2015
@darcagn I just tested and wince is not loaded in ram
I will try but this time with ip.bin hacked

Edit: with ip.bin hacked the same thing happens
 
Last edited:
Top