Mini vMac

Logiciel capture d'écran:
Mini vMac
Détails logiciels:
Version: 3.5.8 Mise à jour
Date de transfert: 2 Oct 17
Développeur: Paul C. Pratt
Licence: Gratuit
Popularité: 28

Rating: nan/5 (Total Votes: 0)

Mini Vmac est un logiciel graphique open source, gratuit et multiplateforme implémenté en C et conçu à partir du décalage pour agir comme un émulateur pour le système informatique Macintosh Plus créé par Apple, sur les systèmes d'exploitation Linux, BSD, Microsoft Windows et Mac OS X.

Étant l'une des premières machines Macintosh conçues par Apple, Macintosh Plus n'exécute que de vieux logiciels Mac, qui, bien sûr, ne fonctionnent pas sur les ordinateurs Macintosh récents. Par conséquent, le logiciel Mini vMac permet de préserver l'historique. Il a été conçu pour être aussi facile à utiliser, portable et simple que possible.


Premiers pas avec Mini vMac

Pour utiliser l'application Mini vMac sur votre système GNU / Linux, assurez-vous de télécharger le paquet binaire correspondant à l'architecture matérielle de votre ordinateur, enregistrez l'archive quelque part sur votre ordinateur, décompressez-la et double-cliquez sur l'exécutable .

L'application s'ouvrira, vous informant qu'une image ROM du système Macintosh Plus ne peut pas être localisée. Cela signifie que vous devrez également obtenir un fichier vMac.ROM (plus de détails peuvent être trouvés sur la page d'accueil du projet) et placez-le dans le même dossier que l'exécutable Mini vMac.

Après avoir obtenu l'image ROM Macintosh Plus, vous devez fermer le programme et le rouvrir. Si le fichier ROM est valide, le système démarre automatiquement et vous permet de l'utiliser comme tout autre système d'exploitation virtualisé.


Fonctionne sur tous les systèmes d'exploitation traditionnels

Ce logiciel est en réalité un dérivé de l'application vMac, qui n'a pas été mise à jour depuis de nombreuses années. Pour votre commodité, il est distribué en tant que paquets binaires pré-construits pour les systèmes d'exploitation susmentionnés, prenant en charge à la fois les architectures de jeux d'instructions 64 bits (x86_64) et 32 ​​bits (x86).

Le code source de l'application est également disponible en téléchargement, pour ceux d'entre vous qui souhaitent optimiser le logiciel pour une plate-forme matérielle ou un système d'exploitation spécifique.

nouveau dans cette version:

  • Le mini vMac 3.5.8 d'aujourd'hui met à jour la version stable pour résoudre un problème sur PowerPC OS X et corrige également un problème affectant le service de variation. Mini vMac 3.5.8 sur des plateformes autres que PowerPC OS X («mach») et x86-32 OS X («imch»), doit être identique à Mini vMac 3.5.7, à l'exception de la chaîne de version et de la date de modification
  • Il a été rapporté que "Mini vMac 3.5.7 ne fonctionnerait pas sur les systèmes PPC G3". Il s'avère que le drapeau du GCC "-mmacosx-version-min" devrait être spécifié pour tous les fichiers compilés, pas seulement le code dépendant de la plate-forme. Cela affecte des choses comme le processeur requis. Pour que ce changement n'ait aucun effet sur Mini vMac pour x86-64 OS X, il existe un effet pour x86-32 OS X, et le plus grand effet est pour PowerPC.

