Core C64 BETA6

Avatar de Usuario
Quest
Mensajes: 900
Registrado: 27 Sep 2015, 00:20

Core C64 BETA6

Mensaje por Quest » 30 Nov 2016, 20:44

(Post en constante actualización, se mantiene el histórico de cambios de versiones).

Última versión disponible: BETA6

Listado de cambios/mejoras/fixes de la BETA6:


- Mejoras en la emulación de la 1541 (CPU más exacta). Ahora cargan más discos (por ejemplo de las demos "We are Demo", "Uncensored" o "Wonderland XII", y unos cuantos más que antes no cargaban).

- Arreglado bug que afectaba al SID y que impedía que sonasen los canales de ruido en las 3 voces. ¡Por fin suenan las pistas de percusión en muchos juegos/demos donde antes no sonaban! (como por ejemplo, "Commando", "Ghosts'n'Goblins", etc..)

- Aumentado el número máximo de imágenes de disco .D64 posibles en la SD, de 256 a 16.384 (Hasta 4Gb de datos)

- Añadida emulacion REAL del cambio de disco. Ahora se envía momentánteamente a la 1541 un cambio de señal al sensor de detección de protección contra escritura (que es como la 1541 real detecta que se ha insertado un disco) al cambiar de imagen de disco. De este modo se arreglan 2 problemas que había: 1) Al cambiar de disco y listar directorio, antes no cambiaba el nombre del disco, sólo el listado de archivos; ahora también se actualiza el nombre (etiqueta). 2) Algunas demos/juegos (como "We are Demo", "Wonderland XII", etc..) que pedían cambio de disco pero nunca quedaba registrado, y por tanto no seguían funcionando, ahora lo detectan, dado que usan ese recurso para hacerlo, y siguen funcionando correctamente.

- Añadida opción para elegir la polaridad de la señal de entrada de audio (EAR), mediante la tecla "+" del teclado numérico. El led del ZX-UNO será el testigo. Con el led apagado, tenemos la polaridad invertida (por defecto, como hasta ahora), con el led encendido, la polaridad no estará invertida.


Core BETA6: (enlace EXTERNO no vinculado al foro ni la web. No nos hacemos responsables):

https://github.com/antoniovillena/zxuno ... 1?raw=true

-------------------------------------------
Histórico de versiones anteriores
-------------------------------------------


Core C64 BETA5 (rama única!)

Hoy os traigo un buen puñado de mejoras en el core, en esta ocasión la BETA5.

A partir de ahora, y gracias a un esfuerzo en la optimización de los recursos, ha sido posible juntar ambas ramas de desarrollo, y por tanto sólo habrá una rama única, que contendrá la opción mediante teclado para cambiar entre un modo (Rom) u otro.

Mejoras/cambios/fixes en esta BETA5:


- Unificadas ramas normal y A en una. Ahora para resetear en JiffyDOS, pulsar F12 como siempre. Para resetear con rom de C64 normal (y por tanto para poder cargar cintas), pulsar Ctrl+F12

- Mejoras en la salida VGA, para evitar los casos de imagen intermitente en algunas pantallas y eliminar algunos artefactos. En una pequeña cantidad de monitores que no soportan bien el autocentrado, podría salir la imagen un poco desplazada hacia abajo. En tal caso, centrar manualmente con los controles del monitor.

- Añadida opción de scanlines en VGA. Para activarla/desactivarla, pulsar el guión (-) del teclado numérico.

- Añadida opción de paleta de colores dual. Arranca por defecto con la paleta realista (la de siempre). Para cambiar de paleta (a una paleta similar a la del emulador ccs64, con unos colores mucho más brillantes), pulsar la tecla "Fin". Volver a pulsar para volver a la normal.

- Añadida emulación de las teclas F2, F4, F6 y F8 (lo natural en el C64 real es sacarlas mediante SHIFT+F1,F3,F5,F7). Ahora al pulsar F2, F4, F6 y F8, se emula la pulsación de SHIFT + su F correspondiente.

