Download documento de instalación y prueba del kit de ampliación de 29k

Document related concepts
no text concepts found
Transcript
DOCUMENTO DE INSTALACIÓN Y PRUEBA DEL KIT DE
AMPLIACIÓN DE 29K PARA JUPITER ACE, VERSION
ZONADEPRUEBAS.
Miguel Angel Rodríguez Jódar.
Dpto. Arquitectura y Tecnología de Computadores. Universidad de Sevilla.
Para consultas sobre esta ampliación, e-mail a: [email protected]
Materiales que forman el kit.
1 x GAL16V8 programada, y con un puente que une los pines 18 y 20.
1 x SRAM 62256 (32Kx8), con el pin 26 separado de los demás, y con un hilo de wire-wrapping soldado a él
(en el kit el hilo está recogido arrollado en el cuerpo del chip).
Además necesitará:
• Cable fino, a ser posible de un solo hilo, para realizar puentes en la cara de pistas. Uno que
sirve bien es el que se encuentra en el interior de los cables de red Ethernet. Tendrá que
estañar las puntas desnudas del cable, una vez cortado a la medida del puente, para que
suelde bien.
• Soldador, estaño, y malla para desoldar (esta última para usar sólo en caso de despistes, pero
siempre es bueno tenerla a mano.)
1
Convenciones
•
Los números hexadecimales usarán la notación con el sufijo “h”. Por ejemplo, 5B00h
•
Cuando se señalen circuitos integrados o cualquier otro elemento de la placa del Jupiter ACE, se
supondrá que la placa está reposando en posición horizontal, y orientada de forma que el nombre de
la web “www.zonadepruebas.com” se lee a la derecha del usuario y el conector de expansión está
situado en el lado más alejado del usuario.
•
Cuando se nombren pines de un chip, se usará el esquema de numeración habitual, en el que el chip
se ve desde arriba, con la muesca en forma de semicirculo hacia arriba. En chips que no lleven
muesca, habrá un puntito al lado del pin 1. El esquema es el siguiente:
•
Es decir: el pin 1 estará en la esquina superior izquierda del chip (siempre viendo el chip desde
arriba, es decir, por la cara de componentes). El pin 2 estará debajo de él, y así hasta el último pin de
la fila de la izquierda. El siguiente pin será el situado en la fila de la derecha, enfrente del último que
se contó, y de ahí, la cuenta sigue hacia arriba. El último pin del chip es el situado enfrente del
primero.
•
Cuando se manipule la placa por la cara de pistas para hacer soldaduras, y se lean en este documento
referencias a números de pines, tenga en cuenta que la figura anterior deberá interpretarse como “en
espejo”: la fila izquierda se convierte en derecha, y la derecha en izquierda.
Instalación.
La instalación la haremos paso a paso, dando pautas de comprobación en cada paso para asegurarnos de que
todo va bien, antes de acometer el siguiente. Es necesario no obstante asegurarse de que el Jupiter ACE
funciona correctamente antes de realizar la ampliación.
Sustitución de la RAM
1. Retire el chip de RAM marcado como 6116/6264 en la serigrafía de la placa. Este chip de memoria está
justo a la derecha de la EPROM, y justo encima de los jumpers de selección 6116/6264. La foto de la figura
está tomada desde el costado derecho del chip.
2. Coja el chip 62256 suministrado en el kit. Desenrolle el hilo de wire-wrapping que va soldado a uno de
sus pines, con cuidado de no dar tirones.
3. Coloque el 62256 en el zócalo donde antes estaba la memoria RAM que acaba de retirar. Cuide de que
todos los pines entren en el zócalo EXCEPTO el pin 26, adonde va soldado el hilo. Ese pin debe quedar
fuera del zócalo, tal y como muestra la figura. No lo doble demasiado hacia fuera, ya que se puede partir.
4. Localice la vía más cercana al lugar donde está soldado el hilo (ver flecha). Introduzca el hilo por la vía
para llevarlo a la cara de pistas de la placa. NO SUELDE el hilo a esta vía. Sólo la usamos como un agujero
“pasarela” para llegar a la cara de pistas de la placa.
2
5. En la cara de pistas, lleve el hilo de wirewrapping hasta el pin 4 del Z80A y suédelo ahí, como indica la
siguiente figura (el hilo es el marcado con la flecha blanca, y el pin al que hay que soldarlo está señalado por
la flecha amarilla).
6. Use un trozo de cable fino para soldar entre los dos puntos marcados con dos flechas amarillas. El cable es
el señalado con la flecha blanca. Los dos puntos pertenecen, el izquierdo al pin 1 de la RAM 62256, y el
derecho, al pin 3 del Z80A.
3
7. En los jumpers de configuración de memoria en el centro de la placa, seleccione, en el rotulado como
6116, la opción 2K. En el rotulado como 6264, la opción SI.
8. Arranque el Jupiter ACE. Debería arrancar sin problemas. Si se da la orden
15384 @ u.
Debe mostrarse el valor 16384 (que corresponde a una configuración de 1K de RAM de usuario). Si esto es
así, la memoria está instalada correctamente.
Sustitución del decodificador de direcciones
1. Localice el chip 74LS138. Es el situado en la primera fila de chips, al lado del conector de expansión, a la
izquierda. Es un chip de 16 pines. Retírelo.
2. Instale el chip GAL16V8 suministrado en el kit en el zócalo del 74LS138 retirado. El chip deberá quedar
de la forma que muestran las dos figuras. Quedarán cuatro pines “al aire”. Esos cuatro pines son los que
están más cerca de la muesca en forma de media luna que tiene el chip. Es posible que el chip choque de esta
forma con el condensador de desacoplo situado justo debajo de él. En ese caso, doble un poco el
condensador hasta que no hagan contacto. Cuide de que los cuatro pines que quedan sin conexión no se
toquen entre sí. Cuide también de que el puente que une los pines 14 y 16 no toque ningún otro pin.
3. Usando un cable fino, realice el puente mostrado en la figura (flecha blanca). Este puente une el pin 7 del
zócalo del 74LS138, donde ahora hemos puesto la GAL (flecha amarilla arriba-izquierda) con el pin 1 del
Z80A (flecha amarilla abajo-derecha).
4. Este puente es más sencillo, y quizás sólo necesite “acercar” estaño: el pin señalado con la flecha blanca
corresponde al pin 9 del zócalo del 74LS138. Use esta figura y la anterior para orientarse. Mirando por la
4
cara de pistas, este pin está a la izquierda y un poco más abajo del pin que acaba de soldar en el zócalo del
74LS138. Hay que soldar ese pin a la vía que está justo a su lado como muestra la figura.
5. Configure el bloque de jumpers de la parte central de la placa de la misma forma que para la prueba
anterior. Arranque el Jupiter ACE. Debería arrancar de la forma usual. Si emite la orden:
15384 @ u.
Debe mostrarse el valor 45056 (que corresponde a una configuración de 29K de RAM de usuario).
Tal y como está el equipo ahora, funciona no con 29K de usuario, sino con 32K. Los 3K “sobrantes” están
mapeados desde la dirección 3000h hasta 3BFFh. Estas direcciones habitualmente están ocupadas por copias
fantasma del primer KB de memoria de usuario (ver tabla).
Estos 3K no están disponibles para el intérprete de Forth, y oficialmente “no existen” por lo que ningún
programa los usará, salvo que esté programado especialmente para detectar esta singular configuración.
Por otra parte, podría existir software para el Jupiter ACE que por suerte de algún truco de programación,
asumiera que tiene disponibles las tres copias fantasma del primer KB y usara direcciones de memoria en
esas zonas fantasma para actualizar datos del primer KB de memoria RAM.
El Jupiter ACE ve oficialmente esta disposición:
Decimal
Descripción
Hexadecimal
12288 - 13311
Tercera copia fantasma
(1KB)
3000h – 33FFh
13312 – 14335
Segunda copia fantasma
(1KB)
3400h – 37FFh
14336 - 15359
Primera copia fantasma
(1KB)
3800h – 3BFFh
15360 - 16383
Primer KB de RAM
3C00h – 3FFFh
Esto significa que cuando se accede a la dirección 3000h ó 3400h, ó 3800h, en realidad se está accediendo a
la 3C00h. Lo mismo ocurre con el resto de direcciones dentro del rango de 1KB.
Dado que el mapa de memoria oficial del Jupiter ACE indica que esos 3K deben corresponder a copias
fantasma del primer KB de RAM, se ha dejado como opción configurar el decodificador de direcciones para
que actúe de esta forma. Si desea realizar esta configuración para conservar el 100% de compatibilidad con
todo el software escrito, o por escribir, para el Jupiter ACE, siga las siguientes instrucciones:
5
Habilitación de las copias fantasma de la RAM.
1. Quite los dos jumpers que ha usado en el bloque de jumpers central de la placa. No debe haber ningún
jumper puesto en esa zona.
2. Usando cable fino, realice los dos puentes marcados con dos flechas blancas. Estos puentes unen dos pines
del zócalo del 74LS138 (el 10 y el 11) con dos puntos dentro del bloque de jumpers central de la placa. En la
figura, los puentes unen los pines marcados con flechas del mismo color: un puente une el pin 10 del zócalo
del 74LS138 con el pin central del jumper serigrafiado como 6116 (flechas rojas). El otro puente une el pin
11 del zócalo del 74LS138 con el pin central del jumper serigrafiado como 6264 (flechas amarillas).
3. Arranque el Jupiter ACE. Debe comportarse exactamente igual que en la prueba anterior. Para comprobar
que las copias fantasma están funcionando, teclee las siguientes órdenes:
15384
14360
13336
12312
@
@
@
@
u.
u.
u.
u.
Todas deben dar el mismo valor (45056). Si sólo la primera orden da ese valor pero el resto da 0, u otra cosa,
repase los dos últimos puentes.
6
APENDICE 1. Pulsar teclas en el Jupiter ACE sin tener un teclado.
Si no ha instalado un teclado en su placa, puede usar este método para emitir las órdenes que se aconsejan
para probar la ampliación de memoria.
El método asume que se ha instalado algún tipo de conector en las dos filas de pines que hay reservadas para
el teclado. Por ejemplo, se pueden emplear dos tiras de pines como en la figura.
1 2 3 4 5 6 7 8
1 2 3 4 5
Los pines de la fila superior del teclado los numeraremos de izquierda a derecha, del 1 al 8. Por otra parte,
los pines de la fila inferior del teclado los numeraremos también de izquierda a derecha, y del 1 al 5.
Para pulsar una tecla hay que unir momentáneamente con un trozo de cable un pin de la fila superior con uno
de la fila inferior. Para hacerlo lo más limpio posible, inserte un extremo del cable en el pin correspondiente
a la columna (1 a 8). Dirija el otro extremo del cable a pocos milímetros del pin correspondiente de la fila (1
a 5). Con un movimiento rápido, haga contacto durante un instante entre el extremo del cable y el pin de la
fila, y separe. En caso de error, o que por el pulso aparezca más de una pulsación, haga un reset tocando con
la punta de un destornillador los dos pines de RESET de la placa y vuelva a comenzar.
Después veremos como hay teclas que necesitan dos trozos de cable para poder pulsarse. De momento, para
las pulsaciones simples, usaremos esta tabla. Para encontrar qué pines hay que unir, encuentre la tecla en la
tabla, y busque a qué fila y columna corresponde.
1
2
3
4
5
6
7
8
1
SPA
CE
ENT
ER
P
0
1
Q
A
CAP
S
2
M
L
O
9
2
W
S
SYM
B
3
N
K
I
8
3
E
D
Z
4
B
J
U
7
4
R
F
X
5
V
H
Y
6
5
T
G
C
Por ejemplo: para emitir la orden VLIST (y ENTER), hay que unir los siguientes pares de columna-fila:
V:(1,5) L:(2,2) I:(3,3) S:(7,2) T:(6,5) ENTER:(2,1)
7
Para poder teclear algunos símbolos que nos interesan, tales como la @ y el “.” tenemos que poder pulsar
dos teclas a la vez. En el teclado del Jupiter ACE, la @ está en la tecla del 2 y el “.” en la tecla de la M. Para
acceder a ellos, se pulsa el 2 o la M, manteniendo pulsado a la vez la tecla SYMBOL SHIFT.
Siguiendo nuestro método, esto significa usar dos trozos de cable: el que estamos usando para las
pulsaciones normales, y otro que dejarmos enchufado en (8,2) cuando queramos pulsar SYMBOL SHIFT.
Así, la secuencia:
15384 @ u.
Se teclea así:
1
5
3
8
4
SPACE
Pulsar
SYMB
@
Soltar
SYMB
SPACE
U
Pulsar
SYMB
.
Soltar
SYMB
ENTER
5,1
5,5
5,3
4,3
5,4
1,1
poner
cable en
8,2
5,2
quitar
cable de
8,2
1,1
3,4
poner
cable en
8,2
1,2
quitar
cable de
8,2
2,1
Si nos equivocamos y queremos borrar el último carácter introducido erróneamente, se puede usar esta
secuencia, equivalente a pulsar CAPS SHIT+0:
Pulsar
CAPS
0 (cada vez que se
pulse, borra un carácter)
Soltar
CAPS
poner cable en 8,1
4,1
quitar cable de 8,1
La siguiente tabla muestra qué carácter aparece para cada fila y columna que unamos con un cable, cuando
existe otro cable uniendo la columna 8 con la fila 2 (equivalente a mantener SYMBOL SHIFT pulsado):
1
2
3
4
5
6
7
8
1
SPA
CE
ENT
ER
“
_
!
Q
~
CAP
S
2
.
=
;
)
@
W
|
SYM
B
3
,
+
©
(
#
E
\
:
4
*
-
]
‘
$
<
{
£
5
/
^
[
&
%
>
}
?
8
APENDICE 2. Mapa de todos los puentes y cortes a realizar en la placa.
En esta figura se detallan todos los puentes explicados en los párrafos anteriores. Es la placa vista por la cara
de pistas.
Se han añadido los puentes y cortes que han de hacerse de forma obligatoria en la placa, para que ésta
funcione. Los cortes se han señalado con trazos pequeños en rojo
en las pistas a cortar. Están apuntados por las flechas amarillas.
Tras los dos cortes de pistas, hay que realizar el puente señalado
con la flecha celeste.
El elemento rojo que se ve puesto en el conector de 5 pines del
teclado es un pack de resistencias de 10K. Internamente son 5
resistencias de 10K unidas por un extremo. El extremo es el pin
más a la derecha, que se suelda a una toma de 5V. Si no se tiene
un pack como éste, se puede hacer lo mismo soldando 5 pequeñas
resistencias de 10K: para cada una de ellas, un extremo se suelda
a uno de los 5 pines del teclado, y el otro extremo se suelda a una
pista de 5V en la placa. Recuérdese que en los chips que estamos usando, el
pin con numeración más alto corresponde precisamente a la toma de 5V (pin
14 en los chips de 14 patillas, y pin 16 en los chips de 16 patillas).
Foto ©2010 Sergio Jiménez de Asis
9
APENDICE 3. Opciones para obtener una salida de video.
Comentaremos las tres opciones que han surgido en el foro, en lo que a obtener una señal de video se
refiere.
Salida a través de la toma de video
existente en la placa del Jupiter ACE.
Para usar esta toma, se usará un condensador electrolítico de
100-200 microfaradios, con el positivo soldado a la toma de
video de la placa. El otro pin del condensador será nuestra
toma de video para el monitor. De una toma adyacente a la
de video se obtiene la señal de masa (GND).
El resultado es bastante decente: la imagen no está
distorsionada y es nítida. Sin embargo, es muy oscura, y
será necesario subir el nivel de contraste. En la figura se han
subido dichos niveles para que sea legible.
Salida a través del 74LS86
Consiste en usar como salida de video el pin 11 del chip
74LS86. El resultado, en mi monitor es éste. La imagen es
nítida y brillante, pero tanto que me distorsiona en la parte
superior de la pantalla. Tiene sin emargo la ventaja de ser el
sistema más sencillo posible para obtener la ansiada señal
de video.
Salida mediante transistor
Es una variante de la primera solución, y consiste en
amplificar en corriente la señal que está presente en el
conector de video, para que el brillo y el contraste sean
óptimos.
El montaje usa un transistor y una resistencia. El transistor
puede ser un 2N3904. La base del transistor irá conectada a
la salida de video de la placa. El colector, a una pista de 5V
próxima. El emisor, a una resistencia de 1K, y esa
resistencia, a masa. La nueva salida de video se encuentra
en los terminales de dicha resistencia.
EMISOR
BASE
RESISTENCIA
COLECTOR
GND (MASA)
PISTA DE 5V
10