Tarjeta de memoria para DivIDE

Sinclair QL, ZX81, +2, +3, 128K ...
Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 54 veces
Contactar:

Re: Tarjeta de memoria para DivIDE

Mensajepor mcleod_ideafix » 08 Oct 2013, 00:22

Sinclair escribió:Arranco el Spectrum 48K con el adaptador y sin la tarjeta puesta y despues de cargarse el programa: no dá ningún error sino que muestra la matriz de puntos.
Al poner en ese momento la CF (sin apagar el Spectrum) y tras hacer el GOTO 40 vuelve a aparecer el mismo patrón.
En cambio si arranco con la CF aparece la matriz de "P".


Eh, eh! Eso sí que es raro. Sin tarjeta puesta no hay puertos a los que acceder.... Mmmmmm... claro, si no hay puertos, lee el bus flotante. Vamos a arreglar eso. Descarga de nuevo la utilidad del enlace web que te di. La he cambiado para que la lectura de puertos siempre la haga cuando no hay actividad en la ULA, y así el bus flotante siempre dé 255. Haz de nuevo la última prueba con esta versión, por favor.
http://www.atc.us.es/~rodriguj/test8bitsimple.tap

Tiene puesto 1 segundo de timeout. Si todo va "bien", al usar esta utilidad con la interfaz pinchada pero sin CF puesta, debería dar un error de inicialización, con el STATUS = FF . Con la tarjeta pinchada una vez que el equipo ha arrancado... es lo que quiero averiguar. Ya que estás, prueba también con la CF pinchada en el momento en que se enciende el Spectrum (o sea, cuando estamos seguros, al menos hasta donde sabemos, que la CF se ha reseteado)
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
Sinclair
MSX Turbo R
MSX Turbo R
Mensajes: 323
Registrado: 19 Jun 2013, 00:00
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Sony PlayStation 1
Gracias dadas: 8 veces
Gracias recibidas: 1 vez

Re: Tarjeta de memoria para DivIDE

Mensajepor Sinclair » 08 Oct 2013, 00:35

Ahora si da error al inicializar STATUS = FF cuando cargo el programa sin la CF. Si pincho justo después la CF y vuelvo a cargar se queda la pantalla en blando durante unos segundos y después aparece la matriz de puntos.

Si arranco el ordenador con la CF y ejecuto el programa, tras unos segundos aparece exactamente esto:

PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPPPPPPPPPPP
PPPPPPP.........
................
© 1982 Sinclair Research Ltd

Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 54 veces
Contactar:

Re: Tarjeta de memoria para DivIDE

Mensajepor mcleod_ideafix » 08 Oct 2013, 00:53

Pues por hoy me rindo :( A ver si mañana o pasado se me ocurre alguna cosa que no hayamos comprobado, porque la verdad es que esa CF tiene guasa...

La cosa está en repasarse este documento de especificaciones:
http://www.csie.ntu.edu.tw/~b94108/2008dsd/cfspc4_1.pdf

Concretamente, el punto 4 del mismo, y en particular, el apartado 4.7.

De hecho, nada más empezar ese apartado, dice:

"The CompactFlash Storage Card and CF+ Card can be configured in a True IDE Mode of
operation. The CompactFlash Storage Card is configured in this mode only when the -OE input
signal is grounded by the host during the power off to power on cycle"

El pin -OE de la CF es el pin 9 (no del conector IDE, sino del conector de la CF). Con mucho tino, porque son pines muy pegaditos unos con otros... ¿puedes comprobar con el ohmetro que hay continuidad entre ese pin 9 y masa?
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
Sinclair
MSX Turbo R
MSX Turbo R
Mensajes: 323
Registrado: 19 Jun 2013, 00:00
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Sony PlayStation 1
Gracias dadas: 8 veces
Gracias recibidas: 1 vez

Re: Tarjeta de memoria para DivIDE

Mensajepor Sinclair » 08 Oct 2013, 00:58

mcleod_ideafix escribió:Pues por hoy me rindo :( A ver si mañana o pasado se me ocurre alguna cosa que no hayamos comprobado, porque la verdad es que esa CF tiene guasa...

La cosa está en repasarse este documento de especificaciones:
http://www.csie.ntu.edu.tw/~b94108/2008dsd/cfspc4_1.pdf

Concretamente, el punto 4 del mismo.


Ok, maestro, que descanses.
© 1982 Sinclair Research Ltd

Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 54 veces
Contactar:

Re: Tarjeta de memoria para DivIDE

Mensajepor mcleod_ideafix » 08 Oct 2013, 01:13

Más cosas a comprobar (y eso podría ser prometedor): la tarjeta parece que obedece a los comandos, pero no da los datos correctos. ¿Y si se espera UDMA cuando nosotros estamos usando PIO? Un poco más adelante en el documento se especifica que para usar el modo PIO al leer o escribir en el registro DATA, el pin DMACK debe estar a +5V. ¿Se cumple esto en la tarjeta CF? Lo vimos en el conector IDE, pero no en la propia tarjeta CF, y es que por lo visto hay adaptadores que no conectan nada a este pin. Hay que medir en el pin 44 del conector de la CF, y debería estar a +5V.

Ea, ya lo dejo por hoy... :D
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
Sinclair
MSX Turbo R
MSX Turbo R
Mensajes: 323
Registrado: 19 Jun 2013, 00:00
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Sony PlayStation 1
Gracias dadas: 8 veces
Gracias recibidas: 1 vez

Re: Tarjeta de memoria para DivIDE

Mensajepor Sinclair » 08 Oct 2013, 01:21

Un momento,... ¿lo que deben tener de los seguidores de emisor de A8, A12 y A13 son pulldowns o pullups?

-- Actualizado 08 Oct 2013, 01:27 --

Vale, habia dudado pero veo que son pulldowns (resisitencia de 10K entre pin y masa).
Y lo de los PINES 1 y 29 son pullups (resistencia de 10K entre pin y +5V).
Está bien, o por lo menos es así como lo tengo.

-- Actualizado 08 Oct 2013, 01:45 --

mcleod_ideafix escribió:Más cosas a comprobar (y eso podría ser prometedor): la tarjeta parece que obedece a los comandos, pero no da los datos correctos. ¿Y si se espera UDMA cuando nosotros estamos usando PIO? Un poco más adelante en el documento se especifica que para usar el modo PIO al leer o escribir en el registro DATA, el pin DMACK debe estar a +5V. ¿Se cumple esto en la tarjeta CF? Lo vimos en el conector IDE, pero no en la propia tarjeta CF, y es que por lo visto hay adaptadores que no conectan nada a este pin. Hay que medir en el pin 44 del conector de la CF, y debería estar a +5V.

Entiendo que esto explica también que el adaptador funcione correctamente conectado el PC, ya que este debe trabajar con el en modo UDMA.

Intentaré entonces medir la tensión que le llega al pin 44 de la CF (y digo intentaré porque no se si podré sin hacer algún estropicio :lol: )

-- Actualizado 08 Oct 2013, 09:22 --

Al final no fue tan difícil como pensaba, comprobé primero la continuidad entre el pin 29 del IDE y el 44 de la CF y despúes medí la tensión del primero:

4,7V llegan al pin 44 de la CF.
© 1982 Sinclair Research Ltd


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

Usuarios navegando por este Foro: Bing [Bot] y 16 invitados