Blog | Archivo | Contacto | Administración |
Hace ya algún tiempo oí hablar de cierta aventura gráfica, famosa por infame, llamada "Limbo of the lost". ¿Por qué infame? Haced una visita a la Wikipedia [http://en.wikipedia.org/wiki/Limbo_of_the_Lost] y bajad hasta la sección "Plagiarism".
A sabiendas de todo eso, sabiendo que me gusta lo malo y habiendo localizado la susodicha (no es fácil encontrar una fuente decente; la retiraron del mercado y es mala de narices) me dispuse a jugarla; y habiéndola por fin acabado ahí va este post, otro de mis extraños reviews.
Por el argumento y las primeras impresiones uno cabría esperar un enfoque serio. Nada de eso. Entonces, ¿humorístico, quizás? ¡Tampoco! No se define en ningún momento, pasando de un pseudointento de horror a otro pseudointento de coña marinera a cada momento, sin lograr alcanzar nada plenamente.
También tiene su ración de bugs, como el cursor que desaparece en las fuentes de luz, el menú de acciones que no reconoce el objeto si el personaje estaba hablando mientras lo abres o mi favorito: el reiniciar la fase de animación cada vez que se hace clic. ¡Imite a Chiquito de la Calzada a golpe de ratón, finstro pecadorl de la pradirar!
Aderécese con serios anacronismos, absurdos, y puzles más que trillados y simples. De hecho, me dan pena, no porque puedan resolverse todos en cuestión de minutos, que se pueden, sino porque te dan pistas (guiño, guiño) en las descripciones de los objetos. Me parece muy triste, por no decir un insulto a mi inteligencia.
El arte (no plagiado) es nefasto: el juego tiene es en dos dimensiones, con cosas renderizadas, pero se nota que han usado texturas pequeñas, las animaciones 3D de personajes nos recuerdan a Musiquito imitando a un robot en su Baile de la Mosca mientras la cámara se mueve atrás y adelante, y lo peor de todo: han reutilizado el mismo arte una y otra vez, usando la reflexión horizontal en Photoshop (especialmente donde los trenes). Y hablando de photoshopeados; juzguen ustedes mismos el tamponeo en la pared de la derecha:
O los ángulos de este tren (eléctrico, y en 1872, recordemos):
Y así todo el juego. Triste. En el caso de las animaciones, además, no hay forma de quitarlas, lo cual junto con el que el juego está lleno de pantallas vacías y que hay forma de que el personaje vaya rápido de un sitio a otro, hacen que el 98% del juego te lo pases en postura facepalm.
Pero vamos al punto fuerte del tema. El plagio. En efecto, reconozco al Oblivion, Thief, la tumba de Beetlejuice y otros tantos citados en la Wikipedia, haciendo que jugar a este juego sea un constante Déjà vu. A esa lista habría que añadir otros como el Discworld Noir, Noctropolis o Neverwinter Nights, e incluso el protagonista se nos marca la canción de Indiana Jones con una flauta. Y el plagio, además, es el motivo de este post.
Porque por todo lo anterior, y habida cuenta de mi gusto por lo malo, le pondría un 6. Pero han cometido un error imperdonable: plagiar un juego de mis favoritos, uno de culto, uno del cual me sé de memoria hasta sus scripts en Python. Me estoy refiriendo al Vampire Bloodlines:
Así que un 2. Y va que se chuta. He dicho.
Por último, un gallifante de premio para quien adivine a qué juego pertenece esta pantalla (pista: mirad el kanji (norte) de la esquina superior izquierda):
...y mirando de nuevo el disco, meses más tarde, me percato de que es un Seagate de 500GB, de esos con el firmware afectado, con los mismos síntomas que otro que me ha tocado apañar hace poco. Sólo que este siempre ha estado interno y tiene 32MB de caché en vez de 8.
Pero la solución es la misma: le mutilo un poco el conector y le doblo los 4 pines para poder meter las sondas (son el puerto serie de diagnósticos), le pongo un cartón en el conector de datos (el de varios pines en DIP, no en el del motor que son sólo 3) le conecto el PicKit2, VDD 3.3V, UART Tool, forzar consola con Ctrl-Z y a escribir los comandos pertinentes para forzar la regeneración de los datos SMART y la "partición" del sistema y del usuario. Arrancar, salvar datos, corregir firmware para dejar bien el disco y arreglado.
Afortunadamente esta vez he ido a tiro hecho, y entre que estaba todo mejor y mis métodos han sido menos invasivos en este caso puede volver a utilizarse sin problema alguno el disco duro en...
...y el caso es que me dio bastante guerra. A veces se quería comunicar conmigo, a veces no. Y desde que le desmonté por primera vez la placa no hacía más que meterme un bit espurio (pulso) al principio de todas mis transmisiones. Y si el Bus Pirate tuviese un sistema UART digno, con su timeout, no tendríamos estos problemas. Al final, para reducir el ruido lo tuve un rato en el congelador y usé para comunicarme con su puerto serie el PicKit2 (que aunque también hace el UART por software, este sí funciona como Nu manda) y por fin pude arreglar esa parte.
Al final me quedé con todo; La interfaz SATA-USB es algo útil, y la fuente de alimentación la he utilizado para alimentar mi nuevo portátil.
El disco sin embargo no funciona bien sin ayudita externa, por las resistencias en las patas del controlador y los dos zeners que puse para regular el voltaje en las líneas RX y TX, pues...
...y así al entrar en mi despacho me encuentro con el portátil que me dijo que me iba a traer Jafid. Desde Marruecos, antes Alemania y antes EEUU, un flamante Epson Equity LT. Un XT de lujo (Nec V30, 10Mhz, HD de 20MB, FDD 3.5" 720KB, pantalla retroiluminada). Bastante mejor, a mi parecer, que los Amstrad PPC que había por estas latitudes.
Funciona perfectamente, aprovechando la fuente de alimentación que tenía de un disco duro externo que había petado. Después de hacerle los test rutinarios, cambiarle la disquetera y llevarme un susto con la fuente de alimentación integrada, aquí lo tengo con su DOS, su A86 y Turbo Pascal (por los viejos tiempos) y unos juegos para dejarme los ojos en esta pantalla azul y gris que se refresca como una vez cada dos segundos.
Para estos retro-ordenadores me he hecho un sistema cliente que lee o escribe sectores a través del puerto serie, y un driver para mi programa lector de imágenes; así puedo generar imágenes remotas de disco, escribir imágenes de disco in situ o bien...
...y tras comprobar que la disquetera chocheaba un poco, procedí a cambiarla por otra. Le puse una de 1.44MB que se alimenta con sólo 5V (requisito imprescindible en este portátil) y tras cambiarle el cable del disco por uno estándar recortado ya pude arrancar el DOS.
Lo malo fue al cerrarlo; al poner un tornillo en una esquina oí un débil "clack" y supe que la había cagado. Tras volver a desmontarlo entero, vi la gañanada: el tornillo era largo y justo al otro lado estaban las patas del MOSFET de potencia principal de la fuente de alimentación; así que a tomar por saco el terminal de dren (central). Un TO220 plástico de color verde en el que sólo se ve una T (Toshiba), un J147, y un superfluo *9K.
No os molestéis en buscar, pues no os aparecerá nada. Tras perder casi una hora buscando y dos chapuceando (sí, eché un pegote de soldadura, y aunque funcionó daba un voltaje ligeramente menor y se encendía todo el rato la luz de batería baja; luego puenteé fuente y dren y aunque funcionaba todo perfectamente no es ese el objetivo, pues pienso ponerle baterías nuevas), pensé: es un transistor MOSFET de canal P, vamos a buscar en la serie 2S, es decir, 2SJ147. Bingo, aunque datasheet en japonés. Hasta Toshiba te recomienda usar en su lugar un 2SJ304, con mayor corriente y algo menor resistencia, aunque al final usé otro que tenía por casa, concretamente...
Demostrado.
No puede haber dos Javieres en una misma habitación al mismo tiempo observando un mismo fenómeno. O algo malo pasará.
Evidencia exclusiva de los dos últimos días:
Un Javi enseñando el Minecraft a otro -> el algoritmo de generación de terrenos del mismo casca.
Un Javi enseñando su conexión de internet a otro -> el router se desconecta y reconecta a 4KB/s, sin que nadie se dé cuenta.
Un Javi enseñando cosas de YouTube a otro -> la luz de un foco empieza a parpadear y se funde. En caliente, no en un ciclo de apagado / encendido.
Un Javi enseñando su casa a otro -> aparece una arañita en el pasillo, cuando sólo había visto una una vez en el baño, en tres años que llevo aquí.
...
Y lo peor es que yo soy el Javi que enseña.
-____-
En un comentario propuse la siguiente definición:
Ibertex: Teletexto por teléfono, aún más lento si cabe, al precio de una llamada a Andorra. Uno de los grandes fracasos españoles al intentar emular la Minitel francesa.
Ahora propongo otra:
Invescom-300: Sucedaneo de modem, únicamente 75/1200 y protocolo privado. Incompatible con todo software excepto el suyo, a su vez incompatible con todo.
No tenía ganas de bajar al sótano a por la tarjeta; así que ahí va una foto del manual:
Y a continuación algunas capturas, apreciemos sus portentosas capacidades gráficas:
Pese a ser uno de los más típicos casos de avería en discos duros, es la primera vez que me he encontrado un caso así. Después de pasar por tres personas, me advierten que no funciona en otros ordenadores, carcasas USB ni adaptadores; ni siquiera se pone a rotar.
Al probarlo con una fuente cutrilla que tengo para hacer pruebas me doy cuenta de que hace ruiditos. Me huelo la tostada, meto el polímetro y zas: el regulador de tensión para dar 3.3V está fastidiado, y ningún adaptador o fuente cutre tiene una línea de 3.3V en el conector de alimentación SATA.
En su salida tiene un diodo a la entrada de los 3.3V del conector, por si acaso se proporcionasen, y a partir de ahí alimentar toda la electrónica. En teoría debería funcionar perfectamente en mi ordenador, pues mi fuente es buena y tiene esa linea, pero decido hacer esto otro:
LM317 + 2 resistencias y listo, HD funcionando. Una vez me aseguro de que todo está perfecto en otro ordenador, lo pongo en el mío propio ya sin apaños, vuelco, y otra recompensa que me gano de la forma más tonta.
Afortunadamente era esto y no el firmware como me decían, en estos Maxtor para ahorrar costes no reside en ningún integrado, sino en los primeros sectores del disco. De hecho, esa es la principal causa de avería en estos discos. El daño mecánico lo descarté porque no hacía sonar la "melodía" típica de los Maxtor (suena como un politono).
Moraleja: No volver a usar la cámara del móvil para nada.
¿Cómo hacemos para mantener a Habi alejado de todos sus proyectos durante sus vacaciones?
¡Falso! No es euclídeo. Bloques flotantes, agua infinita, lava de dinámica dudosa... Pero es parte de su encanto.
A punto casi ya de cumplirse el año de permanencia que tengo con Ya.com y de mudarme a pastos más verdes me he puesto a revisar el router que me dieron en su día. Un tal SMC7908A-ISP (delegado en Arcadyan, otra del grupo Accton).
El firmware está capado y aparte es pésimo. La interfaz es lenta y mala, no hay opciones para casi nada, y tiene graves errores; como enviar peticiones DHCP en capa ATM estando la línea ADSL no sincronizada, y desincronizarla si en 4 segundos no ha obtenido su IP, ambas cosas de forma asíncrona, con lo que puede estar días sin coger línea (sin ayuda externa).
Sin embargo, el hardware es estupendo: un Infineon Danube (MIPS doble núcleo a 333 Mhz, temas analógicos para ADSL, VoIP, etc.), 64MB de RAM, 4 de Flash, un Realtek RTL8306SD para Ethernet y MII y su Atheros AR2417 para WiFi. Y un conector MiniPCI sin soldar, pero presente. Si queréis fotos, las tenéis estupendas aquí.
Dentro de su interfaz podemos abrir páginas no accesibles pero que no se han molestado en eliminar. Y es a partir de este hecho que hoy he decidido echar un ojo.
Partiendo del último firmware (v0.10.016 - 2009/07/29), extrayendo las 6 partes de las que se compone, desencriptando las 1 y 2 (núcleo firmware e interfaz web respectivamente) y descomprimiendo 1-4, nos encontramos en el caso de la 2 un bonito sistema de archivos PFS relativamente normal en routers. Una vez extraídos todos los ficheros, aquí tenéis la lista de los accesibles como interfaz web para los que queráis experimentar (\www\doc\):
accesscontroladd.stm adsl.stm adslst.stm adsl_main.stm adsl_para.stm adsl_status.stm advanced_user.stm advanced_user_p.stm arcor_network.stm arcor_spec.stm atmint_ya.stm atmpvc_ya.stm auto_upg.stm auto_upg2.stm blocked.htm changelanguage.htm clone.stm country_css.css ddns.stm ddns_main.stm dns_proxy.stm err_gen.stm firewall.stm firewallst.stm firewalltemp.stm firewall_a.stm firewall_d.stm firewall_mac.stm firewall_main.stm firewall_rule.stm firewall_rule_a.stm firewall_spi_h.stm firewall_u.stm forward_check.stm function.stm help.stm hwoption.stm igd.xml igd_l3f.xml igd_osf.xml igd_wcic.xml igd_wec.xml igd_wic.xml igd_wpc.xml index.stm ipsec_editsp.stm iptv_main.stm isp.stm js_tree.js l2tp_a.stm lan.stm lan_main.stm linegraph.class login.stm loginerr.stm loginpserr.stm menu-hid.stm menu.css menu.stm msg.js my_function.txt
|
my_function3.css nat.stmnatst.stm nattemp.stm nat_m.stm nat_main.stm nat_off.stm nat_sp.stm nat_table.stm nat_v.stm no_link.txt pingtest.stm pin_code.stm pppoeint.stm pptp_a.stm production.stm qos.stm qos_clsmap.stm qos_editcls.stm qos_main.stm qos_stats.stm qstatus_main.stm qwireless_id.stm route.stm route_main.stm route_tbl.stm routine2.txt routine_data.js r_mort.stm r_rip.stm save_ok.htm setupa.stm setupa_brief.stm setupa_main.stm setupa_top.stm setupq6_main.stm setupw.stm setupw_0.stm setupw_1.stm setupw_2.stm setupw_2_ya.stm setupw_main0.stm setupw_main1.stm setupw_main2_ya.stm setupw_menu.stm setupw_top.stm setup_dns.stm setup_q6.stm snmp.stm snmpst.stm snmptemp.stm snmp_community.stm snmp_main.stm snmp_trap.stm status.stm status_main.stm system.stm system_c.stm system_f.stm system_i.stm system_main.stm system_p.stm
|
system_r.stm system_remote_mgmt.stm system_t.stm telephony_voip.stm tl.stmtl_main.stm tools_backup.stm tools_restore.stm tr69.stm tree.js undoc_upgrade.stm upnp.stm upnp_main.stm usb_fsrv.stm usb_fsrv_part_f.stm usb_fsrv_tree.stm usb_ftp_f.stm usb_ftp_server.stm usb_ftp_tree.stm usb_main.stm usb_modem.stm usb_pr_server.stm usb_wftp_browse.stm usb_wftp_server.stm usb_wftp_tree.stm user_define.stm verinfo.txt voice_quality_test.stm voip.stm voip_account_edit_ya.stm voip_account_ya.stm voip_advanced.stm voip_call_allocation.stm voip_extension_in.stm voip_extension_out.stm voip_function.txt voip_isdn_msn.stm voip_main.stm voip_numbers_act.stm voip_num_plan.stm voip_num_plan_nr.stm voip_phone.stm voip_status.stm vpn.stm vpn_conn.stm vpn_function.txt vpn_main.stm v_lan.stm v_lan_a.stm wait.stm wait0.stm wan.stm wan_main.stm wireless.stm wirelessst.stm wirelesstemp.stm wireless_1x.stm wireless_country.stm wireless_e.stm wireless_id.stm wireless_mac.stm wireless_main.stm wireless_wds.stm |
Particularmente, me parecen útiles:
advanced_user.stm -> para hacer login como administrador, necesario para ciertas funciones; una de las pocas conocidas por ahí fuera.
wireless_country.stm -> se le pueden poner los parámetros de Japón, por ejemplo, y ganar dos bandas WiFi extras. OJO: supuestamente no es legal en Europa, hay leyes de radiofrecuencia, etc.
r_mort.stm -> nos muestra la tabla de reglas de enrutamiento vigentes (por fin).
atmint_ya.stm -> con esto podemos poner el tipo de conexión que queramos, y mandar a tomar por saco las que vienen predefinidas.
route_tbl.stm -> podemos definir nuestras reglas de enrutamiento. Con esto ya puedo tener WiFi y VoIP enrutadas al viejo router de Telefónica configurado para acceder como MER y conectarme a través suya.
También hay cosas que sobran, como lo de Arcor (el Ya.com de Alemania; incluyendo pin_code.stm) y cosas que no deberían estar realmente (como production.stm (valores de fábrica)).
La parte realmente inesperada ha sido en la carpeta de imágenes; entre otras cosas hay logos: de SMC, de Ya.com y de... ¡Pirelli! ¿Tendrá Pirelli routers como éstos personalizados? Prefiero no saberlo. Por otro lado, el firmware ha sido compilado en C bajo un entorno Unix. Nada que no me esperase.
Y con esto me conformo de momento. En cuanto me cambie de compañía y me den mi nuevo router pasaré a la fase 2: bus pirate sobre J2 (tiene un puerto serie a 3.3V) y trastear mandando mis firmwares a RAM. En teoría se podría usar OpenWrt, ya os contaré.
Me he puesto a recopilar información sobre ese post que debo de proyectos fallidos en los que intervenían otras personas, y más que post se merecería un blog aparte. Centrémonos y resumamos: sólo en los que hice de programador, sólo los que me parezcan significativos, sólo los que no valieron para nada.
Archen 4
Hace mucho, mucho tiempo, antes de tener el Turbo Pascal para DOS (y por tanto, hecho en Quick Basic 4.5) nos encontramos con un tal Archen 4. Como bien podéis deducir, el proyecto es un intento de Archon, juego ya barato de por sí. Éste proyecto lo empecé con el tal D0 que mencioné en su día en este post.
El juego tiene listas todas las rutinas gráficas y de movimiento, es medio isométrico y tiene su propio editor de dibujos. Sin embargo me cansé (de varias cosas), y mandé el proyecto a tomar viento. Sin programador lógicamente murió; pero aún perdura ese código fuente y los gráficos de los bichos que hicimos, no sabría decir qué cosa es más cutre que la otra.
Horace goes to Carrefour (to buy a bottle of eSky)
Este es el único proyecto en el que intervino alguna de mis sobrinas en el que llegase a hacer algo de código. De nuevo, resuelto gráficos, movimiento y sonido.
Y de regalo, mutaciones de Guybrush que nunca valieron para nada porque no me hicieron ni una sola fase de animación.
CdPlayer
Esto es una utilidad que hice con Antonio, y está terminada. Es un reproductor de CDs para DOS, reconoce discos, mantiene una biblioteca con nombres, imágenes, etc. Pensamos enviarlo a la PCManía o algo, pero al final no hicimos nada. Tampoco hubiese valido de nada, pues en breve llegó el Windows 95. Si os lo preguntáis, el dibujo de la cadena lo hice con el 3D Studio para DOS.
Intento de AG
En este caso está terminada la programación, incluyendo sonido y música. Yo lo programé en un par de tardes, Nacho hizo las fases de animación del personaje y Hernán miró. Dada nuestra vaguería, ahí quedó.
Intento de remake del Caos
De nuevo, grafista que no hace al menos una fase de animación. De nuevo, proyecto hundido en la miseria. Una pena, había gráficos muy chulos de V.
Álbum
De esta utilidad ya hemos hablado en varias ocasiones. Cataloga imágenes en colecciones y éstas en álbumes. Tiene posibilidades multimedia (diapositivas, sonido, música, editor integrado, etc). Ya hemos contado que no logramos venderlo por poco a un barbas de la UNED. Y respondiendo a Abj: fuimos a aquellos lúgubres sótanos para trastear con un ordenador que tenía escaner, para ver si podíamos añadirle esa funcionalidad al programa.
Empezó como un proyecto propio para que Hernán se montase sus comics (así se llamaba). Cuando L. lo vio se le pusieron los ojos con el símbolo del dólar y ahí que empezamos a desarrollarlo y cambiamos el copyright de "Producciones informáticas 'El puercoespín tuerto' " a "Delta Software" y le pusimos un iconito chulo de un libro y en el instalador este Jocker:
Y de regalo el puercoespín secuestrado, ojiparcheado y escaneado:
Oqqo
Cutre clon del Clementine (CCC). Ya que al final iba a cargar yo solo con todo el código, acabé pasando. Sin embargo aproveché el tema gráfico para un programa de cálculo de drenaje.
Y tiene unos créditos muy chulos con tres iconos de pitufos con nuestros nombres dando vueltas alrededor de una seta.
¡Ya vale!
Y también me acuerdo de otras pero no creo que merezcan estar en esta lista, como el M.I.G.O.W. (Most Infumable Game On the World, estrategia a lo Master of Orion), un gestor documental para la GE que hice con Antonio (y que tampoco valió para nada), u otros como La Morgue que ya tienen su propio post. Pero por el bien de la humanidad hay que parar. Hale ya hice el post que queríais; ahora comentad, malditos.
Nueva funcionalidad para el blog. Evitemos la necromancia ajena.
☞ Mola ☜
¡Viva Dadá!
A veces encuentro copias de seguridad de mis antiguos programas en los lugares más insospechados. Aquí tenéis un trío infame de la cosecha 1999-2001.
Busca piñas
Barato clon del busca minas. Sólo que en lugar de minas hay piñas. Con un algoritmo iterativo para descubrir las piñas. Y hasta ahí todo lo bueno que puedo decir de él, me temo.
¿Editor 2?
O al menos se llama así la carpeta; por dentro es como todos, Project1.dpr y Unit?.pas. En fin.
En su momento estaba orgulloso de este programa, a pesar de estar bastante mal hecho el analizador sintáctico. Es un editor de texto matemático, una mezcla de Word (más cutre) con LaTex (¡menos cutre!) para que os hagáis una idea. Totalmente configurable los símbolos, abreviaturas (autoexpandibles), funciones y palabras reservadas.
Renderiza a HTML, así puedo ver todo en un control TWebBrowser sin tener que currarme uno yo, y me sale gratis la exportación a la web.
S.U.M.E.
Intento de Derive, pero para enteros modulares. Trabaja con enteros normales, modulares y vectores y matrices de los mismos. Además de las funciones aritméticas clásicas incorpora otras interesantes para teoría de códigos, como pruebas de primalidad, phi, factorización, ...
Al contrario que el anterior, este sí está bien hecho por dentro. Es poderoso, aunque como todo lo que hago, lo tengo en el garaje y nunca lo usé.