What were the two? I only seem to remember one offhand.TmEE co.(TM) wrote:There are 2 kinds of CDC used so the games that use HW directly have to have 2 pieces of code for each thing.

I implemented only one CDC in Gens so i think there is only one.Chilly Willy wrote:What were the two? I only seem to remember one offhand.TmEE co.(TM) wrote:There are 2 kinds of CDC used so the games that use HW directly have to have 2 pieces of code for each thing.
How much work was it to implement the CDC emulation? What did you use for documentation at the time?I implemented only one CDC in Gens so i think there is only one.
Problem is that i directly implemented a low level emulation because i though it would be the only way to assure a good compatibility...
However from some tests and debugging i done i would say a big majority of game only use BIOS functions to acces the CD.
Nope. Pier Solar uses the BIOS.Chilly Willy wrote:It would seem to me that only games that came on cart that tried to use the CD would need to be able to handle the CDC directly... games like Pier Solar... of which there's only one - Pier Solar.
According to the bulletin, the Cinepak library was changed "to avoid certain interrupt problems that may occur". The older version hooked the CD decoder interrupt (INT5) in order to immediately process sectors as they were decoded. (Pier Solar does that, tooI seem to remember a couple tech bulletins from SEGA that mention certain things that CD games aren't allowed to do or they wouldn't be licensed - things like trying to use the interrupts already in use by the BIOS for things like the CDC.
Cool, so there WAS something else that used the CD from a cart. That's a pretty slick program.notaz wrote:There is also this Flux cart that might do this but I never really investigated how it works.
http://www.youtube.com/watch?v=Oswpqv22TIg
It took me many time mainly because we didn't had any informations about CDC / CDD hardwares at this time. I did a lot of reverse engineering on the european Mega CD BIOS. Gens was the first with Ages (remember it ?) to have partial Mega CD support, Ages was even more advanced than Gens at some point and i asked the author (Quinneston) how CDD worked but he didn't helped me much as he wanted to keep the advantage hereNemesis wrote:How much work was it to implement the CDC emulation? What did you use for documentation at the time?I implemented only one CDC in Gens so i think there is only one.
Problem is that i directly implemented a low level emulation because i though it would be the only way to assure a good compatibility...
However from some tests and debugging i done i would say a big majority of game only use BIOS functions to acces the CD.
Are you sure about that ? I have studied the Service Manual schematics that were released some time ago and it seems to me that CD serial data (SDATA) coming from the CD DSP always go directly to the CDC serial input, as well as the needed serial clocks (BCLK and LRCLK), so audio is still sent to it (although nothing is done from it).l_oliveira wrote:
What you might not know is that it does so through a I2S bus (a special custom version of I2C serial bus which is used for transmission of digital audio data).
What is done when audio is played: The I2S signal is routed to the DA converter on the analog board by the big SEGA ASIC instead of being sent to the CDC.
I know, I made most of them.Chilly Willy wrote:There's already a region-free hack to the WonderMega and X'Eye BIOSes. I forget where they were posted... AssemblerGames or maybe SonicRetro...
Anywho, if you want them, you can PM me.