

        |

Emulateur
Unix (X11, MAC OS X, Linux)
Introduction
Etant donné
que la plupart des ordinateurs grand public (MAC ou PC)
bénéficient
d'une puissance de calcul très importante, il est
intéressant
de l'utiliser pour émuler d'autres machines sans trop de
perte de performance. Le monde MAC utilise le système d'exploitation MAC OS X
intégrant
un noyau UNIX. Ceci le rend compatible avec les stations de travail
SUN et même avec les PC pour peu qu'ils soient
équipés
du système d'exploitation LINUX. Comme APPLE fournit les logiciels de développement
dans
son système d'exploitation, j'ai pu me lancer dans
la réalisation d'un émulateur qui,
après
légère adaptation du script de compilation, s'est
révélé opérationnel sur un PC sous LINUX.
Pour l'interface graphique,
une solution UNIX existe: OpenGL ( http://www.opengl.org/ ). Cette
norme permet
de disposer de routines graphiques très puissantes sur
toute machine UNIX comme une extension du langage C.
Unix (X11, MAC OS X, Linux)
Voici
l'émulateur
du micro système FORTH pour le monde UNIX:
ATTENTION
: ces
logiciels sont
libres de droit et ne peuvent en aucun cas être vendus.
Syst.
d'exploitation
/Ordinateur
|
Logiciel
|
Commentaires
|
OS X/MAC
|
MicroFORTH.dmg |
Application MAC OS X
version 0.97.
(X86 à partir de MAC OS 10.4).
Référencé sur 
|
LINUX/PC
|
MicroFORTH.zip |
Version 0.97.
Il n'est pas nécessaire d'installer Linux sur votre PC. Vous
devez télécharger le CDROM UBUNTU,
décompresser le fichier, aller dans le
répertoire "MicroFORTH" puis lancer la commande "sudo sh
MicroFORTH" dans un terminal.
Testé avec UBUNTU 13.04.
|
Voici
une représentation
graphique
de ce que l'on obtient sous MAC OS X:

Description des
différentes interfaces simulées:
Fenêtre |
Fonctions associées |
Contrôle/Terminal

|
Cette fenêtre contient un terminal
VT100 et une partie contrôle permettant de configurer l'accès aux fonctions de l'émulateur:
- configuration des horloges à l'initialisation,
- poussoir d'initialisation (RESET),
- choix entre PIC24F, PIC24FJ, PIC24HJ, PIC24EP, dsPIC30F, dsPIC33FJ et dsPIC33EP,
- affichage des performances du processeur,
- indication du respect du temps réel,
- affichage du taux d'occupation du processeur hôte,
- affichage du dernier code non valide,
- terminal et téléchargement par RS232 sur cible PIC24F et dsPIC30F fonctionnant avec l'interface correspondant (en cours de test),
- accès aux autres fonctions de
l'émulateur.
|
Entrées sorties
discrètes

|
Emulation des 7 ports d'entrée/sortie A, B, C, D, E, F et G.
Programmables en entrée seule, sortie seule ou entrée/sortie à collecteur ouvert.
Quand le port est programmé en entrée seule, le bouton ne peut pas être manoeuvré.
Voyant allumé si sortie et/ou entrée=1.
|
Configuration

|
Configuration du système à l'initialisation. |
Entrées sorties analogique

| Emulation
des 4 entrées analogiques AN0, AN1, AN2 et AN3 ainsi que les 4 sorties
OC1, OC2, OC3 et OC4 configurées en modulation de largeur d'impulsion
avec un filtre passe-bas.
|
Connexion UARTs

|
Chaque UART
peut être
connectée au TERMINAL de la
fenêtre de contrôle, à un SOCKET (1
à 7) vers un autre
émulateur ou bien à une liaison RS232 physique de
l'ordinateur hôte. |
Afficheurs à cristaux liquides

|
Emulation de deux
afficheurs à cristaux liquides dont chaque signal peut être connecté
sur un bit des ports A, B, C, D, E, F, G ou Z par configuration.
Les signaux RS, RW et DB0 à DB7 sont communs aux deux afficheurs.
L'afficheur du haut est de type graphique avec une matrice de 128x64 pixels constitué de deux NT7108 (ex:
GE-G12864A-TFH-V/RN) avec ses signaux supplémentaires E, CS1, CS2, RST et BL.
L'afficheur du bas est de type alphanumérique avec 2 lignes de 16
caractères constitué d'un KS0070B (ex: Displaytech Ltd 162C series)
avec ses signaux supplémentaires E et BL.
|
Clavier

|
Emulation d'un
clavier de 16 touches dont chaque touche peut être connectée sur un bit
des ports A, B, C, D, E, F, G ou Z et reliée par un OU à diodes sur un
bit des ports A, B, C, D, E, F ou G et sur une des entrées
d'interruption 0, 1 ou 2 par configuration.
|
Port Z

|
Emulation d'un port externe nommé Z afin de permettre l'extension du nombre de sorties des composants en possédant peu.
Ce port possède 16 bits pouvant être utilisés par bloc de 4 avec une
horloge chacun (bits 0 à 3, bits 4 à 7, bits 8 à 11 et bits 12 à 15).
Voyant allumé si sortie = 1. |
|
 |
 |