Autor Tema: Pasar de D64 a .CRT ¿Alguien interesado?  (Leído 23270 veces)

Maniako

  • Desarrolladores
  • Commodore Master
  • ******
  • Mensajes: 1005
  • SYS 8*4096
    • Ver Perfil
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #15 en: Agosto 15, 2015, 14:35:04 »
Haré algo mejor que eso, volvere a usar UN LIBRO!!! En concreto, UN DICCIONARIO!!! Si, estoy así de loco.  ;D

Intentaré recuperar lo olvidado de inglés a ver si podemos entre todos apañar el tema.
LDA #$50
STA $0400
RTS
Lloré cuando conseguí hacer esto con el monitor del FC1.

danytoon

  • Visitante
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #16 en: Agosto 15, 2015, 14:36:28 »
Uhm... no es mucho tampoco... Me pongo? Me pongo xD

Dale tú caña, pero yo también le meteré caña a todo el texto (sacaré el uniforme de traductor, que lo guardé en el armario cuando me jarté de la industria editorial española)

A ver si en unos días te lo tengo traducido, y de paso, oye, me entero yo también...

Lo que no sé mucho es de léxico real de como se traducen los comandos y acciones de código máquina...
« última modificación: Agosto 15, 2015, 15:19:07 por Dany Quest »

Maniako

  • Desarrolladores
  • Commodore Master
  • ******
  • Mensajes: 1005
  • SYS 8*4096
    • Ver Perfil
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #17 en: Agosto 15, 2015, 15:46:11 »
Me he bajado la imagen D64 de Die Hard Nord east crackers.
De momento una vez se descomprime el programa , sale la demo y vuelve a descomprimir para pasar a leer algun fichero en el disco, utiliza las rutinas del kernel $F3D5, la cual accede al bus IEC.

¿Como accede el EF a los ficheros?. Como cinta o disco?.
A ti te carga la demo de entrada y después, en la segunda descompresión te pide disco ¿no?.

 En la captura que adjunto, ahí aparece el momento justo donde salta a leer disco para cargar la pantalla inicial del juego en si.
« última modificación: Agosto 15, 2015, 15:48:36 por Maniako »
LDA #$50
STA $0400
RTS
Lloré cuando conseguí hacer esto con el monitor del FC1.

danytoon

  • Visitante
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #18 en: Agosto 15, 2015, 15:47:22 »
Exactamente... se queda el "led" parpadeando en el emulador justo después del Bruce Willis feo ese...

No tendríamos que buscar mejor el disco original, para que no nos peguen? O simplemente estamos experimentando?
« última modificación: Agosto 15, 2015, 15:51:34 por Dany Quest »

danytoon

  • Visitante
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #19 en: Agosto 15, 2015, 15:51:54 »
Voy a intentar preguntar en Lemon, ok?

Maniako

  • Desarrolladores
  • Commodore Master
  • ******
  • Mensajes: 1005
  • SYS 8*4096
    • Ver Perfil
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #20 en: Agosto 15, 2015, 16:01:28 »
Estoy inventando el vino con gaseosa  ;D

De momento no deberia importar mucho qué disco usemos, cuando pillemos el truco, se hace con lo que corresponda. Bueno, SI pillamos el truco  ;)

Después del Bruce Willis feo, vuelve a usar las rutinas del kernel.  Adoro el monitor del VICE.
El programa que convierte d64 a crt deberia de funcionar...

Mañana me compro una libreta DIN-A4 y vuelvo a empezar. Hay mucho que apuntar.

Tu pregunta, que así se llega a Roma.
« última modificación: Agosto 15, 2015, 16:03:19 por Maniako »
LDA #$50
STA $0400
RTS
Lloré cuando conseguí hacer esto con el monitor del FC1.

danytoon

  • Visitante
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #21 en: Agosto 15, 2015, 16:01:55 »
Aquí está el hilo abierto... les he dicho que nos vayan diciendo que nos podemos encontrar...

http://www.lemon64.com/forum/viewtopic.php?t=57542

danytoon

  • Visitante
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #22 en: Agosto 15, 2015, 16:02:22 »
Yo no sé si es que estoy usando mal el programa o qué...

pero vaya, de cinco juegos que probé, ni uno...

danytoon

  • Visitante
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #23 en: Agosto 15, 2015, 17:38:59 »
Ya he traducido la primera mitad del primer PDF... mañana me pongo otro ratito y lo termino ;)

Maniako

  • Desarrolladores
  • Commodore Master
  • ******
  • Mensajes: 1005
  • SYS 8*4096
    • Ver Perfil
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #24 en: Agosto 15, 2015, 21:41:22 »
Qué barbaro!!!
Estas hecho una máquina. Grácias por traducirlo.  ;)
Contra más información tengamos en nuestro poder,  mejor.

Por si te interesa trastear, una vez cargues el VICE, mira en FICHERO/Monitor  Alt+M.
Aparecerá la ventana del monitor:


Lo realmente interesante es los registros de estado , debajo de PC (contador de programa) aparece la direccion que se esta ejecutando.

Con el desensamblador a tiempo real, usando los iconos de saltar, puedes hacer ir avanzando el programa paso a paso o en bloques. He usado saltar hasta el return para avanzar hasta encontrar cuando usaba las rutinas de carga kernel.

