CP/M for OS X
CP/M for OS X is an emulator dedicated to running software designed for CP/M-80, a historical operating system for microcomputers based on the Z80 processor. Developed in Objective-C, it allows running vintage applications (such as SuperCalc, Turbo Pascal, or Zork) on macOS, accurately reproducing the CP/M environment.
The tool supports practical features: drag-and-drop device mounting, native copy-paste, and a flexible graphical interface. Although initially designed for classic macOS architectures, it remains compatible with recent versions of the operating system, provided the compilation instructions are followed. Its minimalist approach and focus on hardware emulation make it a suitable choice for retro computing enthusiasts.
Last updated:
Platforms
Architecture
Mac OS X - macOS
Apple Silicon
64 bits
Download and links
Version history
v0.7.2
-
Prise en charge officielle de l’Apple Silicon (M1) : Ajout du support natif pour les processeurs ARM (M1 et futurs modèles comme M2/M3), permettant l’exécution sur les Mac récents sans émulation via Rosetta.
-
Compatibilité macOS renforcée :
- Mise à jour pour suivre les évolutions récentes de macOS (notamment les exigences de sécurité).
- Activation du hardened runtime et signature du binaire, rendant l’application conforme aux politiques de sécurité d’Apple (ex : Gatekeeper).
(Aucune correction majeure ou fonctionnalité nouvelle non liée à macOS mentionnée.)
Full changelog
v0.7.1
-
Correction majeure : Résolution d’un bug introduit en 0.7.0 empêchant un grand nombre d’applications de démarrer, notamment via une corruption de l’adresse de saut principale (JMP) à l’adresse 0 due à un débordement dans la boucle d’installation des instructions
JMPdans le BIOS. -
Amélioration technique : Réalignement de l’adresse de démarrage du BIOS sur 256 octets pour une meilleure stabilité.
-
Compatibilité logicielle : Optimisation du BIOS factice pour éviter que des applications comme MBASIC ne détournent les adresses cibles des instructions
JMPdynamiquement (le BIOS commence désormais par une séquence de sauts basiques sans données sensibles). -
Stabilité accrue : Correction d’un problème latent lié à la sélection de l’adresse de démarrage du BIOS en fonction du nombre d’instructions
JMPà stocker, évitant ainsi des conflits avec les versions antérieures.
Full changelog
v0.7.0
- Correction majeure : Alignement du point d'entrée BIOS sur une frontière de 256 octets, résolvant des problèmes d’incompatibilité avec des logiciels comme WordStar 4 et d’autres applications sensibles à cet alignement.
Full changelog
v0.6.3
- Amélioration majeure de la stabilité visuelle : correction d’un problème de calcul d’affichage textuel qui pouvait faire disparaître la dernière colonne et ligne de la sortie, évitant ainsi des artefacts visuels dans les interfaces en mode texte.
(Aucun élément spécifique à macOS ou Apple Silicon dans ce changelog.)
Full changelog
v0.6.2
-
Amélioration majeure : Gestion des périphériques de stockage améliorée, avec une meilleure intégration des disques virtuels et une optimisation des opérations de lecture/écriture.
-
Correction visuelle : Utilisation de la couleur de surbrillance du texte par défaut de macOS pour une cohérence avec l’interface système.
(Aucun changement spécifique à macOS ou Apple Silicon n’est mentionné dans ce changelog.)
Full changelog
v0.6.1
- Correction d’une erreur critique dans le traitement des File Control Blocks (FCB), pouvant empêcher certains logiciels de localiser leurs fichiers (risque de plantages ou de dysfonctionnements).
(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)
Full changelog
v0.6
- Amélioration majeure de l'intégration système : Ajout de la sélection de texte pour les opérations de copie, permettant une meilleure compatibilité avec le presse-papiers macOS (clipboard) et une gestion plus fluide des données entre l’émulateur et l’environnement hôte.
(Aucun élément spécifique à macOS ou Apple Silicon dans ce changelog.)
Full changelog
v0.5.1
- Correction urgente d'une régression critique empêchant la création de fichiers dans le système d'exploitation invité (CP/M), entraînant des plantages ou des comportements indéfinis lors de l'écriture sur disque.
(Aucune mention de nouveautés majeures, de fonctionnalités spécifiques à macOS ou de compatibilité avec les architectures récentes dans ce changelog.)
Full changelog
v0.5
- Correction majeure : Résolution d’un bug critique empêchant la détection correcte des arguments lors du lancement d’applications, évitant ainsi des comportements inattendus (ex. : erreurs de syntaxe ou exécution erronée).
(Aucun élément spécifique à macOS ou Apple Silicon dans ce changelog.)
Full changelog
v0.4
-
Nouveauté majeure : Ajout d’un accès en écriture limité au système de fichiers hôte (macOS), permettant de sauvegarder/modifier des fichiers depuis CP/M. Attention : fonctionnalité expérimentale, non garantie et potentiellement risquée pour la stabilité ou l’intégrité des données.
-
Correction importante : Amélioration des mécanismes de gestion des erreurs pour éviter les plantages lors de tentatives d’écriture non gérées.
(Aucune mention spécifique à macOS/Silicon Apple ou à des builds .dmg dans ce changelog.)
Full changelog
v0.3
-
Nouveautés majeures :
- Ajout d’un icône d’application pour une meilleure intégration dans le Finder.
- Support du glisser-déposer pour plusieurs disques (drag-and-drop), simplifiant la gestion des périphériques virtuels.
-
Corrections importantes :
- Résolution d’un bug critique empêchant le chargement de fichiers dont la taille n’est pas un multiple de 128 octets.
(Aucun changement spécifique à macOS ou Apple Silicon dans cette version.)
Full changelog
v0.2
-
Amélioration majeure : Ajout du support pour l'appel BDOS n°10 (entrée/sortie tamponnée du clavier), permettant une gestion plus fluide des entrées utilisateur dans les programmes CP/M.
-
Correction critique : Résolution d’un problème récurrent où il fallait quitter et relancer l’émulateur pour rouvrir un programme CP/M spécifique, améliorant ainsi la stabilité des sessions.
(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)
Full changelog
v0.1
-
Fonctionnalité expérimentale et non conforme : Première version très préliminaire ne permettant qu’une exécution en lecture seule des applications CP/M, avec une implémentation partielle et non standardisée des appels BDOS et BIOS.
-
Utilisation simplifiée : L’application peut être placée n’importe où sur le système et lancée directement par double-clic sur un fichier CP/M.
-
Absence de support macOS moderne : Aucune mention de compatibilité avec les architectures récentes (Apple Silicon) ou les versions actuelles de macOS, ni de correctifs spécifiques.
Full changelog
Screenshots