Por fin ... primer test con soporte TZX para GP2Xpectrum ... y muchas novedades mas...
1/ Reescrito totalmente el soporte de cintas tanto TZX como TAP.
2/ Se emula correctamene el sonido de la cinta
3/ Opción el el menu de "fast loading". Desactiva el sonido de la cinta, la velocidad de emulación, y la contienda.
4/ Opción en el menu de "flash loading". Aplica flashloading si puede. Intercepta rutinas de carga de la rom y realiza la carga instantanea de los bloques.
5/ Opción en el menu de "edge loading". Intercepta rutinas de carga tanto de la rom, como de los juegos y las acelera en tiempo de ejecución.
6/ Opción en el menu de "Tape Auto Play/Stop". Para o arranca la cinta automaticamente si detecta intentos de lectura a través del puerto del MIC. Imprescindible para los tap si no se hace "flash loading".
7/ Se indica si la cinta esta en marcha con el icono "tape" en el la pantalla. Si esta en amarillo la reprodución es normal. Si esta en verde, la reproducción esta en modo acelerado porque se ha podido detectar un cargador y se esta aplicando "edge loading". Cuando se para la cinta aparece un stop durante 3 segundos.
8/Auto "full screen off-on" si se reproduce una cinta.
Notas:
(for Rivroner ) para reproducir una cinta como en el spectrum original solo tenenemos que desactivar el "fast loading", "flash loading" y "edge loading" .
Aunque se active el "edge loading", eso no quiere decir que se aplique siempre, sino solamente cuando se detecta un cargador. El algoritmo aplica una mascara sobre los cargadores mas comunes para acelerarlos pero existen cargadores (los menos) que no son detectados. El icono tape estará en amarillo si no se detecta .
Si una cinta no se carga, puede que el "edge loading" haya detectado erronamente un cargador, con lo que deberiamos desactivar el "edge loading" e intentar de nuevo.
De igual manera el "flash loading" puede fallar, con lo que podemos desactivarlo.
La manera mas compatible de cargar una cinta es sin "flash loading" ni "edge loading", pero yo he detectado muy pocos casos que den problemas, con lo que es recomendable dejarlas activadas por defecto.
El autoarranque y parada de la cinta, solamente realiza la "parada" en los ".tap" (sino estamos realizando flashloading por supuesto ). En los "tzx" no para la cinta ya que puede dar problemas por los "timings" de los bloques turbo y a demas suele venir ya un bloque de parada en el propio tzx.
He puesto por defecto que no haga overclocking y funcione a 200mhz, ya que vuelve inestable el hecho de estar cambiando el reloj y puede quedarse bloqueda. A demas creo que los 200mhz ya son necesarios.
Queda por hacer el "tape browser" para selecionar los bloques y parar o arrncar la cinta de manera manual. También permitir elegir el tzx a cargar si vienen varios dentro del zip. He visto bastantes de esos en "world of spectrum". En en siguiente test estara todo eso.
Bueno, pues probarlo y dadme ideas y reportes sobre tzx que os den problemas.
Un saludo.
Marcadores