- Mejorado aún más el reset. Ahora ya no hace falta resetear dos veces en prácticamente ningún caso.


El core BETA5: (enlace EXTERNO no vinculado al foro ni la web. No nos hacemos responsables):

Como la información de cada versión está un poco dispersa, voy a juntar en este cuadro todas las opciones del core vía teclado, para que esté a mano:

Teclas del CORE (no confundir con las teclas propias del commodore o de JiffyDOS):

- F12 = Reset modo JiffyDOS
- Ctrl+F12 = Reset modo ROM C64 original (para carga de cintas)
- F11 = Rotar entre puertos de joystick
- Insert = Ir al disco 1 de la SD
- RePag = Ir al siguiente disco de la SD
- AvPag = Ir al disco anterior de la SD
- Ctrl+RePag = Ir al disco 10 posiciones más adelante de la SD
- Ctrl+AvPag = Ir al disco 10 posiciones más atrás de la SD
- Fin = Cambiar paleta de colores
- Bloq.Despl. = Cambiar salida de vídeo entre RGB/Video compuesto y VGA
- (-) Guión del teclado numérico = Activar/desactivar scanlines (sólo en VGA)
- (+) Signo "más" del teclado numérico = cambiar polaridad de entrada de audio (EAR). (disponible desde la BETA6).

Mapeo de teclas del C64 (sólo pongo las menos obvias):

- Teclado numérico = Emulación de joystick (teclas 5 y 2 mapeadas a la dirección "abajo", el 0 es el disparo)
- F2, F4, F6, F8 : tal cual (antes de la beta 5 había que hacerlo con shift, como en el C64 real)
- Esc = Start/Stop
- Alt = Tecla commodore
- F9 = Tecla del símbolo de la libra
- F10 = Tecla del símbolo +
- El resto de teclas van mapeadas al estilo de un teclado de PC inglés.

Algunas teclas rápidas / combinaciones de JiffyDOS (sólo las más usuales. Para el más info, buscar en google):

- F1 = Listar contenido del disco actual
- Shift+Esc = Cargar y ejecutar el primer archivo del disco (equivale a LOAD "*",8 + ENTER + RUN + ENTER. (no todos los discos tienen un primer archivo ejecutable)
- /x* (donde x es una o más letras del nombre de un archivo) = equivale a LOAD "x*",8
- @ = Muestra el estado de la disquetera (error, file not found, version del firmware, etc). Útil cuando el led parpadea de forma constante (indica error de la 1541) y no sabemos cual es el error.
Espero que lo disfrutéis ;)

:chocala!:

Anexo de aclaraciones:

- Antes de preguntar o reportar supuestos errores, intentad averiguar si se trata de un tema de commodore o del core. Por ejemplo, el tema de las teclas de función no era ningún bug (dado que reproducía el funcionamiento del C64 original correctamente).

- Como ya se indica en el post de la primera beta publicada, la implementación no es perfecta, así que por ejemplo el chip gráfico VIC-II no está completo (ni se si algún día lo estará), así que es totalmente normal encontrar algún glicth gráfico, algún gráfico corrupto o comportamiento extraño. No obstante, la inmensa mayoría del software que he probado funciona de forma muy decente y estable.

- Respecto a la carga por cinta: el modo en el que está implementado aquí es igual que en otros cores con carga por cinta, y esl el modo correcto (intentar puentear internamente ciertos pines podría ser peligroso, así que como está hecho es el modo correcto, y funciona, bajo las circunstancias adecuadas). Yo he podido cargar perfectamente desde varias fuentes de audio (SB audigy, Audio HD en placa, etc), pero eso no significa que funcione con todas. Con el iphone y con el portátil no me carga (pero es que tampoco me carga con estos dispositivos el de spectrum o Acorn electron). Tampoco significa esto que si te carga el spectrum te vaya a cargar el C64. El C64 es bastante puñetero con las cargas y los timings de las mismas (por lo que veo tiene menos margen para errores) y hay multitud de tipos de cargadores y de tipos de volcados de cinta.