Quoi de neuf dans la version 3.3.3:

  • Nouvelles fonctionnalités de la compilation par défaut:
  • Plus de systèmes d'exploitation sont officiellement supportés par Mini vMac:
  • FreeBSD sur x86-32 (en utilisant "-t fbsd" dans le système de compilation)
  • FreeBSD sur x86-64 ("-t fb64")
  • OpenBSD sur x86-32 ("obsd")
  • OpenBSD sur x86-64 ("ob64")
  • NetBSD sur x86-32 ("-t nbsd")
  • NetBSD sur x86-64 ("-t nb64")
  • Libellule BSD sur x86-32 ("dbsd")
  • Dragonfly BSD sur x86-64 ("-t db64")
  • OpenIndiana sur x86-32 ("-t oind")
  • OpenIndiana sur x86-64 ("-t oi64")
  • Linux sur ARM ("larm")
  • Linux sur SPARC ("-t lspr")
  • Minix 3.2 ("-t minx")
  • Ces ports adaptent le même code X Window que le port Linux, et devraient avoir la même fonctionnalité, sauf pour le moment pas pour certains. Les versions x86-64 sont actuellement plus lentes, faute de modification du langage d'assemblage, et ne devraient pas être utilisées si les versions x86-32 fonctionnent.
  • Les versions X peuvent maintenant jouer du son en utilisant l'API Open Sound System (OSS). (Utilisant généralement des implémentations compatibles sur chaque système d'exploitation, plutôt que l'OSS lui-même.) Le son est maintenant activé par défaut sur FreeBSD et NetBSD. Le son compile sans problème (en utilisant "-sound 1") sur Dragonfly BSD et OpenIndiana, mais je n'ai pas encore pu les tester. Obtenir du son sur Dragonfly BSD semble nécessiter une configuration manuelle. OpenIndiana ne semble produire aucun son dans VMware Fusion. Le son compile également sans problème sur OpenBSD, mais cela ne fonctionne pas - le réglage du taux d'échantillonnage souhaité échoue. Minix ne semble pas encore supporter le son. Il est également possible d'utiliser l'API OSS sous Linux, en utilisant le nouveau "-snd-api" construire l'option système.
  • Les versions X vont maintenant essayer de regarder dans le dossier contenant l'application pour l'image ROM, comme la version Macintosh et Windows. (Et aussi pour disk1.dsk et ainsi de suite.) Si le répertoire d'application ne peut pas être déterminé, le répertoire courant est utilisé comme précédemment. Ceci est implémenté pour Linux, FreeBSD, NetBSD, Dragonfly BSD et OpenIndiana, mais pas OpenBSD et Minix.
  • Les versions X ont maintenant une nouvelle option de ligne de commande -d [chemin_répertoire], dans laquelle [chemin_répertoire] est utilisé à la place du répertoire de l'application lors de la recherche de l'image ROM et des fichiers disk1.dsk et ainsi de suite .
  • Les versions X ont maintenant une nouvelle option de ligne de commande "-n [app_name]", dans laquelle [app_name] est utilisé à la place du nom de l'application pour le titre de la fenêtre Mini vMac.
  • Les versions X prennent désormais en charge un dossier ROM central comme les versions Macintosh et Windows. Si "~ / .gryphel / mnvm_rom" existe, Mini vMac va chercher là pour l'image ROM. Si ce n'est pas le cas, il apparaîtra dans le répertoire de l'application. (Et l'option de ligne de commande -r remplacera les deux.)
  • Comportement modifié dans la compilation par défaut:
  • Dessiner l'écran émulé sur l'écran réel est plus efficace. Lorsque la profondeur de couleur est de 4 bits ou moins, au lieu de convertir chaque pixel, il existe une table avec 256 entrées pour convertir un octet à la fois. Il est également plus prudent de ne convertir que les pixels du rectangle délimitant la zone modifiée plutôt que l'intégralité de l'écran.
  • La version Linux charge dynamiquement la bibliothèque ALSA pour que le son soit lu, de sorte que Mini vMac fonctionnera toujours, sans son, même si ALSA n'est pas installé. (Cette technique a été vue dans SDL.) Donc, par défaut, la version de Linux est maintenant compilée avec le son, correspondant aux versions Mac et Windows.
  • Dans la version Linux, lors de la lecture du son avec ALSA, snd_pcm_delay n'est plus appelé. Le délai jusqu'à la lecture d'un échantillon n'est pas vraiment pertinent. Ce que Mini vMac a besoin de savoir, c'est le temps d'amortir le sous-dépassement. Ainsi, Mini vMac considère maintenant la taille de la mémoire tampon moins l'espace disponible dans la mémoire tampon, ce qui peut s'avérer plus utile, afin d'éviter le sous-dépassement de la mémoire tampon tout en minimisant la latence.
  • Les versions X utilisent maintenant le verrouillage de consultation pour refuser d'ouvrir une image de disque qui a été ouverte pour l'écriture par une autre copie de Mini vMac. Auparavant, les versions X de Mini vMac pouvaient ouvrir une image disque déjà ouverte, susceptible de corrompre l'image. Si Mini vMac peut uniquement ouvrir une image disque en lecture seule, par exemple parce que l'utilisateur a verrouillé le fichier, le verrou de consultation n'est pas utilisé et plusieurs copies de Mini vMac peuvent l'utiliser.
  • Les versions X essaient maintenant d'utiliser le nom de l'application pour définir le titre de sa fenêtre, comme les versions Macintosh et Windows. (Si le nom de l'application ne peut pas être déterminé, "Mini vMac" est utilisé comme précédemment). Il se trouve en même temps que le répertoire de l'application et est implémenté pour les mêmes systèmes d'exploitation.
  • Les arguments de la ligne de commande sont maintenant analysés avant de rechercher les fichiers disk1.dsk et ainsi de suite. Ceci est nécessaire pour le nouveau "-d" option de travail, et a l'effet secondaire que si les images disque sont spécifiées sur la ligne de commande, ils seront ouverts en premier. S'il y a des images sur la ligne de commande, Mini vMac ne cherchera plus du tout le fichier disk1.dsk.
  • Le "-l" (ou "/ l" sous Windows) l'option de ligne de commande est supprimée. La vitesse de "z" l'option du système de construction doit être utilisée à la place. L'option de ligne de commande existait avant l'existence du système de construction et la décision de favoriser les options de construction sur les options d'exécution.
  • Corrections de bogues dans la compilation par défaut:
  • La version Windows mappe maintenant la touche Entrée du pavé numérique sur la touche Macintosh Entrée. Il peut maintenant distinguer cette touche de la touche Entrée du clavier principal, qui est mappée à la clé de retour Macintosh. Il n'y avait auparavant aucun moyen de taper la touche Entrée Macintosh. Grâce à "Alex" pour avoir signalé ce problème.
  • Dans la version Windows, en mode plein écran, la vérification de la présence d'une clé désactivée est incorrecte. Donc, les clés potentielles auraient pu être ignorées quand elles n'auraient pas dû l'être. J'ai supprimé le chèque, car il n'est pas clair comment le faire correctement (en utilisant un «crochet de clavier de bas niveau»). Cela n'affecte pas l'émulation Macintosh, car il existe un contrôle supplémentaire pour les événements redondants. Cela peut affecter le mode de contrôle, par exemple lorsque vous maintenez Control-M.
  • La version de Windows répond maintenant au message WM_QUERYENDSESSION, de sorte que si vous essayez d'éteindre votre ordinateur avec Mini vMac en cours d'exécution (avec des images disque montées), Mini vMac se plaindra et arrêtera la fermeture.
  • Dans la version Linux, en utilisant ALSA pour jouer du son, snd_pcm_start a été appelé avant de placer des échantillons sonores dans le buffer ALSA. Cela pourrait causer un bégaiement au début ou, selon un rapport, empêcher le son de fonctionner du tout. Mini vMac attend maintenant jusqu'à ce que sa mémoire tampon privée soit pleine, puis transfère autant que possible dans le tampon ALSA, puis démarre le son.
  • Quand la version de Linux est compilée pour ARM, il inclut une vérification que le résultat de snd_pcm_avail_update semble raisonnable, et sinon appelle snd_pcm_status_get_avail à la place. Cela fonctionne autour de ce qui semble être un bug dans Raspbian pour le Raspberry Pi.
  • L'horloge émulée n'était pas correctement initialisée et n'était correcte qu'après le premier "second" interrompre.
  • Si l'écran émulé est trop grand pour tenir sur l'écran réel (lorsque le défilement automatique est disponible), si la zone de l'écran émulé qui a changé ne croise pas la zone visible de l'écran émulé, un rectangle non valide utilisé pour dessiner. Je l'ai découvert en essayant Vector Linux 7, qui semble avoir des vérifications de débogage supplémentaires.
  • Dans des circonstances improbables, en mode plein écran, le défilement automatique peut ne pas défiler pour montrer la dernière rangée de pixels en bas ou la dernière colonne de pixels sur la droite.
  • Si l'ordinateur hôte n'est pas assez rapide pour que Mini vMac fonctionne à 1x vitesse, alors Mini vMac ne fonctionnerait pas correctement, s'arrêtant quelques secondes de temps en temps. Le test de cette situation était incorrect et un compteur à un octet débordait. (Avoir de tels compteurs aussi petits que possible facilite la détection des bogues comme celui-ci.)
  • Dans les versions X Window de Mini vMac, lors de l'utilisation de l'extension Mini vMac pour créer un fichier sur le système hôte, par exemple avec ExportFl, une boîte de dialogue de sauvegarde n'est pas implémentée. Auparavant, le fichier serait simplement créé dans le répertoire de l'application avec le nom demandé. Ce n'était pas sûr, au pire cela permet à un programme fonctionnant dans Mini vMac de remplacer l'application Mini vMac. Ainsi, les fichiers seront créés dans un dossier nommé & quot; output & quot; dans le répertoire contenant l'application. Ce dossier sera créé s'il n'existe pas.
  • Dans la version Microsoft Windows, si un chemin vers une image disque est transmis à Mini vMac sur la ligne de commande qui est plus longue que ce qui est légal pour un chemin, il en résulte un débordement de la mémoire tampon.
  • La version Windows CE a souffert de la pourriture. Il compile maintenant et fonctionne au moins sur l'émulateur de périphérique Microsoft avec Windows Mobile version 5.0. Je n'ai aucune idée si cela fonctionne sur du matériel réel. Quelqu'un s'en soucie? (Windows Mobile a été interrompu et remplacé par Windows Phone). Ce port commençait à interférer avec la maintenance de la version principale de Windows, et le choix était de le supprimer entièrement ou de le rendre maintenable.
  • Nouvelles fonctionnalités non compilées par défaut:
  • La nouvelle option de système de construction "-lt" permet l'émulation LocalTalk de Mike Fort. Il y a actuellement quelques limites. Il n'est implémenté que pour OS X. Il faut exécuter la commande "sudo chmod ugo + rw / dev / bpf *". pour permettre à Mini vMac (et à tous les autres) d'accéder à tout le trafic réseau. Le "-lt" option permet également à Mini vMac de s'exécuter en arrière-plan par défaut, car Mini vMac ne peut pas être un nœud LocalTalk correct s'il n'est pas en cours d'exécution. Et vous devez activer manuellement AppleTalk dans le sélecteur - Je peux définir les drapeaux PRAM pour démarrer avec AppleTalk déjà activé, mais cela ne fonctionne pas correctement.
  • Une nouvelle option de système de construction & quot; -lang pol & quot; sélectionne une traduction polonaise de l'interface utilisateur par Przemyslaw Buczkowski.
  • Les versions X ont un support initial pour la couleur (pour l'émulation Mac II). Jusqu'à présent, la version X ne supporte que les 24 bits "TrueColor", et a quelques autres limitations sur le format. Je doute que tout autre chose que TrueColor soit utilisé sur les machines modernes, et donc ne supportera probablement pas les autres options. D'autres profondeurs telles que 15, 16 et 32 ​​bits peuvent être utilisées et donc probablement supportées, si je peux trouver un moyen de les tester.
  • Une nouvelle option de système de construction & quot; -mf & quot; permet de modifier le grossissement par rapport à la valeur par défaut 2. Par exemple, "-mf 3" règle l'agrandissement à 3. L'option "-mf 1" désactive le grossissement (suppression de la commande Control-M). Le facteur d'agrandissement doit être un entier.
  • Comportement modifié non dans la compilation par défaut:
  • La profondeur de couleur par défaut pour l'émulation Mac II est "-depth 3" au lieu de "-depth 0".
  • Pour l'émulation Macintosh II, AutoSlow est maintenant désactivé par défaut & quot; -as 0 & quot ;. AutoSlow peut nécessiter un réglage supplémentaire pour bien fonctionner avec l'émulation Mac II.
  • Dans les versions X, les résultats de fwrite et fread sur les images disque sont maintenant vérifiés pour les erreurs, ce qui arrête les avertissements de compilation dans Ubuntu récent.
  • Les corrections de bogues ne sont pas dans la compilation par défaut:
  • Correction d'un bug dans l'instruction DIVS.L signalée par "AP". (Instruction 68020 utilisée dans l'émulation Mac II).
  • Correction de l'instruction BFFFO, qui était complètement interrompue, comme indiqué par "AP". (Une autre instruction 68020 utilisée dans l'émulation Mac II.)
  • Les opérations de champs de bits sur un registre utilisent maintenant la rotation plutôt que le décalage. Les bits sélectionnés peuvent être non contigus, comme indiqué par "AP", et confirmés par la documentation. (Les champs d'opérations binaires ont été ajoutés dans le 68020).
  • Les opérations sur les champs de bits sur la mémoire essaient maintenant de fonctionner uniquement sur autant d'octets que nécessaire. Auparavant, il fonctionnait toujours sur 5 octets, ce qui pourrait avoir des effets indésirables en cas de fonctionnement sur un dispositif mappé en mémoire, comme indiqué par "AP".
  • Le code "MoveP.L, Dn" instruction mélangeait l'ordre de décalage et de masquage, et était donc complètement cassé, comme indiqué par "AP".
  • Le piratage qui autorise de grandes quantités de RAM vidéo dans l'émulation Macintosh II ne fonctionnait pas correctement, car un tableau utilisé pour la traduction de l'espace d'adressage dans l'émulation CPU n'était pas suffisamment alloué. Le système de construction choisit maintenant la taille de l'allocation. (Ce problème a été observé pour 1024x768 avec des millions de couleurs.) Plus de détails: Chaque carte NuBus obtient seulement 1M d'espace d'adressage lorsque l'ordinateur est en mode 24 bits. Et un Mac II semble généralement dessiner en mode 24 bits. Quand plus de RAM vidéo est nécessaire pour les options de temps de compilation demandées, Mini vMac utilise l'espace d'adressage des emplacements NuBus adjacents.
  • Fixed & quot; -min-extn & quot; option de construction dans la version Linux.
  • Système de construction:
  • Ajout de l'option de système de construction "-api cco & quot; pour utiliser l'API Cocoa d'Apple pour OS X plutôt que l'API Carbon dépréciée. Mais le port Cocoa de Mini vMac n'est pas encore considéré comme prêt à être officiellement supporté, donc la version Carbon est toujours utilisée.
  • Ajout de l'option de système de construction & quot; -api sdl & quot; pour utiliser l'API Simple DirectMedia Layer 1.2. Cela a été ajouté comme un tremplin vers le port Cocoa - en combinant le code source pour SDL avec le code source pour un port SDL de Mini vMac, puis en supprimant tout ce qui n'est pas nécessaire, puis beaucoup de nettoyage jusqu'à ce qu'un Cocoa natif initial port a émergé. Cependant, le port SDL peut être utilisé tel quel pour accéder à d'autres plates-formes prises en charge par SDL. Mais ce n'est pas (encore) officiellement pris en charge.
  • Ajout de l'option de système de construction & quot; -t mx64 & quot; pour l'implémentation X11 d'Apple sur x86-64. (Auparavant, x86-32 et PowerPC étaient pris en charge.)
  • Ajout de l'option de système de construction & quot; -t cygw & quot; pour Cygwin / X pour Microsoft Windows. Cygwin peut également être utilisé pour compiler la version standard de Microsoft Windows avec "-t wx86 -e cyg".
  • Ajout de l'option de système de construction & quot; -t irix & quot; pour IRIX par Silicon Graphics, Inc., grâce à John Perkins.
  • MinGW peut être utilisé pour compiler Mini vMac avec l'option de système de construction "-t wx86 -e mgw". Depuis Bloodshed Dev-C ++ est basé sur MinGW, "-t wx86 -e dvc -cl" donnerait auparavant des résultats similaires.
  • Changement de l'ordre des arguments à la commande link lors de la construction de la version Linux. Il s'avère qu'il y a un ordre conventionnel pour la façon dont les bibliothèques devraient être spécifiées, que je ne connaissais pas puisque je n'étais pas passé par un éditeur de liens qui se souciait jusqu'à Ubuntu 11.10.
  • Le système de compilation devrait maintenant fonctionner correctement dans d'autres émulateurs tels que SheepShaver. Il a été rapporté de façon anonyme que le système de compilation écraserait les émulateurs. Le test pour savoir si le système de compilation fonctionnait dans Mini vMac (afin que l'archive résultante puisse être exportée vers l'hôte) n'était pas assez bon.
  • Le système de compilation supprime maintenant les messages d'avertissement générés lors de la compilation de l'émulation Macintosh II avec Microsoft Visual C ++, grâce à un rapport de William Grana.

Captures d'écran

mini-vmac-220691_1_220691.gif
mini-vmac-220691_2_220691.gif

D'autres logiciels de développeur Paul C. Pratt

Mini vMac
Mini vMac

4 May 20

Commentaires à Mini vMac

Commentaires non trouvées
Ajouter un commentaire
Tourner sur les images!