Convertir de cartucho a CD (Sega Megadrive)

socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Me gustaría saber si es posible convertir una ROM de un cartucho a formato CD

Obviamente habría que recompilarlo para adaptar las direcciones de memoria, pero a parte de ese "inconveniente", ¿se podría?

Si no recuerdo mal, tiene 6MB de RAM, lo cual sería suficiente como para meter la mayoría de los juegos

Si fuera posible, se podría hacer un bootloader, y así podermeter varios juegos por disco

¿Creéis que es factible/posible?
socram8888 escribió:Me gustaría saber si es posible convertir una ROM de un cartucho a formato CD

Obviamente habría que recompilarlo para adaptar las direcciones de memoria, pero a parte de ese "inconveniente", ¿se podría?

Si no recuerdo mal, tiene 6MB de RAM, lo cual sería suficiente como para meter la mayoría de los juegos

Si fuera posible, se podría hacer un bootloader, y así podermeter varios juegos por disco

¿Creéis que es factible/posible?


Creo que ya había un proyecto en marcha, en el cual se comentó que 6 Mbit (que no megabytes) es muy poco. Muchos juegos pasan de 8 mbit y hay pocos de 4 mbit, así que hazte una idea de lo viable que podría ser el proyecto.

Conoces los Sega Can del mega cd? Una vez fuí a ver si lo que había dentro del CD eran volcados de los susodichos juegos. Al cargar juegos en el Kega, al menos salían los nombres de las cabeceras, pero no llegaban a funcionar. Al menos es algo para empezar a investigar (quien sepa xD).
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Yo creía que eran 6 megabytes, no 6 megabits, que es bastante

Voy a buscar info...
socram8888 escribió:Yo creía que eran 6 megabytes, no 6 megabits, que es bastante

Voy a buscar info...


Ojalá hubiera sido así, con 6 megabytes podría haber ayudado mucho más.
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Vale, pues entonces creo que ya no vale la pena seguir, ya que yo a lo que quería jugar era al Snow Bros XD
socram8888 escribió:Obviamente habría que recompilarlo para adaptar las direcciones de memoria, pero a parte de ese "inconveniente", ¿se podría?


No se exactamente a que direcciones te refieres, pero NO, no hay que modificar las @.

socram8888 escribió:Si no recuerdo mal, tiene 6MB de RAM, lo cual sería suficiente como para meter la mayoría de los juegos

Si fuera posible, se podría hacer un bootloader, y así podermeter varios juegos por disco

¿Creéis que es factible/posible?


Con el MCD la cpu de la MD tiene 256 KB (2 Mb) de RAM dónde normalmente está la ROM (espero que se entienda...), así que todo juego de 256 KB o menos es relativamente fácil hacer lo que dices.

La mayoria de juegos están alrededor del 1MB.

La alternativa seria montar algún tipo de recompilación mucho más drástica y que no garantiza nada.
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Donde normalmente está la ROM está la BIOS del MCD

La RAM del MCD está en otra dirección (0x400000 a 0x7FFFFF)

Las direcciones de memoria, me refiero a que si el juego carga de (por ejemplo) 0x007F43 una imagen, al estar la RAM del MCD en otra dirección habría que configurarlo para que leyera de 0x007F43 + 0x400000 = 0x407F43
socram8888, ya conoces los 2 foros del mundillo de mega, allí te informarán mejor. Leete la documentación que ahí está todo.

socram8888 escribió:Donde normalmente está la ROM está la BIOS del MCD


[t]Eso no es posible pq desde la cpu de la mega no se pude acceder a ningún hardware extra del MCD (aparte de la citada RAM) por razones obvias. Por ejemplo nunca podrias iniciar el cdrom (bios, drivers,...).

Recuerda que el MCD tiene otra CPU.[/t]

EDIT: si, tienes razón

socram8888 escribió:La RAM del MCD está en otra dirección (0x400000 a 0x7FFFFF)


Las direcciones 0x000000 y 0x400000 se pueden intercambiar activando-desactivando un pin del exp port, el MCD lo activa. Lo que dices no puede ser pq sino la cpu de la Mega nunca podría iniciarse al apuntar el vector de arranque a 'ninguna parte'.

Recuerda que se necesitan 2 RAMs para albergar el código de cada CPU.

socram8888 escribió:Las direcciones de memoria, me refiero a que si el juego carga de (por ejemplo) 0x007F43 una imagen, al estar la RAM del MCD en otra dirección habría que configurarlo para que leyera de 0x007F43 + 0x400000 = 0x407F43


OK. Como he dicho el MCD intercambia las direcciones 0x000000 y 0x400000 por lo que no es necesario modificar las direcciones del código.
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Lo de que la intercambia no lo sabía que era posible hacerlo

Según http://en.wikibooks.org/wiki/Genesis_Programming , que es de donde saqué la información y puede estar equivocada, en 0x0000000 está la BIOS (la introducción es computada por el 68000 de la MD)
MegaCD Changes
The following shows changes to the 68K Memory Map with a MegaCD/SegaCD attatched:
Start address   End address   Description
$000000         $01FFFF       MegaCD BIOS ROM
$020000         $03FFFF       MegaCD "Program RAM" Bank Access
$200000         $23FFFF       MegaCD "WORD RAM"
$A12000         $A120XX       MegaCD "Gate Array"
$FFFD00         $FFFDFF       MegaCD Interrupt/Exception vectors
Si tienes razón: la bios está mapeada a la @ 0.
Por lo que las interrupciones las controla la bios y deben estar remapeadas a otras @, la cosa se complica cada vez más.

EDIT:
exacto:
$FFFD00         $FFFDFF       MegaCD Interrupt/Exception vectors

memoria RAM para colocar las @ de la interrupciones.

En cualquier caso, por el exp. port en la MD1 sólo se puede acceder a 256KB (consecutivos) (1MB en MD2).

Vaya mounstruito de MCD que retoca el diseño de la MD, y todo por no tener un señal de reset en el Exp Port. ...

Y otro error mio: la señal que intercambia las regiones 0-0x3FFFFF y 0x400000-0x7FFFFF está en el zocalo de cartuchos, así que por defecto (si no hay ningún cartucho) la area de rom empieza en 0x400000.
9 respuestas