Opus Discovery Va-de-retro

Proyectos de hardware con sus esquemáticos y si llevan software en fuente

Moderadores: cacharreo, Fundadores

Reglas del Foro
Aquí solo tienen cabida proyectos de hardware que incluyan siempre al menos sus esquemáticos para poder reproducirlos si llevan componentes electrónicos, y si es posible los ficheros del programa en que se hacen, los diseños de las placas, los gerber, etc. Si llevan algún tipo de software asociado debe estar diponible el código fuente

Para los que no cumplen estas condiciones se debe postear en el foro de proyectos generales.
Avatar de Usuario
acf76es
Demonio tercer orden
Demonio tercer orden
Mensajes: 829
Registrado: 03 Nov 2014, 22:48
Ubicación: Cantabria
Has thanked: 1 time
Been thanked: 39 times

Re: Opus Discovery Va-de-retro

Mensaje por acf76es »

aqui tenemos el diagrama del opus discovery:

Imagen

si ves en el digrama kyp, la señal /WR no requiere en ningun momento para establecer ninguna ecuacion en la gal porque no entra en ninguna.

la que si se establece la señal /RD es solo para el kempston.

EDITO:
U12A_5 = !A0 & !A1 & !A2 & !A5 & !A7;

deberia de ser:
U12A_5 = !A0 # !A1 # !A2 # !A5 # !A7;
lo digo porque U12 es una puerta NOR
Avatar de Usuario
Kyp !Sinclair 1
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 3376
Registrado: 30 Sep 2013, 14:54
Ubicación: Madrid
Has thanked: 28 times
Been thanked: 146 times

Re: Opus Discovery Va-de-retro

Mensaje por Kyp »

acf76es escribió: 04 Abr 2021, 18:31 aqui tenemos el diagrama del opus discovery
Así está más claro.

Entonces...
CX_U12B_6 = !A15 & !A14 & RFSH & !MREQ ; /* External ROM OE Ignored. */

¿Por qué se ignora EXTROMCS? En el esquema si se usa.
Avatar de Usuario
alvaroalea España - Asturias
Demonio segundo orden
Demonio segundo orden
Mensajes: 1091
Registrado: 25 Oct 2014, 12:49
Ubicación: Asturias, Paraiso Natural
Has thanked: 13 times
Been thanked: 52 times
Contactar:

Re: Opus Discovery Va-de-retro

Mensaje por alvaroalea »

A ver voy a intentar resumir los ultimos correos:

Ignoro EXTROMCS porque no tenemos el slot de expansion, la idea de la opus original es poder conectar una segunda interface, y si esta pide usar el espacio de memoria de la rom, inhibe a la OPUS, tambien esta simplificado el circuito el ROMCS que va al spectrum, por la misma razon.

WR / RD no se usan porque esta interfaz utiliza la forma "motorola" de perifericos, es decir, utiliza PEEK y POKE en lugar de IN y OUT

CX_CK = !MREQ & RFSH; -> es una AND, el clock de la bascula JK es positivo, asi que necesitamos que RFSH este a 1 (porque se pone a cero cuando esta en el ciclo de refresco) y que MREQ este a 0 (porque se pone a cero cuando accedemos a memoria) RFSH se tiene que utilizar porque como usamos la forma "motorola" el propio ciclo de refresco del Z80 podria provocar una activacion o desactivacion cuando no debe.

Probablemente Kyp tenga sentido, efectivamente RFSH es un atajo, que necesita una patilla menos, tener en cuenta que el interface no esta diseñado desde cero, es una copia del esquema original.

Las señales A13 y A11 que van a sendos decodificadores del 74LS139 se les quito la negacion a posta, si te fijas, las patillas 6 y 7 estan intercambiadas en el primero, de manera que cuando la entrada A1 este a cero, y A13 este a cero, (estaremos leyendo los primeros 8K) se activa O2.
En el otro igual al estar negada A11, he intercambiado O0 con O1 y O2 con O3.

