Habi Hablóg
Declaro:
XML válidoXHTML válido800x600 +
RSS válidoCSS válidoNavegador digno
  Blog   Archivo   Contacto   Administración  

Acerca de

Matemático, informático, aficionado a la electrónica, friki... y otras cosas que no vienen a cuento ni pasan los filtros de palabras.

¿Queríais un blog? Ahí va.

Red antisocial

¡Me van a volver loca! 2.0
La Fragata Portuguesa

Z
¡Me van a volver loca!

Últimos posts

El expediente X que nadie pidió
eNigma
La cuadratura del píxel
Portando desde Spectrum
Inexorable

Últimos comentarios

Habi
NoSupoResolverLaFuncion
Edu
Habi
EnriqueGG

Calendario

No hay fechas.

Categorías

Chorradas
Paranoias
Posts lúcidos
Tecnoesoterismo
Yuyus

Cenas de Abj

Abj debe 7 cenas.

Frase célebre

Hernanibus dice: pues que la goma se rompe mu malamente

Minecraft

Habi - 19/09/2010 22:37:19 - Chorradas

¿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.

3


Router capado

Habi - 15/09/2010 3:18:53 - Tecnoesoterismo

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é.

3


Retrofracasos compartidos

Habi - 28/08/2010 2:12:17 - Posts lúcidos

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.

2


Cerrojo

Habi - 10/08/2010 16:43:33 - Posts lúcidos

Nueva funcionalidad para el blog. Evitemos la necromancia ajena.

   Mola    

¡Viva Dadá!

4


Tres tristes trasnochados truños

Habi - 05/08/2010 11:57:38 - Yuyus

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é.

8


Sabor, sabor

Habi - 05/08/2010 11:15:29 - Chorradas

 

No sabe a canela en flor, a fresca hierbabuena ni a rojo melocotón. Lo siento, Rosario.
 
Sabe a pseudofresa química y chicle barato, más bien; lo que tiene cierto punto retro.
 
Sabor a Atari. :9

0


@__@

Habi - 02/08/2010 2:08:26 - Yuyus

Facilis descensus Averni:

Noctes atque dies patet atri janua Ditis;

Sed revocare gradum superasque evadere ad auras,

Hoc opus, hic labor est.

0


Apoteosis monocroma

Habi - 27/07/2010 2:25:50 - Chorradas

Más bibliotecas para el PrintMaster / NewsMaster. Con su correspondiente regla 34.

1


ROMs

Habi - 20/07/2010 23:58:45 - Tecnoesoterismo

Llevaba mucho tiempo con una idea en la cabeza: hacerme mi propio emulador de PCs obsoletos, empezando en XT. La virtualización por tanto no me vale; DosBox es inexacto y sólo apto para juegos de AT en adelante, y siempre y cuando se ciñan a la BIOS en determinadas cosas; PicoXT está seriamente limitado. Así que aprovechando estas pequeñas vacaciones que me he cogido me he puesto a ello.

Y he empezado a hacer pruebas con distintas ROMs. Para la BIOS de un XT hay aparentemente una de dominio público archiconocida, cuyo mensaje de copyright es "Generic Turbo XT Bios, (c) Anonymous", la cual es una taiwanesa que desensambló un tal Ya'akov Miles en 1987. Y también hay una modificación de la misma, por Jon Ρetrosky, llamada Turbo XT BIOS 2.0.

Para la emulación del disco duro del XT está la típica de Western Digital wdbios.rom, y para el video la et4000.bin (de una Tseng Labs ET-4000). También hay algunas sintéticas hechas para QEmu y tal, pero poco se ve por ahí volcado de hardware real.

Así que vamos a ver que tengo por ahí guardado, y vamos a ir volcando esas ROMs con el siguiente programita (ese A86 bajo DOS, hacía tiempo) que nos hace un snapshot del primer mega:

Mov Dx, Offset Nombre
Xor Cx, Cx
Mov Ah, 03C
Int 021
Mov Bx, Ax
Xor Dx, Dx
Mov Bp, Dx
Mov Cx, 32768
Bucle:
Mov Ah, 040
Mov Ds, Bp
Int 021
Add Bp, 0800
Jnz Bucle
Mov Ah, 03e
Int 021
Int 020
Nombre Db 'Prueba.bin',0

 

