¿Alguna vez te has preguntado como arrancan los ordenadores?
Un poco de historia nos ayudará a aclarar esto un poco y un poco de lógica. Los primeros grandes ordenadores no eran más que uniones de cables, y válvulas de vacío, que eran los antecesores de los transistores.
De esta forma al arrancar el ordenador la corriente seguía por los diferentes componentes hasta llegar al final de la ejecución, y así no era difícil seguir el flujo de la ejecución. Con el paso del tiempo y la invención del transistor los ordenadores que ocupaban habitaciones enteras pasaron a ocupar la mitad de espacio y con la invención del chip la cosa se redujo hasta llegar a los ordenadores de sobremesa.
Estos ordenadores, si rastreamos el Spectrum, un Z80, respondía al cargo de energía con la ejecución de una Eprom, un programa guardado en un chip grabable, y que era lo primero que se ejecutaba al conectar el ordenador. Este era el responsable de aquella pantalla negra, y del mensaje de Sinclair Spectrum.
Pero también era el responsable de activar la parte gráfica, y de verificar el teclado, y los demás componentes del sistema. También hacía que se cargara el interprete de Basic, que era el que permitía interactuar al humano con la máquina.
Con la evolución de los ordenadores, se fue complicando la cosa, ya que se añadían más y más componentes, y esta Eprom empezó a tener más responsabilidades, pero perdió algunas. Los ordenadores permitieron la carga de sistemas operativos, es decir, de diferentes interpretes entre la máquina y el humano. Esta Eprom se pasó a llamar Bios, y empezó a ser configurable, ya que se podían elegir configuraciones diferentes para sistemas distintos.
Esto hizo que el sistema operativo pudiera estar en una unidad de disco o en una de disco duro, la ventaja era que el disco duro era más veloz, y tenía mayor capacidad, y su vida media era mayor que la de un disco.
El arranque pasó a ser de esta forma, arranque Bios, que revisaba el funcionamiento de todo el hardware o piezas internas del ordenador, y que como último paso tenía la misión de pasar el control al sistema operativo.
Un inciso para recordar que durante muchos años los buses (el lugar donde se colocaban las tarjetas en el ordenador) iba cambiando poco a poco, y era necesario que estas partes fueran compatibles primero con la placa y luego tener un driver para el sistema operativo.
Una de las complicaciones más grandes era elegir el componente apropiado, pero esto se mejoró bastante con la invención del Plug and Play, una especie de compatibilidad que tenían que cumplir tanto las tarjetas como las placas base.
De esta manera, la Bios chequea la memoria, las tarjetas instaladas, los chips dedicados, la parte gráfica, las unidades instaladas... y le pasa el testigo al sistema operativo, que es el encargado de poner a trabajar cada una de las partes del ordenador, y de gestionar que trabajen de una manera coordinada.
En los primeros ordenadores esto era relativamente sencillo, ya que el número de periféricos era pequeño, pero al tener tantos diferentes componentes, los sistemas operativos tienen que trabajar con muchos diferentes chips y componentes.
Una vez puesto todo a trabajar, se pasa el control al usuario para que arranque sus programas, vea su correo y no se preocupe ni de cómo funciona la pantalla, o el router, o el modem, o de como conectarse a internet.
Es decir, el sistema operativo hace que el usuario solo se preocupe de sus cosas, dejando que otro, se encargue del trabajo sucio.
Si arrancas un móvil, una tablet, o un Pc, es todo igual, se verifican los componentes, se carga el sistema operativo y se da el control al usuario... De hecho la mayor preocupación de todos los fabricantes es que el sistema tarde lo mínimo en arrancar, igual que las aplicaciones tienen que ser rápidas en arrancar y funcionar.
De hecho, algunas máquinas intentan mantenerse el mayor tiempo encendidas, para que la respuesta sea instantánea y la satisfacción máxima.
De echo el modo hibernación vuelca los datos del sistema a la ram (memoria física), para que al pulsar una tecla la revivas, es decir, vuelva todo a estar en el mismo estado en el que estabas justo antes de hibernar.
Por ello si no estas conectado a la corriente y lo dejas un día entero hibernando al final, se apaga y pierdes el estado en aquel momento, ya que aunque gaste poco siempre gasta algo de energía en mantener esos datos hibernados.
Optimizando tiempos:
Desde siempre que he tenido un ordenador he mirado las posibles mejoras tanto en rendimiento como en velocidad. Cuando usábamos el MSDoS lo cierto es que poco o nada se podía hacer ya que el arranque era casi instantáneo.
Con la llegada de los diferentes Windows la cosa se ha ido complicando, y al querer los programas de terceros arrancar lo más rápido posible y querer estar en el inicio de tu ordenador la labor se fue complicando.
En Windows Xp por ejemplo, era necesario tener grandes conocimientos del registro del sistema para poder ir borrando entradas que ya no valían del mismo para mejorar el arranque, y con la llegada de las extensiones de este sistema el propio Microsoft y otras compañías nos dieron la opción de simplificar la tarea y borrar mejor algunas entradas del mismo.
Yo he visto registros en los que tras un año de uso la cantidad de lineas basura se contaba en miles y esto hacía que la cosas se complicara.
Pero hay más. Las mejoras en la velocidad de los discos, y el uso de memorias flash y usb como discos han hecho mejorar sensiblemente la velocidad de arranque ya que parte de la configuración se graba en estos dispositivos y la carga es inmediata...
Espero que os haya sido de utilidad...
Mostrando entradas con la etiqueta historia. Mostrar todas las entradas
Mostrando entradas con la etiqueta historia. Mostrar todas las entradas
jueves, 21 de mayo de 2015
jueves, 7 de mayo de 2015
¿QUÉ ES PROGRAMAR?
Si después de tantos años no soy capaz de responder a esta pregunta la cosa estaría muy complicada, pero es que no creáis que es una pregunta sencilla.
Programar es la acción de hacer un programa, y un programa es un conjunto de instrucciones que están escritas para poder ser interpretadas por una máquina. Y digo bien, máquina, porque no solo se programan ordenadores, sino también lavadoras, teléfonos, radios, casi cualquier cosa...
¿Programar una manzana? No, una manzana no es una máquina. Pero una manzana puede ser parte de un programa si lo que estamos haciendo es programar un pelador de manzanas.
Entonces, hacemos un programa directamente y ya... Ojalá fuera tan sencillo. Un programa es una solución para un ordenador determinado con un sistema operativo determinado en unas ciertas circunstancias y generalmente esta basado en un algoritmo.
Un algoritmo es algo más genérico, es la solución de un problema, y no tiene porque ser implementable (es decir, no tiene porque poderse hacer un programa para el en todos los entornos), porque por ejemplo ese algoritmo no sea computable o porque no trabaje con máquinas sino con pensamientos o acciones.
Por ejemplo, quiero pelar una manzana (ese es mi problema):
Para ello necesito:
Programar es la acción de hacer un programa, y un programa es un conjunto de instrucciones que están escritas para poder ser interpretadas por una máquina. Y digo bien, máquina, porque no solo se programan ordenadores, sino también lavadoras, teléfonos, radios, casi cualquier cosa...
¿Programar una manzana? No, una manzana no es una máquina. Pero una manzana puede ser parte de un programa si lo que estamos haciendo es programar un pelador de manzanas.
Entonces, hacemos un programa directamente y ya... Ojalá fuera tan sencillo. Un programa es una solución para un ordenador determinado con un sistema operativo determinado en unas ciertas circunstancias y generalmente esta basado en un algoritmo.
Un algoritmo es algo más genérico, es la solución de un problema, y no tiene porque ser implementable (es decir, no tiene porque poderse hacer un programa para el en todos los entornos), porque por ejemplo ese algoritmo no sea computable o porque no trabaje con máquinas sino con pensamientos o acciones.
Por ejemplo, quiero pelar una manzana (ese es mi problema):
Para ello necesito:
- la manzana
- el cuchillo
- dos manos
- la habilidad de usar el cuchillo con destreza
Esos son mis prerrequisitos básicos. Mi algoritmo podría ser algo así:
- Coger la manzana
- Situar el cuchillo en la parte superior de la manzana
- Empezar a pelar desde arriba y bajando en circulos
- Si la piel se corta y no estoy en la parte baja de la manzana volver a empezar a pelar desde el punto de corte
- Seguir hasta que ya no quede piel.
Daros cuenta de que ese algoritmo es mejorable, es decir, se puede optimizar, y en el fondo no tiene todos los prerrequisitos ni está completamente definido pero para lo que estamos mostrando nos valdría.
De echo, solo hay que hacer unas pocas variaciones para cambiar de un algoritmo a un programa para un pelador automático.
El pelador automático haría algo así:
- Verificar que la manzana está bien colocada entre los ejes
- Acercar la cuchilla hasta rozar la piel en la parte superior
- Aumentar la presión lo suficiente para poder empezar a cortar.
- Si la piel se rompe volver a empezar a cortar donde se rompió
- Seguir cortando hasta pasar por toda la manzana
Es decir, lo que hacemos como humanos es muy similar a lo que hace la máquina, pero esto era previsible, ya que la máquina peladora de manzanas está basada en la observación de cómo lo hacemos los humanos.
¿Cómo se hace un programa?
Vamos a intentar ver cómo se hace un programa sencillo, intentaremos desvelar cuál puede ser un buen modo de proceder para hacerlo.
En primer lugar tenemos un Problema, es decir, algo que queremos solucionar usando un ordenador, puede ir desde algo nuevo, un cambio sobre otra cosa o una necesidad detectada.
Una vez visto esto, lo primero es detectar las necesidades, es decir, los prerrequisitos antes de comenzar a analizar el problema. Además, vamos a ir planteando un primer acercamiento al problema, intentando ver todo lo que vamos a necesitar.
Pongamos que queremos hacer un programa que diga hola mundo en Android:
Necesitamos: Un ordenador, un emulador de Android, un compilador o interprete que cambie nuestro programa por el código que usa la máquina.
Ahora tenemos que analizar el problema:
Queremos que en la pantalla del móvil aparezca el lenguaje "hola mundo".
Es un problema que podría ser muy complicado si lo hiciéramos desde cero, es decir, vamos a imaginar que solo disponemos del sistema operativo Android, y que no tenemos más que un interprete de C.
Tendríamos que usar una técnica muy usada en resolución de problema que se llama divide y vencerás, es decir, trocearíamos el problema en otros más pequeños y más sencillos de arreglar.
Por ejemplo:
- Poner la pantalla en blanco.
- Hacer una función que escriba un carácter en la pantalla
- Usar la función anterior para reiterarla hasta que muestre en pantalla "Hola mundo"
- Hacer una función que espere hasta que se pulse en la pantalla del móvil.
Es decir, teníamos un problema y ahora tenemos cuatro. Esto permite varias cosas, en primer lugar permite ir recorriendo cada paso y solucionarlo hasta que terminemos todos los pasos.
Pero permite algo más importante, la división del trabajo pudiendo poner a grupos de trabajo a realizar cada parte. De esta manera el trabajo se realizará más rápido.
De echo la programación actual funciona de esta manera, y lo más complicado casi siempre es saber dividir el trabajo. En cualquier caso, lo primero que siempre hay que hacer es hacer el algoritmo y ver si es posible o no computarlo, es decir, saber si tiene solución en un tiempo finito.
Programación actual:
Cómo os he dicho actualmente la forma más efectiva de trabajar y la que se usa en las grandes empresas es la división del problema en partes que son solucionadas por grupos.
Pero siguen existiendo los llaneros solitarios, es decir, las personas que por si mismas intentan crear aplicaciones que luego puedan comercializar y ganar dinero con ellas.
Es esta la razón por la que sobre todo Google con su Android ofrece tanta formación online, y te da todos los recursos de forma gratuita para que hagas tus aplicaciones y las pongas en la tienda. Ellos vieron en seguida que las aplicaciones "de autor" siempre serían muy bien valoradas por la gente y así ha sido.
Por ello, Microsoft ha sacado y mantiene una versión gratuita de sus compiladores Visual Studio Express, para que la gente haga programas que se puedan usar en la tienda Windows... Pero Microsoft ha cometido varios errores, entre ellos el cobrar 14€ por ser desarrollador de aplicaciones.
Esta es la razón por la que como sabéis si seguís mi canal de youtube, me he embarcado en la odisea de intentar aprender a programar para Android, aunque se que no será un camino fácil intentaré realizar una aplicación decente.
Futuro:
"Juegos de guerra": "Bienvenido profesor Falken", una máquina que reconoce a su creador por una acción, ya no es futuro sino presente.
"Odisea en el Espacio": Una máquina que parezca tan humana en sus respuestas que pueda rebelarse no entra dentro de lo que no se haya emulado ya.
"Terminator": Una red que controle todas las redes... Una red que sea consciente de si misma y que pueda desear acabar con el creador... La autoconsciencia de momento no es computable, ya que de momento no tenemos un modelo computacional capaz de emular la conciencia, principalmente porque no existe un modelo que explique la conciencia de una manera completa.
El futuro quizás pase por la conquista de la tres dimensiones creíbles, por la conexión directa del pensamiento a la máquina y por tanto la posibilidad de la programación directa.
Pero es que en este presente ya todos somos programadores en cierta forma, ya que en las redes sociales ponemos las cosas de la mejor manera, y las ordenamos como queremos ordenarlas...
Cuando manejamos un móvil los clicks que hacemos, las pulsaciones que damos con los dedos hacen que el móvil responda de una manera determinada, es decir, estamos creando una respuesta determinada a partir de una hoja en blanco.
Al final nuestro móvil no es igual que el que compramos ya que le hemos programada para que tenga esto o lo otro, para que ejecute tal o cual aplicación, o lo hemos llenado de vídeos o de fotos, o de libros...
Es decir, ya estamos programando inconscientemente desde que adquirimos el móvil.
Espero que os haya sido de utilidad...
Que tengáis un buen día....
Etiquetas:
algorítmica,
algoritmos,
aprender a programar,
cómo se programa,
historia,
informática,
inteligencia artificial,
Microsoft,
programa,
programar,
qué es programar,
tutorial de programación
domingo, 3 de mayo de 2015
MICROSOFT INTERNET EXPLORER: Mi análisis personal
Cómo siempre antes de meternos en el meollo de la cuestión, un poco de historia. Desde el origen de internet los gurús de la informática lo tuvieron muy claro. Internet será un sitio donde la gente compartirá información, y donde todos podremos encontrar información.
Al principio para acceder a la red de redes lo único que podías hacer era ir de visita a otros ordenadores, hacer lo que en aquellos tiempos se llamaba un ftp (file transfer protocol, protocolo de transferencia de ficheros), y fisgar y descargar programas de un lugar a otro.
Pero he aquí que a alguien que no fue Microsoft se le ocurrió la posibilidad de visualizar los datos de otros ordenadores cómo si fuera una hoja de texto, bien ordenada, y así nacieron las páginas web y los visualizadores de las mismas.
Internet Explorer, Netscape, y otros en aquella época fueron los pioneros los que nos dejaban ver al otro lado del ordenador, los que permitían ver los contenidos de aquellos ordenadores de una manera sencilla.
Y es Explorer de Microsoft que venía como regalo en Windows el que tenía en principio la dominancia total en este aspecto ya que porque molestarse en mirar otros diferentes si este iba bien... Pero siempre hay mentes inconformistas, y gracias a ellos nace Netscape y gracias a un marketing brutal y a un boca a boca aún mejor se extendió como la espuma...
En España llega a tener casi posición de dominancia, y todo el mundo quería la versión nueva de Netscape que funcionaba más rápido y te permitía hacer más cosas que el Explorer... Microsoft reacciona e integra, blinda el explorador a su sistema, y es entonces cuando empieza la guerra de los exploradores con juicio y todo en Estados Unidos.
Allí casi termina la carrera de Microsoft, pero el hábil Gates, consigue llegar a un acuerdo y en futuras versiones de Windows se tendrá que poder elegir el explorador por defecto al arrancar el sistema y se podrá cambiar en cualquier momento.
Navegación y ordenadores:
La navegación es algo bastante sencillo de entender si lo miramos desde el punto de vista de la comunicación, y nos olvidamos de toda la tecnología que hay debajo.
En nuestro Explorer colocamos una Url, es decir, el nombre de una página web de Internet, esto es traducido a números en hexadecimal, transferido al proveedor de dns, de direcciones, buscado en la base de datos, y se le llama:
Microsoft.com estás ahi?
Si estoy aqui.
Estas disponible?
Si estoy disponible
Tienes contenido?
Si tengo contenido
Quién eres?
Soy Internet Explorer en una máquina situada en España
Mis preferencias son el español
No quiero gráficos grandes
No quiero scripts
...
Ok. Te mando el contenido adecuado para Explorer en España con tus características...
Es decir, se establece un diálogo entre las dos máquinas, el ordenador y el servidor, de manera que los datos se transfieren en las dos direcciones pero siempre el que menos manda es el ordenador y el que más datos da es el servidor...
Internet Explorer:
Siempre es bueno tener más de un explorador, y yo hace tiempo que uso casi siempre Chrome, pero para algunas cosas reconozco que me es más útil ir al Explorer y usarlo.
En este primer vídeo os introduzco en la historia del explorer y vemos algunas de las opciones principales:
De echo esta segunda parte se mete más a fondo en las opciones más complejas de configuración de Internet Explorer, y vemos la exploración en privado, las opciones de configuración de ip, las protecciones para niños, y muchas más cosas de gran utilidad para conocer nuestro explorador.
Ahora ya estamos en Windows 8.1 y Microsoft ha duplicado su trabajo ya que tenemos también la versión de Explorer para acceder desde el menú de inicio cómo un programa autónomo del escritorio.
El problema para Microsoft vino del que mucho tiempo fue su gran amigo, Google, ya que tanto poder en una sola empresa, tantos ingresos le llevaron a la posibilidad de hacer su propio explorador, y hasta lo que más le dolerá en el futuro su propio sistema operativo Android.
Y como la historia se repite, y antes Microsoft e Intel fueron los grandes campeones de la informática, ahora los grandes campeones son Google y Samsung... Y como en aquella época le pasó a Microsoft ,ahora la denunciada por monopolio no es otra que Google...
Al principio para acceder a la red de redes lo único que podías hacer era ir de visita a otros ordenadores, hacer lo que en aquellos tiempos se llamaba un ftp (file transfer protocol, protocolo de transferencia de ficheros), y fisgar y descargar programas de un lugar a otro.
Pero he aquí que a alguien que no fue Microsoft se le ocurrió la posibilidad de visualizar los datos de otros ordenadores cómo si fuera una hoja de texto, bien ordenada, y así nacieron las páginas web y los visualizadores de las mismas.
Internet Explorer, Netscape, y otros en aquella época fueron los pioneros los que nos dejaban ver al otro lado del ordenador, los que permitían ver los contenidos de aquellos ordenadores de una manera sencilla.
Y es Explorer de Microsoft que venía como regalo en Windows el que tenía en principio la dominancia total en este aspecto ya que porque molestarse en mirar otros diferentes si este iba bien... Pero siempre hay mentes inconformistas, y gracias a ellos nace Netscape y gracias a un marketing brutal y a un boca a boca aún mejor se extendió como la espuma...
En España llega a tener casi posición de dominancia, y todo el mundo quería la versión nueva de Netscape que funcionaba más rápido y te permitía hacer más cosas que el Explorer... Microsoft reacciona e integra, blinda el explorador a su sistema, y es entonces cuando empieza la guerra de los exploradores con juicio y todo en Estados Unidos.
Allí casi termina la carrera de Microsoft, pero el hábil Gates, consigue llegar a un acuerdo y en futuras versiones de Windows se tendrá que poder elegir el explorador por defecto al arrancar el sistema y se podrá cambiar en cualquier momento.
Navegación y ordenadores:
La navegación es algo bastante sencillo de entender si lo miramos desde el punto de vista de la comunicación, y nos olvidamos de toda la tecnología que hay debajo.
En nuestro Explorer colocamos una Url, es decir, el nombre de una página web de Internet, esto es traducido a números en hexadecimal, transferido al proveedor de dns, de direcciones, buscado en la base de datos, y se le llama:
Microsoft.com estás ahi?
Si estoy aqui.
Estas disponible?
Si estoy disponible
Tienes contenido?
Si tengo contenido
Quién eres?
Soy Internet Explorer en una máquina situada en España
Mis preferencias son el español
No quiero gráficos grandes
No quiero scripts
...
Ok. Te mando el contenido adecuado para Explorer en España con tus características...
Es decir, se establece un diálogo entre las dos máquinas, el ordenador y el servidor, de manera que los datos se transfieren en las dos direcciones pero siempre el que menos manda es el ordenador y el que más datos da es el servidor...
Internet Explorer:
Siempre es bueno tener más de un explorador, y yo hace tiempo que uso casi siempre Chrome, pero para algunas cosas reconozco que me es más útil ir al Explorer y usarlo.
En este primer vídeo os introduzco en la historia del explorer y vemos algunas de las opciones principales:
Seguidamente analizamos más opciones disponibles en el Microsoft Internet Explorer, y nos acercamos a la exploración oculta:
Ahora ya estamos en Windows 8.1 y Microsoft ha duplicado su trabajo ya que tenemos también la versión de Explorer para acceder desde el menú de inicio cómo un programa autónomo del escritorio.
El problema para Microsoft vino del que mucho tiempo fue su gran amigo, Google, ya que tanto poder en una sola empresa, tantos ingresos le llevaron a la posibilidad de hacer su propio explorador, y hasta lo que más le dolerá en el futuro su propio sistema operativo Android.
Y como la historia se repite, y antes Microsoft e Intel fueron los grandes campeones de la informática, ahora los grandes campeones son Google y Samsung... Y como en aquella época le pasó a Microsoft ,ahora la denunciada por monopolio no es otra que Google...
Integración y navegación:
Antes de finalizar este artículo quiero que os deis cuenta de un aspecto que poco se tiene en cuenta ya cuando trabajamos con windows.
Al empezar a moverte por los directorios, a subir y bajar por las ramas de árbol que componen nuestro disco duro, no os dais cuenta pero lo cierto es que lo que estás haciendo es navegar por el disco duro, es decir, es como si hubieras abierto una página web y estuvieras yendo desde la página principal hasta las subpáginas.
Esto es parte de lo que pudo ser y no fue, y es parte de las ventajas de la navegación actual, ya que es la razón por la cual si estás en un directorio donde hay fotos, puedes verlas en pequeño, y si hay documentos puedes ver un pequeño resumen.
Etiquetas:
aprender internet explorer,
cómo usar microsoft internet explorer,
explorer,
ftp,
historia,
internet,
internet explorer fácil,
Microsoft,
netscape,
protocolo,
tutorial,
usar internet explorer,
uso,
windows
lunes, 27 de abril de 2015
EL SEGUNDO ORDENADOR: El AMSTRAD CPC 6128 (programas y subrutinas)
Y mi mundo fue cambiando, y cambié un televisor por un monitor monocromo en tonos verdes, y cambié el Sincalir Zx Spectrum por el Amstrad Cpc 6128...
Después de tantos años y tantos programas y sueños realizados con el Spectrum la cosa por fin cambió, ya iba creciendo en mi la necesidad de programar, de hacer cosas cada vez más complejas, y no solo de jugar a juegos o copiar programas de revistas.
Estamos hablando de varios cambios importantes: En primer lugar el que ya os he dicho, la pantalla deja de ser la tele del salón para ser una pantalla de fósforo verde, el segundo cambiamos una memoria de 48k por una memoria de 128k, es decir, casi el triple, de modo que los programas pueden ser más complicados, puedes hacer más cosas y además más rápido.
Además cambiamos la cinta por el disco... Bueno, no del todo, ya que si comprabas el jack o conector adecuado podías conectar el ordenador a un lector de cintas, y las cintas tenían la ventaja de que eran mucho más baratas que los diskettes... Pero que ilusión más grande cuando vi por primera vez uno de esos diskettes, cuando grabé mi primer programa en uno de ellos...
En cpcbox.com podéis ver un emulador muy bueno de los diferentes Cpc que se comercializaron, y podéis jugar con el Basic que venía como lenguaje fundamental del ordenador.
Este basic era bastante más potente que el del Spectrum y permitía hacer más cosas de una manera más sencilla e introducía el gosub y el return, lo cual permitió estructurar un poco los programas. Probar esto si queréis en el emulador:
10 rem Programa con return
20 print "Estoy en la linea 20"
30 gosub 1000
40 print "Estoy en la linea 40"
50 end
1000 print "Estoy en la linea 1000"
1010 return
Este programa os debe generar una salida del estilo a esto:
Estoy en la linea 20
Estoy en la linea 1000
Estoy en la linea 40
Con esta estructuración si había algo que se hacía varias veces en el programa con un gosub mandabas el flujo del mismo a esas lineas y luego volvía a la linea siguiente a la que hizo la llamada (luego se crearán las funciones en los lenguajes de años posteriores).
Pero el Amstrad traía más sorpresas, ya que aunque no lo entendí en aquel momento el cpc 6128 traía un sistema operativo el CPM, metías el disco pertinente y te sumergías en un mundo diferente, un mundo donde existían unos comandos raros que te permitían ver lo que había en un disco, o formatearlo o crear otro disco de sistema.
Un mundo maravilloso donde ya no era el basic el protagonista sino que se empezaba a vislumbrar un mundo diferente en el que el lenguaje C podía florecer, y en donde podías arrancar nuevos programas diferentes.
Desde Cpm aprendí lo que era un compilador, aprendí a contabilidad, y algunos juegos que venían para el Cpc. Pero también aprendí lo que era no ser compatible, cuando intenté usar un programa de Pcw sobre Cpc, y luego vinieron los programas de copia de discos, y los que permitían reparar los discos....
En ese momento ya era capaz de hacer programas complejos que guardaban datos en el disco, y que luego los recuperaban, incluso me hice mi primer juego, al estilo de los de plataformas, con varios niveles de altura, escaleras para subir y bajar y enemigos inteligentes que te perseguían por la pantalla siguiendo tus movimientos.
Los gráficos se definían a partir de una matriz de puntos, y los protagonistas eran gráficos definidos. El escenario se definía por repetición de caracteres, y se podía subir de por diferentes niveles.
Y todo esto en pantalla fósforo verde y con 128k...
Respecto a los juegos, seguíamos jugando con las cintas que eran más baratas y de vez en cuando conseguíamos alguno que estuviera de oferta y podíamos usarlo....
Si os animáis he grabado un vídeo donde os cuento todo lo visto y alguna cosa más:
Después de tantos años y tantos programas y sueños realizados con el Spectrum la cosa por fin cambió, ya iba creciendo en mi la necesidad de programar, de hacer cosas cada vez más complejas, y no solo de jugar a juegos o copiar programas de revistas.
Estamos hablando de varios cambios importantes: En primer lugar el que ya os he dicho, la pantalla deja de ser la tele del salón para ser una pantalla de fósforo verde, el segundo cambiamos una memoria de 48k por una memoria de 128k, es decir, casi el triple, de modo que los programas pueden ser más complicados, puedes hacer más cosas y además más rápido.
Además cambiamos la cinta por el disco... Bueno, no del todo, ya que si comprabas el jack o conector adecuado podías conectar el ordenador a un lector de cintas, y las cintas tenían la ventaja de que eran mucho más baratas que los diskettes... Pero que ilusión más grande cuando vi por primera vez uno de esos diskettes, cuando grabé mi primer programa en uno de ellos...
En cpcbox.com podéis ver un emulador muy bueno de los diferentes Cpc que se comercializaron, y podéis jugar con el Basic que venía como lenguaje fundamental del ordenador.
Este basic era bastante más potente que el del Spectrum y permitía hacer más cosas de una manera más sencilla e introducía el gosub y el return, lo cual permitió estructurar un poco los programas. Probar esto si queréis en el emulador:
10 rem Programa con return
20 print "Estoy en la linea 20"
30 gosub 1000
40 print "Estoy en la linea 40"
50 end
1000 print "Estoy en la linea 1000"
1010 return
Este programa os debe generar una salida del estilo a esto:
Estoy en la linea 20
Estoy en la linea 1000
Estoy en la linea 40
Con esta estructuración si había algo que se hacía varias veces en el programa con un gosub mandabas el flujo del mismo a esas lineas y luego volvía a la linea siguiente a la que hizo la llamada (luego se crearán las funciones en los lenguajes de años posteriores).
Pero el Amstrad traía más sorpresas, ya que aunque no lo entendí en aquel momento el cpc 6128 traía un sistema operativo el CPM, metías el disco pertinente y te sumergías en un mundo diferente, un mundo donde existían unos comandos raros que te permitían ver lo que había en un disco, o formatearlo o crear otro disco de sistema.
Un mundo maravilloso donde ya no era el basic el protagonista sino que se empezaba a vislumbrar un mundo diferente en el que el lenguaje C podía florecer, y en donde podías arrancar nuevos programas diferentes.
Desde Cpm aprendí lo que era un compilador, aprendí a contabilidad, y algunos juegos que venían para el Cpc. Pero también aprendí lo que era no ser compatible, cuando intenté usar un programa de Pcw sobre Cpc, y luego vinieron los programas de copia de discos, y los que permitían reparar los discos....
En ese momento ya era capaz de hacer programas complejos que guardaban datos en el disco, y que luego los recuperaban, incluso me hice mi primer juego, al estilo de los de plataformas, con varios niveles de altura, escaleras para subir y bajar y enemigos inteligentes que te perseguían por la pantalla siguiendo tus movimientos.
Los gráficos se definían a partir de una matriz de puntos, y los protagonistas eran gráficos definidos. El escenario se definía por repetición de caracteres, y se podía subir de por diferentes niveles.
Y todo esto en pantalla fósforo verde y con 128k...
Respecto a los juegos, seguíamos jugando con las cintas que eran más baratas y de vez en cuando conseguíamos alguno que estuviera de oferta y podíamos usarlo....
Si os animáis he grabado un vídeo donde os cuento todo lo visto y alguna cosa más:
El Amstrad Cpc 6128
Etiquetas:
amstrad,
cp/m,
cpc6128,
cpm,
emulador,
fundamentos,
gosub,
historia,
historias sobre ordenadores,
ordenadores de lo 80,
programar,
programar en basic,
return,
subrutina,
usar cpm
domingo, 26 de abril de 2015
RECORDANDO EL SINCLAIR ZX SPECTRUM
Grandes recuerdos me trae el pensar en aquellos tiempos en los que llegó a mis manos el primer ordenador. Era una cosa pequeña, de un tamaño reducido, pero cuando lo enchufabas a la corriente y le conectabas el cable que lo unía a la televisión empezaba la magia.
Porque si, para mi en aquella época era casi mágico enchufarlo y ver el mensaje de presentación y las pantallas que podéis ver en el vídeo que he grabado,
Eran otros tiempos, en los que solo habían dos canales de televisión, donde solo te podías poner a leer o a escribir, o a escuchar música... Y entonces llegó el Spectrum.
Y llegó el Basic, y empezar a aprender lo que significaba programar.. bueno, realmente lo primero que aprendí fue el LOAD"".
Este comando lo que hacía era dejar el ordenador en modo escucha, esperando que llegara una señal de audio de un reproductor de cintas, o cassettes. Estas grabaciones eran siempre de la misma forma:
Primero un sonido corto, luego uno más largo, de modo que el primero era la cabecera y el segundo era el programa en sí. De hecho en aquellos momentos la gente que tenía una minicadena con doble pletina se dedicaba a copiar los programas de cassette a cassette, de forma que conseguía juegos gratis.
Los juegos eran bastante caros y bastante rudimentarios, pero en poco tiempo se empezaron a copiar cada vez mejor los juegos de las máquinas de salón, y todos queríamos los mejores juegos.
En el rastro se vendían copias ilegales cómo ahora se venden en el top manta, con fotocopia incluida de la carcasa original, lo malo es que muchas veces lo que te daban no era el juego que pensabas. Entonces fue cuando Erbe tubo su revelación, y puso los juegos a 875 pesetas (5,2 €), y todos nos lanzamos como locos a comprar juegos baratos en todas las tiendas (yo iba mucho al corte inglés de Castellana a la planta sótano).
Ese fue mi principio, luego vino el empezar a programar, el apuntarse a una academia, y empezar con los programas que solo hacían pequeñas cosas y los primeros proyectos, los primeros programas complejos, el programa biorritmos, y el juego que hicimos a final de curso.
Por otro lado estaban las revistas, donde venían listados enormes para hacer aplicaciones, complejas y no tan complejas, los juegos y el famoso "POKE USR", el poner una cosa en la memoria, el mover cosas por la pantalla, el diseñar las pantallas...
Así empecé en la informática, así comencé un viaje que debió llevarme a otros mundos pero que al menos fue un viaje alucinante en el que aprendí lo que era un microprocesador, la memoria y los periféricos, los datos...
Y cuando tuvimos el programa juego de invasión terminado, nos enseñaron la última cosa, algo que no recordaría hasta que luego llegara a los 8086, nos enseñaron que los programas de Spectrum se podían compilar, generando así directamente código máquina, y así el programa tardaba casi nada en ser guardado en una cinta, y lo mismo en cargarse en el ordenador.
Porque si, para mi en aquella época era casi mágico enchufarlo y ver el mensaje de presentación y las pantallas que podéis ver en el vídeo que he grabado,
Eran otros tiempos, en los que solo habían dos canales de televisión, donde solo te podías poner a leer o a escribir, o a escuchar música... Y entonces llegó el Spectrum.
Y llegó el Basic, y empezar a aprender lo que significaba programar.. bueno, realmente lo primero que aprendí fue el LOAD"".
Este comando lo que hacía era dejar el ordenador en modo escucha, esperando que llegara una señal de audio de un reproductor de cintas, o cassettes. Estas grabaciones eran siempre de la misma forma:
Primero un sonido corto, luego uno más largo, de modo que el primero era la cabecera y el segundo era el programa en sí. De hecho en aquellos momentos la gente que tenía una minicadena con doble pletina se dedicaba a copiar los programas de cassette a cassette, de forma que conseguía juegos gratis.
Los juegos eran bastante caros y bastante rudimentarios, pero en poco tiempo se empezaron a copiar cada vez mejor los juegos de las máquinas de salón, y todos queríamos los mejores juegos.
En el rastro se vendían copias ilegales cómo ahora se venden en el top manta, con fotocopia incluida de la carcasa original, lo malo es que muchas veces lo que te daban no era el juego que pensabas. Entonces fue cuando Erbe tubo su revelación, y puso los juegos a 875 pesetas (5,2 €), y todos nos lanzamos como locos a comprar juegos baratos en todas las tiendas (yo iba mucho al corte inglés de Castellana a la planta sótano).
Ese fue mi principio, luego vino el empezar a programar, el apuntarse a una academia, y empezar con los programas que solo hacían pequeñas cosas y los primeros proyectos, los primeros programas complejos, el programa biorritmos, y el juego que hicimos a final de curso.
Por otro lado estaban las revistas, donde venían listados enormes para hacer aplicaciones, complejas y no tan complejas, los juegos y el famoso "POKE USR", el poner una cosa en la memoria, el mover cosas por la pantalla, el diseñar las pantallas...
Así empecé en la informática, así comencé un viaje que debió llevarme a otros mundos pero que al menos fue un viaje alucinante en el que aprendí lo que era un microprocesador, la memoria y los periféricos, los datos...
Y cuando tuvimos el programa juego de invasión terminado, nos enseñaron la última cosa, algo que no recordaría hasta que luego llegara a los 8086, nos enseñaron que los programas de Spectrum se podían compilar, generando así directamente código máquina, y así el programa tardaba casi nada en ser guardado en una cinta, y lo mismo en cargarse en el ordenador.
MI VISIÓN DEL SPECTRUM
También en aquel tiempo fue cuando tuve mi primera impresora, y de ahí salía la segunda parte de hacer programas, el buscar los bugs, ya que los programas que hacías o copiabas a mano eran largos y los fallos se presentaban en cualquier lugar.
Las sentencias if se anidaban con goto para hacer zonas de programa especificas, pero esos saltos eran complicados de controlar y más difíciles de seguir. Por eso la gente después odiará el Basic porque no era estructurado, porque realmente lo hacíamos desestructurado.
De echo el programa más loco y el más hecho era:
10 Print "hola"
20 Goto 10
Que generaba un bucle infinito, e imprimía una fila infinita de "hola".
Lo más frustrante era copiar un monton de lineas de código de una revista para que luego no fueras capaz de arrancarlo porque salía un error en una zona de programa que tuviera un POKE, es decir, una acceso a memoria directo, y tenías que saber mucho para poder corregirlo.
Paralelamente, seguía jugando, y empecé a querer un joystick, para jugar más cómodamente a los juegos. Pero el Spectrum necesitaba un periférico especial para conectarlo, y cuando lo fui a conectar pensé que lo había roto porque había un pedazo de placa en el periférico, hasta que descubrí que aquello era una guía para conectarlo.
En las revistas aprendimos lo que era un truco, en Micro Hobby y Micro Manía, aprendimos a poner vidas infinitas en nuestros juegos favoritos, aprendimos los trucos ocultos, las zonas que no se veían, y los regalos que los programadores nos dejaban.
Aprendimos también lo que era un volcado de memoria, y vimos el primer volcador que te permitía copiar el estado de la memoria en un momento dado y luego volver a cargarlo para poder hacer una partida perfecta.
Todos queríamos ese dichoso aparatito, pero yo además quería saber cómo funcionaba, y ahí empecé a leer más y más cosas sobre los Z80, sobre el código máquina...
Hasta que en un momento dado cambié de ordenador a un Amstrad, pero eso y es otra historia..
Etiquetas:
basic,
cinta,
cómo era el zx spectrum,
historia,
jugar al zx spectrum,
load "",
programa,
programar el zx spectrum,
teclado,
z80,
zx spectrum
Suscribirse a:
Entradas (Atom)