HeadlinesBriefing favicon HeadlinesBriefing.com

GitHub - ZX Desk: Sistema operativo de escritorio para ZX Spectrum

Hacker News •
×

ZX Desk es un entorno de escritorio gráfico para el ZX Spectrum 48K, escrito completamente en ensamblador Z80. Ofrece ventanas superpuestas con orden z y foco, menús desplegables, montón, cola de eventos, backends de almacenamiento intercambiables, diálogos, controles, bloc de notas, reloj, calendario, gestor de archivos de dos paneles y panel de configuración—todo dentro de 48K en una máquina de 1982. Se ejecuta en hardware real, no solo en emuladores.

El proyecto se inspiró en el deseo infantil del creador por una Atari ST y su escritorio GEM. En lugar de portar GEM, ZX Desk reimagina el concepto dentro de las limitaciones de un Z80 de 3.5 MHz, 48K de RAM, una pantalla de un solo bit con conflictos de atributo y un chip de video que roba ciclos de CPU. La mayoría de las decisiones de diseño surgieron de mediciones del hardware real más que de razonamientos teóricos.

El sistema incluye una barra de menús permanente con desplegables, soporte para ratón y joystick Kempston, un anillo de eventos de 16 ranuras y un registro de backends de almacenamiento (RAM, cinta, disco RAM de 128K, esx DOS). Un montón real asigna buffers del tamaño de las ventanas, y las aplicaciones usan descriptores con manejadores de inicialización, eventos y pintado. Los ajustes persisten mediante un formato de almacenamiento versionado.

La herramienta de compilación usa pasmo 0.5.5 y se compila con scripts simples. Las banderas de compilación habilitan el modo demo, scripting de entrada sintética y diagnósticos de ratón en bruto. El proyecto enfatiza mediciones prácticas y optimizaciones de bajo nivel esenciales para el desarrollo en hardware vintage.