Archivo de la categoría Programación

Outlaw (I)



En 1995 comenzamos a desarrollar una biblioteca de funciones gráficas para modo 13h de MCGA/VGA (320×200 con 256 colores). Por aquella época lo que más nos motivaba era la prestación pura, así que no es de extrañar que estuviera escrita casi al completo en ensamblador. Las primeras versiones hacían uso del juego de instrucciones básico del 8088/8086, pero en seguida nos dimos cuenta que si queríamos ir en serio, debería obtener el rendimiento extra que daban primero las instrucciones del 286, y luego del 386, llegando incluso a jugar con el scheduler del Pentium. El nombre que le dimos fue glib.…

Continuar leyendo...

Letras degradadas



A mediados de los 90, empezaron a popularizarse en juegos comerciales, y demos, las tipografías degradadas. A principios de 1991, yo ya lo había implementado. Vi diferentes variantes desde las bitono, con la mitad superior de cada letra de un color, y la mitad inferior de otro color, que era requerido en CGA, EGA y VGA con 16 colores o menos, y la variante que degradaba verticalmente todos los píxeles.

Las diferencias, aparte de los años de antelación son que yo lo hice con QuickBASIC 4.5, de manera que aunque funcionaba, distaba mucho de ser eficiente, y en un PC/XT de la época se podía imprimir una pantalla de texto a resolución MCGA/VGA 320×200 con 256 colores en aproximadamente 1 segundo.…

Continuar leyendo...

Quick C, Quick Pascal y Quick BASIC



La gama Quick de Microsoft fueron productos para programadores en general bastante efímeros en el tiempo (1985 – 1990), y que se definían por combinar un entorno de usuario amigable, junto con un precio más o menos asequible.

Usaban la interfaz de usuario conocida de Works, Edit, Macro Assembler, Fortran, Word, … Integraban la mayoría de características necesarias en un sólo paquete, siendo las respuesta natural a la amenaza que causaban los Turbo de Borland.

Irónicamente, esos entornos de usuario integrados, y que en general se incluyeron en la familia Quick, pasarían a formar parte posteriormente de las gamas profesionales.…

Continuar leyendo...

Take Command 14



Se ha lanzado la nueva versión 14.0 de Take Command, que a pesar del tiempo, sigue mejorando y actualizándose.

La lista de novedades no es muy grande para ser sinceros, y podría ser más una versión 13.10. Aparte de las nuevas funciones que ya son tradición para cada nueva versión, se incluye el nuevo comando TPIPE, un filtro mejorado para realizar conversiones de archivos, búsquedas y reemplazos.

Por lo demás los cambios son poco visibles, parece ser que se ha reescrito la interacción con internet, pero es algo indistinguible para el usuario.



Continuar leyendo...

Turbo C, el entorno agradecido



De mediados de los 80, y casi durante 10 años, la mayoría de juegos comerciales se desarrollaban en todo o en parte usando Borland Turbo C.

En 1986, y coincidiendo con el lanzamiento de Turbo C 1.0, C representaba un lenguaje conocido, potente, y con fácil acceso al hardware del sistema, que lo hacía ideal para el desarrollo de software que requería aprovechar al máximo el hardware, y sus capacidades multimedia, como era el caso de los juegos.

Por esa época, y aunque todavía había desarrollos escritos totalmente en ensamblador, la creciente complejidad de los mismos comenzó a agradecer el uso de herramientas de más alto nivel.…

Continuar leyendo...

RawCopy, Neverlock y Locksmith



Si durante los 80, el enfoque para atacar las protecciones anticopia en el software de PC eran los copiones o copiadores como Copywrite y Copy II PC, enseguida se vieron limitados por nuevas protecciones anticopia, y que ya no siempre estaban vinculadas al soporte físico que era lo que estas herramientas conseguían saltarse.

Las nuevas protecciones de los 90, iban desde páginas de códigos que venían incluidas en el manual original, y se solicitaban al iniciar el juego, hasta las vinculadas a marcas en el disco original. En ambos casos, era protecciones comprobadas por software, y que por tanto un adecuado parcheo podía evitar.…

Continuar leyendo...

Encriptador Xor en Javascript



En los años 80 y 90 con una potencia de proceso más que limitada, los algoritmos de tratamiento de datos que se usaban eran sencillos en concepto, y eficientes en implementación.

Así se comprimía y descomprimía información usando variantes de Run-length encoding (RLE) o Lempel–Ziv–Welch (LZW), se encriptaba usando el algoritmo de César el de Vigenèreo, o el de Xor, y la comprobaciones de integridad de hacían con checksum o Adler como mucho.

Codificar cualquiera de estos algoritmos tiene el encanto de que son ideas sencillas, y brillantes al mismo tiempo. Pero es que además, son candidatas idóneas para ser ejecutadas en entornos poco potentes, ya sea por ser lenguajes no nativos sin demasiado desempeño como Javascript o PHP; bien porque deban ejecutarse en plataformas no demasiado potentes como teléfonos móviles o tabletas.…

Continuar leyendo...

MariaDB



En el artículo de decadencia de MySQL que escribí hace casi 2 años, comenzaba a anticipar lo que el tiempo nos ha ido confirmando, y es que MySQL parece un producto estancado a raiz de la compra primero por parte de Sun, y sobre todo posteriormente por parte de Oracle.

En el lado opuesto, MariaDB ha continuado evolucionando, haciéndose con gran parte de las contribuciones de código abierto en otros forks de MySQL, entre los que se cuentan los de Percona.

MariaDB es casi 100% compatible con MySQL, y es que dentro del proceso de desarrollo, mensualmente de integran los cambios de MySQL oficial en la base de código de MariaDB, de modo que es realmente sencillo comparar uno con otro, y había llegado el momento de hacerlo.…

Continuar leyendo...

MSX y Microsoft



El estándar MSX de 1983 que pretendía unificar el mercado de microordenadores de 8 bits, fue impulsado por Kazuhiko Nishi, por aquel entonces, director de ASCII Corporation, pero al mismo tiempo, vicepresidente de Microsoft en Japón.

Estaba claro que con el IBM-PC, como plataforma general en 16 bits, dónde Microsoft ya tenía una buena posición gracias a BASIC primero, y luego a MS-DOS, el movimiento MSX les interesaba, por lo que no es de extrañar que junto a Philips, Sony y Yamaha fueran unos de los que más fuerte lucharan por su implantación.

En el momento de su concepción MSX, incluía los siguientes requisitos mínimos:
– Procesador Zilog Z80A a 3,5 Mhz.…

Continuar leyendo...

Opera 12, el navegador que lo tendrá todo



Opera lleva más trabajando largo tiempo en su nueva versión 12, cabe recordar que la primera versión alfa, tiene más de 6 meses. Y es que si el desarrollo se está retrasando más de lo esperado, también es cierto que cuando salga a la calle, será en mi opinión el navegador más completo del mercado. A saber:

– Aceleración por hardware: La aceleración por hardware de Opera 12, soporta OpenGL en todas las plataformas, y Direct3D en Windows. A diferencia de otras implementaciones, en Opera se acelera toda la presentación gráfica, canvas, renderizado HTML, e incluso la interfaz de usuario.…

Continuar leyendo...