1 points par GN⁺ 2025-12-01 | 1 commentaires | Partager sur WhatsApp
  • Mac mini G4 a réussi à démarrer nativement System 7 et Mac OS 8, dépassant la limite qui ne permettait auparavant le boot qu'avec Mac OS jusqu'à 9.2.2
  • En combinant une build fuitée de Mac OS 7.6~8.0 basée sur CHRP (Common Hardware Reference Platform), un patch System Enabler et l'outil de patch de la ROM Mac OS (tbxi), le démarrage d'anciens OS a été réalisé
  • Le développeur Rairii (Wack0) a analysé et fusionné plusieurs versions de ROM pour créer et publier sur GitHub une « super ROM » incluant à la fois toutes les fonctionnalités anciennes et nouvelles
  • Les tests montrent que le boot est stable jusqu'à System 7.5~8.1, même si certaines fonctions comme le son, la vidéo ou le réseau restent inachevées
  • Cette avancée élargit la faisabilité d'exécuter des Mac OS rétro sur les PowerPC Mac basés sur New World ROM, ce qui est un apport majeur pour les communautés de rétro-développement et de préservation

Contexte de l'architecture CHRP et du boot de System 7

  • Le Mac mini G4 utilisait une structure New World ROM qui ne permettait pas de démarrer directement les OS de la famille System 7
    • Les New World ROM exigent un fichier Mac OS ROM au lieu d'une ROM matérielle réelle
    • Les versions antérieures à System 7.6 ne reconnaissaient pas cette structure et ne pouvaient pas démarrer
  • CHRP (Common Hardware Reference Platform) est une architecture commune basée sur PowerPC, et une build de Mac OS 7.6~8.0 a été développée en interne mais n'a jamais été publiée officiellement
    • En octobre 2025, la préservation et la publication de cette build Mac OS pour CHRP ont rendu possible de nouvelles expérimentations
  • En modifiant le fichier System Enabler de CHRP et en supprimant la limite de version de l'OS, l'utilisation du fichier Mac OS ROM devient possible aussi pour les versions plus anciennes comme System 7.5.x

Processus de patch de la ROM et de réalisation du boot

  • Rairii (Wack0) a utilisé l'outil de patch tbxi de la ROM Mac OS d'ELN pour analyser et intégrer plusieurs versions de ROM
    • Il a fabriqué une ROM unifiée restauratrice des fonctions anciennes tout en conservant les fonctions récentes
    • Cela permet le démarrage jusqu'à System 7.5~8.1
  • La ROM et le System Enabler patché sont disponibles en téléchargement via le dépôt GitHub (universal-tbxi-patchset)
  • Les versions de ROM prises en charge sont 10.2.1, 2.5.1 et 1.7.1 ; sur Mac mini G4, un ROM d'au moins la version 9.1 est nécessaire pour la prise en charge du pilote ATA-6

Résultats du démarrage sur Mac mini G4

  • System 6.0.8~7.1.2 : démarrage impossible
  • System 7.5 / 7.5.3 / 7.6 / 8.1 : démarrage et fonctionnement stable
    • Certains panneaux de contrôle (ex. Mouse Control Panel) doivent être désactivés
  • System 7.5.2 : démarre, mais reste instable
  • Mac OS 8.5~9.1 : démarrage impossible, bloqué par une vérification d'ID d'appareil
  • Mac OS 9.2~9.2.2 : fonctionnement totalement normal
  • Certaines fonctions (son, réseau, Apple System Profiler, etc.) restent instables

Application d'une ROM dédiée au Mac mini G4

  • À l'aide des outils tbxi et tbxi-patches d'ELN et du script macmini.py, un patch dédié au Mac mini G4 a été appliqué à la ROM de Rairii (version 10.2.1)
  • Fonctionnement vérifié avec succès dans un environnement Python 3.8.10
  • La ROM finale patchée fonctionne de manière identique sous Mac OS 9.2.2 et prend en charge le démarrage de System 7.5
  • L'ancienne ROM du Mac mini G4 (v9.6.1) faisait du spoofing de l'ID de modèle en tant que G4 Cube, et le nouveau ROM conserve la même méthode

