Readme del ZXAM Spectrum Emulator AGA v1.3 ß ---------------------------------------------- (lee el añadido para 1.3 ß más abajo) Por favor, lee el DOCesp para detalles de uso del emulador. Ten en cuenta que ésta es una versión ß, o sea, inacabada, pero me interesa que circule para que la gente me dé su opinión sobre el emulador y me ayude a buscar errores. También me gustaria conseguir más programas de Spectrum (ahora tengo 295 en el Disco Duro). Si quieres informarme de problemas, o cualquier otra cosa, puedes hacerlo a través de LEO, usuario de TANIT BBS-IBIZA (971-392829). Déjale un mensaje a LEO en la BBS y él me lo hará llegar. Lo siento, pero no tengo modem, y tampoco me serviria de mucho por que mi linea telefónica es la peor del planeta (en realidad es como una Party-Line, porque muchas veces puedes oir a 4 o 5 personas al mismo tiempo, y sin pagar!). Si lo prefieres, puedes escribirme una carta a la dirección que aparece en el DOC. Si sabes algo sobre algún emulador de Dragon 32, házmelo saber, ya que tengo un amigo que me tortura para que le haga uno (AARGHH!!). Los iconos están pensados para un WorkBench de 8 colores. Junto con el emulador viene un cajón con 23 programas de Spectrum, ya comprimidos con el PowerPacker. Puedes hacer circular el paquete siempre que se mantenga completo y sin modificar. Si quieres incluirlo en tu libreria de Dominio Público, puedes incluirlo siempre que solo cobres los gastos de copia y envio. También puedes incluirlo en discos de revista, o mandarlo a cualquier BBS. DISFRUTALO (o súfrelo...) Antonio J. Pomar Rosselló (Palma de Mallorca) >>>>>>>>>>>>>>> AÑADIDO PARA VERSION 1.3 ß <<<<<<<<<<<<<<<<<< UNA DE INDIOS... Mis duras investigaciones me han llevado a conseguir un gran logro nunca alcanzado en la historia de la informática, que es: Poder almacenar y recuperar datos binarios ¡en simples cintas de audio! (del standard "compact cassette"). A esta nueva tecnologia de almacenamiento la llamo "slow-ish semi-retrievable audio FSK data stream", que se traduce como "chorro lentorrillo semirrecuperable y audible de datos transformados en pitidos y chirridos". Para hacer este avance tecnológico accesible al grán público he decidido distribuir la versión 1.3 ß del emulador de Spectrum con esta posibilidad incorporada. Nunca más te verás forzado a usar los ultrarápidos discos duros (puaj!) o las rápidas disqueteras (aarg!). Ahora ya puedes cargar un juego de forma que te dé tiempo de ir al baño mientras se carga, o leer el Quijote, o, simplemente, envejecer decrépitamente ante la pantalla. Como todos los grandes descubrimientos de la humanidad, estoy seguro de que alguien hará un uso incorrecto de mi descubrimiento (como ya lo intentaron con mi consola WOPR, alias "Joshua", compatible con NES), pero apelo al poco de conciencia que te queda para que desistas de hacerlo. Ten en cuenta que la tecnologia que tienes en tus manos puede decidir el destino del mundo (como la WOPR :-).... VA DE VERAS El motivo principal para la circulación de esta versión es (como explico arriba ;-) la incorporación de la posibilidad de LOAD y SAVE a cinta. Aunque estas opciones funcionan bién, esta versión del emulador ha sido distribuida por la demanda popular de la carga desde cinta, pero no es una versión definitiva debido a que el emulador contiene además unos ensayos de estabilización de velocidad para ordenadores sobrados de potencia (que no es mi caso!). En cuanto la tenga lista haré circular una versión mucho más definitiva con un sistema de estabilización de velocidad mucho más preciso que el que incluye la versión 1.3 ß. Los aspectos modificados respecto a la versión 1.2 ß son: LOAD DE CINTA: ¿Significa esto que puedo pasar a disco mi colección de juegos? Pues... solo si usa la rutina de carga de la ROM, o sea, ni Turbos ni programas con cargadores extraños (como el Commando, el Deflektor, etc..). La rutina de carga que incorpora el emulador es un hábil "parchecillo" de la rutina de carga de la ROM, a la que no substituye totalmente si no solo en sus secciones más críticas. Un 90% del código que se ejecuta al cargar de cinta es el original de la ROM del Spectrum. Debido a esto, se comporta como si de un Spectrum se tratara, o sea, puedes hacer BREAK con el espacio y verás como cargan los pixels de las pantallas y los atributos (que hacian ese MEEEEEC tan característico [snif...] ). El FLASH sigue funcionando durante la carga, también. Y todo esto funciona perfectamente incluso en un A1200 sin FAST y en modo COLOR!!. Las LIMITACIONES del parche son: -Las rayas del borde no son perfectas, pero casi, debido a interferencias entre la CPU y la copperlist. Sería posible hacerlo perfecto, pero supondria más trabajo para la CPU, que ya está en sus límites, y, en consecuencia, ralentizaria ligeramente el emulador. Creo que para ver mejor la rayitas de carga no vale la pena ralentizar el emulador. -El sonido de la cinta solo se oye DURANTE LA CARGA, no al buscar la cabecera del programa. Esto significa que tendrás que buscar el principio del programa desconectando el cassette del ordenador, para conectarlo cuando hayas encontrado la cabecera. Emular desde software el puente que tenia el Hardware del Spectrum entre las tomas MIC y EAR es demasiado desperdicio de potencia para algo que solo vas a usar cuando cargues desde cinta. Piensa que, aunque el emulador puede cargar y grabar con cinta AUN puede cargar/grabar programas en disco... -NECESITA INTERFACE PROPIO: Aunque yo no considero que ésto sea una limitación, ya que el interface que he diseñado es MUCHO más barato y práctico que un sampleador. Este interface se conecta al puerto del Joystick, y se puede poner y quitar con el ordenador en marcha. Junto con el emulador encontrarás una pantalla que describe el interface. Los 2 (si DOS!) componentes del interface están ahí simplemente para que el ordenador no se estropee si le subes demasiado el volumen al cassette. Como verás, el interface es tan simple que "da asco verlo". Lo he diseñado así por que se supone que no lo usarás constantemente, pero si quieres tenerlo conectado siempre puedes ponerle una conexión de paso (un macho DB-9) a la salida para tener al mismo tiempo el cassette y el joystick conectados. Además, con este interface puedes dejar la impresora permanentemente conectada, no como con el sampler. -Al ser un parche de la rutina de la ROM, solo cargarán programas que usen dicha rutina. O sea, olvidate de los Turbos (de momento...;-). -En sistemas de "potencia moderada" (como el mio) no conviene toquetear mucho el teclado mientras cargas, a menos que quieras hacer BREAK, por que cada pulsación de tecla produce una interrupción, que desestabiliza la carga y puede provocar errores. LLegados a este punto debo confesar que la fiabilidad del parche es mucho mayor de lo que yo tenia previsto en un principio. Durante las pruebas, conecté la entrada de audio del emulador al cassette incorporado en mi Spectrum +2A, e intentaba cargar al mismo tiempo el mismo programa en el +2A y en el 1200. Mi intención era encontrar algún programa que el +2A cargara pero el 1200 no, para ajustar las temporizaciones del parche. Mi sorpresa fué mayúscula al comprobar que el que no cargaba correctamente todos los programas era el +2A, mientras que el 1200 se tragaba perfectamente lo que le echaran. ¡Es de las pocas veces que pruebo algo nuevo y funciona a la primera!. En total he pasado 83 programas a disco durante las pruebas (algunos de éstos no habian querido cargar con el Spectrum Emulator v1.7 ;-) SAVE HACIA CINTA: Bueno... este ha sido muy fácil. Ni siquiera es un parche, ya que es el código Z80 de la ROM la que lo hace todo. Lo unico que yo he hecho ha sido "frenar" la rutina Z80 para que no corriera demasiado. Lo mismo que se especifica en LOAD respecto al teclado y al borde se puede aplicar al SAVE. Los datos grabados por el emulador han sido cargados sin problemas por el propio emulador y por mi ZX Spectrum +2A. SONIDO: El emulador incorpora un estabilizador "experimental" de sonido. Con este estabilizador ha sido posible el SAVE en tiempo real (puro Z80), aparte de que el BEEP es ahora también tiempo real, y la música de muchos juegos ha mejorado muchísimo (como los de ULTIMATE). Sin embargo, otros juegos han empeorado un poco (como el 3 Weeks in Paradise), o se han ralentizado ligeramente (un 3% aprox). De todas formas, este "estabilizador" no es más que experimental. Espero poner a punto uno mucho más preciso.