No responderé a preguntas que ya hayan sido respondidas anteriormente, o cuya respuesta se pueda encontrar en los hilos o que no tenga que ver con el core en sí. Espero lo entendáis :okidoki;
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

Avatar de Usuario
Mejias3D
Mensajes: 429
Registrado: 06 Oct 2015, 23:01

Re: Core C64 BETA5

Mensaje por Mejias3D » 30 Nov 2016, 20:59

Quiero ser el primero en felicitarte de nuevo por este logro.

Mi más profunda admiración por tu trabajo :gracias!: :chocala!:

Avatar de Usuario
Quest
Mensajes: 900
Registrado: 27 Sep 2015, 00:20

Re: Core C64 BETA5

Mensaje por Quest » 30 Nov 2016, 21:04

Mil gracias, Jorge :)
Yo también soy admirador del tuyo :chocala!:
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

Avatar de Usuario
desUBIKado
Mensajes: 1002
Registrado: 05 Ago 2016, 22:33

Re: Core C64 BETA5

Mensaje por desUBIKado » 30 Nov 2016, 21:41

Pedazo curro que te estas pegando con este core, y lo bien que te está quedando. :plasplas:

Avatar de Usuario
desUBIKado
Mensajes: 1002
Registrado: 05 Ago 2016, 22:33

Re: Core C64 BETA5

Mensaje por desUBIKado » 30 Nov 2016, 22:04

@Quest: Algo está fallando con el avance y retroceso de los discos. Si arranco el core y pulso F1 veo el contenido del primer disco, pero si doy "Re Pág" para posicionarme en el segundo, pulso F12 (reset) y luego F1 de nuevo, no veo el contenido del disco2, solo sale READY.

Avatar de Usuario
neuro_999
Mensajes: 692
Registrado: 06 Oct 2015, 10:14

Re: Core C64 BETA5

Mensaje por neuro_999 » 30 Nov 2016, 22:08

Admirable Quest. Trabajo increible y en un tiempo record.
Y de un plumazo has conseguido terminar con los chistes que haciamos los cpceros de los colores apagados del comodore. ;)
Ole y ole, voy a probarloooo.

Muchisimas gracias por tu esfuerzo.

Enviado desde mi ONE A2003 mediante Tapatalk

Avatar de Usuario
Quest
Mensajes: 900
Registrado: 27 Sep 2015, 00:20

Re: Core C64 BETA5

Mensaje por Quest » 30 Nov 2016, 22:25

desUBIKado escribió:@Quest: Algo está fallando con el avance y retroceso de los discos. Si arranco el core y pulso F1 veo el contenido del primer disco, pero si doy "Re Pág" para posicionarme en el segundo, pulso F12 (reset) y luego F1 de nuevo, no veo el contenido del disco2, solo sale READY.
Lo siento, pero no consigo reproducir el problema. Hago lo que dices, de hecho muchas veces, por si acaso, con varias tarjetas SD distintas, y tanto en modo RGB como VGA, con todas las variaciones posibles, y sigo viendo bien el disco 2 (y todos los demás) avance, retroceda, o haga lo que haga. Mira a ver si estás haciendo algo mal, o si tienes bien la SD.
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

Avatar de Usuario
Quest
Mensajes: 900
Registrado: 27 Sep 2015, 00:20

Re: Core C64 BETA5

Mensaje por Quest » 30 Nov 2016, 22:26

Por cierto, muchas gracias también a desUBIKado y neuro_999 por vuestras palabras :D
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

rcmolina
Mensajes: 109
Registrado: 22 Nov 2015, 16:41

Re: Core C64 BETA5

Mensaje por rcmolina » 30 Nov 2016, 22:41

:maestro: gracias por juntar las betas!

Avatar de Usuario
Haplo
Mensajes: 368
Registrado: 05 Oct 2015, 13:51
Ubicación: Ciudad Real

Re: Core C64 BETA5

Mensaje por Haplo » 30 Nov 2016, 22:51

ole,oleeee! da gusto ver que el esfuerzo da sus frutos! Ánimo que ya lo tienes

Cerrado