El juego debes cargarlo y ejecutarlo antes de abrir toda ese ventanal informativo.
« última modificación: Agosto 15, 2015, 21:50:03 por Maniako »
LDA #$50
STA $0400
RTS
Lloré cuando conseguí hacer esto con el monitor del FC1.

Zub

  • Desarrolladores
  • Commodoremaníaco
  • ******
  • Mensajes: 150
  • SYS 0
    • Ver Perfil
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #25 en: Agosto 16, 2015, 22:07:49 »
Buenas,

Yo también he estado experimentando con otros D64, por ahora sin éxito. He probado también el Die Hard y no carga tras la intro. Si usa un fastloader o la operación OPEN del kernal, entonces normal que no funcione.

Respecto a Easyflash, se supone que no accede a cinta ni disco, no? El contenido del cartucho se mapea a RAM en $8000 o $A000. ¿O no es esa vuestra pregunta?

Mañana me voy a leer el código de disk2easyflash, tengo curiosidad por ver cómo lo han hecho..
« última modificación: Agosto 16, 2015, 22:12:45 por Zub »

Maniako

  • Desarrolladores
  • Commodore Master
  • ******
  • Mensajes: 1005
  • SYS 8*4096
    • Ver Perfil
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #26 en: Agosto 16, 2015, 22:38:44 »
Buenas,

Yo también he estado experimentando con otros D64, por ahora sin éxito. He probado también el Die Hard y no carga tras la intro. Si usa un fastloader o la operación OPEN del kernal, entonces normal que no funcione.

Respecto a Easyflash, se supone que no accede a cinta ni disco, no? El contenido del cartucho se mapea a RAM en $8000 o $A000. ¿O no es esa vuestra pregunta?

Mañana me voy a leer el código de disk2easyflash, tengo curiosidad por ver cómo lo han hecho..

Ahí está el tema, se supone que al acceder al fichero con el nivel que requiera el juego en ese momento no creo que anden mapeando la memoria del cartucho.
Bieno comento que los juegos son capaces de escribir los records en el CRT y leyendo los manuales del programador parece ser que usa algo llamado EASYAPI , no he comprendido demasiado (por el inglés) pero parece ser que esta API es la que permite leer y escribir. Supongo que se puede acceder a ella pero ni idea de como. A lo mejor es con una dirección diferente como el 7 en lugar del 8 (disco) o 1 (tape).

Lo mejor seria arrancar un CRT multicarga y monitorizar su ejecución paso a paso para averiguar como accede.
LDA #$50
STA $0400
RTS
Lloré cuando conseguí hacer esto con el monitor del FC1.

Zub

  • Desarrolladores
  • Commodoremaníaco
  • ******
  • Mensajes: 150
  • SYS 0
    • Ver Perfil
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #27 en: Agosto 17, 2015, 10:08:30 »
El EasyAPI es un conjunto de funciones que te permiten leer y escribir de la memoria flash del cartucho. Son como un "driver" para que el código del C64 pueda acceder a esa zona. La mayoría de cartuchos no lo necesitan y funcionan a la vieja usanza: se mapea un banco a memoria que contiene el "loader" del cartucho, el cual copia el resto de datos bajo demanda (cambiando de banco cuando haga falta).

Sin embargo si quieres escribir hiscores y tal a "disco", en el caso de un cartucho easyflash tienes que escribir a la memoria flash y eso lo tienes que hacer con EasyAPI. Los cartuchos con formato EasyFlash tienen el EasyAPI copiado en el primer banco de memoria que se mapea en $E000 al arrancar el cartucho (reset).


josepzin

  • Administrador
  • Commodore Master
  • *****
  • Mensajes: 13905
  • Commodoreador web
    • Ver Perfil
    • Mi blog
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #28 en: Agosto 17, 2015, 14:24:24 »
Me imagino que convertir un juego implica dos problemas:
- Si el juego usa esa zona de memoria del Easyflash, modificarlo para que no interfiera
- Todas las lecturas a disco modificarlas para que hagan uso del segmento de memoria
- Si hay escrituras, otro tanto....

No parece tarea fácil... :S
www.retroinvaders.com | www.commodoreplus.org  | josepzin.blogspot.com

Zub

  • Desarrolladores
  • Commodoremaníaco
  • ******
  • Mensajes: 150
  • SYS 0
    • Ver Perfil
Re:Pasar de D64 a .CRT ¿Alguien interesado?
« Respuesta #29 en: Agosto 17, 2015, 15:43:14 »
Si se parte de un D64 multicarga, normalmente tendrá rutinas de carga de disco propias más o menos sofisticadas. Si el cracker ha puesto un hiscore saver, habrá añadido rutinas de escritura.

Para convertir el juego habría que:

- Reorganizar los datos del disco en N bancos de la ROM del cartucho. Esto puede ser más o menos fácil en función de la estructura de ficheros que use el programa. Hay algunos que tienen un montón de pequeños ficheritos y otros que tienen un único fichero gordo al que acceden constantemente.

- Sustituir las llamadas a la rutina de carga de disco por rutinas que accedan al banco del CRT donde se guarde la info equivalente. (Ejemplo, acceder al banco 3 y copiar N bytes a partir del offset M)