Un XT de verdad:

Este es un XT casi de verdad. 8088, 4.77 Mhz, venía originalmente con aquella CGA ATI de la cual ya he hablado en otros posts. La placa de abajo son simplemente los buses (todo va a través del ISA, pues va a su velocidad nativa) y a la derecha implementado un puerto serie, otro paralelo y el controlador de disco.

La placa del medio es la memoria, con su interfaz a bus. 640KB.

La de arriba contiene el ordenador: lógica, procesador, BIOS, PIC, PIT, DMA, PPI y las salidas de este último al teclado y altavoz.

Desgraciadamente la BIOS de esta placa ha sido la única ROM que no he podido extraer. No me arranca, el problema está en la placa de arriba; no sé si es el procesador o la ROM (la cual es ROM de máscara, no una EPROM, no la puedo leer sin más en una tarjeta de red).

 

Mi viejo XT:

Anda que no tiene años y ha sufrido abusos esta placa, pero es una campeona. Con todos ustedes, mi viejo PC. Un Inves X30Plus, realmente otro nombre para un ACER XTPlus. El microprocesador y buses de memoria (RAM y BIOS) son de 16 bits (doble de rápidos que los del PC original), pero no es un 8086. Es un NEC V30 (versión de SONY), el cual es como tres veces más rápido que un 8086 a su misma velocidad, y compatible con el 80186 (como un 286 sin modo protegido). Sin embargo nada de misma velocidad, este va a 10 MHz. Nótense las dos EPROMS, para las partes altas y bajas respectivamente de las palabras, que implementan la BIOS. Además tiene RTC, la interfaz de teclado es compatible con XT y AT, admite disqueteras de alta densidad, etc. Pero es un XT.

Desensamblando su BIOS precisamente es donde me he dado cuenta del tema ACER. Sabía del chipset, que tenían tachada la marca, pero no sabía que la BIOS fuese la misma. Aún así, hay una cadena "INVESTRONICA S.A." en un sitio inocuo.

Este PC me duró hasta la universidad, cuando me hice con un Pentium a 120Mhz. Tuve que parchear juegos como el Monkey Island 2 para que no detectase que no era un 286+, e incluso algún gestor de memoria exótico que paginaba a disco emulando EMS. Pero me duró lo que no está escrito.

 

Gráficas:

La de arriba es una auténtica joyita, es la que venía con mi PC. Un clon de una OTI VGA-800 basada en un OAK-037C. De nuevo, ROM partida; compatible con buses de 8 y 16 bits.

¿Por qué una joyita? Por sus emulaciones. Llamando la Int 10 con Ah=FF y Al='C', 'E', 'V', 'M' convertía la tarjeta en una CGA, EGA, VGA o MDA+Hercules ajustando las frecuencias y scans por hardware. Y su emulación era tan buena que funcionaban juegos como MoonBugs, Digger, etc.

La de abajo es más típica, una ATI VGA-800 (¿casualidad?) integrada por Compaq. Tiene los mismos chips que una VGA Wonder XL (ATI 28800-4, etc). Y es una de las pocas que, siendo de 16 bits, funcionan en un bus de 8. Por eso está aquí.

 

HDs:

Por último, necesitamos ROMs de las controladoras de disco XT.

Las de XT son las de la izquierda, no sé para qué he subido las otras del trastero. En fin. La de arriba es una Everex EV-340, compatible con muchos discos duros distintos, y que estuvo en mi viejo PC algún tiempo (a pesar de tener integrado su propia controladora en placa madre) junto con un disco duro de 42MB.

La de abajo es del primer PC que hemos visto, una LCS-6210D. Bastante limitadilla, pero interesante no obstante.

Las otras dos son para ATs (nótese el bus ISA de 16 bits) y no incluyen BIOS. Para quien le interese, una Seagate ST08A y una Western Digital WDAT-140, respectivamente.

 

Hale, ya tengo ROMs para trastear un rato con mi proto-emulador.

19


PT

Habi - 21/06/2010 16:28:24 - Yuyus

Los Habis también petan.

5


Reglas del 10:
10 últimos   10 después   10 antes   10 primeros