Si solo quieres poner algunas cosas en la pantalla, y crees que realmente podrías, realmente disfrutar del cableado, podrías apuntar a un sistema de gráficos de personajes de principios de 1980. Si puede alcanzar el tiempo para el RS-170A, incluso podría empujar la señal a una entrada AV de repuesto en un televisor de plasma de 50 "y volverse retro en gran medida.
Algunos sistemas antiguos utilizaron sus CPU de 8 bits para generar directamente la pantalla, por ejemplo, el 6507 en el Atari 2600 y el Z-80 en el Timex Sinclair ZX-81. Incluso puede hacer lo mismo con los microcontroladores modernos. La ventaja de esta manera es que el hardware es simple, pero el software generalmente tiene que estar en un ensamblador, y es muy exigente, y los resultados serán realmente decepcionantes. Podría decirse que el 2600 empleaba hardware adicional, pero el TIA no tenía mucho FIFO, y el 6502 (bueno, 6507, realmente) tenía que volcar bytes en tiempo real. En este enfoque, no hay modo de video estándar; cada aplicación que utiliza video tiene que estar íntimamente combinada con las necesidades de mantener los píxeles fluyendo.
Si realmente quieres construir algo a partir de TTL, el siguiente nivel de complejidad sería ir a la visualización de texto basada en ROM de caracteres. Esto le permite colocar cualquiera de, digamos, 256 caracteres en cualquiera de, por ejemplo, 40 columnas y 25 posiciones de fila. Hay un par de maneras de hacer esto.
De una manera: haga lo que hizo el modelo TRS80 que hice. Un grupo de 74161 contadores con un surtido de puertas generó la dirección de video; tres 74157s multiplexados 12 bits de la dirección de la CPU con la dirección de video, para alimentar una dirección a una memoria RAM estática 2K. Los datos de la RAM se almacenaron de nuevo en la CPU, pero se enviaron sin búfer como dirección a la ROM del conjunto de caracteres. No hubo arbitraje de autobuses; si la CPU deseaba la memoria RAM de video, el sistema de video se pisó, lo que resultó en el efecto 'nieve'. La dirección de video muxed se combinó con algunas líneas de la sección del contador para redondear las direcciones bajas; La salida de ROM de caracteres se volcó en un registro de desplazamiento 74166. Todo salió de las divisiones de un cristal de 14.31818MHz. En este enfoque, tendrías exactamente un modo de video completamente implementado en hardware, como 40x25 o 64x16, etc., y cualquier juego de caracteres que puedas poner en la ROM.
Otra forma: extraiga un chip CRTC llamado 6845. Combinaron la mayoría de las lógicas de pegado y contador, y proporcionaron al procesador una interfaz de registro de control para que pueda reprogramar parte de la sincronización. Los sistemas como este podrían ser algo más flexibles, por ejemplo, podría obtener 40x25 y 80x25 del mismo hardware, bajo el control del registro. Si se da cuenta de las frecuencias de reloj, puede permitir que su CPU tenga acceso gratuito a la RAM de video durante la mitad del reloj y al generador de direcciones de video durante la otra mitad del tiempo, evitando así la necesidad de arbitraje de bus. y eliminando el efecto de nieve.
Sin embargo, si quieres ir a modos de gráficos reales, rápidamente encontrarás que hacer rodar los tuyos es problemático. El Apple 2 original lo logró, pero ese sistema tenía algo así como 110 chips MSI TTL, y aún así había algunas cosas divertidas con las que lidiar, como el mapeo no lineal del búfer de video a la pantalla y paletas de colores extremadamente limitadas , por nombrar dos. Y a Woz generalmente se le reconoce que tuvo una pista. Cuando llegó el '2e', Apple ya estaba poniendo el sistema de video en un chip personalizado. El C-64, casi al mismo tiempo, debía sus capacidades gráficas a chips personalizados.
Entonces ... yo diría que hay dos formas de hacerlo. De una manera: saque su cubeta de TTL anterior y aspire para una pantalla de texto de un color de 80x25; a la inversa: consiga una buena placa de evaluación FPGA, haga todo en VHDL y comience con una pantalla de texto de 80x25.