Story Transcript
Proyecto
de
Ingeniería
Electrónica
Adaptación de Sistema Para Edición de Sextos e n Español
Diseño Reporte de Avance
-- - Leon, Alumno : Eugenio Ponce
Area : Computación Titular : M. en C Luis Niño de Rivera Asesor : M. en C Angel Kuri
Universidad
Autónoma
Metropolitana
En el presente reporte se tratarán los siguientes aspectos: a) Planteamiento General. Visión general del problema y objetivos que se pretenden lograr con el proyecto. b) Diseño.
Descripción de los pasos que se siguen en el proyecto. Descripción del equipo a modificar, principales caracte risticas
.
c) Reporte de Avance.
Grado de avance del proyecto, descripción de pasos ya completados y breve descripción de pasos futuros. Problemas actuales y posibles alternativas. Debe recalcarse que esta primera parte sólo se ocupa de aspectos de diseño, ya que el ensamble de partes, las pruebas y la documentación finales se darán detalladamente en la segun-
da parte del proyecto.
I. Introducción.
Como sabemos, actualmente en el campo d e la computación se cuenta principalmente con sistemas que nos manipulan información con las características del idioma inglés. Esto no representa un problema si pensamos en los lenguajes d e programación ,ya que como sabemos, las características de la gramática inglesa son adecuadas para este tipo de proceso d e la información, pero sí e s un problema al considerar las necesidades del usuario mexicano. Esto e s , en un sistema de cómputo no sólo nos interesa correr programas y manipular datos sino también editar textos de muy diversas aplicaciones, tantas como puede haber e n una empresa sea ésta del tamaño que fuere y el tipo de actividad que desarrolle. Existen aspectos tales como controles de inventarios, impre siones de resultados de nóminas y en general actividades de tipo administrativo , de las cuales ninguna empresa puede evadirse, y que requieren del manejo de información en base a las Características d e nuestro idioma, Por otro lado, existen normas internacionales que regulan e l uso d e los códigos para los diferentes símbolos y caracteres (código ASCII en nuestro caso)*q:;e deberán s e r respetados. A s í que lo que este proyecto pretende es conservar las características d e l código internacional vigentes pero contar con las facilidades necesarias para la ediciOn d e textos en español. Aprovechando las guias que la compañía Cromemco Inc. d a e n algunas d e s u s notas de aplicación y haciendo algunas otras modificaciones que mas adelante se explican con detalle e s como va a desarrollarse este proyecto. Resumiendo lo anterior ,este proyecto abarca dos puntos : a) Tener un sistema estándar de cómputo con las características del idioma inglés y b) Opcionalmente un sistema para ediciones e n español. E l tipo d e modificaciones que se harán abarca aspectos tanto de hardware como de software,grabado de memorias del tipo EPROM y diseño e implementación de circuitos impresos.
11. Diseño.
Primeramente se dará una descripción d e l equipo al que se le hará modificaciones. a) Terminal de Video. Se trata de la terminal d e video modelo 3102 de la compañía Cromemco Inc Entre otras características ,es una terminal del tipo "inteligente", esto es ,está controlada por un microprocesador (2 80) Esta terminal es compatible con los diferentes sistemas que Cromemco produce (procesadores centrales ,manejadores d e discos, impresoras, etc .)
..
.
.
b) Teclado.
Se trata de un teclado inglés estándar. En la figura 1 se muest r a el diagrama del mismo. En dicho diagrama se muestra el código que genera cada tecla al ser oprimida (hexadecimal). Las teclas CNTRL, SHIFT' y ALPHA LOCK, no generan código CNTRL sirve para generar secuencias de control para el procesador central y dichas secuencias no se despliegan e n pantalla. SHIFT sirve para seleccionar, e n una misma tecla, uno d e dos caracteres, o bien e n el caso del alfabeto, escribir mayúsculas o minus culas. ALPHA LOCK, sirve para desplegar rnaykculas una vez que ha sido oprimida y minúsculas cuando no ha sido oprimida.
.
c) Impresora. El tipo de impresora que va a modificarse, es de matrices d e puntos ; esto e s , las imagenes d e los caracteres que se imprimen están contenidas e n una memoria PROM. El tamaño de las mat'rices o imagenes varía entre los siguientes tipos : 9x9,9x7,7x7 y 7x5. Este tipo d e impresoras es compatible con los sistemas que Cromemco produce y se conecta al procesador central por medio d e una tarjeta de interfase. A 'continuación se irán especificando las modificaciones que se harán a l equipo antes descrito e n el orden e n que se fueron mencionando.
Figura 1. Diagrama del teclado original y código que genera cada tecla.
a) Terminal de Video. Describiremos primero brevemente el funcionamiento de la terminal. Cada vez que se enciende la terminal o que recibe una señal de RESET, el firmware residente procede a realizar una secuencia de rutinas de inicialización en la cual checa el estado de la máquina ; esto es, si la terminal está en modo local, si debe checar paridad y otras funciones que pueden consultarse en el manual del usuario. Entre estas rutinas, la terminal checa el conjunto de caracteres que va a desplegar en pantalla. La aparición de caracteres en la pantalla está determinada básicamente por dos cosas : 1) E l contenido de la memoria ROM generadora de caracteres. Esta memorii de 2k bytes contiene los mapas #?elos caracteres que pueden ser desplegados en .aMalla. Cada imágen de carater dentro de la ROM generadora de caracteres está compuesta de 16 bytes consecutivos y puede verse como una matriz de bits de 16x8. A pesar de que cada caracter ocupa 16 bytes, sólo los primeros diez se usan ; esto es, los caracteres no pueden ser mayores a 10 bits en altura y a 8 en ancho, de hecho, todos los caracteres estándar imprimibles de código ASCII ( 20H7EH) están contenidos en una matriz de puntos de 7x5 dentro de la matriz de 10x8. Esto es con el fin de obtener espacios visibles entre caracteres a la hora de desplegarlos. Las 128 imágenes de caracter en la ROM están ordenadas de acuerdo a s u s respectivos valores ASCII, de tal modo que juntas completan los 2k bytes de ROM. Una de las memorias EPROM que van a programarse, será precisamente la que contendrá las imágenes de los caracteres en español, los cuales reemplazarán caracteres poco utCizsdos de la ROM original, Dichos cambios se muestran en la tabla d e "cambios EPROM generadora de caracteres". Debe notarse que el hecho de cambiar la imágen de un caracter por otro en la ROM generadora de caracteres no cambia la correspondencia entre las teclas del teclado y los códigos ASCII GOrrespondientes Para lograr lo anterior ; es decir, para relocalizar las teclas del teclado según convenga se hará lo siguiente.
.
Tabla de cambios EPROM generadora de caracteres.
Código ASCII
Caracter inglés
C aracter español
26
&
¿
7E
N
Íí
5E
n
Ñ
5B
c
á
5u
3
é
7c
7B
í
7D
ó
5c
ú
\
ü
3c
P
r! \
4
?
2) E l contenido de la ROM de tabla de traducción.
La terminal está diseñada para permitir modificación de la relación entre teclas del teclado y código ASCII generado. Cada te cla del teclado, al ser oprimida,genera un código Único (figura 1). E l firmware residente contiene una tabla que se usa para traducir código de teclado a código ASCII. La relación entre teclas y código ASCII puede ser entonces cambiada dando una nueva tabla de traducción. Por otra parte, el firmware residente accesa la tabla vía un un apuntador colocado en RAM por los procedimientos de inicialización. A s í que para cambiar tablas lo que se requiere es que el apuntador de tabla sea cambiado para apuntar a la tabla alternativa. La tabla alternativa se coloca en memoria instalando una EPROM con dicha tabla previamente grabada en el quinto socket de ROM de firmware (figura 2). Las rutinas de inicialización residentes de la terminal están diseñadas para checar automáticamente la existencia de la EPROM en el quinto socket y para invocarla si es que existe. La EPROM se grabará con la información requerida la cual se muestra en el "programa de EPROM de tabla de traducción". E n la tabla de "cambios en EPROM de tabla de traducción" se indican las relocalizaciones de algunos de los caracteres que cambiarán de posición en el teclado (ver la sección de reporte de avance para mayores detalles). b) Teclado.
Como ya se indicó, algunas de las teclas del teclado necesitarán ser relocalizadas y se identificarán bajo una cierta convención de color de las mismas para una operación u otra. c) Impresora. Dado que las imagenes de los caracteres en la impresora están almacenados en una PROM generadora de caracteres, se
087361
Figura 2. Diagrama de la tarjeta principal de la terminal conteniendo la ROM generadora de caracteres y las ROMs de firmware.
A116
A32
ROM gen. de caracteres.
A33
A34
A35
A36
I
A37
Quinto Socket de firmware.
Programa de EPROM de tabla de traduc. comienza en 2000H.
La dirección de esta EPROM
ORG
2000H
2000
DB
OA5H
200 1
LD BC,DIRAP
; Carga d i r e c . de apuntador
2004
LD DE,APTA
; Carga apuntador de tabla nueva
2007
LDA,E
; Cambia el byte menos significa-
2008
LD (BC),A
; tivo del apuntador
2009
INC BC
; Apunta al byte m a s significativo
200A
LD A , D
; Cambia el byte m a s significativo
200B
L D (BC),A
; del apuntador
200c
RET
; Regresa el control al firmware
DIRAP
EQU 8025H
APTA
EQU 200DH
; Hay tabla alternativa
En la dirección 2 0 0 M , comienza la tabla de traducción propiamente dicha.
Cambios e n EPROM de tabla de traduccih. Esto se hace, como ya se explicó, para relocalizar los carac teres que nos interesan de acuerdo a los cambios en la ROM generadora de caracteres.
Dirección
Cambia
Por
20 1A
5B
2B
201B
3B
7E
201c
3A
3B
203B
5D
5B
203C
5E
5D
208D
7B
2A
208E
2B
5E
208F
2A
3A
210E
7D
7B
210F
7E
7D
grabará una nueva EPROM conteniendo las imagenes de los caracteres alternativos en español, para los diferentes formatos que se mencionaron en la descripción del dispositivo. E l método para grabar tanto las EPROMs generadoras de caracteres como la que contendrá la nueva tabla de traducción será usando una tarjeta de Cromemco diseñada para este propósito. El circuito para conmutar entre pares de memorias (inglésespañol) de la terminal se muestra en la figura 3 . Para el par de memorias de la impresora, ver figura 4 . 111. Reporte de Avance.
A q i í se procederá a dar un resumen de las actividades realizadas hasta el momento. Primeramente se procedió a buscar toda la información disponible y a recopilar los datos mas importarites E l siguiente paso fué decidir que caracteres iban a despreciarse para i isertar los nuevos y decidir sobre la nueva relocalización e n el teclado. Hasta el momento se tiene ya diseñado casi todo lo expuesto anterimmente con excepción de los acentos para las vocales y la diérecis para la u. Esto se debe a la forma en que se piensa llevar a cabo este proceso, que es de la siguiente forma : una vez que se oprima la tecla correspondiente al acento, o a la diérecis, el control deberá esperar hasta el siguiente caracter,que será una de las vocales minúsculas, para desplegar el caracter adecuado. El problema que se tiene es que la información necesaria para lograr esto fué solicitada a los E .U. ya que no se cuenta con ell a acualmente en México y debido a los retardos usuales de envío aún no se recibe, por lo que esta parte del diseño se reportará junto con las pruebas y la documentación finales. En la figura 5 se muestra el teclado que resultará de las modificaciones. Por supuesto que debe tomarse en cuenta que estará sujeto a modificaciones dependiendo de las facilidades que se den en la nota d e aplicaci6hilde la que se hizo mención antes.
.
Figura 3 . Circuito de selección entre memorias generadoras de caracteres y memorias de tabla de traducción. (Terminal).
ROM gen. de carac. (inglés)
e carac.
CS
-*
A
b
1
ROM de tab. de trad. (inglés)
EPROM de tabd de trad. (español)
cs
I
4r
vcc Switch de Selección.
a
Figura 4. Circuito de selección entre memorias generadoras de caracteres para la impresora.
PROM gen. de carac. (inglés)
u EPROM gen. de carac. (español)
--
+ vcc
1
Switch de Selección.
-
.
7.1
7--
Figura 5 , Teclado Modificado.
t
I
I
'
t
l