Tiny Emulators - collection de petits émulateurs
(floooh.github.io)- Des CPU classiques aux ordinateurs 8 bits et aux systèmes d’arcade, cette page d’émulateurs rassemble en un seul endroit des logiciels exécutables immédiatement pour chaque machine
- En plus de Visual 6502 Remix et Visual Z80 Remix, elle propose divers systèmes comme Amstrad CPC, ZX Spectrum, Commodore, Acorn Atom et la gamme Robotron
- Les paramètres
type,file,input,joystick,expetmoddans l’URL permettent de définir la machine et l’image disque, la saisie initiale, le joystick, l’extension RAM et la configuration des modules - Elle inclut BASIC, FORTH, ASMDEV, CP/M 2.2 ainsi que de nombreuses démos et jeux pour CPC, C64, VIC-20 et KC85, et permet pour des titres comme Boulderdash de comparer les versions de plusieurs machines à l’exécution
- Certaines entrées nécessitent une touche de démarrage, la saisie d’une commande ou la sélection du joystick, et Demoizart comporte un avertissement stroboscopique : il faut donc vérifier les conditions d’exécution
Visualisation du fonctionnement du CPU
- Visual 6502 Remix : visualisation du 6502
- Visual Z80 Remix : visualisation du Z80
Émulateurs d’ordinateurs pris en charge
-
Gamme Amstrad
-
Gamme ZX Spectrum
-
Gamme Commodore
-
Autres systèmes
- Acorn Atom
- LC-80
- Robotron Z1013
- Robotron Z9001 : inclut BASIC et un module RAM
- Robotron KC87 : exécuter BASIC puis appuyer sur Entrée
Langages et environnements de développement
- FORTH for KC85/4 : définit le module M026, l’image
forth.853et la saisie de commande initiale - FORTH for Z1013 : s’exécute dans la configuration Z1013 64KB
- BASIC for Z1013 : utilise la configuration Z1013 64KB et
kc_basic.z80 - ASMDEV for KC85/4 : définit le module M027, l’image
develop.853et la commande initiale - CP/M 2.2 for CPC : charge
6128sp_4.dsk, puis saisit|cpm
Démos Amstrad CPC
-
Premières démos CPC
- DTC
- Tire Au Flan : appuyez sur Espace pour continuer
- Wolfenstrad
- Byte'98
- Ecole Buissonniere
- Demoizart : avertissement stroboscopique
- Logon's Run
- YAP!
- Backtro
- Isometrikum
-
Démo CPC supplémentaires
- SotB Demo : sélectionnez
Preview 1, puis appuyez sur Espace - Points Barres : appuyez sur Espace pour continuer
- Still Rising
- Octopus Pocus
- Gloire a Piou!
- phX / Condense
- Batman Forever
- CRTC
- Wunderbar
- Phortem
- Pheelone
- Phreaks
- Phat 2
- Wobbler
- Battro
- SotB Demo : sélectionnez
Démos Commodore C64 et VIC-20
-
Démos C64
-
Démos VIC-20
- PPY : utilise l’extension
maxram - Muna.Paluu : utilise une extension RAM de 8 KB
- PPY : utilise l’extension
Démos et jeux KC85
-
Démonstrations KC85/4
-
Jeux KC85/3
- Digger : utilise le module M022
- Jungle : utilise le module M022
- Pengo
- House
- Cave
- Version alternative de Cave : une meilleure version alternative
- Labyrinth
- Pacman : saisit automatiquement
PACMAN - Ladder : saisit automatiquement
LADDER - Mad Breakin : utilise le module M022
-
Jeux KC85/4
- Chess : saisit automatiquement
CHESS - Enterprise
- Tetris
- Sokoban
- Chess : saisit automatiquement
Jeux disponibles sur plusieurs plateformes
-
Boulderdash
-
Bomb Jack
-
Cybernoid
-
Série Arkanoid
- Arkanoid for CPC
- Arkanoid RoD for CPC
- Arkanoid RoD for ZX128 : utiliser le joystick Sinclair 1
-
Silkworm
-
Chase HQ
-
Ghosts'n'Goblins
-
Bruce Lee
-
Head over Heels
-
Nebulus
Jeux sur machine unique et jeux d'arcade
-
Arcade et C64
- Pengo Arcade : insérez une pièce avec
1, puis démarrez avec Entrée - Zaxxon for C64
- Dig Dug for C64
- Pengo Arcade : insérez une pièce avec
-
Jeux CPC
- Fruity Frank
- 1943
- Dragon Ninja
- Gryzor
- Astro Marine Corps
- Intern.Karate
- IK+
- Ikari Warriors
- Rick Dangerous
- Prince of Persia
- Live and Let Die : s’exécute avec la configuration CPC464
-
Jeux ZX Spectrum
- Batty for ZX48K
- Great Escape for ZX128 : sélectionnez le joystick Kempston
- Flying Shark for ZX48K : sélectionnez le joystick Kempston
- Cyclone for ZX48k : sélectionnez le joystick Kempston
- Exolon for ZX48k : sélectionnez le joystick Kempston
- Quazatron for ZX128 : sélectionnez le joystick Kempston
- Rainbow Islands for ZX
- Sir Fred for ZX48K : sélectionnez le joystick Kempston
-
KC85/3
- Breakout : saisit automatiquement
BREAKOUT
- Breakout : saisit automatiquement
-
Acorn Atom
- Chucky Egg : démarre avec Espace après
*LOAD - Jet Set Willy : sélectionnez
JOYMMCaprès*LOAD
- Chucky Egg : démarre avec Espace après
-
VIC-20
-
Robotron Z1013
1 commentaires
Avis Hacker News
Les URL avec
-previewont été créées pour tester quelques idées ; ce sont d’anciennes adresses qui n’ont pas été mises à jour depuis 2021. L’adresse actuelle est https://floooh.github.io/tiny8bit/.Au-delà de l’émulation au niveau des broches, ce qui est intéressant, c’est que le CPU avance cycle par cycle. Le CPU ne joue pas un rôle particulier de contrôleur du système, il progresse à chaque tick avec les autres puces. Sur le Z80, au lieu d’avoir une branche par instruction, il y a une branche
switch-casepar cycle d’instruction ; le fonctionnement détaillé est expliqué ici : https://floooh.github.io/2021/12/17/cycle-stepped-z80.htmlÀ l’origine, c’était surtout un projet sur lequel je travaillais pendant les vacances de Noël, et depuis 2023 je n’y ai presque plus touché. Depuis, je me suis surtout contenté de mettre à jour les dépendances sokol et Dear ImGui, et d’ajouter de temps en temps de nouvelles démos publiées sur https://www.pouet.net/ et https://csdb.dk/
Ce projet me fait fortement penser à 0x10c. Je reste fasciné par l’idée d’un univers où existent des mini-ordinateurs virtuels ; j’ai encore en tête quelques concepts mêlant voyage spatial et cyberpunk, avec des éléments de design de puces à la Zachtronics, et même des variantes fantasy.
Cela dit, je n’arrive pas à me défaire de l’impression que c’est un sujet extrêmement de niche. Si ça vous intéresse, on peut en parler ici ou vous pouvez me contacter à l’adresse e-mail de mon profil. Référence : https://en.wikipedia.org/wiki/0x10c
Rien que la question de savoir si les joueurs voudraient vraiment construire eux-mêmes tout le système d’exploitation pour manipuler le matériel du vaisseau spatial est difficile ; ou bien faut-il intégrer un marché logiciel dans le jeu pour acheter et vendre des programmes de contrôle de vaisseau ? Je me demande si quelqu’un construirait vraiment un Windows 3.1 pour DCPU sans aucune récompense.
J’aimerais réussir quelque chose comme ça, mais un jeu open source sorti auparavant descendait jusqu’au niveau du BIOS et c’était beaucoup trop technique pour la plupart des gens. Peu d’utilisateurs auront envie de commencer par travailler sur l’API/ABI juste pour déplacer un vaisseau spatial
J’aime bien l’approche d’émulation au niveau des broches de ce projet. Chaque composant est autonome et modulaire, ce qui apporte beaucoup de flexibilité.
Des interfaces extrêmement fines mais explicitement définies sont peut-être encore un domaine insuffisamment exploré en matière d’interopérabilité. Si les deux côtés échantillonnent les valeurs à des moments définis et ne fournissent qu’un petit nombre de signaux pour l’accès temporel, alors, qu’il s’agisse de broches, de quelques registres ou d’une zone mappée en mémoire, cela devient un excellent sujet pour des tests de conformité.
À l’ère du code généré par l’IA, des composants modulaires assortis d’exigences de conformité explicites peuvent être particulièrement utiles. Peu importe comment l’intérieur de la boîte noire est implémenté, tant que le comportement requis n’est pas violé
En pratique, créer une bibliothèque autonome demande un peu de discipline, et de ne pas suivre trop aveuglément ceux qui prêchent le DRY
J’ai donc aussi ajouté un mode
"soldered"pour gagner en vitesse au prix d’un peu de modularité. Dans ce mode, on ne peut pas détacher le CRTC, et j’ai fini par ajouter également un mode haute vitesse séparé. Malgré tout, l’implémentation au niveau des broches reste très précieuse en tant qu’oracle de vérification permettant de valider l’exactitude à tout moment.Maintenant, j’aimerais construire un port d’extension connecté en USB pour y brancher tout le vrai matériel. Je n’ai pas encore publié le code au niveau des broches, mais il suffit d’attendre environ une semaine
Vraiment génial. Quand j’étais enfant, charger un seul jeu depuis une cassette semblait durer une éternité, et maintenant ça se lance en un instant. J’aimais particulièrement Bruce Lee sur ZX Spectrum
Il faut aussi davantage d’Oric : https://oric.games/
Certains jeux ont un volume assez élevé par défaut. C’est difficile à savoir avant de cliquer sur le jeu lui-même
Ce serait bien de pouvoir régler le volume dans l’interface du site. Le son de certains jeux est beaucoup trop fort
Merci de mettre l’adresse à jour vers https://floooh.github.io/tiny8bit/. C’est l’adresse officiellement liée, elle a déjà été utilisée dans une soumission précédente, et le développeur l’a aussi signalé l’an dernier ici : https://news.ycombinator.com/item?id=43821756
Je me demande où l’auteur de la publication a trouvé cette adresse de prévisualisation, et si elle était liée ailleurs
Ce projet existe depuis au moins 8 ans : https://hn.algolia.com/?query=Tiny%20Emulators&type=story&da...