La valeur de l'exécution d'anciens OS

  • Certains logiciels sont uniquement destinés à Mac OS 9.0.4 et versions antérieures ou à System 7, et ne peuvent pas tourner sur les OS modernes
  • System 7.5 est bien plus léger que Mac OS 9 et offre des performances extrêmement rapides
  • Les développeurs et chercheurs peuvent expérimenter directement de vieux API et comportements système
  • Ce projet étend la plage d'exécution des OS rétro sur les PowerPC Mac, en contribuant à l'activité communautaire de préservation

Conclusion et remerciements

  • Ce résultat a été réalisé grâce à la collaboration de membres de la communauté tels que Rairii, ELN et Mac84
  • Il résulte de contributions combinées allant de la préservation des disques CHRP au développement d'outils ROM et au partage de patches
  • Cela ouvre la possibilité que les utilisateurs de Mac G3 et G4 créent chacun leurs propres images de boot personnalisées System 7~8.5 adaptées à leur modèle

1 commentaires

 
GN⁺ 2025-12-01
Avis Hacker News
  • J’ai une petite activité, par passion, qui consiste à vendre des Mac mini G4 restaurés
    Je nettoie entièrement l’intérieur, je les upgrade avec un SSD de 128 Go, j’étends la RAM à 1 Go et je remplace la pile de l’horloge
    J’y préinstalle aussi une version modifiée de Mac OS 9 créée par la communauté Mac OS 9 Lives
    Disponible à l’achat sur mon site os9.shop
    La plupart de mes clients sont de vrais professionnels qui doivent faire tourner d’anciens logiciels — dentistes, cliniques vétérinaires, musées, garages automobiles, etc.
    C’est surprenant de voir qu’en 2025, autant de gens utilisent encore des logiciels Classic Mac

    • Je me demande s’il y a eu des manipulations particulières à faire pour que le SSD fonctionne bien sous OS9
      J’avais installé un SSD sur un iMac G3 à 300 MHz, et l’initialisation au démarrage était longue avec des blocages fréquents
    • C’est plus un projet de curiosité que quelque chose de vraiment pratique
      Faire tourner System 7 « nativement » sur un Mac mini G4 implique qu’il manque beaucoup de pilotes
      La plupart des logiciels fonctionnent mieux sous OS 9.2.2, et pour les cas vraiment exceptionnels, un émulateur comme vMac suffit largement
    • C’est tellement cool que je vais absolument en ajouter un à ma liste de commandes
  • Moi aussi, je pense que Mac OS 9.2.2 est le meilleur OS
    À l’époque, je faisais souvent des prototypes rapides avec HyperCard au travail
    Ça tournait bien sur le Cube, et aussi sur du matériel plus récent via l’émulation d’OS 9
    Les scripteurs HyperCard faisaient des choses formidables que la plupart des utilisateurs d’aujourd’hui ne font pas — et sans énorme datacenter

    • À l’époque où Java s’imposait comme le langage du futur, je créais des outils de développement Java chez KL Group/Sitraka
      Le week-end juste avant la sortie, j’ai fabriqué un assistant de configuration avec Runtime Revolution basé sur HyperCard, et j’ai apporté le produit fini le lundi
      L’entreprise s’est mise en colère à cause de sa philosophie du « nous faisons des outils Java en Java », mais cette version a finalement été distribuée avec succès
      Aujourd’hui encore, faire des outils simples avec Electron et React me semble être un Turing Tarpit
      Lien connexe : LiveCode (company)
    • À cette époque, tout était ultra-réactif. Il n’y avait pas d’animations inutiles
    • HyperCard reste l’un de mes souvenirs Mac OS préférés de toute ma vie
    • Personnellement, j’aime System 6 — on y retrouve pleinement l’esprit du Mac OS classique d’avant System 7
      C’est simple, avec très peu d’abstractions inutiles
    • Tu aimeras peut-être aussi le projet Decker
  • Avec le Python 3.13.9 le plus récent, le script ne fonctionnait pas, donc j’ai réessayé avec Python 3.8.10 et ça a marché parfaitement
    De nos jours, Python supprime souvent d’anciennes fonctionnalités et casse du code existant
    Sujet lié : tbxi issue #1

    • C’est vraiment frustrant. Si je le refaisais aujourd’hui, je l’écrirais probablement en Go
    • Ça me paraît un peu trop catégorique
      MacOS 9 n’est plus officiellement pris en charge depuis 2002, et retirer ce type de fonctionnalité de la bibliothèque standard est raisonnable
      La grande majorité des utilisateurs n’en a absolument pas besoin
      Discussion liée : cpython issue #83534
  • Au début, j’ai cru lire « Mac mini M4 » et j’ai eu un choc

    • Cela dit, ce projet reste très impressionnant
  • La série StarMax (en particulier le 4400) était ce qui se rapprochait le plus du CHRP
    Mon clone PowerCity avait des ports PS/2 et ISA, et faisait aussi très bien tourner BeOS
    Il avait même cette particularité étrange d’émettre un son par le haut-parleur pendant l’exécution des boucles

    • La plupart des systèmes StarMax reposaient sur le design Tanzania / LPX-40
      Ils prenaient en charge des lecteurs de disquettes de type PC, et le PS/2 était converti en périphérique ADB par le microcontrôleur CudaLite
      Je n’ai jamais vu de version avec des slots ISA, mais cela aurait sans doute pu être réalisé avec une puce de pont PCI-ISA
      Document de référence : LPX-40 Dev Note
    • Les systèmes MacOS basés sur CHRP avaient un device tree bizarre mélangeant des périphériques PC et Mac
      La carte Motorola Yellowknife et les systèmes IBM Long Trail étaient similaires
      Tous deux utilisaient un southbridge W83C553 et un contrôleur Super I/O PC87307
      Les schémas de NXP permettent de mieux comprendre l’architecture
  • J’aimerais poser une question à quelqu’un qui voudrait apprendre la structure complexe des PowerPC Mac — où est implémenté le support matériel pour un modèle donné ?

    • Dans des couches empilées comme des cercles concentriques
  • En réalité, ce n’est pas un « démarrage natif » de System 7
    Tous les Mac PowerPC exécutent System 7 via un émulateur
    Cela dit, la tentative reste impressionnante

  • J’utilise un iMac G4 à 1,25 GHz
    À l’origine, c’était un modèle à 1 GHz, mais j’ai remplacé la carte plus tard
    Pouvoir démarrer directement sur OS 9, au lieu du mode Classic d’OS X, serait bien plus efficace,
    mais ce n’est pas officiellement pris en charge sur les modèles 1 à 1,25 GHz
    Je rêve qu’un jour le dual-boot devienne possible

    • En fait, le démarrage d’OS 9 est possible aussi sur cette carte
      Le haut-parleur intégré ne fonctionne pas, mais la prise casque, oui
  • Ce genre de contenu est vraiment génial. C’est exactement le type de sujet qu’on aime voir sur Hacker News

  • C’est impressionnant, mais l’UX des premiers macOS était assez pénible
    Parce que le thread UI s’occupait de tout
    Cliquer puis attendre faisait partie du quotidien

    • Pourtant, l’interface elle-même semblait plus rapide que celle d’un M1 Max Studio actuel
      Il n’y avait presque pas d’animations et les entrées n’étaient pas bloquées
      Les applis qu’on utilisait souvent réagissaient instantanément, comme si la main s’en souvenait
    • Ce qui m’a le plus marqué, ce sont les redémarrages fréquents dus aux plantages d’applications
      Un seul pointeur nul pouvait figer tout le système
    • En réalité, la lenteur venait moins de l’UX que de la quantité de RAM et de la vitesse du HDD
    • Je suis d’accord avec l’idée que « le thread UI faisait tout », mais je me demande alors quelle autre implémentation aurait été possible