PROLOGO ¡¡Bienvenidos al LOGO SINCLAIR en su versión CASTELLANA!! Esperamos que este LOGO satisfaga en alguna medida el creciente interés que padres y educadores tienen, por ofrecer a sus hijos y alumnos, programas que los enriquezcan y que les proporcionen horizontes mucho más creativos que el mero hecho de aniquilar hordas de "marcianos". Pocas son las empresas que hoy día en España ponen SOFTWARE con un contenido ciertamente didáctico al alcance de los cientos de miles de usuarios de microordenadores. Destacamos entre estos pioneros a IDEALOGIC, que cuenta con el valioso material de editoras punteras en el mercado americano como SPINNAKER y FISHER PRICE. Nos sumamos a ellos y a todos aquellos que intentan utilizar el ordenador como una herramienta eficaz en la formación de los niños. La documentación que os ofrecemos a continuación es una simple Guía para el Usuario. Os permitirá cargar el programa, introduciros someramente en el LOGO; y contiene además, el Glosario Completo de las Primitivas. Un manual de programación LOGO para el ZX Spectrum se encuentra actualmente en prensa. Pero NO deseamos que vuestras dudas o inquietudes queden sin atender. Para ello hemos creado el LOGO SPECTRUM CLUB DE CONSULTAS. Para ser beneficiarios del mismo bastará que nos enviéis la tarjeta de asociación que acompaña al cassette. Recibiréis a vuelta de correo la clave que os habilitará para tener todo tipo de información sobre este programa, y por el período de un año. Seguros de encontrar en vosotros a nuevos Amigos del LOGO, os deseamos que disfrutéis con este programa tanto como nosotros. Mayo, 1985 MIGUEL FIGINI LOGO SPECTRUM CLUB DE CONSULTAS Provenza, 281 - 08037 Barcelona - Tel. (93) 215 83 37 MANUAL DEL "Logo" PARA EL ZX SPECTRUM 1. INTRODUCCIÓN: Este manual del Logo para tu ZX Spectrum te enseñará cómo utilizar este lenguaje de programación, que te permitirá usar tu ordenador para dibujar, escribir, jugar, calcular... Logo no tiene muchas palabras ni reglas gramaticales. Sin embargo existen numerosas palabras llamadas procedimientos primitivos (o primitivas) que Logo entiende. Estas primitivas te permitirán programar tu ZX Spectrum de diferentes maneras y podrás escribir programas que dibujen o que manipulen palabras y listas. De todas maneras podrás ampliar el vocabulario Logo usando los procedimientos primitivos existentes para crear nuevos procedimientos (o programas). Puedes entonces usar estos nuevos procedimientos para construir programas más complejos. Para dibujar, Logo usa una "tortuga" que es un pequeño triángulo que se mueve en la pantalla, en función de las órdenes (o comandos) que le des. Este manual no es una completa guía del usuario, pero te permitirá empezar a programar y a editar tus programas, y a conservar y recuperar tu trabajo. 2. QUE NECESITAS PARA COMENZAR: Para usar el Logo Sinclair necesitarás cuatro cosas: - un ZX Spectrum de 48 K y su alimentador de corriente; - un televisor o un monitor; - un lector de cassette; - una cinta de lenguaje Logo. Enciende el televisor (o el monitor) y baja el volumen al mínimo. Ajusta el canal hasta que veas aparecer en la pantalla el siguiente mensaje: 1982 Sinclair Research Ltd. Introduce entonces la cinta Logo en el lector de cassette y gradúa el volumen justo por encima de la mitad. Pulsa la tecla J del ZX Spectrum. La palabra LOAD aparecerá en la pantalla. Pulsa ahora la tecla SYMBOL SHIFT y luego dos veces la tecla P. En la pantalla leerás LOAD"". Si has cometido algún error tecleando las instrucciones de carga, puedes borrar la letra o palabra equivocada pulsando las teclas CAPS SHIFT y 0, al mismo tiempo. Pulsa la tecla ENTER. El mensaje desaparecerá y tu ZX Spectrum estará preparado para cargar el Logo. Pulsa PLAY en el lector de cassette. Después de algunos segundos verás un conjunto de rápidas líneas horizontales que se mueven alrededor del borde de la pantalla. Esto significa que el programa se está cargando. Si esto no ocurriese, rebobina la cinta y ajusta un poco el volumen del lector de cassette. Desconecta la clavija 9V DC de la parte de atrás del ZX Spectrum para limpiar la memoria y luego conéctala otra vez. La presentación Sinclair reaparecerá y puedes recomenzar. Cuando el Logo esté cargado, el siguiente mensaje aparecerá en la pantalla: BIENVENIDO AL LOGO SINCLAIR LCSI-SOLI 1985 Esto significa que el Logo está listo para ser utilizado y ya puedes apagar el lector de cassette. Si el mensaje "Bienvenido..." no aparece en la pantalla, rebobina la cinta y comienza el procedimiento de carga otra vez, asegurándote de que has efectuado cada paso correctamente. El mensaje de "copyright" que ves en la pantalla: LCSI - SOLÍ 1985 significa que el programa no puede ser legalmente copiado. Logo usa el símbolo ? para indicarte que está listo para trabajar. El pequeño rectángulo parpadeante se llama cursor. Mientras escribes, se mueve a lo largo de la línea. Piensa en él como en la punta de un lápiz: te indicará donde escribirá el siguiente carácter. También te avisa que está listo y esperando tus instrucciones (u órdenes), un estado conocido en Logo como nivel alto. 3. PARA FAMILIARIZARSE CON LA TORTUGA: La mejor manera de aprender Logo es practicando. Como Logo es un lenguaje que ofrece grandes posibilidades gráficas, gracias a la tortuga, comenzaremos nuestro aprendizaje de la programación dibujando. Para dibujar, vamos a conducir la tortuga, representada en la pantalla por un pequeño triángulo. Algunas tortugas Logo son verdaderos robots que se mueven por el suelo sobre ruedas, unidas o no al ordenador por un cable. Hay muchas órdenes (o comandos) que se le pueden dar a la tortuga y además hay muchos otros comandos Logo que no trabajan con la tortuga. Aquí veremos sólo los más importantes. Escribe: ? MUESTRATORTUGA (y luego pulsa ENTER) Cada vez que escribas un comando relativo a la tortuga, la pantalla se dividirá en dos partes. Habrá dos líneas en la parte inferior donde podrás escribir tus comandos. El resto de la pantalla es el campo en el cual se mueve la tortuga. Fíjate que la punta de la tortuga te indica dos cosas: su posición y su rumbo (u orientación). La posición y el rumbo son conocidos como el estado de la tortuga. Ahora veremos algunos de los comandos que cambian el estado de la tortuga. Muchos de ellos tienen abreviaciones que simplifican y aceleran su escritura. Aunque utilizaremos en nuestra explicación algunos ejemplos específicos, como AVANZA 50, deberás experimentar construyendo tus propias figuras para familiarizarte con los efectos de los comandos (consulta el Glosario de las Primitivas). Puedes escribir con mayúsculas o minúsculas, aunque de todas maneras Logo lo interpretará en mayúsculas. Recuerda que deberás pulsar la tecla ENTER para que Logo ejecute los comandos. Escribe: ? AVANZA 50 (o AV 50) Este es un comando que necesita un parámetro. En este caso el parámetro es un número. Por supuesto que puedes escoger cualquier otro parámetro que te guste para los comandos Logo. Si te equivocas, Logo ya te indicará cuándo un parámetro no es válido. El espacio entre el comando y el parámetro es muy importante, porque Logo distingue entre el comando AVANZA 50 y la palabra AVANZA50. Sin embargo, si dejas demasiados espacios entre el comando y sus parámetros, no es grave: Logo los ignorará. Pero si tecleas AVANZA50 (sin el espacio), Logo te dará el mensaje: NO SE COMO HACER AVANZA50 El comando anterior hizo avanzar la tortuga 50 pasos en el rumbo que tenía (0 grados al norte) y si el lápiz no está levantado, la tortuga habrá dibujado una línea. Si ahora escribes: ? GIRADERECHA 90 (o CD 90) notarás que la tortuga ha cambiado de rumbo pero no de posición. Para cambiar el rumbo de la tortuga, lo más usual es invitarla a girar a la derecha (GIRADERECHA o GD), o a la izquierda (GIRAIZQUIERDA o Gl), seguido de un parámetro que representa el número de grados del ángulo que deseas que gire. Escribe ahora: ? RETROCEDE 60 (o RE 60) y verás que la tortuga cambia ahora su posición pero no su rumbo (al igual que con AVANZA). El comando RETROCEDE le indica a la tortuga que se mueva hacia atrás con respecto a su posición actual y según el rumbo que tenía. Si deseas borrar la pantalla y comenzar de nuevo, escribe el comando BORRAPANTALLA. Este borra todas las líneas que la tortuga ha dibujado y la pone nuevamente en su posición inicial, es decir al centro y apuntando a la parte superior de la pantalla. Antes de empezar a escribir procedimientos, entrénate bien en conducir la tortuga por toda la pantalla y en todas las direcciones. 4. LOS PROCEDIMIENTOS: Enséñale a la tortuga a dibujar un cuadrado. Para esto hay que saber que Logo entiende algunas palabras directamente. Por ejemplo, AVANZA, GIRAIZQUIERDA, etc..., son palabras primitivas. Desde el momento en que Logo está cargado, entiende cuando escribes GD 45, pero la palabra CUADRADO, por ejemplo, no tiene ningún sentido para él. Sin embargo, puedes enseñarle a Logo a entender nuevas palabras. Por ejemplo, le puedes dar un significado a CUADRADO, combinando diferentes comandos, para que Logo sepa cómo hacer un cuadrado. Le puedes poner al procedimiento cualquier nombre, a condición de que no sea el nombre de una primitiva. Utilizando los procedimientos AVANZA (o AV) y GIRADERECHA (o GD), podemos hacer que la tortuga dibuje un cuadrado. Escribe la siguiente serie de comandos: ?AV 50 ?GD 90 ?AV 50 ?GD 90 ?AV 50 ?GD 90 ?AV 50 ?GD 90 Hemos escogido 50 como parámetro para avanzar, pero cualquier otro número serviría. En cambio, el ángulo debe ser 90; de otra forma no sería un cuadrado. Antes de definir un nuevo procedimiento, deberás escoger un nombre. La mejor manera de llamar al procedimiento que dibuja un cuadrado, es CUADRADO. Usa el comando PARA cuando desees indicar a Logo que vas a definir un procedimiento; luego escribe el nombre del procedimiento en la misma línea. ? PARA CUADRADO > AV 50 GD 90 >AV 50 GD 90 > AV 50 GD 90 > AV 50 GD 90 > FIN No olvides pulsar ENTER después de cada línea del procedimiento. Logo usa > en lugar de ? como símbolo, mientras está definiendo un procedimiento. Esto es para recordarte que Logo no está ejecutando tus comandos, sino que los está memorizando. La palabra FIN, puesta en la última línea, señala a Logo el fin de un procedimiento. Logo te devolverá el mensaje: CUADRADO definido que significa que Logo sabe ahora cómo dibujar un cuadrado. Para que lo dibuje efectivamente, basta con escribir: ? CUADRADO Puedes mejorar tu procedimiento que dibuja un cuadrado. Para no repetir la escritura de la misma serie de comandos (AV y CD), puedes escribir otro procedimiento, que use el comando REPITE: ? PARA CUADRADOBIS > REPITE 4 [AV 80 GD 90] > FIN Ahora basta con escribir: ? CUADRADOBIS y Logo dibujará un cuadrado más grande. Uno de los aspectos más interesantes de Logo es el hecho de que puedas construir nuevos procedimientos con los que ya has definido. CUADRADO y CUADRADOBIS pueden utilizarse ahora como comandos Logo y estar incluidos en cualquier otro procedimiento. Si pulsas las teclas CAPS y BREAK/SPACE simultáneamente, antes de que Logo haya terminado de ejecutar el procedimiento, tendrás el mensaje: INTERRUMPIDO !!! Veamos algunas otras teclas especiales: SYS P " CAPS 0 borra SYS Y [ SYS U ] 5. EL EDITOR DEL LOGO SINCLAIR: Si mientras escribes un procedimiento quieres modificar una línea (o varias), podrás hacerlo gracias al editor. Toma nota que al entrar en el editor perderás todo lo que tengas en la pantalla; así, los dibujos de la tortuga o el texto serán reemplazados por la pantalla de edición. Si escribes EDITA (o ED) seguido del nombre de un procedimiento, Logo entiende que quieres editar ese procedimiento. Tendrás que poner una " (comilla) antes del nombre del procedimiento, pero no debes dejar ningún espacio entre la comilla y el nombre; y no debes poner ninguna comilla detrás. ¿Tienes todavía el procedimiento CUADRADOBIS en el ordenador? Si es así, escribe: ? EDITA "CUADRADOBIS y la definición del procedimiento aparecerá en la pantalla. Si escribes EDITA sin ponerle ningún parámetro, Logo te dará el último procedimiento que hayas editado. Cuando estés en el editor no aparecerá el símbolo ?, y será el cursor quien te indicará dónde estás escribiendo. Podrás mover el cursor a cualquier parte del texto. Para salir del editor sin hacer ninguna modificación, pulsa CAPS BREAK/SPACE. Si al contrario quieres que Logo tome en cuenta las modificaciones que has hecho, sal del editor pulsando E MODE y la tecla C. Puedes usar el editor Logo para escribir un nuevo procedimiento, con la ventaja de que puedes hacer las correcciones o modificaciones que desees mientras lo definas. También puedes editar varios procedimientos al mismo tiempo. Para ello debes escribir: ? EDITA [CUADRADO CUADRADOBIS] que le dirá a Logo que busque CUADRADO y CUADRADOBIS y los ponga en la pantalla del editor. Si quieres una pantalla de editor vacía (para escribir nuevos procedimientos, por ejemplo), debes teclear: ? EDITA [] (o ED []) con corchetes vacíos. Sumario de teclas editoras: CAPS 5 mueve el cursor un carácter a la izquierda CAPS 6 mueve el cursor a la línea inferior CAPS 7 mueve el cursor a la línea superior CAPS 8 mueve el cursor un carácter a la derecha CAPS 0 borra un carácter a la izquierda E MODE CAPS 5 pone el cursor al principio de la línea E MODE CAPS 6 pone el cursor al final de la pantalla E MODE CAPS 7 pone el cursor al principio de la pantalla E MODE CAPS 8 pone el cursor al final de la línea E MODE B pone el cursor al principio del texto E MODE E pone el cursor al final del texto E MODE Y borra la línea desde la posición del cursor hacia delante, pero la memoriza E MODE R entra la línea memorizada, a partir de la posición del cursor SCROLLING si el texto es más largo que una página de pantalla, SCROLLING te permite moverte hacia la página ante- rior o posterior SYS S anula el SCROLLING E MODE P mueve el cursor a la página anterior E MODE N mueve el cursor a la página siguiente. 6. PARA CONSERVAR Y RECUPERAR EL TRABAJO: Mientras estás programando en Logo Sinclair, el ZX Spectrum se acuerda de todos los procedimientos que le has enseñado. Desafortunadamente, cuando apagas la máquina, los "olvida". Cuando defines procedimientos, Logo los pone en tu espacio de trabajo (el espacio de la memoria del ordenador) que sólo permanece activa mientras el ordenador funciona. Sin embargo, puedes conservar los procedimientos que has escrito en una cinta de cassette. Puedes hacerlo en cualquier momento de la sesión Logo, usando el comando GUARDA. Para recuperar los procedimientos guardados puedes usar el comando CARGA, que "carga" los procedimientos desde la cinta hacia el espacio de trabajo. Si no guardas tu trabajo, todo lo que hayas hecho será destruido en el momento en que apagues la máquina. Toda la información se organiza en ficheros (o archivos). Deberás darle un nombre al fichero y decidir cuántos procedimientos quieres poner en el fichero que tiene ese nombre. Luego puedes crear más ficheros para guardar más procedimientos, y así sucesivamente. Cualquier lector de cassette con entrada de micrófono servirá. Será mejor si tiene un contador de vueltas, pero no es indispensable. Antes de intentar guardar tu trabajo, deberás desconectar el cable EAR-EAR y conectar el MIC-MIC. Cuando estés usando una cinta Logo, todo lo que tengas en ese momento en tu espacio de trabajo puede ser guardado en una cinta. La primera vez que crees un fichero, pon una cinta virgen en el lector de cassette, rebobínala al principio de la parte magnética (color marrón) y coloca el contador de vueltas a 000. Luego escribe: ? GUARDA "FICHERO "CUADRADO Le puedes dará tu fichero el nombre que quieras, pero que no pase de siete caracteres. El nombre del fichero debe ir precedido de una comilla (") y seguido del nombre del procedimiento que queremos guardar, también precedido de una comilla. Para guardar dos o más procedimientos en un fichero, escribe: ? GUARDA "GEOMETRÍA [CUADRADO CUADRADOBIS] Saca la clavija EAR del ZX Spectrum. Pon a punto el lector de cassette pulsando simultáneamente RECORD, PLAY y PAUSE. Escribe el mensaje que te permite guardar procedimientos y luego pulsa ENTER. Luego Logo te dirá que pulses una tecla y enciendas el lector de cassette: hazlo. Mientras Logo esté grabando, la pantalla centellea; cuando ésta acabe, para la cinta. Logo habrá conservado los procedimientos que hayas nombrado. Cuando la operación haya terminado, el símbolo ? y el cursor, aparecerán nuevamente en la pantalla y podrás apagar la máquina, o seguir trabajando. Puedes usar la misma cara de la cinta para conservar varios ficheros. Es una buena idea tener una lista escrita con la descripción de cada fichero. Apunta el número del contador de vueltas al principio y al final de cada fichero. Avanza la cinta unas 10 vueltas antes de comenzar a guardar procedimientos en un nuevo fichero. Para recuperar el trabajo guardado, pon en marcha tu ZX Spectrum y carga Logo (si no lo has hecho ya). Prepara la cinta colocándola en el número de contador de vueltas correspondiente al fichero que quieras cargar en el espacio de trabajo. Luego escribe: ? CARGA "FICHERO (o cualquiera que sea el nombre del fichero). Coloca la clavija EAR, pulsa ENTER y pon en marcha el lector de cassette. Logo escribirá el nombre del fichero que está cargando, seguido de LOG. Durante la carga de fichero, la pantalla centellea. Cuando el fichero está cargado, Logo te dirá qué procedimientos están definidos. Por ejemplo: ? CARGA "GEOMETRIA GEOMETRIA LOG (la pantalla centellea) CUADRADO DEFINIDO CUADRADOBIS DEFINIDO ? Todo lo que habías guardado en "GEOMETRIA se cargará de nuevo en el espacio de trabajo. El apuntador ? y el cursor reaparecerán en la pantalla para indicarte que la operación de carga ha terminado. ¡Cuidado!: si le das el mismo nombre a dos o más ficheros, Logo reemplazará el más antiguo por el más reciente. Así, por ejemplo, si deseas incluir nuevos procedimientos en "GEOMETRÍA, carga este fichero y luego guárdalo de nuevo, con tu nueva selección de procedimientos. De la misma manera que contamos con la posibilidad de almacenar nuestra información en cinta, el Logo nos permite guardar y cargar procedimientos en el microdrive (ver comandos en el Glosario de las Primitivas). GLOSARIO DE LAS PRIMITIVAS ALTO detiene el procedimiento en curso y devuelve el control al procedimiento que lo llamó. ADIOS sale de Logo y devuelve el control al sistema operativo (Basic). ARCCOS n devuelve el arcocoseno de n (en grados). ARCCOTG n devuelve el arcocotangente de n (en grados). ARCSEN n devuelve el arcoseno de n (en grados). ARCTG n devuelve el arcotangente de n (en grados). ASCII "car devuelve el código ASCII de car. ASIGNA "nombre objeto asigna nombre a objeto. Vea CONTENIDO. AVANZA n AV N hace avanzar la tortuga n pasos, sin cambiar de dirección. AZAR n devuelve un número entero, positivo, entre 0 y n - 1. BORRAPANTALLA BP borra la pantalla gráfica y pone la tortuga en la posición [0,0] al centro de la pantalla, rumbo 0. BORRATEXTO BT borra todo el texto existente en la pantalla. CARACTER n devuelve el carácter cuyo código ASCII es n. CARGA "nombrefichero carga nombrefichero desde el cassette hacia el espacio de trabajo. CARGAED "nombrefichero carga en el editor, todo lo que ha sido guardado con GUARDED nombrefichero. CARGAPANT "nombrefichero carga en la pantalla, todo lo que ha sido guardado con GUARDA-PANT nombrefichero. CATALOGO (sólo con microdrive) este comando escribe el nombre del cartucho en cuestión, todos los ficheros (los ficheros Logo y los otros) y el espacio disponible (en K-bytes). CENTRO pone la tortuga en la posición [0,0], rumbo 0, pero no borra la pantalla gráfica. Si el lápiz está bajado, la tortuga dibujará una línea recta desde su posición actual hasta el punto de centro. COLORLAPIZ COL devuelve un número que indica el color del lápiz (vea código de los colores). COLORFONDO CF devuelve un número que indica el color del fondo gráfico (vea código de los colores). CONIMPRESORA le dice a Logo que imprima en papel todo lo que sigue. Todo lo que existe en la pantalla se imprimirá igualmente. CONLAPIZ CL baja el lápiz de la tortuga y ésta dibuja. CONTENIDO "nombre devuelve el contenido de la variable nombre. Por ejemplo, CONTENIDO "X es lo mismo que :X. COPIADEF "nuevonombre "nombre copia la definición de un procedimiento llamado nombre, ya existente, con un nuevonombre. No borra la definición anterior. COPIAPANTALLA copia en la impresora todo lo que existe en la pantalla. COSENO n devuelve el coseno de n grados. COTANGENTE n devuelve el valor de la cotangente de n grados. CUENTA objeto devuelve el número de elementos contenidos en objeto. CURSOR devuelve la posición del cursor de texto. DEFINE "nombre [lista] define el procedimiento nombre a través de las instrucciones contenidas en lista. Permite escribir procedimientos que definen otros procedimientos. DETIENEROBOT anula el efecto de EMPIEZAROBOT. DEVUELVE objeto DEV objeto detiene el procedimiento en curso, sin continuar hasta FIN, y devuelve objeto como resultado. DIV a b devuelve el resultado de la división de a por b. EDITA "nombre/[lista] ED "nombre/[lista] escribe el (o los) procedímiento(s) nombrado(s) en el editor. Si tecleas EDITA (o ED) sin nada detrás, Logo te escribirá lo último que hayas hecho. EDVS "nombre/[lista] escribe la (o las) variable(s) nombrada(s) y sus valores, en el editor. Si no se dan parámetros, Logo listará todas las variables y sus valores. Al dejar el editor, Logo interpretará todos los cambios que hayas hecho a través del comando ASIGNA, de modo que las variables conservarán sus nuevos valores. Abreviación de EDita VariableS. ELEMENTO n [lista] devuelve el n-ésimo elemento de la lista. ELIMINARCHIVO "nombrefichero.tipofichero (sólo microdrive) ordena a Logo que borre del microdrive el fichero (o archivo) nombre-fichero. Si tipofichero no se especifica, Logo asumirá el tipofichero LOG. ENCIMA n ENCIMA 1 le dice a Logo que escriba sobre cualquier línea de texto existente. Logo permanecerá en este estado hasta que se ejecute el comando ENCIMA 0, el procedimiento se haya completado, o haya un error. EMPIEZAROBOT hace que los comandos AV, RE, CL, SL, GD y Gl, de la tortuga, se envíen al robot o tortuga de suelo, conectado al Spectrum. ENT n devuelve la parte ENTera de n. ESCALA devuelve la proporción entre los pasos horizontales y verticales de la tortuga. ESCONDETORTUGA ET esconde la tortuga y la deja invisible. ESCRIBE objeto ESC objeto escribe objeto en la pantalla y pasa a la línea siguiente. ESCPROC "nombre ESCribe la definición del PROCedimiento nombre. ESCPROCS ESCribe las definiciones de los PROCedimientoS que se encuentran en el espacio de trabajo. ESCTODO ESCribe los títulos y las definiciones de TODOs los procedimientos y los valores de todas las variables que tengas en el espacio de trabajo. ESCTS ESCribe los TítuloS de todos los procedimientos que existen en el espacio de trabajo. ESCVS ESCribe los nombres y el contenido de todas las Variables existentes en el espacio de trabajo. ESPERA n hace que Logo espere n 60-avos de segundo antes de ejecutar la próxima instrucción. ES.IGUAL? objeto1 objeto2 devuelve CIERTO si los dos objetos son iguales. ES.LISTA? [objeto] devuelve CIERTO si objeto es una lista. ESTA.DEFINIDO? "nombre devuelve CIERTO si nombre está definido como procedimiento. ESTA.VACIA? devuelve CIERTO si objeto está vacío. ES.NUMERO? objeto devuelve CIERTO si objeto es un número. ES.PALABRA? objeto devuelve CIERTO si objeto es una palabra. ES.PRIMITIVA? "nombre devuelve CIERTO si nombre se refiere a un procedimiento primitivo. ES.VARIABLE? objeto devuelve CIERTO si al objeto se le ha asignado un contenido. Vea ASIGNA y CONTENIDO. ES.VISIBLE? devuelve CIERTO si la tortuga está visible (modo MUESTRATORTUGA). FALSO dato particular para Y, SI, NO, O; resultado de los predicados. Vea CIERTO. FIN palabra especial que indica el fin de la definición de un procedimiento. FLASH hace que Logo escriba en forma centelleante. Logo permanecerá en este estado hasta que el comando NORMAL sea ejecutado, se termine la ejecución del procedimiento, o haya un error. FRASE objeto1 objeto 2 FR objeto1 objeto2 devuelve una frase formada por la concatenación de objeto1 y obje-to2. Esta frase es una lista. GIRADERECHA n GD n la tortuga gira n grados a la derecha, sin desplazarse. GIRAIZQUIERDA n Gl n la tortuga gira n grados a la izquierda, sin desplazarse. GOMA GO la tortuga borra las líneas existentes por donde pasa, actuando como una goma. GUARDA "nombrefichero [lista] guarda los procedimientos nombrados en lista, en el fichero nombrefichero. Dicho nombre (nombrefichero) puede tener hasta 7 caracteres. GUARDAED "nombrefichero guarda todo lo que existe en el editor, en el fichero nombrefichero. GUARDAPANT "nombrefichero guarda todo lo que existe en la pantalla, en el fichero nombrefichero. GUARDATODO "nombrefichero guarda todo lo que existe en el espacio de trabajo, es decir los procedimientos y las variables, en el fichero nombrefichero. HACIA [x y] devuelve el rumbo que necesitaría la tortuga para dirigirse al punto de coordenadas [x y]. Este comando no afecta, sin embargo, el estado de la tortuga. HAZ [lista] Logo ejecutará la lista como si fuese una línea de programa Logo. IMPRIME objeto1... escribe los objetos en la pantalla, pero a diferencia de ESCRIBE no pasa a la línea siguiente. INVERSO invierte el color del fondo con el color del texto. Logo permanecerá en este estado hasta que el comando NORMAL sea ejecutado, se termine la ejecución del procedimiento, o haya un error. INVIERTELAPIZ IL si el lápiz de la tortuga está bajado (CONLAPIZ), ésta dibujará donde no haya líneas y borrará donde las haya. LEECARACTER LCAR devuelve el carácter pulsado en una tecla (o en una combinación de teclas), pero sin escribirlo en la pantalla. LEELISTA LL devuelve la lista que se entra como parámetro. Esta lista es una línea escrita en la pantalla. LIMITA limita los movimientos de la tortuga a los bordes de la pantalla. Vea MODOCICLICO y VENTANA. LIMPIA borra la pantalla gráfica, sin afectar el estado de la tortuga. LISTA [objeto1] [objeto2] devuelve una lista formada por objeto1 y objeto2. MENOSPRIMERO objeto MP objeto devuelve objeto sin su primer elemento. MENOSULTIMO objeto MU objeto devuelve objeto sin su último elemento. MODOCICLICO hace que cuando la tortuga sale de la pantalla por un lado, aparezca por el otro. MODOTEXTO MTX pasa del modo gráfico al modo texto. Toda la pantalla queda reservada al texto. MUESTRA [objeto] escribe objeto, sin quitar los corchetes. MUESTRATORTUGA MT muestra la tortuga, la hace visible. NIVELALTO detiene todos los procedimientos y pasa el control al nivel alto (es decir al teclado). NO predicado devuelve CIERTO si el predicado es FALSO. NODOS devuelve el número de nodos libres, es decir la cantidad de memoria disponible. Un nodo son 5 bytes. NORMAL Logo escribirá sin ningún tipo de centelleo o de inversión texto-fondo. No tiene ningún efecto si el modo ya es normal. O predicado1 predicado2 devuelve CIERTO si uno de los dos predicados es CIERTO. PALABRA "palabra1 "palabra2 devuelve un objeto formado por palabra1 y por palabra2. Por ejemplo, PALABRA "LO "GO devuelve LOGO. PARA "nombre datos señala el comienzo de la línea de título, que define un procedimiento. PERTENECE? objeto [lista] devuelve cierto si objeto pertenece a la lista (es elemento de ella). PONCOLORBORDE n PONCB n pone el color del borde al color cuyo código es n (vea código de los colores). PONCF n pone el color del fondo al color cuyo código es n (vea código de los colores). Es la abreviatura de PONColorFondo. PONBRILLO n PONBRILLO 1 dice a Logo que escriba en "papel brillante". Logo permanecerá en este estado hasta que se ejecute el comando PONBRILLO 0, se termine el procedimiento, o haya un error. PONCL n pone el color del lápiz al color cuyo código es n (vea código de los colores). Es la abreviatura de PONColorLapiz. PONCT n m permite especificar el color del fondo y del primer plano, cuando escribes un texto; n y m son códigos de colores. PONCURSOR [x y] PONCUR [x y] pone el cursor de texto en el punto de coordenadas especificado por x e y. PONDISCO 0 ... 8 Le dice al Logo si quieres usar el cassette (0) ó un microdrive, 1-8. PON ESCALA n PONESC n fija la proporción (n) entre los pasos horizontales y verticales de la tortuga. PONPOS [x y] mueve la tortuga hacia la posición especificada por x e y en la pantalla gráfica. Si el lápiz está bajado, la tortuga dibujará una línea desde su posición actual hasta el punto de coordenadas [x y]. Es la abreviatura de PONPOSición. PONPRI objeto [lista] devuelve una nueva lista formada por la antigua más el objeto puesto en la posición PRImero de la lista. PONULT objeto [lista] devuelve una nueva lista formada por la antigua más el objeto puesto en la posición ULTimo de la lista. PONRUMBO n PONR n pone el rumbo de la tortuga a n grados (siendo 0 el norte). PONX x mueve la tortuga horizontalmente, hacia la coordenada especificada por x. PONY y mueve la tortuga horizontalmente, hacia la coordenada vertical especificada por y. PRIMERO objeto devuelve el primer elemento de objeto. PRODUCTO a b devuelve el producto de a multiplicado por b. PUNTO [x y] hace un punto en la posición indicada por las coordenadas [x y]. La tortuga no se mueve y no se traza ninguna línea. RC2 n devuelve la Raíz Cuadrada de n, con n mayor que 0. RECICLA libera el espacio de memoria ocupado por lo que ya no es útil, dejando nuevos nodos disponibles. REDONDEA n devuelve n redondeado al entero más próximo. REPITE n [lista] repite n veces la lista de instrucciones. RESTO a b devuelve un entero que representa el resto de la división de a por b. RETROCEDE n RE n hace retroceder la tortuga n pasos, sin cambiar la dirección. RUMBO devuelve el rumbo de la tortuga. SENO n devuelve el seno de n grados. SI predicado [lista1] [Iista2] si predicado es CIERTO, se ejecuta lista1, sí no se ejecuta Iista2. SINIMPRESORA indica a Logo que pare de imprimir en papel, o sea, anula el comando CONIMPRESORA. SINLAPIZ SL levanta el lápiz de la tortuga, que se mueve entonces en la pantalla sin dibujar. SONIDO n m este comando le permite hacer sonidos al Spectrum. La duración del sonido viene dada en segundos. El primer parámetro de SONIDO (n) debe estar entre 0 y 255 y el segundo (m) entre -62 y 75. SUMA a b devuelve la suma de a y b. SUPRIME "nombre/[lista] borra del espacio de trabajo el (o los) procedimiento(s) nombrado(s). SUPPROCS borra todos los procedimientos que tengas en el espacio de trabajo. Abreviación de SUPrimePROcedimientoS. SUPTODO borra todo lo que existe en el espacio de trabajo (variables y procedimientos), pero no afecta lo que hay en el editor. Abreviación de SUPrimeTODO. SUPV "nombre/[lista] borra del espacio de trabajo la (o las) variable(s) nombrada(s). Abreviación de SUPrimeVariable. SUPVS borra el nombre y el contenido de todas las variables existentes en el espacio de trabajo. Abreviación de SUPrimeVariableS. TANGENTE n devuelve la tangente de n grados. TECLA? devuelve CIERTO si una o varias teclas han sido pulsadas; si no devuelve FALSO. TEXTO "nombre cuando se le da a TEXTO el nombre de un procedimiento como parámetro, éste devuelve el texto del procedimiento bajo forma de lista. Con TEXTO se pueden escribir procedimientos que controlan y manipulan otros procedimientos. ULTIMO objeto devuelve el último elemento de objeto. VENTANA da la posibilidad de mover la tortuga fuera de los límites de la pantalla, de manera que ésta última aparece como una ventana. XCOOR devuelve la coordenada x de la posición de la tortuga. YCOOR devuelve la coordenada y de la posición de la tortuga. Y predicado1 predicado2 devuelve CIERTO si predicado1 y predicado2 son ciertos. .CARGAB "nombrefichero dirección carga un fichero de nombrefichero desde el cassette (o el microdrive) en la memoria y en la dirección indicada. Abreviación de CARGABinario. .CONTENIDO devuelve una lista con todo lo que Logo conoce, incluyendo los procedimientos definidos y las variables creadas. .DEPOSITA dirección n pone el valor de n en el lugar de la memoria indicado por la dirección, que es un número. Por ejemplo, DEPOSITA 65010 10. .ENTRADASERIE lee todo lo que llega a la entrada serie (interface RS232), define la tasa de baudios y devuelve un byte entre 0 y 255. .EXAMINA dirección escribe el valor almacenado en la dirección especificada, o sea examina el contenido de dirección. .GUARDAB "nombrefichero direcciónbase n busca la direcciónbase y a partir de ella guarda n bytes en el fichero nombrefichero. Abreviación de GUARDABinario. .LLAMA dirección ejecuta un programa escrito en código máquina, que ha sido cargado previamente por CARGAB. .PONSERIE n pone el rango de baudios n y define la velocidad de transmisión. .PRIMITIVAS nos da la lista completa de las primitivas Logo. .RESERVA n reserva n bytes para un programa escrito en código máquina. Este comando sólo se puede usar al inicio de una sesión Logo. Para calcular la dirección de inicio basta restar la longitud n (bytes) a 65024. .RESERVADO devuelve las direcciones de principio y final de la zona de memoria reservada por RESERVA. .SALIDASERIE n envía un byte a la salida serie (interface RS232). MENSAJES DE ERROR FALTAN DATOS EN... NO SE COMO HACER... NO SE QUE DEBO HACER CON... ...NO DEVUELVE NADA EN... ...ESTA YA UTILIZADO POR LOGO ...YA ESTA DEFINIDO ...NO ES NI CIERTO NI FALSO ...NO ES UNA PALABRA ...DEFINIDO DEMASIADOS PARENTESIS ...PROBLEMA CON EL ARCHIVO ABIERTO ...NO ENCUENTRO EL ARCHIVO EL NOMBRE DEL ARCHIVO ES ERRONEO ESTAS EN EL NIVEL ALTO INTERRUMPIDO!!! TORTUGA FUERA DE LA PANTALLA NO HAY BASTANTE ESPACIO ...NO LE GUSTA ...NO TIENE CONTENIDO ASIGNADO ...ES UNA PRIMITIVA FALTAN ELEMENTOS EN... SATURADO ...NO PUEDO DIVIDIR POR CERO ...NUMERO DEMASIADO GRANDE ...COMO DATO ...EN OTROS MENSAJES LOGO ERROR EN EL SISTEMA BASIC ERROR EN EL CASSETTE PROBLEMA CON EL ROBOT ARCHIVO YA EXISTENTE PON EN MARCHA EL CASSETTE Y PULSA CUALQUIER TECLA NO ESTA EL INTERFACE 1 DE ZX EDITOR LOGO EL LOGO ESTA CARGANDOSE BIENVENIDO AL LOGO SINCLAIR CODIGO DE LOS COLORES: 0 Negro 1 Azul 2 Rojo 3 Magenta (Púrpura) 4 Verde 5 Cyan (Azul cielo) 6 Amarillo 7 Blanco Imprime: FLUH CRAPHIC • Depósito Legal: B. 12.216-85