Aquí pueden encontrar los videos en:
6502 vs 6510 estudio detallado y comparación - YouTube
y los artículos en:
https://blog.espaciotec.com.ar/c64-a-fondo-indice/
ambos también presentes en la página de OsoLabs:
https://www.osolabs.tech/6502vs6510
Cortando cables como un perro.
Me di cuenta que cada vez que quería aprender algo nuevo sobre la computadora, probar un chip nuevo, poner un teclado, etc. tenía que hacer varias cosas:
Comprar el chip,
Conseguir un breadboard (el cual es una base que funciona para realizar circuitos muy fácilmente).
Mirar en internet o en manuales viejos que era cada patita del chip (pinout) y como funcionaba,
Decidir cómo hacer el experimento (por ejemplo prender un led),
Conseguir el led, las resistencias para no quemarlo,
Conseguir una fuente de corriente contínua que se pueda conectar mi experimento,
Imaginar cómo hacer las conexiones en el breadboard las cuáles no siempre son las más lógicas desde un punto de vista del circuito y finalmente…
Y ponerme a cortar y pelar cables, cables muchos cables, para poder realizar el experimento, mínimo 40 cables normalmente más cerca de los 60 si contamos los componentes adicionales que tenemos y ahí empieza el troubleshooting.
Chequear en detalle, que se conecte bien cada cable, que si hace contacto en el breadboard, que mientras estoy probando no se haya salido un cable. Muchas veces me pasó de estar 2 días probando y modificando un programa en lenguaje máquina que no funcionaba cuando el problema era que un cable del address bus se había salido, arruinando el experimento.
Otras veces teniendo todo perfecto me pasó el clásico de no conectar el pin de power del chip a 5v o conectarle 5 volts a un pin sólo de output!! Corriendo el riesgo de quemar el chip. Esos 5 segundos de pensar que no se quemeee que no se quemeeeee.
Cuando algo que queremos probar depende de que muchas partes de la computadora funcionen (CPU, RAM, ROM, I/O, CLOCK) etc, el tiempo de setup para cada nuevo experimento es exponencial hasta que están todas las partes conectadas. Para que funcionara todo el tiempo tenía que tener armada la maqueta con los circuitos por que si quería empezar de cero cada vez me llevaba más tiempo para armar todo a medida que agregaba nuevos módulos y hacía nuevos experimentos que los incluyeran.
Si quería obviar todos estos pasos había computadoras ya integradas todas en una misma plaqueta o circuito impreso, pero podía usar lo que había con nulas posibilidades de expansión y cero flexibilidad.
Claramente tenía que haber una forma más fácil de aprender. Tenía que haber una mejor forma de explicarle a otra persona cómo funciona una computadora y una mejor forma de armar tu propia computadora de 8 bits.
Como no podía encontrar en el mercado una computadora que fuera lo suficientemente sencilla, flexible y modular creé una y llamé La20c. Esta posee tres características fundacionales:
Elegí una arquitectura muy simple que está basada en los procesadores de la familia del 6502 de MOS Technologies, usada en computadoras como la Commodore 64, la Apple 2 y el Atari 2600.
Es modular ya que cree un módulo por cada chip que vamos a usar para que sea fácil identificar la función de cada uno de ellos siendo cada módulo es OpenSource para que cualquiera pueda fabricarlo y modificarlo mientras aprende.
Es fácil realizar experimentos ya que cada módulo es un cuadrado de 16x16 cm ideal para poner una placa de breadboard (que mide 16cm) la cual usamos para realizar experimentos simples.