Catalog · How the catalog works
cpm-jeux
Jeux originaux en assembleur Z80 pour CP/M, en francais (VOF) - Zudoku: sudoku a unicite prouvee, teste sur un vrai RC2014
- ★ 1 on GitHub
Anyone may press Interesting, signed in or not. It helps others find this project.
README
cpm-jeux
Une collection de jeux originaux en assembleur Z80, pour CP/M — pensés pour le RC2014 ("Zed Pro II") et testés d'abord via un émulateur (RunCPM) avant le vrai matériel.
Pourquoi ce dépôt existe
Ce projet est né en marge de Zorton Utilities (la suite login/menu/outils pour CP/M), mais vit séparément parce que son public et son objectif sont différents : pas de l'infrastructure de développement, mais du contenu à partager.
Trois raisons d'être, à parts égales :
- Apprendre l'assembleur Z80 en construisant quelque chose de concret et amusant, pas juste des exemples abstraits.
- Alimenter le livre de Richard Murray sur la construction d'un RC2014 Zed Pro II, avec du vrai code testé plutôt que des extraits théoriques.
- Contribuer à la communauté RC2014/rétro-informatique, dans l'esprit
Linux : prenez, utilisez, améliorez, redonnez. Sous licence MIT (voir
LICENSE) — permissive, pas de restriction sur la réutilisation.
Zudoku — le premier jeu, terminé et prouvé sur le vrai fer
Un sudoku en assembleur Z80, en version originale française, joué sur un RC2014 Zed Pro II réel à 7,37 MHz :
- Unicité garantie et prouvée : chaque grille générée a exactement une solution. Validation croisée par un solveur indépendant écrit en Python — 30 grilles sur 30 uniques, comptes de données exacts par niveau (Facile 46, Normal 36, Difficile 26). Deux implémentations qui se donnent raison : c'est ça, une vérification.
- Solveur optimisé MRV (case au moins de candidats d'abord) : la génération Difficile est passée de 2-3 minutes à 33 secondes sur le matériel réel, avec une roulette d'activité pour ne jamais laisser l'écran muet.
- Sauvegarde/reprise de partie, redessin minimal de l'écran (56 octets émis au lieu de ~7000 pour une vérification), interface aux flèches.
Écrit avec Claude (Anthropic) comme co-auteur, dans la méthode du projet Zorton : mesure avant constante, preuve avant déploiement — voir les études de cas.
ZBloc — le jeu de blocs qui tombent (v0.3, 2026-08-18 : moteur + 3 habits)
Un moteur, quatre habits (cosmétiques) : 1 l'original de 1984 (crochets
[ ], 80×24, noir et blanc, look Elektronika 60), 2 ANSI vintage 80×24
(cadre, rôles et barre des touches de la norme ZIHM — traits CP437 sur le
PicoTerm, ASCII ailleurs), 3 ANSI moderne 128×48 (PicoTerm : cellules
4×2 en couleur — nos teintes —, pièce FANTÔME = où elle atterrira) et
4 mode jeu graphique du PicoTerm (à venir). Puits 12 × 20 (le nôtre),
sept tétrominos (objets mathématiques), rotations et « coup de coude » à nous,
code écrit de zéro. ZBloc n'est pas Tetris : c'est un hommage libre —
F1 raconte l'histoire de Pajitnov. Score 10/30/60/100 × niveau, un niveau
tous les 10 lignes ; +/- au titre = niveau de départ. Gravité cadencée aux
sondes clavier (1/64 s), calibrée sur l'horloge temps réel quand elle bat ; le
temps de redessin compte comme du temps (une console lente ne gèle plus la
chute) ; une rafale de touches = un seul redessin ; ZBLOC n force n sondes
par tic (labo RunCPM : ZBLOC 1500, ZBLOC 1500 G force 128×48, touche de
banc !). Le hasard est salé par le temps de réaction au titre (vrai hasard
même sans horloge). Les notes (« n'est pas Tetris », la trame fantôme, le titre
de l'habit 1) s'effacent après quelques secondes.
Prouvé au labo (labo_zbloc.py habits 1-2, labo_zbloc3.py habit 3 avec
runcpm_server.py 9999 48 128) et sur le vrai fer (Zed II + PicoTerm
128×48, 2026-08-17/18 : habits 1 et 2 jugés « parfait » et « super » par
Richard ; l'habit 3 corrigé le 18 reste à juger). S'assemble avec ZIHM.Z80
de l'atelier (licence Zorton, non incluse ici — la licence de l'ensemble est
à trancher avant publication).
Jeux prévus
Voir docs/00-cahier-des-charges.md pour
le détail et l'état d'avancement de chaque jeu.
- Zudoku — un Sudoku original pour Z80/CP/M (inspiré de l'esprit de Nudoku, le Sudoku en mode texte pour Linux — mais pas son code, voir la note de licence dans le cahier des charges). En conception, pas encore commencé.
- Mots cachés — idée, pas encore conçu.
- Scrabble — idée, pas encore conçu.
Style commun
Ces jeux réutilisent le "standard" visuel déjà établi dans
pico-cpm-bridge : fenêtres en caractères CP437 (bordures à double
trait), palette de couleurs sur fond noir, navigation aux flèches plutôt
qu'au clavier lettré. Pas de duplication de code entre les deux dépôts
pour l'instant (chacun a ses propres routines) — à revisiter plus tard si
un vrai besoin de partage de code entre les deux projets se confirme.