U12A_5 = !A0 & !A1 & !A2 & !A5 & !A7; -> esta bien, U12 es una NOR, asi que hacemos OR de todos y negamos el resultado !( A0 # A1 # A2 # A5 # A7) , o utilizando la propiedad conmutativa (creo) una and con las entradas negadas !A0 & !A1 & !A2 & !A5 & !A7 ya que /(A+B) = /A * /B

Se me ocurre la siguiente prueba:

anulemos la bascula JK, haciendo:
CX_K = b'0';
CX_J = b'1' ;

Y grabemos estas roms:
http://www.fruitcake.plus.com/Sinclair/ ... thStar.htm
y
http://www.fruitcake.plus.com/Sinclair/ ... ridges.htm

De esta manera se queda paginada la rom del interfaz siempre, asi que deberiamos ver que carga esas rom y se ejecutan perfectamente (esta prueba es mejor hacerla con el 6821 y el WD1770 quitados).

De esta manera podemos comprobar que la parte de decodificacion y paginado de la rom funciona correctamente. y vamos descartando cosas...
Avatar de Usuario
acf76es
Demonio tercer orden
Demonio tercer orden
Mensajes: 829
Registrado: 03 Nov 2014, 22:48
Ubicación: Cantabria
Has thanked: 1 time
Been thanked: 39 times

Re: Opus Discovery Va-de-retro

Mensaje por acf76es »

ya he modificado la Gal como comentabas.. he grabado las dos rom's y funciona perfectamente como la rom de test y el juego, eso si.. en algunos momentos no carga a la primera y se he de hacer un reset o varios..

CX_K = 'b'0;
CX_J = 'b'1 ;
Avatar de Usuario
alvaroalea España - Asturias
Demonio segundo orden
Demonio segundo orden
Mensajes: 1091
Registrado: 25 Oct 2014, 12:49
Ubicación: Asturias, Paraiso Natural
Has thanked: 13 times
Been thanked: 52 times
Contactar:

Re: Opus Discovery Va-de-retro

Mensaje por alvaroalea »

acf76es escribió: 05 Abr 2021, 12:06 ya he modificado la Gal como comentabas.. he grabado las dos rom's y funciona perfectamente como la rom de test y el juego, eso si.. en algunos momentos no carga a la primera y se he de hacer un reset o varios..

CX_K = 'b'0;
CX_J = 'b'1 ;
Esa es buena información, podemos asumir que la parte de los decodificadores está bien, ahora mismo sospecho del reset y de las salidas de la báscula, no sé si tienes opción de intercambiar las salidas 8 y 9 y probar con las ecuaciones normales de J y K y las invertidas, tengo que analizar con más calma el circuito
Avatar de Usuario
acf76es
Demonio tercer orden
Demonio tercer orden
Mensajes: 829
Registrado: 03 Nov 2014, 22:48
Ubicación: Cantabria
Has thanked: 1 time
Been thanked: 39 times

Re: Opus Discovery Va-de-retro

Mensaje por acf76es »

puedo intercambiar las salidas sin problema, e intentar utilizar las ecuaciones de la báscula JK, pero necesito saber que ecuaciones quieres, las ultimas o las versiones anteriores.
Avatar de Usuario
alvaroalea España - Asturias
Demonio segundo orden
Demonio segundo orden
Mensajes: 1091
Registrado: 25 Oct 2014, 12:49
Ubicación: Asturias, Paraiso Natural
Has thanked: 13 times
Been thanked: 52 times
Contactar:

Re: Opus Discovery Va-de-retro

Mensaje por alvaroalea »

A ver, estoy pensando un poco en voz alta:
El reset tiene que estar bien, porque va tambien a PIA y al WDC y en estos esta claro que es negado.

En la direccion 0 de la rom del Opus no hay nada, bueno, si un salto directo a despaginar la interfaz y saltar a la direccion 0000 de la ROM.

Asi que realmente no importa intercambiar Q y /Q, ya que en un reset siempre se despagina el interfaz.

En la rutina de despaginado, direccion 1748 hay simplemente un RET, eso me hace pensar que esa direccion se lee de la rom del interfaz y DESPUES se despagina el interfaz,
Pero en las direcciones 8 y 48 hay codigo que tiene que ser ejecutado al paginar la interfaz.
es decir, creo que el circuito formado por el transistor, el condensador y dos resistencias que hay entre Q de la bascula JK y ROMCS del spectrum funciona como un temporizador cuando despaginamos, pero entra inmediatamente cuando paginamos. (el condensador mantiene la salida ROMCS a uno el tiempo suficiente para que el Z80 lea la instruccion RET).
No es que este muy seguro de eso, ya que la señal que va la ROM del opus no se temporizaria, y si lee el RET es de casualidad.

Igual era buena idea replicar ese circuito, pero partiendo de Q! para ahorrarnos el inversor.
reset.jpg
Las resistencias las sabemos, el valor del condensador no, a ver si en speccy.pl lo comentan... o alguno de los que tiene la interfaz original puede identificar dicho condensador.

Esto es un poco complicado pero mientras una prueba que seria facil de hacer es la siguiente (esta asi a lo loco, sin pensarlo mucho:
Si funciona, pues guay, aunque esa opcion anula el poder hacer una version "extendida" continuando el slot, quiza podriamos hacer algun apaño utilizar la otra bascula JK para algo.

Hacemos un puente entre la patilla 9 de la bascula JK que es por cierto, el pin central del jumper JP2 y la patilla 19 de la GAL IC04 y en la programacion de la gal añadimos la definicion del pin 19 (no recuerdo si tienen que ir en orden la definicion de pins) y las ecuaciones como sigue:

PIN 19 = DLY
/* */
CX_U12B_6 = !A15 & !A14 & RFSH & !MREQ ; /* External ROM OE Ignored. */
C1 = !A15 & !A14 & !A13 & !A11 & !A4 & A3 & U12A_5 & !MREQ & RFSH & !M1 ;
C2 = A8 & A9 & A10 & A12 ;
C3 = !A8 & !A9 & !A10 & !A12 ;
CX_K = C1 & C2 & A6 ;
CX_J = (C1 & C2 & !A6) # (C1 & C3) ;
CX_CK = (!MREQ & RFSH & !DLY ) # (MREQ & RFSH & DLY );

Por cierto, el trozo de esquema de arriba viene de este otro, sacado de facebook:
Imagen
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Avatar de Usuario
acf76es
Demonio tercer orden
Demonio tercer orden
Mensajes: 829
Registrado: 03 Nov 2014, 22:48
Ubicación: Cantabria
Has thanked: 1 time
Been thanked: 39 times

Re: Opus Discovery Va-de-retro

Mensaje por acf76es »

buenas, acabo de realizar el puente de la salida 9 del JK (LS73) al pin 19 de la gal IC4 y añadido las ecuaciones.

resultados: lo mismo en la parte de la rom del opus

la parte buena: la rom del juego y del test funciona.. pero seguimos con el reset que se ha de presionarlo algunas veces para eque funcione.. de manera aleatoria..
Avatar de Usuario
Scooter !!Va-de-Retro
Demonio tercer orden
Demonio tercer orden
Mensajes: 966
Registrado: 27 Feb 2014, 11:33
Ubicación: Alicates
Has thanked: 1 time
Been thanked: 12 times

Re: Opus Discovery Va-de-retro

Mensaje por Scooter »

Dallas en su día, luego la compró Maxim y ya no sé ahora quién ha comprado a quien...

El caso es que Dallas tenía unos circuitos muy majos para gestionar el reset, en su día los usé en proyectos y funcionaban muy bien. Mejor que redes RC e inventos caseros.
Busca econoreset. Son como un transistor TO 92 seguro que hay smd al gusto.

Acabo de buscarlos ds1233

Hay más versiones, de reset por 0, reset por 1 ycreo que más opciones.
Solo se que no se nada (algunos no saben eso)
Avatar de Usuario
alvaroalea España - Asturias
Demonio segundo orden
Demonio segundo orden
Mensajes: 1091
Registrado: 25 Oct 2014, 12:49
Ubicación: Asturias, Paraiso Natural
Has thanked: 13 times
Been thanked: 52 times
Contactar:

Re: Opus Discovery Va-de-retro

Mensaje por alvaroalea »

acf76es escribió: 08 Abr 2021, 11:34 buenas, acabo de realizar el puente de la salida 9 del JK (LS73) al pin 19 de la gal IC4 y añadido las ecuaciones.

resultados: lo mismo en la parte de la rom del opus

la parte buena: la rom del juego y del test funciona.. pero seguimos con el reset que se ha de presionarlo algunas veces para eque funcione.. de manera aleatoria..
Por aclarar:
Cuando dices que lo mismo con la ROM del Opus es que arranca el spectrum sin más? No sale la flecha? Se cuelga hasta que resetear varias veces?
Que el test y juego funcionen no es ni buena ni mala noticia, es más una casualidad.
Este interfaz en reset no hace nada, se inicializa con las interrupciones, en la dir #8, así que aunque inicie en la ROM del spectrum en la primera interrupción salta a la ROM del Opus, supongo que por eso necesita varios intentos para arrancar con esas dos.
Responder

Volver a “Proyectos de hardware abiertos”