Tiny Emulators: colección de pequeños emuladores
(floooh.github.io)- Reúne en un solo lugar páginas de emuladores que permiten ejecutar directamente software de cada plataforma, desde CPU clásicas hasta computadoras de 8 bits y sistemas arcade
- Ofrece una amplia variedad de sistemas, incluidos Visual 6502 Remix·Visual Z80 Remix, Amstrad CPC, ZX Spectrum, Commodore, Acorn Atom y la familia Robotron
- Los parámetros
type,file,input,joystick,expymodde la URL permiten especificar la plataforma y la imagen de disco, la entrada inicial, el joystick, la expansión de RAM y la configuración de módulos - Incluye BASIC, FORTH, ASMDEV, CP/M 2.2 y numerosas demos y juegos para CPC, C64, VIC-20 y KC85; obras como Boulderdash pueden ejecutarse comparando versiones de varias plataformas
- Algunos elementos requieren una tecla de inicio o ingresar comandos, seleccionar joystick, y Demoizart tiene una advertencia de luces estroboscópicas, por lo que conviene revisar también las condiciones de ejecución
Visualización del funcionamiento de CPU
- Visual 6502 Remix: visualización del 6502
- Visual Z80 Remix: visualización del Z80
Emuladores de computadoras compatibles
-
Familia Amstrad
-
Familia ZX Spectrum
-
Familia Commodore
-
Otros sistemas
- Acorn Atom
- LC-80
- Robotron Z1013
- Robotron Z9001: incluye BASIC y módulo de RAM
- Robotron KC87: después de ejecutar BASIC, ingresa Enter
Lenguajes y entornos de desarrollo
- FORTH for KC85/4: especifica el módulo M026, la imagen
forth.853y la entrada inicial de comandos - FORTH for Z1013: se ejecuta en la configuración Z1013 de 64 KB
- BASIC for Z1013: usa la configuración Z1013 de 64 KB y
kc_basic.z80 - ASMDEV for KC85/4: especifica el módulo M027, la imagen
develop.853y el comando inicial - CP/M 2.2 for CPC: carga
6128sp_4.dsky luego ingresa|cpm
Demos de Amstrad CPC
-
Demos tempranas de CPC
- DTC
- Tire Au Flan: presiona Space para avanzar
- Wolfenstrad
- Byte'98
- Ecole Buissonniere
- Demoizart: incluye advertencia de luces estroboscópicas
- Logon's Run
- YAP!
- Backtro
- Isometrikum
-
Demos adicionales de CPC
- SotB Demo: selecciona
Preview 1y luego presiona Space - Points Barres: presiona Space para avanzar
- Still Rising
- Octopus Pocus
- Gloire a Piou!
- phX / Condense
- Batman Forever
- CRTC
- Wunderbar
- Phortem
- Pheelone
- Phreaks
- Phat 2
- Wobbler
- Battro
- SotB Demo: selecciona
Demos de Commodore C64 y VIC-20
-
Demos de C64
-
Demos de VIC-20
- PPY: usa la expansión
maxram - Muna.Paluu: usa una expansión de RAM de 8 KB
- PPY: usa la expansión
Demos y juegos de KC85
-
Demos de KC85/4
-
Juegos de KC85/3
- Digger: usa el módulo M022
- Jungle: usa el módulo M022
- Pengo
- House
- Cave
- Versión alternativa de Cave: es una versión alternativa mejor
- Labyrinth
- Pacman: ingresa automáticamente
PACMAN - Ladder: ingresa automáticamente
LADDER - Mad Breakin: usa el módulo M022
-
Juegos de KC85/4
- Chess: ingresa automáticamente
CHESS - Enterprise
- Tetris
- Sokoban
- Chess: ingresa automáticamente
Juegos disponibles en varias plataformas
-
Boulderdash
-
Bomb Jack
-
Cybernoid
-
Serie Arkanoid
- Arkanoid for CPC
- Arkanoid RoD for CPC
- Arkanoid RoD for ZX128: usa el joystick Sinclair 1
-
Silkworm
-
Chase HQ
-
Ghosts'n'Goblins
-
Bruce Lee
-
Head over Heels
-
Nebulus
Juegos para una sola plataforma y arcade
-
Arcade y C64
- Pengo Arcade: inserta una moneda con
1e inicia con Enter - Zaxxon for C64
- Dig Dug for C64
- Pengo Arcade: inserta una moneda con
-
Juegos de CPC
- Fruity Frank
- 1943
- Dragon Ninja
- Gryzor
- Astro Marine Corps
- Intern.Karate
- IK+
- Ikari Warriors
- Rick Dangerous
- Prince of Persia
- Live and Let Die: se ejecuta con la configuración CPC464
-
Juegos de ZX Spectrum
- Batty for ZX48K
- Great Escape for ZX128: selecciona el joystick Kempston
- Flying Shark for ZX48K: selecciona el joystick Kempston
- Cyclone for ZX48k: selecciona el joystick Kempston
- Exolon for ZX48k: selecciona el joystick Kempston
- Quazatron for ZX128: selecciona el joystick Kempston
- Rainbow Islands for ZX
- Sir Fred for ZX48K: selecciona el joystick Kempston
-
KC85/3
- Breakout: ingresa automáticamente
BREAKOUT
- Breakout: ingresa automáticamente
-
Acorn Atom
- Chucky Egg: después de
*LOAD, inicia con Space - Jet Set Willy: después de
*LOAD, seleccionaJOYMMC
- Chucky Egg: después de
-
VIC-20
-
Robotron Z1013
1 comentarios
Comentarios de Hacker News
La URL con
-previewse creó para probar algunas cosas y es una dirección antigua que no se actualiza desde 2021. La dirección actual es https://floooh.github.io/tiny8bit/.Además de la emulación a nivel de pines, es interesante que hace avanzar la CPU ciclo por ciclo. La CPU no actúa como un controlador especial del sistema, sino que avanza en cada tick junto con los demás chips. En el Z80, en lugar de una rama por instrucción, hay una rama
switch-casepor cada ciclo de instrucción, y el método detallado está resumido en https://floooh.github.io/2021/12/17/cycle-stepped-z80.htmlOriginalmente era un proyecto en el que trabajaba sobre todo durante las vacaciones de Navidad, y desde 2023 casi no lo ha tocado. Desde entonces, básicamente solo ha actualizado las dependencias de sokol y Dear ImGui, y de vez en cuando ha agregado nuevos demos publicados en https://www.pouet.net/ y https://csdb.dk/
Este proyecto me hace pensar mucho en 0x10c. Sigo fascinado por los mundos donde existen minicomputadoras virtuales; he imaginado algunas cosas basadas en viajes espaciales y cyberpunk, mezclando elementos al estilo Zachtronics en el diseño de chips, e incluso pensé en una variante de fantasía.
Aun así, no puedo quitarme la idea de que es un tema extremadamente de nicho. Si te interesa, puedes hablarlo aquí o escribirme al correo de mi perfil. Referencia: https://en.wikipedia.org/wiki/0x10c
Ya desde el inicio es difícil saber si los usuarios querrían crear por sí mismos todo un sistema operativo para manejar el hardware de la nave espacial, o si habría que poner un mercado de software dentro del juego para comprar y vender programas de control de naves. Uno se pregunta si alguien realmente haría un Windows 3.1 para DCPU sin recibir nada a cambio.
Quiero que tenga éxito, pero un juego open source anterior bajaba hasta nivel de BIOS y era demasiado técnico para la mayoría. Poca gente querrá ponerse a trabajar primero en la API/ABI solo para mover una nave espacial.
Me gusta el enfoque de emulación a nivel de pines de este proyecto. Cada componente es autocontenido y funciona de manera modular, lo que da mucha flexibilidad.
Una interfaz extremadamente delgada pero definida de forma explícita podría ser un área aún poco explorada desde el punto de vista de la interoperabilidad. Si ambos lados muestrean valores en momentos definidos y solo ofrecen unas pocas señales para el acceso temporal, ya sean pines, unos cuantos registros o una región de memoria mapeada, se vuelve un excelente objetivo para pruebas de conformidad.
En la era del código generado por IA, los componentes modulares con requisitos explícitos de conformidad pueden ser especialmente útiles. No importa cómo esté implementado el interior de la caja negra, siempre que no pueda violar el comportamiento requerido.
En la práctica, crear bibliotecas autocontenidas sí requiere algo de disciplina y no hacer demasiado caso a quienes repiten DRY todo el tiempo.
Por eso también agregué un modo
"soldered"que sacrifica un poco de modularidad para ganar velocidad. Ahí no se puede separar el CRTC, y al final también añadí un modo rápido por separado. Aun así, la implementación a nivel de pines es un excelente oráculo de validación para verificar la exactitud en cualquier momento, así que ya tiene mucho valor por sí sola.Ahora quiero hacer un puerto de expansión con conexión USB para conectar todo el hardware real. El código a nivel de pines todavía no es público, pero basta con esperar una semana más.
Está realmente genial. Cuando era niño, cargar un juego desde cinta tardaba una eternidad, y ahora se ejecuta al instante. Me gustaba especialmente Bruce Lee en ZX Spectrum.
También hace falta más Oric: https://oric.games/
Algunos juegos tienen el volumen bastante alto para lo que esperaba. Es difícil darse cuenta antes de hacer clic en el juego.
Estaría bien poder ajustar el volumen en la interfaz del sitio. El sonido de algunos juegos es demasiado alto.
Por favor actualicen la dirección a https://floooh.github.io/tiny8bit/. Es la dirección enlazada oficialmente, ya se usó en envíos anteriores, y el desarrollador también lo informó el año pasado en https://news.ycombinator.com/item?id=43821756
También me da curiosidad de dónde sacó el autor de la publicación esta dirección de vista previa, y si estaba enlazada desde algún otro sitio.
Este proyecto existe desde hace al menos 8 años: https://hn.algolia.com/?query=Tiny%20Emulators&type=story&da...