Projet
MonsterBook
Par
Les Chevaliers de Malte
Date de création:
1990 (Alpha MalteBook)
1994 (Bêta MonsterBook)
Auteur/Concepteur/Programmeur
du projet:
Sylvain
Maltais
Table des matières
Table des matières
1. Manifeste du Projet 5
Le traitement de texte 9
Le chiffrier électronique (tableur) 9
Le programme de dessin bitmap 14
Le programme de dessin technique 15
La base de données 15
Le gestionnaire de fichiers 15
Le gestionnaire de programmes 16
Les applications terminal 18
Les outils de programmeurs 21
Les accessoires supplémentaires 22
La sécurité 22
L'environnement 23
2. Spécifications technique 25
Système d'exploitation 26
Noyau 27
Ressources 27
Système de compatibilité 29
Lancement 29
Environnement système 35
Environnement des périphériques 37
Gestionnaire de fichiers 42
Environnement graphique 43
Traitement de texte 45
L'instruction PageFormat 50
Les instructions Put et PutLn 50
Chiffrier électronique (tableur) 50
Programme de dessin technique 51
Applications terminal 52
Outils programmeurs 52
Gestionnaire de programmes 54
Navigateur HTML (Gestionnaire de programmes) 54
Accessoires supplémentaires 55
3. Programmation du projet 56
Les routines de détection 57
Détection du CMOS 60
Les fichiers 61
ShortBF 61
Les polices de caractères 62
Les pays et les régions 62
Les bases de données 67
Le traitement de texte 67
Le tableur 72
Annexe A: Les abréviations interne de programmation du projet 79
Annexe B: Les répertoires attribués au projet 83
Annexe C: Les répertoires des bases de données 85
Annexe D: Les principaux fichiers de code sources 87
Annexe E: Structures des fichiers 89
Base de données serveur de format Mentronix 89
Table de base de données de format Mentronix 90
Structure d'un fichier dBase III+ 91
Base de registres de format Malte Genesis IV: Chantal 92
Document de format GAT 93
Document de format Premier Choix (First Choice) 94
Structure d'un fichier tableur MGC 95
Définition d'une cellule vide 95
Définition d'une cellule à valeur numérique 96
Définition d'une cellule texte 96
Définition d'une cellule de formule 97
Définition d'une cellule de formule avec décimal 97
Structure d'un fichier image BGX (Bitmap Genesis graphiX) 98
Structure d'un fichier image Bitmap Windows 98
Structure d'une image d'impression GPX 99
Structure d'un fichier image Gem/Img Ventura 99
Structure d'un fichier image LBM 100
Structure d'un fichier d'image Targa 101
Structure d'un fichier d'image GIF 102
Annexe F : Code d'erreurs 104
Erreur de compilateur 111
Erreur de format 114
Erreur de compression du format de fichier ZIP 114
Erreur interface 115
Erreur d'installation d'interface 116
Erreur d'appel d'application externe 116
Erreur application 116
Index 118
Chapitre 1
Manifeste du Projet
1. Manifeste du Projet
Étant jeune, je lisais des bandes dessinés comme Astérix. Je trouvais ces personnages rigolos et amusant face à un envahisseur roman. Ils refusaient toujours de faire partie de l'empire Roman quoi qu'il arrive et ils trouvaient immanquablement une solution afin de se sortir de leur mauvais pas. De la même manière, je me voyais confronter à quelques choses dont je n'avais pas réaliser l'ampleur à cette époque: Le monde fabrique tout en anglais. Les romans d'autrefois sont maintenant les anglais d'aujourd'hui! Ainsi, se manifeste fut tout d'abord une cause désespérée afin de renverser ce problème. Bien qu'il n'y a pas encore arriver a être développer entièrement en français, mais dans ses instructions du code source à 100%, il est d'abord développer en français.
Ensuite nous nous rendâmes compte qu'un point s'incrustait de plus en plus dans le domaine de l'informatique. A l'image exacte du mari de madame Bauvary, une médiocrité très profonde s'installa de plus en plus. L'impérialisme anglais, n'est pas le seul empire dont ce manifeste tant à braver, il y a en plus celui d'un système travaillant contre son utilisateur: truffer de “bug”, éloignant toujours plus les utilisateurs de son noyau (désinformant), gros, lent, inefficace, partie manquante, sans ressource de réparation,...
Ayant pour base toutes les raisons cité plus haut, ce projet a donc pour but d'offrir un ensemble complet permettant l'exploitation total de la machine sans passer par aucune autre application, logiciel, progiciel ou système d'exploitation existant. Il pourra cependant fonctionner sous un système d'exploitation compatible au DOS ou sans lui. La machine requise pour faire fonctionner ce projet devra être n'importe quel micro-ordinateur basé sur un processeur de la famille 8086.
Noyau
Système d’exploitation
Base de données globale Mentronix
Environnement graphique
Application
Caméléon
Premièrement, on retrouvera donc un noyau offrant des possibilités comparable à un système d'exploitation DOS. Donc essentiellement centrer sur des possibilités de gestion des fichiers et de la mémoire. Ceux-ci étant naturellement disponible comme base a partir du DR-DOS, FreeDos, MS-DOS 2.0 ou postérieur, Windows 3.1, 3.11, 95, 98, 98SE, Me, NT et 2000, OS/2 et DOSEmu de Linux. Ce noyau offrira la possibilité de démarrer à partir d'une partition primaire ou logique, aussi bien sur une FAT12, FAT16, FAT32 ou HPFS. Le noyau devra charger les routines appropriés correspondant à la capacité du microprocesseur, ainsi il devra charger des routines de transfert et d'effacement de 32 bits si un CPU 80386 ou postérieur est installé, et une simple routine 8 bits dans le cas d'un CPU 8088.
Deuxièmement, l'environnement graphique sera tant qu'à elle une application complète de format exécutable. On retrouvera à ce niveau la plus grande partie du projet le MonsterBook à proprement parler. Celui-ci offrir une grande flexibilité d'environnement, c'est-à-dire qu'il pourra prendre la forme d'un bureau Windows 9X, OS/2 Warp 3 ou 4, StarOffice, Linux, Amiga,...
Le fonctionnement de l'environnement graphique du MonsterBook sera de son côté en liaison constante avec une base de données global fournissant des informations de conformité au matériel, aux possibilités particulières de l'application et aux ajouts éventuel a être intégrer au noyau. Ce compromis quoi habituellement très onéreux en terme d'espace disque devra être orientée de façon particulière afin de ne pas être un confronter à une application de 500 Ko brancher sur une base de données de 20 Mo. Elle devra donc être optimiser au niveau de l'espace et offrir des supports important au niveau des enregistrements de taille irrégulière.
Et enfin troisièmement, les applications seront de leurs côtés totalement intégrer à l'environnement graphique au niveau de l'exécutable de programme mais toutefois écrit de façon particulière à l'intérieur de celui-ci. En fait, ils seront gérer sur un concept de recouvrement (overlay) et ne seront donc pas charger automatiquement en mémoire, ceci afin d'économiser le temps de démarrage sur les machines très lentes.
Les applications seront regrouper sous les catégories suivantes: traitement de texte (comprenant toutes les applications possible pouvant être effectuer avec du texte, aussi bien le code source, éditeur HTML, éditeur de mise en forme,...), le gestionnaire de fichiers, le chiffrier électronique (tableur), base de données (avec support de langage SQL-92), application terminal (prompt DOS, shell Unix, VAX,...), programme de dessin bitmap et programme de dessin technique, gestionnaire de programmes (comprenant naturellement le panneau de configuration et le menu déroulant à la Windows 9X sans oublier la fenêtre de dossier de répertoire à l'explorateur), système de son.
On pourra à l'aide de l'environnement graphique lancer des clones d'application existante, comme par exemple au lieu du Norton Commander, on lancera Clone Commander, une copie pratiquement conforme de celui-ci. Ainsi, on pourra lancer également un CuteHTML reprenant les critères du programme de même nom! Il ne s'agira pas d'application complètement reprogrammer à l'intérieur du MonsterBook mais plutôt d'une application interne existante avec des paramètres adaptable au besoin pour atteindre l'apparence de ceux-ci. De cette façon, l'application principal ne grossira pas vraiment et ne dépaysera pas trop l'utilisateur pour autant!
Le traitement de texte
Le traitement de texte devra s'adapter aux nombreuses situations. Tout d'abord, il devra offrir la possibilité d'un filtre d'entrée pour le chargement d'information de format concurrent (Premier Choix, Professionnal Write, RTF, HTML, Word,...), d'un filtre de sortie pour la sauvegarde dans un format de fichier étranger et en plus un filtre interne visant à offrir la conversion de type de police de caractère de format ANSI par exemple à ASCII. En plus, il devra être capable de lire et d'éditer les codes sources Ada, Assembleur, Basic, C/C++, Cobol, Euphoria, Fortran, Java, Pascal, PL/1, SQL et de les afficher en mode typer. A se niveau, on devra donc intégrer des propriétés pour obtenir des applications comparables à Netscape Composer renommer Clone Composer, CuteHTML, Word Perfect, Microsoft Office.
Étant donnée le trop grand nombre d'espace consommer par un simple plan d'électronique mais pourtant avec son nombre réduit de caractère spéciaux, il faudra ajouter un support de police de caractères supplémentaire permettant l'édition de ceux-ci à l'intérieur d'un traitement de texte sans toutefois que le traitement de texte se laisse transparaître par sa forme...
Un système de base de données de mots devra servir d'outil de base à des mécanismes de correction ou de dictionnaire.
Il faudra aussi offrir la possibilité d'intégrer un mot de passe à un document afin de protéger certains document juger secret ou personnel.
Le chiffrier électronique (tableur)
Le chiffrier électronique aussi connu sous le nom de tableur devra offrir la possibilité de manipuler des chiffres sous toutes ses formes possibles, il devra également être muni de possibilitées supplémentaires lui donnant accès a de la compréhension des chaînes de caractères pour effectuer des estimations à partir de ceux-ci en autre. Il devra bien entendu offrir un support de formule compatible à Lotus 1-2-3, Quattro Pro ou Excel. Voici donc les différentes formules supportées:
Fonction |
Paramètres |
Compatibilité |
@ABS |
N |
Quattro Pro, Lotus 1-2-3 |
@ACOS |
N |
Quattro Pro, Lotus 1-2-3 |
@ACTUEL |
|
Quattro Pro, Lotus 1-2-3 |
@ALEAT |
|
Quattro Pro, Lotus 1-2-3 |
@AMORANN |
N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@AMORDEG |
N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@AMORLIN |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@AMORT |
N,C |
Quattro Pro, Lotus 1-2-3 |
@ANNEE |
N |
Quattro Pro, Lotus 1-2-3 |
@ARRONDI |
N,N |
Quattro Pro, Lotus 1-2-3 |
@ASIN |
N |
Quattro Pro, Lotus 1-2-3 |
@ATAN |
N |
Quattro Pro, Lotus 1-2-3 |
@ATAN2 |
N,N |
Quattro Pro, Lotus 1-2-3 |
@AUJOURDHUI |
|
Quattro Pro, Lotus 1-2-3 |
@BCOMPTE |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@BMAX |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@BMIN |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@BMOYENNE |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@BSOMME |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@BSTD |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@BSTDS |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@BVAR |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@BVARS |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@C |
C |
Quattro Pro, Lotus 1-2-3 |
@CAR |
N |
Quattro Pro, Lotus 1-2-3 |
@CELLINDEX |
S,C,N,N |
Quattro Pro, Lotus 1-2-3 |
@CELL |
S,C |
Quattro Pro, Lotus 1-2-3 |
@CELLPOINTER |
S |
Quattro Pro, Lotus 1-2-3 |
@CELLULE |
S,C |
Quattro Pro, Lotus 1-2-3 |
@CHAINE |
N,N |
Quattro Pro, Lotus 1-2-3 |
@CHAR |
N |
Quattro Pro, Lotus 1-2-3 |
@CHERCHE |
S,S,N |
Quattro Pro, Lotus 1-2-3 |
@CHOIX |
N,V |
Quattro Pro, Lotus 1-2-3 |
@CHOOSE |
N,V |
Quattro Pro, Lotus 1-2-3 |
@CLEAN |
|
Quattro Pro, Lotus 1-2-3 |
@CODE |
S |
Quattro Pro, Lotus 1-2-3 |
@COL |
C |
Quattro Pro, Lotus 1-2-3 |
@COLS |
C |
Quattro Pro, Lotus 1-2-3 |
@COMPTE |
C |
Quattro Pro, Lotus 1-2-3 |
@CONSH |
N,C,N |
Quattro Pro, Lotus 1-2-3 |
@CONSV |
N,C,N |
Quattro Pro, Lotus 1-2-3 |
@COS |
N |
Quattro Pro, Lotus 1-2-3 |
@COSH |
N |
Lotus 1-2-3 |
@COUNT |
C |
Quattro Pro, Lotus 1-2-3 |
@CTERM |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@CURVALUE |
S,S |
Quattro Pro, Lotus 1-2-3 |
@DATE |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@DATEVALUE |
V |
Quattro Pro, Lotus 1-2-3 |
@DATVAL |
V |
Quattro Pro, Lotus 1-2-3 |
@DAVG |
CNC |
Quattro Pro, Lotus 1-2-3 |
@DAY |
N |
Quattro Pro, Lotus 1-2-3 |
@DCOUNT |
CNC |
Quattro Pro, Lotus 1-2-3 |
@DDB |
NNNN |
Quattro Pro, Lotus 1-2-3 |
@DEBUT |
SN |
Quattro Pro, Lotus 1-2-3 |
@DEG |
N |
Quattro Pro, Lotus 1-2-3 |
@DEGREES |
N |
Quattro Pro, Lotus 1-2-3 |
@DSUM |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@DVAR |
C,N,C |
Quattro Pro, Lotus 1-2-3 |
@DUREE |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@DUREECOMP |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@EGAL |
SS |
Quattro Pro, Lotus 1-2-3 |
@ENT |
N |
Quattro Pro, Lotus 1-2-3 |
@EPURE |
S |
Quattro Pro, Lotus 1-2-3 |
@ERR |
|
Quattro Pro, Lotus 1-2-3 |
@ESTCHAINE |
V |
Quattro Pro, Lotus 1-2-3 |
@ESTERR |
V |
Quattro Pro, Lotus 1-2-3 |
@ESTND |
V |
Quattro Pro, Lotus 1-2-3 |
@ESTNUM |
V |
Quattro Pro, Lotus 1-2-3 |
@EXP |
N |
Quattro Pro, Lotus 1-2-3 |
@FALSE |
|
Quattro Pro, Lotus 1-2-3 |
@FAUX |
|
Quattro Pro, Lotus 1-2-3 |
@FICHIEREXISTE |
S |
Quattro Pro, Lotus 1-2-3 |
@FILEEXISTS |
S |
Quattro Pro, Lotus 1-2-3 |
@FIN |
S,N |
Quattro Pro, Lotus 1-2-3 |
@FIND |
S,S,N |
Quattro Pro, Lotus 1-2-3 |
@FV |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@FVAL |
N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@HEURE |
V |
Quattro Pro, Lotus 1-2-3 |
@HEURVAL |
V |
Quattro Pro, Lotus 1-2-3 |
@HEXANUM |
S |
Quattro Pro, Lotus 1-2-3 |
@HEXTONUM |
S |
Quattro Pro, Lotus 1-2-3 |
@HLOOKUP |
N,C,N |
Quattro Pro, Lotus 1-2-3 |
@HOUR |
V |
Quattro Pro, Lotus 1-2-3 |
@IF |
B,V,V |
Quattro Pro, Lotus 1-2-3 |
@INDEX |
C,N,N |
Quattro Pro, Lotus 1-2-3 |
@INT |
N |
Quattro Pro, Lotus 1-2-3 |
@INTERET |
N,N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@IPAYMT |
N,N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@IRATE |
N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@IRR |
N,C |
Quattro Pro, Lotus 1-2-3 |
@ISAAF |
S |
Quattro Pro, Lotus 1-2-3 |
@ISAPP |
S |
Quattro Pro, Lotus 1-2-3 |
@ISERR |
V |
Quattro Pro, Lotus 1-2-3 |
@ISNA |
V |
Quattro Pro, Lotus 1-2-3 |
@ISNUMBER |
V |
Quattro Pro, Lotus 1-2-3 |
@ISSTRING |
V |
Quattro Pro, Lotus 1-2-3 |
@JOUR |
N |
Quattro Pro, Lotus 1-2-3 |
@LEFT |
S,N |
Quattro Pro, Lotus 1-2-3 |
@LENGTH |
S |
Quattro Pro, Lotus 1-2-3 |
@LIGNES |
C |
Quattro Pro, Lotus 1-2-3 |
@LN |
N |
Quattro Pro, Lotus 1-2-3 |
@LOG |
N |
Quattro Pro, Lotus 1-2-3 |
@LONG |
S |
Quattro Pro, Lotus 1-2-3 |
@LOWER |
S |
Quattro Pro, Lotus 1-2-3 |
@MAJUSC |
S |
Quattro Pro, Lotus 1-2-3 |
@MAX |
C |
Quattro Pro, Lotus 1-2-3 |
@MEMAVAIL |
|
Quattro Pro, Lotus 1-2-3 |
@MEMDISPO |
|
Quattro Pro, Lotus 1-2-3 |
@MEMMEMSAVAIL |
|
Quattro Pro, Lotus 1-2-3 |
@MEMMEMSDISPO |
|
Quattro Pro, Lotus 1-2-3 |
@MID |
S,N,N |
Quattro Pro, Lotus 1-2-3 |
@MILIEU |
S,N,N |
Quattro Pro, Lotus 1-2-3 |
@MIN |
C |
Quattro Pro, Lotus 1-2-3 |
@MINUSC |
S |
Quattro Pro, Lotus 1-2-3 |
@MINUTE |
N |
Quattro Pro, Lotus 1-2-3 |
@MOD |
NN |
Quattro Pro, Lotus 1-2-3 |
@MOIS |
N |
Quattro Pro, Lotus 1-2-3 |
@MOYENNE |
C |
Quattro Pro, Lotus 1-2-3 |
@N |
C |
Quattro Pro, Lotus 1-2-3 |
@NA |
|
Quattro Pro, Lotus 1-2-3 |
@ND |
|
Quattro Pro, Lotus 1-2-3 |
@NOMPROPRE |
S |
Quattro Pro, Lotus 1-2-3 |
@NOW |
|
Quattro Pro, Lotus 1-2-3 |
@NPER |
NNNNN |
Quattro Pro, Lotus 1-2-3 |
@NPV |
NCN |
Quattro Pro, Lotus 1-2-3 |
@NUMAHEX |
S |
Quattro Pro, Lotus 1-2-3 |
@NUMTOHEX |
S |
Quattro Pro, Lotus 1-2-3 |
@PI |
|
Quattro Pro, Lotus 1-2-3 |
@PMT |
|
Quattro Pro, Lotus 1-2-3 |
@POINTCELL |
S |
Quattro Pro, Lotus 1-2-3 |
@PPAYMT |
N,N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@PRINCIPAL |
N,N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@PRODSCAL |
C,C |
Quattro Pro, Lotus 1-2-3 |
@PROPER |
S |
Quattro Pro, Lotus 1-2-3 |
@PV |
|
Quattro Pro, Lotus 1-2-3 |
@PVAL |
N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@RACINE |
N |
Quattro Pro, Lotus 1-2-3 |
@RAD |
N |
Quattro Pro, Lotus 1-2-3 |
@RADIANS |
N |
Quattro Pro, Lotus 1-2-3 |
@RATE |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@REMB |
N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@REMBOUR |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@REPEAT |
S,N |
Quattro Pro, Lotus 1-2-3 |
@REPETE |
S,N |
Quattro Pro, Lotus 1-2-3 |
@REPLACE |
S,N,N,S |
Quattro Pro, Lotus 1-2-3 |
@RIGHT |
S,N |
Quattro Pro, Lotus 1-2-3 |
@ROUND |
N |
Quattro Pro, Lotus 1-2-3 |
@ROWS |
C |
Quattro Pro, Lotus 1-2-3 |
@S |
C |
Quattro Pro, Lotus 1-2-3 |
@SECOND |
N |
Quattro Pro, Lotus 1-2-3 |
@SECONDE |
N |
Quattro Pro, Lotus 1-2-3 |
@SI |
B,V,V |
Quattro Pro, Lotus 1-2-3 |
@SIN |
N |
Quattro Pro, Lotus 1-2-3 |
@SINH |
N |
Lotus 1-2-3 |
@SLN |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@SOMME |
C |
Quattro Pro, Lotus 1-2-3 |
@SQRT |
N |
Quattro Pro, Lotus 1-2-3 |
@STD |
C |
Quattro Pro, Lotus 1-2-3 |
@STDS |
C |
Quattro Pro, Lotus 1-2-3 |
@STRING |
NN |
Quattro Pro, Lotus 1-2-3 |
@SUBSTITUE |
S,N,N,S |
Quattro Pro, Lotus 1-2-3 |
@SUM |
C |
Quattro Pro, Lotus 1-2-3 |
@SUMPRODUCT |
C,C |
Quattro Pro, Lotus 1-2-3 |
@SUPPRESPACE |
S |
Quattro Pro, Lotus 1-2-3 |
@SYD |
N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@TAN |
N |
Quattro Pro, Lotus 1-2-3 |
@TAUX |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@TAUXINT |
N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@TEMPS |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@TERM |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@TIME |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@TIMEVALUE |
V |
Quattro Pro, Lotus 1-2-3 |
@TODAY |
|
Quattro Pro, Lotus 1-2-3 |
@TRIM |
S |
Quattro Pro, Lotus 1-2-3 |
@TRUE |
|
Quattro Pro, Lotus 1-2-3 |
@UPPER |
S |
Quattro Pro, Lotus 1-2-3 |
@VACT |
N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@VALACT |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@VALEUR |
S |
Quattro Pro, Lotus 1-2-3 |
@VALEUROPTION |
S,S |
Quattro Pro, Lotus 1-2-3 |
@VALFUT |
N,N,N |
Quattro Pro, Lotus 1-2-3 |
@VAN |
N,C,N |
Quattro Pro, Lotus 1-2-3 |
@VAR |
C |
Quattro Pro, Lotus 1-2-3 |
@VARS |
C |
Quattro Pro, Lotus 1-2-3 |
@VERSION |
|
Quattro Pro, Lotus 1-2-3 |
@VFUT |
N,N,N,N,N |
Quattro Pro, Lotus 1-2-3 |
@VLOOKUP |
N,C,N |
Quattro Pro, Lotus 1-2-3 |
@VRAI |
|
Quattro Pro, Lotus 1-2-3 |
@YEAR |
N |
Quattro Pro, Lotus 1-2-3 |
ABS |
N |
Microsoft Excel |
ACCRINT |
N,N,N,N,N,N,N |
Microsoft Excel |
ACCRINTM |
N,N,N,N,N |
Microsoft Excel |
ACOS |
N |
Microsoft Excel |
ACOSH |
N |
Microsoft Excel |
ACOTH |
N |
Microsoft Excel |
ACSC |
N |
Microsoft Excel |
ADRESSE |
N,N,N,C,S |
Microsoft Excel |
ALEA |
|
Microsoft Excel |
ALEA.ENTRE.BORNES |
N,N |
Microsoft Excel |
AMORDEGRC |
N,N,N,N,N,N |
Microsoft Excel |
AMORLIN |
N,N,N |
Microsoft Excel |
AMORLINC |
N,N,N,N,N,N,N |
Microsoft Excel |
ANNEE |
N |
Microsoft Excel |
ARRONDI |
N,N |
Microsoft Excel |
ARRONDI.AU.MULTIPLE |
N,N |
Microsoft Excel |
ARRONDI.INF |
N,N |
Microsoft Excel |
ARRONDI.SUP |
N,N |
Microsoft Excel |
ASECH |
N |
Microsoft Excel |
ASIN |
N |
Microsoft Excel |
ASINH |
N |
Microsoft Excel |
ATAN |
N |
Microsoft Excel |
ATAN2 |
N,N |
Microsoft Excel |
ATANH |
N |
Microsoft Excel |
AUJOURDHUI |
|
Microsoft Excel |
AVERAGEA |
C |
Microsoft Excel |
BDECARTYPE |
C,C,N |
Microsoft Excel |
BDECARTYPEP |
C,C,N |
Microsoft Excel |
BDLIRE |
C,C,N |
Microsoft Excel |
BDMAX |
C,C,N |
Microsoft Excel |
BDMIN |
C,C,N |
Microsoft Excel |
BDMOYENNE |
C,C,N |
Microsoft Excel |
BDNB |
C,C,N |
Microsoft Excel |
BDNBVAL |
C,C,N |
Microsoft Excel |
BDPRODUIT |
C,C,N |
Microsoft Excel |
BDSOMME |
C,C,N |
Microsoft Excel |
BDVAR |
C,C,N |
Microsoft Excel |
BDVARP |
C,C,N |
Microsoft Excel |
BESSELI |
N,N |
Microsoft Excel |
BESSELJ |
N,N |
Microsoft Excel |
BESSELK |
N,N |
Microsoft Excel |
BESSELY |
N,N |
Microsoft Excel |
BETAINVERSE |
N,N |
Microsoft Excel |
BIN2DEC |
b |
Microsoft Excel |
BIN2HEX |
b,N |
Microsoft Excel |
BIN2OCT |
b,N |
Microsoft Excel |
BINDEC |
b |
Microsoft Excel |
BINHEX |
b,N |
Microsoft Excel |
BINOCT |
b,N |
Microsoft Excel |
BOITEDIALOGUESOLVEURFINIR |
N,N |
Microsoft Excel |
BOITEDIALOGUESOLVEUROK |
N,N,N |
Microsoft Excel |
CAR |
N |
Microsoft Excel |
CELLULE |
S,C |
Microsoft Excel |
CENTILE |
C,N |
Microsoft Excel |
CENTREE.REDUITE |
N,N,N |
Microsoft Excel |
CHERCHE |
S,S,N |
Microsoft Excel |
CHOISIR |
N,N |
Microsoft Excel |
CNOM |
S |
Microsoft Excel |
CODE |
S |
Microsoft Excel |
COEFFICIENT.ASYMETRIE |
N,N |
Microsoft Excel |
COEFFICIENT.CORRELATION |
C,C |
Microsoft Excel |
COEFFICIENT.DETERMINATION |
C,C |
Microsoft Excel |
COLONNE |
S |
Microsoft Excel |
COLONNES |
C |
Microsoft Excel |
COMBIN |
N,N |
Microsoft Excel |
COS |
N |
Microsoft Excel |
COTH |
N |
Microsoft Excel |
ECARTYPEP |
C |
Microsoft Excel |
LOG10 |
N |
Microsoft Excel |
LOI.BINOMIALE |
N,N,N,B |
Microsoft Excel |
LOI.NORMALE.STANDARD |
N |
Microsoft Excel |
LOI.POISSON |
N,N,B |
Microsoft Excel |
SIN |
N |
Microsoft Excel |
TAN |
N |
Microsoft Excel |
VAR.P |
C |
Microsoft Excel |
Le programme de dessin bitmap
Tout comme le traitement de texte ou le tableur, on devra retrouver un filtre d'entrée et de sortie pour offrir la possibilité de manipuler le format de dessin souhaiter. En plus, il devra être possible de copie par exemple dans le presse-papiers à partir du gestionnaire de fichiers un fichier et de coller son image dans le dessin actuellement en traitement. Divers format de pixel pourront être afficher comme c'est le cas par exemple sous AutoCad, il peut afficher un cercle, un X,... si désirer.
Le programme de dessin technique
Cette partie devra entre autre rendre possible l'édition de plan électronique, d'organigramme, dessin en file de fer, DFD (Diagramme de Flux de Données),... On pourra donc considérer cette application comme un équivalent de Corel Draw, Visio ou d'Adobe Illustrator.
En somme, le programme de dessin technique se divise avec les parties suivantes:
DFD (diagramme de flux de données): Permettant au programmeurs de dessiner de façon simple et efficace les structures de leur système.
Plan électronique: Permet de représenter sur un dessin à l'aide de pièce électronique des microcircuits d'électronique.
Dessin technique: Celle-ci est véritablement un dessin technique, il s'apparente à Corel Draw, Adobe Illustrator,...
La base de données
Afin d'offrir le maximum de possibilités de développement, la version utiliser sera la Mentronix. Celle-ci permettant à la base de données d'être manipulable de façon local ou global. C'est-à-dire que si le besoin sent fait sentir, on peut utiliser une base de données gérer sous l'aspect d'un volume ou encore qu'une table corresponde à un fichier. Afin d'éviter des problèmes de transformation d'information, elle devra également être moyennement compatible avec le langage SQL-92. On devra retrouver des fonctions comparables à ceux d'Adados, StarBase, Microsoft Access, Dbase, Visual dBase, Lotus SmartSuite Approach,...
Le gestionnaire de fichiers
Le gestionnaire de fichiers sera divisée en deux tableaux. Les deux pourront s'adapter a plusieurs combinaison possible (à l'image du Norton Commander), ils pourront: visualiser une liste de fichiers, de répertoires, tableau sommaire d'information et prévisualisateur. Le deuxième bouton de la souris offrira, en autre, la possibilité d'un menu contextuel s'ouvrant sur des options de conversion (fichier musique, image, animation et exécutable), copie (d'un répertoire ou d'un fichier; dans le presse-papiers, dans une ressource, vers le disque,...), déplacement (d'un fichier ou répertoire), effacement, propriété et autre composant approprier au fichier pointer. Par exemple s'il s'agit d'un fichier volume DOSEmu, il devra offrir la possibilité de le monter sur une unité non alloue du système dans le but de visualiser sont contenu sans passer par une application spécialiser. Il va de soit qu'il devra aussi être capable de lire un fichier BOOT Disquette d'OS/2. Dans le même ordre d'idée, un support permettra de parcourir des fichiers compressées comme ARC, ARJ, CAB, LZH, ICE, PAK, RAR, SWG, TZ, ZIP, ZOO,... Et afin d'offrir une alternative maison a un réseau local sans carte de réseau, le gestionnaire devra être capable d'envoyer et recevoir des fichiers par port série ou parallèle comme le font Norton Commander , Laplink ou FastLynx. Dans cette application on retrouvera des propriétés particulière afin d'obtenir un Norton Commander renommer Clone Commander, PC Shell du PC Tools.
Voici d'ailleurs un exemple d'une fenêtre de Gestionnaire de fichiers modifier afin d'obtenir un résultat similaire à celui du Norton Commander de Symantec. Il ne s'agit pas d'une nouvelle application entièrement indépendant, mais belle et bien celui d'une application multi-programmable, développer dans une optique caméléon:
Le gestionnaire de programmes
Le gestionnaire de programmes est sans doute la composante du MonsterBook la plus adaptable. Celle-ci en effet peut prendre différentes formes, allant d'un menu déroulant a la Windows 9X ou Linux, OS/2, un gestionnaire de programmes genre Windows 3.1(1) ainsi que celle d'un tableau de bord de style OS/2. Elle aura également certain supplément interne permettant d'être utiliser comme base dans un Panneau de Configuration a la manière de Windows 3.1, 9X ou NT.
Le barre de tâche d'origine
Windows 9X sera construire de façon être divisé
en segment parfaitement égale lequel représentant
toutes les fenêtres ouverte pour un maximum de dix. En voici
l'aspect:
On remarquera que sur le coté gauche d'un segment de la barre de tache, on constate un icône, lequel permet d'identifier au premier coup d'oeil de quel application il s'agit. On constate en plus qu'exclusivement sur la barre “Démarrer”, un icône sur le coter droite permet de voir immédiatement les éléments du bureau ou dans le cas contraire de restaurer celui-ci afin de permettre par exemple d'accéder au icône sur le bureau sans minimiser plusieurs dizaine de fenêtre.
Dans l'onglet de gestionnaire de programmes du MonsterBook, on construira un navigateur HTML primitif avec l'aide des polices de caractères de la classe QQF. Le défilement se fera comme un écran de texte classique. Mais avec 1 seul pixel de déplacement à la fois, plus si l'utilisateur considère que la chose est nécessaire (changement de page avec les touches Page Up et Page Down.
Les applications terminal
Les applications terminal sont
simplement un fenêtre offrant la possibilité d'utiliser
la méthode de commande afin de permettre a certain utilisateur
l'emploi de certaine possibilité très ancienne mais
toutefois essentiel! On retrouvera donc essentiellement un prompt
DOS et un shell Unix. Un menu déroulant devra être
disponible lorsqu'on appuiera sur le deux boutons de la souris afin
d'obtenir par exemple de l'aide ou des commandes nécessitant
la recherche de fichier.
Afin de permettre d'ajouter d'offrir un maximum de confort pour c'est différent format de prompt DOS, on devra fournir les commandes suivantes:
Nom |
Description |
Modèle |
? |
Fournit la liste d'aide |
4DOS/NDOS |
: |
Retourne l'unité courante |
MOS |
*: |
Affiche toutes les unités disponible |
MOS |
4MAT |
Format une unité de disque |
MOS |
ALIAS |
Association d'alias à une commande |
4DOS/NDOS |
ATTRIB |
Modification des attributs de fichiers |
DOS |
BE |
Commandes Symantec |
Norton Utility |
BEEP |
Émet un signal sonore |
4DOS/NDOS |
CD |
Changement de répertoire |
DOS |
CHCP |
Changement de code de page |
DOS |
CHDIR |
Changement de répertoire |
DOS |
CLS |
Efface l'écran |
DOS |
COMSPEC |
Retourne le chemin d'accès de l'interpréteur de commande |
DOS |
CONFIG |
Retourne la configuration actuel |
MOS |
COPY |
Copie un/des fichier(s) |
DOS |
CPUID |
Active/désactive l'instruction CPUID du Cyrix |
MOS |
CRLL |
Compilateur de ressource |
MOS |
DEL |
Efface un/des fichier(s) |
DOS |
DELQ |
Efface un/des fichier(s) avec un prompt (O/N)? |
DR-DOS |
DESCRIBE |
Rajoute une description à un fichier |
4DOS/NDOS |
DIR |
Affiche la liste des fichiers dans le répertoire |
DOS |
DUMP |
Dump de mémoire ou de fichier |
MOS |
ECHO |
Fixe l'écho |
DOS |
ERAQ |
Efface un/des fichier(s) avec un prompt (O/N)? |
DR-DOS |
ERASE |
Efface un/des fichier(s) |
DOS |
EXIT |
Quitter l'interpréteur de commande |
DOS |
FASTHELP |
Aide rapide |
MS-DOS |
FIND |
Recherche une chaîne de caractères dans des fichiers |
DOS |
FORMAT |
Format une unité de disque |
DOS |
FREE |
Retourne l'espace de libre sur une unité de disque |
4DOS/NDOS |
GREP |
Recherche une chaîne de caractères dans des fichiers |
Borland |
LABEL |
Fixe le nouveau nom de volume d'une unité |
DOS |
MD |
Crée un répertoire |
DOS |
MEMORY |
Affichage de l'état de la mémoire |
4DOS/NDOS |
MKDIR |
Crée un répertoire |
DOS |
MODE |
Commande MODE externe des systèmes d'exploitation DOS |
DOS |
MOVE |
Déplacement d'un/des fichier(s) |
DOS |
PATH |
Affiche les chemins de recherches par défaut |
DOS |
PAUSE |
Affiche un message de pause et attend un signal utilisateur |
DOS |
PLAY |
Jouer des sons |
Creative Labs |
PRNFILE |
Impression d'un fichier |
MOS |
PROMPT |
Affiche le prompt courant |
DOS |
RD |
Effacer un répertoire |
DOS |
REN |
Renommer un/des fichier(s) |
DOS |
RENAME |
Renommer un/des fichier(s) |
DOS |
RENDIR |
Renommer un répertoire |
DR-DOS |
RMDIR |
Effacer un répertoire |
DOS |
SCREEN |
Affiche un message à un endroit précis |
4DOS/NDOS |
SERNO |
Retourne le numéro de série |
MOS |
SET |
Retourne les variables d'environnement |
DOS |
SETPRN |
Définit la configuration de l'imprimante |
MOS |
TIME |
Fixe l'heure |
DOS |
TRUENAME |
Retourne un chemin au complet |
MS-DOS |
TRUNCTEXT |
Découpe un texte ayant trop de ligne en des textes plus court |
MOS |
TYPE |
Affiche le contenu ASCII d'un fichier |
DOS |
VER |
Affiche la version du DOS |
DOS |
VERIFY |
Définit la vérification |
DOS |
VOL |
Nom du volume |
DOS |
UNASM |
Décompile du code machine en assembleur |
MOS |
UNCODE |
Décompile du code machine en assembleur |
MOS |
WTDATIM |
Affiche la date et l'heure |
Utilitaire |
XDIR |
DR-DOS: Affiche la liste d'un répertoire |
DR-DOS |
Dans le même cheminement d'idée, on retrouvera les commandes suivantes pour le prompt Unix:
Commande |
Description |
---|---|
? |
Aide en ligne |
banner |
Affiche un texte en grande lettre |
basename |
Indique le nom de base d'un chemin. |
cd |
Change de répertoire |
clear |
Efface l'écran |
cp |
Copie des fichiers |
dirname |
Retourne le répertoire d'un chemin |
echo |
Active ou désactive l'écho. |
exit |
Quitter la fenêtre Unix. |
help |
Aide en ligne |
logout |
Quitter la fenêtre Unix. |
ls |
Affiche le contenu d'un répertoire. |
man |
Aide en ligne |
pwd |
Affiche le répertoire courant |
whoami |
Indique l'utilisateur courant. |
En somme les commandes devront être variable en fonction du modèle de préférence de DOS ou de Unix désirer.
Les outils de programmeurs
Les outils de programmeurs sont par exemple l'éditeur hexadécimal, le débogueur, le Workshop. Ceux-ci offriront des possibilités supplémentaires de probabilité et d'ajustement supplémentaire à l'application MonsterBook. On devra éventuellement avoir la possibilité d'utiliser un compilateur d'assembleur inclus comme base dans l'application afin de promouvoir par exemple le code machine du Kébecup. Également, on pourra écrire du code compatible avec le Visual Basic, puisque se projet cherche invariablement à ouvrir des portes et certainement pas de les refermés.
Les Accessoires supplémentaires
Les accessoires supplémentaires sont des composantes de base comme la calculatrice, l'horloge, le calendrier, joueur de disque compacte de musique, format de disquette, ménagère de disque, visualisateur multimédia, navigateur de page HTML (car il est indispensable d'avoir un visualisateur de fichier HTML étant donner l'importance grandissante d'INTERNET au cours des dernières années),...
Dans la situation du calendrier, il ne sera pas tout d'ajouter un menu contextuel afin d'offrir des services éventuel correspondant à certain besoin, ceux-ci ressembleront à l'aspect suivant:
|
||
---|---|---|
Aller au moi de/d' > |
Janvier |
|
Différence de jour |
Février |
|
Calculer Zodiaque |
Mars |
|
|
Avril |
|
Mai |
||
Juin |
||
Juillet |
||
Août |
||
Septembre |
||
Octobre |
||
Novembre |
||
Décembre |
On pourra à partir de ce menu contextuel calculer par exemple le signe du zodiaque comme le Verseau, Bélier, Taureau ou ceux chinois comme le Dragon, Cochon,...
La sécurité
La sécurité sera un aspect important a laquelle le MonsterBook devra s'adapter. Entre autre on devra retrouver des options de protection par mots de passe au lancement de l'application si désirer afin de restreindre l'accès au utilisateur non souhaiter.
Les protections par confirmation de mots de passe sont peut-être des techniques intéressantes concernant les utilisateurs indésirés, seulement, il arrive que le système pour des raisons sans nombre (panne de courant, plantage,...) se détériore lui-même et qu'un service de réparation soit nécessaire. Pour cette raison, le MonsterBook, comme tous les systèmes d'exploitation moderne se respectant, devra intégrer un service d'entretien permettant de détecter les erreurs et de les corrigées comme l'a longtemps été les produits de Symantec: Norton.
L'ajout de cette possibilité se fera par l'entremise du menu déroulant “Démarrer” du gestionnaire de programmes et devra être située a proximité de “Paramètres”. Une fenêtre apparaîtra et on pourra choisir trois style de réparation regrouper:
Fichier système.
Configuration.
Raccourci.
Ceux-ci seront diviser en des éléments encore plus complexe invisible à l'utilisateur avec les caractéristiques suivantes:
Fichier système:
Vérification du stockage des fichiers dans les répertoires afin de s'assurer qu'il ne sont pas tous dans le répertoires central.
Recherche la présence de tous les fichiers systèmes du MonsterBook. S'il y a omission, il y a possibilité de problème éventuelle!
Vérification de l'intégrité du MonsterBook.
Configuration:
Compare la date du fichier MB.CFG et MB.INI.
Vérification de la cohérence de l'information contenu dans les fichiers de configuration.
Vérification du/des fichier(s) “FRANCAIS.MNB” et de “FRANCAIS.MNX”.
Vérification que le nombre de fichiers HANDLE soit supérieur à 20 (“FILES=20” dans le fichier CONFIG.SYS du DOS).
Raccourci:
Vérification de la validité des informations contenu dans le derniers fichiers ouvert dans le menu “Démarrer” de l'item “Document”.
Une fois toutes ces analyses effectuée, une fenêtre apparaîtra et permettra de choisir les problèmes que l'on souhaite corriger ou non.
L'environnement
Dans le cas de l'environnement on entend par ce terme tout les boîtes de dialogues n'étant pas réellement des applications comme par exemple dans le domaine de la configuration des options à cliquer avec une souris.
Dans la barre du bas de l'écran à droite, un indicateur de quantité de mémoire conventionnel disponible pourra être afficher soit sous l'aspect d'un nombre, d'une barre de progression ou tout simplement caché. Il devra également offrir certaine option en rapport directe avec les informations de mémoire, comme la mémoire ressource disponible par exemple. On pourra également retrouver un icône de console de son à proximité afin de pouvoir émuler l'environnement graphique de Windows 9X.
Dans le cas du menu l'environnement vidéo, on pourra choisir les styles de boutons, style de cadre, ... Il devra fournir des options cependant un peu plus particulière afin d'offrir à l'utilisateur une possibilité d'accélérer l'exécution de celui-ci. Dans ce même ordre des choses, on retrouvera entre autre une possibilité de faire: clignoter les boutons ou non, d'activer ou désactiver le modulateur de FX (d'effet spéciaux), l'activation d'une option de détection avancée des anciennes cartes Super VGA, on accès au plage vidéo par le ROM BIOS ou par programmation directe,...
Le MonsterBook ne reculant devant rien afin d'offrir le maximum de souplesse pour améliorer le système, on devra ajouter des options particulière pour les CPU. Ainsi, les fabricant du microprocesseur Cyrix sont parmi les CPUs les plus configurable ayant été construit! Cependant, ils ne sont pas toujours optimiser et il existe que très peu de logiciel s'occupant de les configurer à notre guise... Toutefois, le MonsterBook, toujours a l'affût d'accéder a de nouvelle possibilité du matériel devra lui, plus que les autres, offrir des modifications possible de cette configuration. On retrouvera comme option ceux-ci:
“FrameBuffer” rapide.
“Write-Back cache”.
“Write Allocate”
Instruction “CPUID” supportée
Mettre en veille si “HALT”.
“Cached Directory Table Entry”
“Negate Lock”
“Data forwarding”
“LOOP” rapide.
Délai d'entrée/sortie configurable.
Chapitre 2
Spécifications technique
2. Spécifications technique
Afin d'offrir une meilleure stabilité de l'environnement graphique, en particulier au niveau des pointeurs, celui-ci sera coder à l'aide du langage de programmation Pascal. Celui-ci, par ça simplicité mais sa grande souplesse au niveau de l'inclusion de code assembleurs, permettra d'obtenir d'excellent résultat.
Les routines de base devront être écrite essentiellement en assembleur, tandis que les routines que l'on appellera de finition, seront tant qu'a elle en langage de programmation Pascal.
Le code source pourra avoir une taille illimitée afin d'obtenir cependant une taille très restreintes au niveau de la taille global de l'exécutable. Celui-ci en effet devra rentrer sur une disquette afin de pouvoir être installer sur de petit système!
Système d'exploitation
Le système d'exploitation est la partie indépendante du MonsterBook ou l'équivalent du DOS. Celle-ci sera écrit en langage de programmation Pascal B57, soit à l'aide du compilateur OverCode. Il s'agit d'un compilateur de langage Pascal étant relativement proche de l'assembleur et du fonctionnement de la machine. Il n'est pas a proprement parler lier a un système d'exploitation ou a une bibliothèque lourde.
On retrouvera dans ce système d'exploitation les routines de base de l'Interruption 21h relier a la gestion des fichiers et de la mémoire. Le reste des routines est considérer comme sans importance. Il va de soit qu'une routine de détection très pousser sera également disponible à l'intérieur de celui-ci et consultable par les exécutables une fois celui-ci complètement charger.
Noyau
En d'autre terme, le noyau du MonsterBook sera orientée autour de l'ensemble du Malte Genesis IV: Alias Chantal. Celui-ci est un noyau avec ses propres mécanismes de détection très poussée charger directement dans l'unité centrale du programme (Adèle) et réexploitable afin de charger le pilote vidéo approprier permettra une optimisation des performances accrus afin d'offrir le meilleur compromis possible pour la vitesse de chargement du programme ainsi qu'une utilisation de la mémoire minimal. Malgré le fait que les pilotes vidéo font un usage intensif de table d'accélération, la mémoire perdu a profit de ceux-ci est rentable dans le mesure ou le programme doit fonctionner sur des machines relativement lente mais disposant toujours d'au moins 512 Ko de mémoire.
Les opérations mathématiques devront être gérer de façon différentes a l'intérieur du noyau. Par exemple la division par 0 devra retourner 0 (voir la documentation sur l'Univers @ pour plus de détail) afin d'alléger le code. Selon les affirmations de ce document, la tendance mathématique tenterait à démontrer qu'il existerait une réponse unique au problème et cela ne donnerait pas l'ensemble des nombres réel comme prétendu par les mathématiciens actuel. Ainsi dans 99,99% des cas, un zéro comme réponse doit être retourner, il est préférable pour cette raison d'effectuer un teste supplémentaire lorsqu'une division par 0 pour indiquer que le cas n'est pas autoriser que d'effectuer une surveillance dans chaque cas.
Ressources
Les ressources seront diviser en plusieurs catégories: la mémoire, les images et les bases de données.
La mémoire sera gérer à deux niveaux: la mémoire central (mieux connu sous le terme de mémoire conventionnel) et les ressources mémoires ou de grande capacité (XMS, EMS, Extended Bios Interrupt 15h, VRAM, Disque dur,...). Dans le cas des ressources, il devra également être possible de l'appliquer au niveau de la mémoire conventionnel afin de permettre l'augmentation des performances dans certaines cas particulier.
Les ressources d'image offriront la possibilité de charger ou sauvegarder n'importe quel format d'image et d'ensuite pouvoir les exploiter de façon universelle à l'aide d'une ressource mémoire. Ceci évitant naturellement d'écrire beaucoup de code de filtre a chaque application et de plutôt les centraliser. On devra retrouver un support pour toutes les formats d'image les plus utiliser: BBM, BMP, GFX, JPEG, PCX, PPM, GIF, LBM, TIF, BGX, GPX, GemImg, XBM, MacPaint, TGA, SCi,... En plus, il devra être possible d'orienté l'entrée d'une ressource sur l'écran directement, pour par exemple offrir la possibilité de sauvegarder par l'intermédiaire de la touche (Print Screen) son contenu dans un fichier.
Les ressources de bases de données sont sans nulle doute la partie le plus sujet a questionnement dans le MonsterBook. Pourquoi? Parce qu'elle doit permet de rapetisser l'ampleur du code sans pour autant ralentir les performances de celui-ci. En plus il devra permettre d'utiliser des bases de données global (comprenant plusieurs tables) ou local (comprenant seulement une table pour un fichier). Il devra inclure des techniques de recherche très rapide afin d'éviter des délais d'exécution très exagérer. En pensera par exemple a utiliser les techniques dichotomique dans certain cas, des indexes d'accélération et ainsi de suite,...
Système de compatibilité
Les pilotes non fournit pas le système d'exploitation devront naturellement trouver un compromis manuellement. De ce fait, on pourra détecter et utiliser une souris PS/2 par exemple sans pour autant avoir un pilote d'interruption 33h d'installer. On devra être capable d'appliquer le même principe pour les partitions non visible par le système d'exploitation. Par exemple les partitions HPFS par le DOS ou Windows.
Les sessions d'application DOS pourront être effectuer directement par un appel de programme fils ou passer par un émulateur de CPU de la famille 80x86 et celui-ci sera donc accessible via une fenêtre ou en mode pleine écran. L'émulateur devra de son côté supporter les microprocesseurs Cyrix, AMD, Intel, NEC sans pour autant être muni de ce type de processeurs. Il offrira également la possibilité d'émuler un 6502 et ses dérivés. Il est impératif que les sessions soit ajustable car dans le cas par exemple d'un déboguage, on de programme a problème, on devra être capable de trouver une alternative intéressante permettant d'obtenir une solution. A la différence des autres émulateurs particulier, on devra faire l'implantation du prototype de microprocesseur Kébecup (voir la documentation des Chevaliers de Malte (nom de code “777-Q=Z-77F77”)), celui-ci étant très prometteur car il offrira la possibilité de coder une application comme Microsoft Office ou Corel Draw à l'intérieur de 64 Ko de mémoire et cela sans compression.
Un pilote de compatibilité passant par le MSCDEX, NWCDEX ou les pilotes de lecteur DC (Disque Compacte) devra être disponible pour jouer les DC de musique. Cependant, on devra aussi être capable de jouer un Disque Compacte sans passer par un pilote logiciel utilisant l'interruption 2Fh. Pourquoi? Pour deux raisons principalement, premièrement afin d'éviter à l'utilisateur la recherche inutile de pilote à charger en mémoire et deuxièmement afin d'augmenter les performances toujours très lentes passant par une interruption. On devra éviter toutefois d'effectuer des passages directe de la sorte sous un système multitâche comme Windows, OS/2 et Linux car ceux-ci réagissant très mal face a une situation de la sorte. En plus le pilote devra offrir la possibilité de jouer le disque compacte en mode digital ou directement en passant par l'électronique. Cette option sera nécessaire dans le cas ou égalisateur de fréquence ne sera pas disponible sur une machine rapide. Toutefois étant donnée la vitesse d'exécution requise, il devra être possible d'activer ou de désactiver cette option.
Lancement
Toute cette structure, s'apparentant d'avantage à un système expert doit également offrir la possibilité d'ajustement spécifique dans les cas non pris en charge par «StartUp» du MonsterBook.
En dépit du fait que le processus de lancement de l'application MonsterBook soit très développer, on doit donc veiller à ce que l'utilisateur puisse solutionner lui-même les problèmes de démarrage et de fonctionnement de cette application sur des machines très peu compatible et se moquant des standards ainsi que des systèmes d'exploitation minant considérablement le bon fonctionnement du d'une application DOS.
Toutefois, le «StartUp» de l'ensemble Malte Genesis V: Alias Adèle offre une grande gamme de "Switch" (échangeur) afin de démarrer dans les pires conditions imaginable. Cependant toutes ces possibilités ne sont pas accessible par l'utilisateur directement, il faut passer par un protocole définit dans un fichier de configuration, des menus déroulants et des techniques complexes ayant tous lieux lors du lancement du progiciel.
Lors du lancement du MonsterBook, vous pouvez à l'aide du prompt: «?:>MB /V», connaître les informations pertinente de son autoconfiguration. Voici une vue d'ensemble de ce que peut être ces messages:
MonsterBook
Version ?.? Tous droits réservés par les
Chevaliers de Malte |
La première ligne indique le nom du programme "MonsterBook" et la version "Version" de ce programme. Après vous retrouvez le nom du groupe ayant mit à jour ce programme.
La ligne suivante affiche "Lecture du fichier d'initialisation:". Ce message est suivi d'un nom de fichier nécessairement "MB.INI" ou "MB.CFG". Le premier cité est tel un fichier de configuration Dos, Windows, OS/2, avec un format ASCII des informations contenu. Plusieurs section existe étant donné l'immense variété de possibilité que renferme le MonsterBook: (Disk, Video, Systems, Printers et Modem). Chacun de ses sections doivent être entre crochet "[" "]" pour lui permettre de comprendre qu'il s'agit d'un section justement.
Vous ne pouvez mélanger les mots et les mettre dans une autre section ne lui étant pas désignée dès l'origine car sinon il prendra un sens différent et aura donc un résultat également différent lors de l'exécution.
Section: «[User]»
Cette section est réservée au profile de l'utilisateur employant le MonsterBook. Elle ne contient pas d'information pertinente à l'esthétique ou à un meilleur fonction de cette application.
UserName
Cette variable de type chaîne de caractères permet de stocker le nom d'utilisateur. Il sera accepter que dans le cas où le nom de l'usager correspond au numéro de série.
SerialCode
Cette variable de type chaîne de
caractères permet de connaître le numéro de série
attribué à cette application.
Section: «[Disk]»
Cette section est réservée afin de connaître des informations relatifs au fichier et des répertoires.
Lorsqu'il s'agit d'un identificateur se terminant par «Files», il s'agit d'un extension désignant une catégorie de fichier particulier (un «;» peu les séparer s'il existe plusieurs extension possible). On peut de cette manière rajouter de nouveau extension désignant par exemple des fichiers Basic, comme par le Visual Basic à tendance à le faire couramment. Pour permettre à l'utilisateur de ne pas toujours être à la merci de la dernière mise-à-jour, il lui sera possible de les modifier lui-même.
Lorsqu'il s'agit d'un identificateur commençant par «Dir» alors il s'agit d'un répertoire de recherche de départ pour une catégorie particulière de fichier. Il sera par exemple possible grâce à cette identificateur de définir le répertoire de départ de recherche des fichiers de la catégorie Pascal, C, Assembleur,... En plus on pourra spécifier le répertoire où actuellement installer l'application afin de lui faire éviter de rechercher dans tous les répertoires où il se trouve.
Section: «[Printers]»
Cette section est spécialisée dans le paramétrage de l'imprimante installée sur la machine.
CurrPrn
Cette variable numérique désigne le numéro de l'imprimante courante à utiliser dans l'application.
Paper2Paper
Cette option permet de spécifier s'il s'agit d'une alimentation d'imprimante feuille à feuille.
HeightPaperLPT1
Cette variable numérique permet de connaître la longueur du papier en pouce multiplier par 10.
Section: «[Systems]»
Cette section est utilisé pour définir les bases mêmes de fondations de l'application.
OvrEms
L'option de chargement de recouvrement (overlay) en mémoire EMS est réglable dans le fichier de configuration MB.INI sous la variable OvrEMS = Yes|No. Si cette variable est à Yes, vous verrez en mode "/V" le message suivante apparaître:
Vérification de la possibilité de chargement du recouvrement en EMS |
SwapEMS
L'option SwapEMS (par défaut Yes (actif)) autorise ou interdit l'utilisation de la mémoire EMS pour les données de type temporaire ou pour le traitement d'image et de certaine information plus particulière mais demandant de vaste zone de mémoire. Si cette variable est à No, le gestionnaire de ressource indiquera 0 Ko lors du mode "/V".
ScrSaver
Cette option permet de définir si vous souhaitez avoir un économiseur d'écran ou non.
Log
Cette option permet d'autoriser la tenue d'un journal de bord à chacun des opérations effectuer dans cette application.
Section: «[Video]»
Cette section destiné à régler la carte vidéo, le moniteur en fonction du mode vidéo et de l'environnement souhaité.
CheckSVGA
Cette variable permet de spécifier s'il l'application doit faire en sorte de pouvoir détecter des cartes vidéo n'ayant pas de standard VESA supporté.
DefaultMode
Cette variable sert à initialiser le mode vidéo de départ du MonsterBook. Si le nombre 65534 est spécifié, il utilise le mode vidéo courant fonctionnant avant le lancement du l'application.
PapierPeint
Cette variable de type chaîne de caractères contient le chemin et le nom à utiliser comme papier peint, l'image de fond de l'application, en écran graphique si possible.
FontTitle
Cette variable de type chaîne de caractères contient le chemin et le nom à utiliser comme image de fond, pour chaque titre d'application.
VesaBiosBank
Cette variable est utilisée pour permettre l'utilisation exclusif par le BIOS du standard VESA en interdisant formellement d'utiliser la routine référencé par le BIOS.
BankRoutine
Cette variable définit le numéro de la routine de changement de page par défaut à utiliser dans les modes vidéo Super VGA ayant 256 couleurs ou plus. Sa valeur numérique correspond à ceci:
Valeur |
Description |
---|---|
0 |
Auto détection automatique |
1 |
VGA |
2 |
Ahead |
3 |
ATI |
4 |
Cirrus |
5 |
CTI |
6 |
Everex |
7 |
Genoa |
8 |
Headland |
9 |
Oak |
10 |
Paradise |
11 |
STB |
12 |
Trident |
13 |
Tseng Labs ET3000 |
14 |
Tseng Labs ET4000 |
15 |
VESA avec accès directe |
16 |
Video Seven |
17 |
XGA |
18 |
Zymos |
19 |
Ahead A |
20 |
Ahead B |
21 |
ATI selon la méthode GNU |
22 |
Chips & Technologie |
23 |
Trident 8900 |
24 |
Vesa en passant par l'interruption BIOS |
25 |
ATI GU Pro/Ultra |
26 |
ATI 16 MD |
27 |
Acumos |
28 |
Cirrus 54 |
29 |
CL5426 |
30 |
SS24X/WD90C3x |
31 |
RealTek |
32 |
S3805 - 1M / S3864 – 2M |
33 |
Sparadise |
34 |
VESA S3 |
35 |
Viper |
36 |
WD Vanila / WD90C31 |
ImageInDialog
Cette variable permet de spécifier si vous souhaitez supporter les images dans les boîtes de dialogues en mode graphique.
Cadrillage
Cette option permet de spécifier si vous souhaitez avoir un quadrillage dans votre calendrier ou vos graphiques,... en mode vidéo graphique.
Processus de lancement
Au notée que cette technique en texte nécessite un très grand nombre de cycle d'horloge d'exécution de la par du micro-processeur. Afin de régler ce genre de situation, il existe un genre de doublons du fichier de configuration texte. Celui-ci est chargé par l'application comme un bloc au lieu d'être interpréter ligne par ligne. Il est recompilé automatiquement à chaque fois qu'il existe une différence avec la version texte et la sienne. Pour se faire, il vérifie la date et s'il se rend compte qu'elle n'est pas identique, il le recompile. Ce simple système permet d'accélérer l'utilisation régulier tous en permettant à l'utilisateur de modifier lui-même les paramètres manuellement afin qu'il puisse fonctionner selon ses choix personnelles.
Dans l'éventualité où le fichier de configuration compilé est erroné, il sera recompilé pour plus de sûreté de façon automatique.
L'inconvénient, c'est que s'il n'est pas possible d'écrire le fichier de configuration, il recompilera à chaque démarrage le fichier en question.
Environnement système
Comme spécifier dans l'environnement dans la section “Manifeste du Projet”, le micro-processeur Cyrix aura un traitement de faveur. On devra donc pouvoir le programmer de la façon allant être décrit. Voici les registres concerner par chacune des options de ce processeur:
“FrameBuffer” rapide (CCR3: bit 2).
“Write-Back cache” (CCR2: bit 1).
“Write Allocate” (CCR5: bit 0).
Instruction “CPUID” supportée (CCR4: bit 7).
Mettre en veille si “HALT” (CCR2: bit 3).
“Cached Directory Table Entry” (CCR4: bit 4).
“Negate Lock” (CCR1: bit 4).
“Data forwarding” (DBR0: bit 5).
“LOOP” rapide (CCR5; bit 1 pi par le registre 20h , bit 2).
Délai d'entrée/sortie configurable (CCR4: bit entre 0 à 2).
Ces registres sont accessibles via le port d'entrée/sortie 22h, et applicable dans le port 23h. Les registres CCR0, CCR1, CCR2, CCR3 ont respectivement les registres C0h à C3h et CCR4, CCR5, CCR6, CCR7 ont respectivement les registres 0E8h à 0EBh.
La barre d'outils
La barre d'outils est une barre d'icône situé en dessous du menu principal sur le bureau. Elle permet d'accéder rapidement à certaines possibilité de l'application. Voici les codes réservés pour ses icônes:
Code |
Description |
---|---|
0 |
Ouvre |
1 |
Ouvre un dessin |
2 |
Ouvre un icône (Bouton) |
3 |
Ouvre un chiffrier |
4 |
Change la région ou le pays |
5 |
<-> Conversion |
6 |
Recherche |
7 |
Avant (Précédant) |
8 |
Après (Suivant) |
9 |
Imprime |
10 |
Téléphone |
11 |
Clavier |
12 |
Musique |
13 |
Change de répertoire |
14 |
Prompt d'interpréteur DOS |
15 |
Compile |
16 |
Infor(mation) |
17 |
Liste des fenêtres |
18 |
Aide |
19 |
Quitter |
Environnement des périphériques
L'environnement des périphériques sont les spécifications particulière reliée au clavier, souris et autre méthode d'entrée utilisateur.
Dans le cas du clavier, un des principales objectifs sera d'ajouter un support permettant d'obtenir les accents appropriées sur le pavé numériques. Ainsi par exemple les chiffres 7, 8, 9 seront associées a la lettre A, 4, 5, 6 a la lettre E, et 1, 2, 3 a la lettre I. Ceux-ci par l'intermédiaire de la touche Shift permettront d'obtenir par exemple en appuyant sur le 7 le caractère “à”. Celui du 8 un accent circonflexe et le neuf un accent contraire au 7.
On retrouvera également dans cette catégorie les raccourcis clavier. Ceux-ci pourront être de style différent: Isabel (inspiré de WordStar) et Windows (de Windows et OS/2). Voici tout d'abord les attributions possibles avec le modèle Isabel:
Combinaison clavier |
Description |
---|---|
Alt+0 |
Liste des fenêtres d'application |
Alt+A |
Menu déroulant d'Aide |
Alt+C |
Menu déroulant Commande |
Alt+D |
Menu déroulant Dessin |
Alt+E |
Menu déroulant Édition |
Alt+F |
Menu déroulant Fichier |
Alt+I |
Menu déroulant Information |
Alt+N |
Menu déroulant Fenêtre |
Alt+O |
Menu déroulant Option |
Alt+R |
Menu déroulant Recherche |
Alt+X |
Quitter le MonsterBook |
Alt+F1 |
Sous le gestionnaire de fichiers, change le 1ier tableau pour une pour permettre de changer d'unité au premier tableau de fichiers. |
Alt+F2 |
Sous le gestionnaire de fichiers, change le 2ième tableau pour une pour permettre de changer d'unité au premier tableau de fichiers. |
Alt+F3 |
Ferme la fenêtre courante. |
Alt+F4 |
Double la largeur du mots à la droite du curseur et ci positionne à la fin. |
Alt+F5 |
Regarde l'écran de sortie (Output). |
Alt+F7 |
Ouvre une fenêtre dessin. |
Alt+F8 |
Met le mot en mode exposant à la droite du curseur et ci positionne à la fin. |
Alt+F9 |
Lance une compilation. |
Alt+F10 |
Inverse le mot à la droite du curseur et ci positionne à la fin. |
Ctrl+A |
Flèche de gauche |
Ctrl+B |
Met en caractère gras le mots à droite du curseur |
Ctrl+C et Ctrl+A |
Ferme toutes les fenêtres d'application |
Ctrl+C et Ctrl+B |
Conversion en langage Basic |
Ctrl+C et Ctrl+C |
Déplacement d'une page vers le haut de la fenêtre. |
Ctrl+C et Ctrl+D |
Mode caractère double largeur |
Ctrl+C et Ctrl+F |
Conversion en langage de programmation Fortran |
Ctrl+C et Ctrl+G |
Mode caractère gras |
Ctrl+C et Ctrl+I |
Mode caractère inverse |
Ctrl+C et Ctrl+J |
Conversion en langage de programmation Java. |
Ctrl+C et Ctrl+K |
Conversion en langage de programmation AC. |
Ctrl+C et Ctrl+L |
Conversion en langage de programmation Cobol. |
Ctrl+C et Ctrl+P |
Conversion en langage de programmation Pascal. |
Ctrl+C et Ctrl+R |
Conversion en ressource |
Ctrl+C et Ctrl+S |
Ferme toutes les fenêtres sauvegardée |
Ctrl+C et Ctrl+T |
Mode caractère italique |
Ctrl+C et Ctrl+U |
Mode caractère soulignement. |
Ctrl+C et Ctrl+Z |
Conversion en langage de programmation C/C++ |
Cltr+D et Ctrl+C |
Change d'unité de disque |
Ctrl+D et Ctrl+D |
Docteur disque |
Ctrl+D et Ctrl+E |
Regarde/Édition du disque |
Ctrl+D et Ctrl+F |
Format une unité de disque |
Ctrl+D et Ctrl+H |
Regarde/Édition du disque en hexadécimal. |
Ctrl+D et Ctrl+I |
Information disque |
Ctrl+D et Ctrl+O |
Option disque (“VERIFY ON/OFF”, ajustement,...) |
Ctrl+D et Ctrl+S |
Docteur système/Entretien système |
Ctrl+D et Ctrl+V |
Docteur anti-virus |
Ctrl+D et Ctrl+X |
Efface la colonne courante actuellement marqué. |
Ctrl+D et Ctrl+Y |
Efface la ligne courante actuellement marqué. |
Ctrl+D et Ctrl+Z |
Efface le tableau courant. |
Ctrl+E et Ctrl+A |
Émulateur d'Apple ][ |
Ctrl+E et Ctrl+C |
Émulateur de Coco III |
Ctrl+E et Ctrl+E |
Déplacement de 2 lignes vers le haut |
Ctrl+E et Ctrl+H |
Éditeur hexadécimal |
Ctrl+E et Ctrl+K |
Émulateur de Commodore 64K |
Ctrl+E et Ctrl+M |
Exécute une macro-commande. |
Ctrl+E et Ctrl+V |
Émulateur de Commodore VIC-20. |
Ctrl+F et Ctrl+A |
Assignation d'une unité à émuler (équivalent d'“ASSIGN” sous DOS). |
Ctrl+F et Ctrl+B |
Traitement d'un fichier ligne par ligne (équivalent de “awk” d'Unix). |
Ctrl+F et Ctrl+C |
Lance un fichier exécutable. |
Ctrl+F et Ctrl+D |
Lance une fenêtre de Prompt DOS de modèle Malte. |
Ctrl+F et Ctrl+E |
Efface un fichier. |
Ctrl+F et Ctrl+F |
Ouvre une fenêtre de Gestionnaire de fichiers. |
Ctrl+F et Ctrl+G |
Recherche une chaîne de caractères dans un fichiers (équivalent de “Grep”). |
Ctrl+F et Ctrl+L |
Liste de fichier du répertoire courant. |
Ctrl+F et Ctrl+M |
Crée un répertoire (équivalent de la commande “MkDir” sous DOS). |
Ctrl+F et Ctrl+U |
Lance un fenêtre de Shell Unix. |
Ctrl+G |
Suppression du caractère sur lequel se trouve le curseur. |
Ctrl+H et Ctrl+P |
Partition du disque dur. |
Ctrl+I et Ctrl+C |
Information sur le CMOS. |
Ctrl+I et Ctrl+I |
Information interne sur le MonstreBook. |
Ctrl+I et Ctrl+M |
Information sur la mémoire par la méthode du DOS appelée MCB. |
Ctrl+I et Ctrl+P |
Information sur le pays actuellement configuré sur le système. |
Ctrl+I et Ctrl+S |
Information sommaire sur l'ordinateur. |
Ctrl+I et Ctrl+V |
Information sur la vidéo. |
Ctrl+I et Ctrl+X |
Insère une colonne dans le bloc actuellement marqué. |
Ctrl+I et Ctrl+Y |
Insère une ligne dans le bloc actuellement marqué. |
Ctrl+I et Ctrl+Z |
Insère un tableau. |
Ctrl+J et Ctrl+C |
Saute à l'interpréteur DOS du système (“Jump to DOS / Command / Shell”). |
Ctrl+J et Ctrl+D |
Associé une unité à un autre (Joint) |
Ctrl+J et Ctrl+P |
Associé un répertoire à un autre (Joint) |
Ctrl+K et Ctrl+B |
Marque le début du bloc. |
Ctrl+K et Ctrl+C |
Copie le bloc actuellement marqué. |
Ctrl+K et Ctrl+D |
Quitter |
Ctrl+K et Ctrl+H |
Couper le bloc (“cut”). |
Ctrl+K et Ctrl+K |
Marque la fin du bloc. |
Ctrl+K et Ctrl+P |
Imprime le bloc. |
Ctrl+K et Ctrl+R |
Insère un fichier. |
Ctrl+K et Ctrl+S |
Sauvegarder. |
Ctrl+K et Ctrl+T |
Marquer un mot. |
Ctrl+K et Ctrl+V |
Déplacement du bloc actuellement marqué. |
Ctrl+K et Ctrl+W |
Écrit dans un fichier le bloc actuellement marqué. |
Ctrl+K et Ctrl+Y |
Effacement d'un bloc actuellement marqué. |
Ctrl+K et Ctrl+Z et Lettre |
Insère une colonne de la lettre spécifier au bloc marqué. |
Ctrl+L |
Poursuite de la recherche |
Ctrl+M et Ctrl+A |
Mode d'édition en langage de programmation assembleur. |
Ctrl+M et Ctrl+B |
Mode d'édition en langage de programmation Basic. |
Ctrl+M et Ctrl+C |
Mode d'édition en langage de programmation Cobol. |
Ctrl+M et Ctrl+E |
Mode d'édition en langage de programmation Euphoria. |
Ctrl+M et Ctrl+F |
Mode d'édition en langage de programmation Fortran. |
Ctrl+M et Ctrl+K |
Change de couleur. |
Ctrl+M et Ctrl+L |
Centrer à gauche. |
Ctrl+M et Ctrl+H |
Passe en mode hôte. |
Ctrl+M et Ctrl+I |
Mode d'édition de fichier d'intialisation de configuration (“.INI”). |
Ctrl+M et Ctrl+M |
Mode d'édition de menu souris. |
Ctrl+M et Ctrl+P |
Mode d'édition en langage de programmation Pascal. |
Ctrl+M et Ctrl+R |
Centre à droite. |
Ctrl+M et Ctrl+U |
Souligne le mot courant. |
Ctrl+M et Ctrl+Z |
Mode d'édition en langage de programmation C/C++. |
Ctrl+N et Ctrl+A |
Nouveau fichier en mode d'édition assembleur. |
Ctrl+N et Ctrl+B |
Nouvelle icône |
Ctrl+N et Ctrl+C |
Nouvelle feuille de calcul (tableur). |
Ctrl+N et Ctrl+D |
Nouveau dessin |
Ctrl+N et Ctrl+E |
Nouveau fichier en mode d'édition Euphoria. |
Ctrl+N et Ctrl+F |
Nouveau fichier en mode d'édition Fortran. |
Ctrl+N et Ctrl+G |
Nouveau document de format GAT |
Ctrl+N et Ctrl+H |
Nouvelle entête de fichier en langage de programmation C/C++. |
Ctrl+N et Ctrl+K |
Nouveau fichier AC. |
Ctrl+N et Ctrl+L |
Nouveau fichier en mode d'édition Cobol |
Ctrl+N et Ctrl+M |
Nouveau fichier musical de format .MOD |
Ctrl+N et Ctrl+N |
Liste des nouveaux |
Ctrl+N et Ctrl+P |
Nouveau fichier en mode d'édition Pascal. |
Ctrl+N et Ctrl+Q |
Nouveau fichier en mode d'édition Basic. |
Ctrl+N et Ctrl+R |
Nouveau fichier en mode d'édition Ressource. |
Ctrl+N et Ctrl+ W |
Nouveau fichier en mode d'édition Basic d'Apple ][. |
Ctrl+N et Ctrl+X |
Nouveau fichier en mode d'édition Basic Commodore 64K. |
Ctrl+N et Ctrl+Y |
Nouveau fichier en mode d'édition Basic de Coco 3. |
Ctrl+N et Ctrl+Z |
Nouveau fichier en mode d'édition C/C++. |
Ctrl+O et Ctrl+A |
Ouvrir un fichier en mode d'édition Assembleur. |
Ctrl+O et Ctrl+B |
Ouvrir un fichier d'icône. |
Ctrl+O et Ctrl+C |
Ouvrir un fichier feuille de calcul (tableur) |
Ctrl+O et Ctrl+D |
Ouvrir un dessin. |
Ctrl+O et Ctrl+E |
Ouvrir un fichier de langage de programmation Euphoria. |
Ctrl+O et Ctrl+F |
Ouvrir un fichier en mode de langage de programmation Fortran. |
Ctrl+O et Ctrl+G |
Ouvrir un document de format GAT. |
Ctrl+O et Ctrl+H |
Ouvrir un entête de langage de programmation C/C++. |
Ctrl+O et Ctrl+I |
Mode d'auto-indentation actif/inactif. |
Ctrl+O et Ctrl+K |
Ouvrir un fichier en mode d'édition de langage de programmation AC. |
Ctrl+O et Ctrl+L |
Ouvrir un fichier en mode d'édition de langage de programmation Cobol. |
Ctrl+O et Ctrl+M |
Ouvrir un fichier musical en format .MOD |
Ctrl+O et Ctrl+O |
Liste des ouvertures. |
Ctrl+O et Ctrl+P |
Ouvrir un fichier en mode d'édition de langage de programmation Pascal. |
Ctrl+O et Ctrl+Q |
Ouvrir un fichier en mode d'édition de langage de programmation Basic. |
Ctrl+O et Ctrl+R |
Ouvrir un fichier en mode d'édition ressource. |
Ctrl+O et Ctrl+S |
Gestionnaire d'opérateur système. |
Ctrl+O et Ctrl+T |
Mode tabulation actif/inactif |
Ctrl+O et Ctrl+W |
Ouvrir un fichier en mode d'édition de format Basic d'Apple ][. |
Ctrl+O et Ctrl+X |
Ouvrir un fichier en mode d'édition de format Basic de Commodore 64K. |
Ctrl+O et Ctrl+Y |
Ouvrir un fichier en mode d'édition de format Basic de Coco III. |
Ctrl+O et Ctrl+Z |
Ouvrir un fichier en mode d'édition de format de langage de programmation C/C++. |
Ctrl+P et Ctrl+A |
Ouvrir un fichier assembleur et l'éditer en format compressé en mémoire. |
Ctrl+P et Ctrl+B |
Ouvrir un fichier Basic et l'éditer en format compressé en mémoire. |
Ctrl+P et Ctrl+E |
Ouvrir un fichier Euphoria et l'éditer en format compressé en mémoire. |
Ctrl+P et Ctrl+F |
Ouvrir un fichier Fortran et l'éditer en format compressé en mémoire. |
Ctrl+P et Ctrl+H |
Stationne les têtes de lectures du/des disque dur(s) |
Ctrl+P et Ctrl+K |
Ouvrir un fichier AC et l'éditer en format compressé en mémoire. |
Ctrl+P et Ctrl+J |
Journal personnel. |
Ctrl+P et Ctrl+L |
Ouvrir un fichier Cobol et l'éditer en format compressé en mémoire. |
Ctrl+P et Ctrl+M |
Fait jouer un fichier musical de format .MOD. |
Ctrl+P et Ctrl+P |
Ouvrir un fichier Pascal et l'éditer en format compressé en mémoire. |
Ctrl+P et Ctrl+Q |
Ouvrir un fichier Basic et l'éditer en format compressé en mémoire. |
Ctrl+P et Ctrl+S |
Arrête de faire jouer le fichier musical. |
Ctrl+P et Ctrl+Z |
Ouvrir un fichier C/C++ et l'éditer en format compressé en mémoire. |
Ctrl+Q et Ctrl+A |
Recherche et remplacement. |
Ctrl+Q et Ctrl+B |
Va au début du bloc. |
Ctrl+Q et Ctrl+C |
Va a la fin du fichier. |
Ctrl+Q et Ctrl+D |
Va a la fin de la ligne. |
Ctrl+Q et Ctrl+E |
Va au début de la page écran. |
Ctrl+Q et Ctrl+F |
Recherche de chaîne de caractères. |
Ctrl+Q et Ctrl+K |
Va a la fin du bloc. |
Ctrl+Q et Ctrl+L |
Permet de rappeler le contenu d'une ligne que vous avez modifiée par inadvertance. |
Ctrl+Q et Ctrl+P |
Retourne à la position antérieur du curseur. |
Ctrl+Q et Ctrl+R |
Va au début du fichier. |
Ctrl+Q et Ctrl+S |
Va au début de la ligne. |
Ctrl+Q et Ctrl+T |
Tri. |
Ctrl+Q et Ctrl+W |
Position de l'erreur. |
Ctrl+Q et Ctrl+X |
Va à la fin de la page. |
Ctrl+Q et Ctrl+Y |
Suppression des caractères compris entre la position du curseur et la fin de la ligne. |
Ctrl+S |
Efface les espaces a la droite du curseur. |
Ctrl+T |
Suppression du mot a la droite du curseur. |
Ctrl+U |
Souligne le mot à la fin du curseur et si positionne à la fin. |
Ctrl+V et Ctrl+A |
Regarde un fichier en format ASCII. |
Ctrl+V et Ctrl+M |
Choisir le mode vidéo d'affichage. |
Ctrl+W |
Défilement du texte d'une ligne vers le bas, position du curseur identique (mieux connu sous le terme de Scroll Up). |
Ctrl+X |
Centre le texte de la ligne courante. |
Ctrl+Y |
Efface la ligne courante. |
Ctrl+Z |
Défilement du texte d'une ligne vers le haut, position du curseur identique (mieux connu sous le terme de Scroll Down) |
Ctrl+F1 |
Aide technique.
|
Ctrl+F2 |
Édition d'un menu d'application. |
Ctrl+F3 |
Lance une fenêtre de Gestionnaire de fichiers. |
Ctrl+F7 |
Recherche |
Ctrl+F8 |
Remplace |
Ctrl+F10 |
Exécute une macro-commande. |
Ctrl+Insert |
Copie un bloc marqué. |
F1 |
Aide au sujet de ... |
F2 |
Sauvegarde. |
F3 |
Ouvrir un fichier. |
F4 |
Regarde hexadécimal. |
F5 |
Copie un fichier. |
F6 |
Va à la fenêtre suivante. |
F7 |
Crée un répertoire. |
F8 |
Efface un/des fichier(s) |
F9 |
Déplace/renomme un/des fichier(s) |
Shift+F2 |
Active le menu d'application. |
Shift+F3 |
Ouvrir un document de format GAT. |
Shift+F4 |
Regarde ASCII |
Shift+F6 |
Va la fenêtre précédente |
Shift+F9 |
Sous l'éditeur de traitement de texte, passe en mode dessin. |
Shift+F10 |
Édition d'une macro-commande. |
Shift+Insert |
Insertion d'un bloc. |
Les modèles de raccourcis de style Windows (Windows et OS/2) sont les suivants:
Combinaison clavier |
Description |
---|---|
Alt+F4 |
Fermeture de la fenêtre d'application. |
Ctrl+E |
Centrer le texte de la ligne courante. |
Ctrl+G |
Caractère spécifier en gras. |
Ctrl+I |
Caractère spécifier en italique. |
Ctrl+Insert |
Copie un bloc marqué. |
Ctrl+O |
Ouvrir un document. |
Ctrl+P |
Impression du document courant. |
Ctrl+S |
Sauvegarde du document courant. |
Ctrl+U |
Caractère spécifier souligner. |
Ctrl+Z |
Annuler la dernière opération. |
F1 |
Aide |
F10 |
Accède à la barre de menu déroulant |
Shift+Delete |
Couper un bloc. |
Shift+Insert |
Insertion d'un bloc. |
Gestionnaire de fichiers
Sous les systèmes d'exploitation de la ligné du DOS, lorsqu'on rajoute un extension, dans le but de faire jouer un .MOD par exemple, on doit toujours passer par un chemin unique, impossible d'utiliser un autre moyen que le programme fournissant la nouvelle propriété en question! Sous les environnements graphique tel Windows, on peut ajouter une composante universelle offrant un service utilisable par toutes les applications. Cette innovation est un plus, toutefois le MonsterBook fonctionne sous DOS, on devra donc trouver un autre compromis! Alors quoi faire?
Afin de résoudre le d'avoir un dédoublement de fonction inutile associé à un fichier, il sera primordiale d'écrire une unité de liaison d'outil d'un menu contextuel applicable à une sélection de fichier. Celui-ci offrant les éléments de base (renommer, supprimer,...) afin d'effectuer des tâches d'entretien primordiale et de composantes associée. Le service aura donc l'orientation suivante:
Menu Contextuel pour un fichier
(index 26)
Ouverture d'un fichier
Gestionnaire de programmes
(fenêtre d'exploration)
Gestionnaire de fichiers
Environnement graphique
L'environnement graphique sera grandement inspirer des concepts de l'Amiga. Ainsi on perçois l'affichage non pas comme pixel par pixel mais avec une orientation quadriller. On ne retrouve donc aucun multiple inférieur à 8 dans les routines d'affichage de base des boîtes de dialogues. De cette façon on pourra éviter l'utilisation d'opération de multiplication car ceux-ci sont relativement lent en terme d'exécution de cycle d'horloge du microprocesseur. Car ne l'oublions pas, on devra toujours être en mesure d'exploiter le système sous des machines très lentes ou par exemple sur un émulateur comme DOSEmu de Linux! On devra également être en mesure d'utiliser les routines en se référençant à partir d'une boite de dialogue; Simple question de logique...
On pourra le faire fonctionner en mode texte aussi bien qu'en mode graphique. Car il est parfois inutile de passer en mode graphique simplement pour voir un simple texte. Dans le même ordre d'idée, les modes suivants seront donc nécessairement supporter:
Type |
Définition |
Nombre de couleurs |
Carte vidéo |
---|---|---|---|
Texte |
40x25 |
16 couleurs |
CGA, EGA, VGA, SVGA |
Texte |
80x25 |
Monochrome |
MDA, EGA, VGA, SVGA |
Texte |
80x25 |
16 couleurs |
CGA, EGA, VGA, SVGA |
Texte |
80x28 |
16 couleurs |
CGA, VGA, SVGA |
Texte |
80x43 |
16 couleurs |
EGA, VGA, SVGA |
Texte |
80x50 |
16 couleurs |
VGA, SVGA |
Texte |
132x25 |
16 couleurs |
GS et certaines SVGA |
Texte |
132x28 |
16 couleurs |
GS et certaines SVGA |
Texte |
132x43 |
16 couleurs |
Certaines SVGA |
Texte |
132x50 |
16 couleurs |
Certaines SVGA |
Texte |
132x60 |
16 couleurs |
Certaines SVGA |
Graphique |
320x200 |
4 couleurs |
CGA, EGA, VGA, SVGA |
Graphique |
360x480 |
256 couleurs |
VGA, SVGA |
Graphique |
640x200 |
2 couleurs |
CGA, EGA, VGA, SVGA |
Graphique |
640x200 |
16 couleurs |
GS, EGA, VGA, SVGA |
Graphique |
640x350 |
2 couleurs |
EGA, VGA, SVGA |
Graphique |
640x350 |
16 couleurs |
EGA, VGA,SVGA |
Graphique |
640x480 |
2 couleurs |
EGA, VGA, SVGA |
Graphique |
640x480 |
16 couleurs |
VGA, SVGA |
Graphique |
640x480 |
256 couleurs |
SVGA |
Graphique |
640x480 |
65536 couleurs |
SVGA |
Graphique |
800x600 |
16 couleurs |
SVGA |
Graphique |
800x600 |
256 couleurs |
SVGA |
Graphique |
800x600 |
65536 couleurs |
SVGA |
Graphique |
1024x768 |
16 couleurs |
SVGA |
Graphique |
1024x768 |
256 couleurs |
SVGA |
Graphique |
1024x768 |
65536 couleurs |
SVGA |
Dans l'éventualité de minimiser la quantité de code générer par l'utilisation de boite de dialogue et afin d'alléger au niveau de la compréhension de la programmation de ceux-ci, on devra ajouter un support de code processeur DPU (voir document concerner). Celui-ci étant un code machine spécialiser dans le traitement de boite de dialogue, nous permettra d'obtenir d'excellent compromis en plus d'offrir la possibilité de modifier les boites de dialogues dans le but d'une traduction par exemple ou a leur convenance sans toutefois nécessiter les codes sources original du programme ou une recompilation de celui-ci. En somme il s'agira d'un compromis offrant également la possibilité de ne pas charger immédiatement en mémoire ces composantes et d'éventuellement les inclure a une gigantesque base de données.
Dans le but d'offrir une compatibilité a des environnements plutôt difficile, le pointeur de souris par exemple pourra être en graphique même en mode texte (inspirer des logiciels de Symantec et de Central-Point) et offrir un mode de soulignement à partir de carte vidéo EGA ou postérieure. Et donc, l'environnement graphique pourra naturellement fonctionner aussi bien en mode texte quand mode graphique.
L'esthétisme de l'environnement graphique devra également inclure certaines options particulière afin de faciliter une migration de style d'environnement a un autre. Ainsi, on retrouvera des boutons ayant le style Elvis, Bubble, Windows, OS/2, Amiga, Macintosh, Box,... Dans le même genre d'idée on pourra constater le même phénomène concernant le cadre des applications: Robotic, Windows, Relief,... Voici donc les styles de bouton à imiter:
Nom |
Description |
Aspect |
---|---|---|
Elvis |
Descendant du Turbo Vision |
|
Bubble |
En forme de cercle |
|
Windows et OS/2 |
Des systèmes d'exploitation OS/2 et Windows, simple bordure en relief. |
|
Amiga |
Des ordinateurs Amiga, forme de losange |
|
Macintosh |
Des ordinateurs Macintosh |
|
Box |
Grosse boite faisant le contour de l'écriture. |
|
Lorsque l'utilisateur sera confronter a une configuration de composantes, il devra être possible d'afficher simultanément pendant sa sélection un GIF animer (ou substitue) ou non représentant la catégorie de l'opération qu'il veut effectuer. Cette option sera nécessaires afin de promouvoir l'efficacité du MonsterBook et surtout parce que les masses populaires est de nature facilement impressionnables par “le tape à l'oeil”! Il s'agit en d'autre terme d'un atout essentiel au niveau commercial.
La technologie visant a effectuer une gestion des multiples fenêtres d'application sera basée sur la méthode H (voir document concerner) celui-ci offrant contrairement au système d'exploitation graphique traditionnel des routines virtuel de branchement sur des temps a perte relativement court. Ceci permettant d'effectuer un semblant de multitâche même si pourtant le noyau ne l'est pas vraiment!
Traitement de texte
Le traitement de texte utilisera une technique fort simple de gestion de traitement de l'information. Il exploitera la technique de Liste Symétrique afin de pouvoir charger de l'information de taille variable.
Des propriétés particulière devront être ajouter afin de permettre la métamorphose de cette application pour qu'il prenne une forme identique a celle de Microsoft Office, Word Perfect (dans son ancien mode de fonctionnement DOS aussi bien que depuis qu'il fut repris par Corel sous l'aspect de Windows), Premier Choix, Professionnal Write, Emac de Linux ou un autre concurrent. Ainsi on devra être capable de fixer la règle en haut ou en bas de la fenêtre ou ne pas l'afficher du tout. On devra aussi être capable de déplacer la barre d'outils dans les mêmes position. Il devra également être possible d'ajouter une barre supplémentaire dans le haut de la fenêtre pour offrir une compatibilité possible avec StarOffice par exemple lorsqu'il permet de charger les derniers fichiers éditer ou visualiser.
On devra également être capable d'inclure des images au document, ceci permettant l'inclusion par exemple d'histogramme, de tableur ou autre données du même genre. Ils pourront être directement inclus au document ou tous simplement être un lien par exemple envers un GIF par exemple et charger indépendamment à chaque fois. Ce compromis permettrait par exemple l'utilisation de la même image dans plusieurs document différents. Cette aspects pourra être relativement intéressant dans les cas ou l'on réexploite souvent les mêmes images, comme dans le cas de barre de séparation en autre. Il serait en effet tout a fait absurde de gaspiller la moitié de l'espace attribuer au document sous prétexte d'indépendance envers les autres pourtant inséparable de la première au niveau des idées...
Afin de permettre une expansion du traitement de texte vers une optique plus proche de celle cité plus haut, il faudra offrir une système parallèle complémentaires au traitement de texte. Il s'agit d'une liste symétrique ayant une correspondance avec l'information du traitement de texte a proprement parler dont voici l'entête de chacun d'eux:
Nom |
Taille |
Description |
|
---|---|---|---|
Modèle |
1 octet |
Le modèle correspondant: |
|
Code |
Description |
||
0 |
Nulle, inutilisé |
||
1 |
Repère de texte |
||
2 |
Image |
||
3 |
Police de caractères externe |
||
4 |
Cadre de tableau, tableur,... |
||
5 |
Base de données |
||
6 |
Dessin en fil de fer |
||
7 |
Lien INTERNET |
||
8 |
Données interne du document (code Java par exemple,...) |
||
9 |
Faute d'orthographe |
||
10 |
Couleur comme les remarques de code source en autre. |
||
11 |
Date du jour |
||
12 |
Lettrine |
||
13 |
Remarque |
||
14 |
Macro |
||
15 |
Ligne horizontal |
||
X1 |
1 octet |
Position horizontal supérieur |
|
Y1 |
1 octet |
Position vertical supérieur |
|
X2 |
1 octet |
Position horizontal inférieur |
|
Y2 |
1 octet |
Position vertical inférieur |
Lorsque le traitement de texte sera en mode d'édition de code source, il devra pouvoir indiquer de façon accentuer les différents mots considérer comme de couleurs différentes. Voici donc la liste correspondante à chacun des cas:
Langage |
Cas |
Identificateur |
---|---|---|
Assembleur 80x86 |
Mots d'instruction |
AAA, AAD, AAM, AAS, ADC, ADD, AND, BSF, BSR, BT, BTC, BTR, BTS, CALL, CBW, CLC, CLD, CLI, CMC, CMP, CMPSB, CMPSD, CMPSW, CWD, DAA, DAS, DEC, DIV, ENTER, ESC, HLT, IDIV, IMUL, IN, INC, INSB, INSD, INSW, INT, INTO, IRET, IRETD, JA, JAE, JB, JBE, JC, JCXZ, JE, JECXZ, JG, JGE, JL, JLE, JMP, JNA, JNAE, JNB, JNBE, JNC, JNE, JNL, JNLE, JNG, JNGE, JNO, JNS, JNZ, JO, JS, JZ, LAHF, LAR, LDS, LEA, LEAVE, LES, LFS, LGS, LOCK, LODSB, LODSD, LODSW, LOOP, LOOPE, LOOPNE, LOOPNZ, LOOPZ, MOV, MOVSB, MOVSD, MOVSW, MOVSX, MOVZX, MUL, NEG, NOP, NOT, OR, OUT, OUTSB, OUTSD, OUTSW, POP, POPA, POPAD, POPF, PUSH, PUSHA, PUSHAD, PUSHF, RCL, RCR, REP, REPE, REPNE, REPNZ, REPZ, RETF, RETN, ROL, ROR, SAHF, SAL, SAR, SBB, SCASB, SCASD, SCASW, SET, SHL, SHLD, SHR, SHRD, STC, STD, STI, STOSB, STOSD, STOSW, SUB, TEST, WAIT, XCHG, XLAT et XOR |
Assembleur 80x86 |
Mots de registre |
AH, AL, AX, BH, BL, BP, BX, CH, CL, CS, CX, DH, DI, DL, DS, DX, EAX, EBP, EBX, ECX, EDI, EDX, ESI, ESP, ES, FS, GS, SI, SP et SS |
Assembleur 80x86 |
Mots réservé |
ASSUME, BYTE, CMPS, CODE, DATA, DATAPTR, DB, DD, DUP, DW, DWORD, ELSE, END, ENDIF, ENDM, ENDP, ENDS, EQU, EXTRN, FAR, FWORD, IFB, IFE, INCLUDE, INS, LOCAL, LODS, MACRO, MOVS, NEAR, NOTHING, OFFSET, OUTS, PAGE, PASCAL, PRIVATE, PROC, PTR, PUBLIC, QWORD, RET, SCAS, SEGMENT, SHORT, STOS, STRUC, TBYTE, THIS, TITLE, TYPE et WORD |
Basic |
Mots de fonction |
ABS, ASC, ATN, BRK, BUTTON, CDBL, CHR$, CINT, COM, COS, CSNG, CSRLIN, CVD, CVI, CVS, DATE$, DBL, EOF, ERLIN, ERNO, ERR, ERROR, EXP, FIX, FRE, HEX$, HPOINT, INKEY$, INP, INSTR, INT, JOYSTK, LEFT$, LEN, LOC, LOF, LOG, LPEEK, LPOS, MEM, MID$, MKD$, MKI$, MKS$, OCT$, PEEK, PMAP, POINT, POS, PPOINT, RIGHT$, RND, SGN, SIN, SPC, SQR, STR$, STRIG, STRING$, TAB, TAN, TIME$, TIMER, USR, VAL, VARPTR$ et VARPTR |
Basic |
Mot d'instruction |
APPEN, AUDIO, AUTO, BEEP, BLOAD, BRU, BSAVE, CATALOG, CHDIR, CIRCLE, CLEAR, CLOADM, CLOAD, CLOSE, CLS, COLOR, CONT, CSAVEM, CSAVE, DEF, DELETE, DEL, DRAW, EDIT, ERROR, EXEC, FIELD, FILES, FLASH, GET, GR, HBUFF, HCIRCLE, HCLS, HCOLOR, HDRAW, HGET, HGR, HLINE, HLIN, HOME, HPAINT, HPLOT, HPRINT, HPUT, HRESET, HSCREEN, HSET, HSTAT, HTAB, INPUT, INTERRUPT, INVERSE, KEY, KILL, LET, LINE, LIST, LLIST, LOAD, LOCATE, LOCK, LOOP, LPOKE, LPRINT, LSET, MAXFILE, MERGE, MKDIR, MOTOR, MO, NAME, NEW, NOMO, NORMAL, NOTRACE, OPEN, OUT, PAINT, PALETTE, PCLEAR, PCLS, PCOPY, PLAY, PLOT, PMODE, POKE, POP, POSITION, PRESET, PRINT, PSET, PUT, RANDOMIZE, READ, RECALL, RENAME, RENUM, RESET, RESTORE, RESUME, RETURN, RMDIR, RSET, SAVE, SCREEN, SET, SHELL, SHLOAD, SKIPF, SOUND, STOP, STORE, SWAP, SYSTEM, SYS, TRACE, UNLOCK, USING, VERIFY, VIEW, VLIN, VTAB, WAIT, WIDTH, WINDOW, WRITE et XDRAW |
Basic |
Mots réservé |
AND, AT, BASE, CALL, CASE, CHAIN, COMMON, DATA, DIM, DO, DYNAMIC, ELSE, END, ERASE, FOR, GOSUB, GOTO, IF, INTERRUPT, LOOP, NEXT, NOT, ON, OPTION, OR, RUN, SELECT, STEP, STOP, SUB, THEN, TO, TROFF, TRON, WEND, WHILE et XOR |
Batch File |
Mots réservé |
BREAK, CALL, CD, CHCP, CHDIR, COPY, CTTY, DATE, DEL, DIR, ERASE, ERRORLEVEL, EXIT, FOR, GOTO, IF, LH, LOADHIGH, MD, MKDIR, MOVE, NOT, PAUSE, RD, REN, RMDIR, SET, SHIFT, TIME, TYPE, VERIFY et VER. |
C/C++ |
Mots réservé |
asm, auto, break, case, cdcel, char, constant, continue, default, do, double, else, enum, extern, far, float, for, goto, huge, if, int, interrupt, long, near, pascal, register, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while, _cs, _ds, _es, _ss, _AH, _AL, _AX, _BH, _BL, _BP, _BX, _CH, _CL, _CX, _DH, _DI, _DL, _DX, _SI et _SP. |
Cobol |
Mots réservé |
ACCEPT, ACCESS, ADD, ADVANCING, AFTER, ALL, ALPHABETIC, ALSO, ALTER, ALTERNATIVE, AND, ARE, AREA, AREAS, ASCENDING, ASSIGN, AT, AUTHOR, BEFORE, BLANK, BLOCK, BOTTOM, BY, CALL, CANCEL, CD, CF, CH, CHARACTER, CHARACTERS, CLOCK-UNITS, CLOSE, COBOL, CODE, CODE-SET, COLLATING, COLUMN, COM, COMMA, COMMUNICATION, COMPUTATION, COMPUTE, CONFIGURATION, CONTAINS, CONTROL, CONTROLS, COPY, COR, CORRESPONDING, COUNT, CURRENCY, DATA, DATE, DATE-COMPILED, DATE-WRITTEN, DAY, DE, DEBUG-CONTENTS, DEBUG-ITEM, DEBUG-LINE, DEBUG-NAME, DEBUG-SUB-1, DEBUG-SUB-2, DEBUG-SUB-3, DEBUGGING, DECIMAL-POINT, DECLARATIVES, DELETE, DELIMITED, DELIMITER, DEPENDING, DESCENDING, DESTINATION, DETAIL, DISABLE, DISPLAY, DIVIDE, DIVISION, DOWN, DUPLICATES, DYNAMIC, EGI, ELSE, EMI, ENABLE, END, END-OF-PAGE, ENTER, ENVIRONMENT, EOP, EQUAL, ERROR, ESI, EVERY, EXCEPTION, EXIT, EXTEND, FD, FILE, FILE-CONTROL, FILLER, FINAL, FIRST, FOOTING, FOR, FROM, GENERATE, GIVING, GO, GREATER, GROUP, HEADING, HIGH-VALUE, HIGH-VALUES, I-O, I-O-CONTROL, IDENTIFICATION, IF, IN, INDEX, INDEXED, INDICATE, INITIAL, INITIATE, INPUT, INPUT-OUTPUT, INSPECT, INSTALLATION, INTO, INVALID, IS, JUS, JUSTIFIED, KEY, LABEL, LAST, LEADING, LEFT, LENGTH, LESS, LIMIT, LIMITS, LINAGE, LINAGE-COUNTER, LINE, LINE-COUNTER, LINES, LINKAGE, LOCK, LOW-VALUE, LOW-VALUES, MEMORY, MERGE, MESSAGE, MODE, MODULES, MOVE, MULTIPLE, MULTIPLY, NATIVE, NEGATIVE, NEXT, NO, NOT, NOTE, NUMBER, NUMERIC, OBJECT-COMPUTER, OCCURS, OF, OFF, OMITTED, ON, OPEN, OPTIONAL, OR, ORGANIZATION, OUTPUT, OVERFLOW, PAGE, PAGE-COUNTER, PERFORM, PF, PH, PIC, PICTURE, PLUS, POINTER, POSITION, POSITIVE, PRINTING, PROCEDURE, PROCEDURES, PROCEED, PROGRAM, PROGRAM-ID, QUEUE, QUOTE, QUOTES, RANDOM, RD, READ, RECEIVE, RECORD, RECORDS, REDEFINES, REEL, REFERENCES, RELATIVE, RELEASE, REMAINDER, REMOVAL, RENAMES, REPLACING, REPORTS, RERUN, RESERVE, RESET, RETURN, REVERSED, REWIND, REWRITE, RF, RH, RIGHT, ROUNDED, RUN, SAME, SD, SEARCH, SECTION, SECURITY, SEGMENT, SEGMENT-LIMIT, SELECT, SEND, SENTENCE, SEPARATE, SEQUENCE, SEQUENCIAL, SET, SIGN, SIZE, SORT, SORT-IMAGE, SOURCE, SOURCE-COMPUTER, SPACE, SPACES, SPECIAL-NAMES, STANDARD, STANDARD-1, START, STATUS, STOP, STRING, SUB-QUEUE-1, SUB-QUEUE-2, SUB-QUEUE-3, SUBTRACT, SUM, SUPPRESS, SYMBOLIC, SYN, SYNCHRONIZED, TABLE, TALLYING, TAPE, TERMINAL, TERMINATE, TEXT, THAN, THROU, THROUGH, TIME, TIMES, TO, TOP, TRAILING, TYPE, UNIT, UNSTRING, UNTIL, UP, UPON, USAGE, USE, USING, VALUE, VALUES, VARYING, WHEN, WITH, WORDS, WORKING-STORAGE, WRITE, ZERO et ZEROES |
Euphoria |
Mots réservé |
AND, BY, CONSTANT, DO, DOWNTO, END, ELSE, ELSIF, EXIT, FOR, FUNCTION, GLOBAL, IF, INCLUDE, OR, PROCEDURE, RETURN, THEN, TO, TYPE, WHILE, WITHOUT et XOR |
Fortran |
Mots réservé |
AND, CALL, COMMON, CONTINUE, DATA, DIMENSION, DO, END, EQ, GE, GOTO, GO, GT, IF, LT, NE, NOT, OR, PROGRAM, STOP, THEN et TO |
Pascal |
Mots réservé |
ABSOLUTE, AND, ASSEMBLER, ASM, ARRAY, BEGIN, CASE, CONST, CONSTRUCTOR, CSTRING, DESTRUCTOR, DIV, DO, DOWNTO, ELSE, END, EXPORT, EXPORTS, EXTERNAL, FILE, FAR, FOR, FUNCTION, GOTO, IF, IMPLEMENTATION, IN, INHERITED, INLINE, INTERFACE, LABEL, LIBRARY, MOD, NEAR, NIL, NOT, OBJECT, OF, OR, PACKED, PROCEDURE, PROGRAM, RECORD, REPEAT, SET, SHL, SHR, STRING, THEN, TO, TYPE, UNIT, UNTIL, USES, VAR, VIRTUEL, WHILE, WITH, XOR |
Pascal B57 |
Mots réservé |
ABSOLUE, ABSOLUTE, ALLERA, ALORS, AND, ARRAY, ASM, ASSEMBLE, ASSEMBLER, ASSEMBLEUR, AUTREMENT, AVEC, BEGIN, BIBLIOTHEQUE, CAS, CASE, CODECONST, CONST, CONSTANT, CONSTANTE, CONSTRUCTEUR, CONSTRUCTOR, CSCONST, CSDATA, DANS, DE, DEBUT, DECALD, DECALG, DED, DEG, DESTRUCTEUR, DESTRUCTOR, DIV, DO, DUPLICATE, DUPLICATION, DUPLIQUE, ELIF, ELSE, ELSEIF, ELSIF, END, ENLIGNE, ENREGISTREMENT, ENSEMBLE, ET, ETIQUETTE, EXPORTS, FAIRE, FAR, FICHIER, FILE, FIN, FINALISATION, FINALIZATION, FONCTION, FOR, FUNCTION, GOTO, HERITIER, IF, IMPLEMENTATION, IN, INCLUDE, INHERITED, INLINE, INITIALISATION, INITIALIZATION, INTERFACE, INTERRUPT, JUSQUA, LABEL, LIBRARY, LOIN, MACRO, MOD, NEAR, NOT, OBJECT, OBJET, OF, OR, OU, OUX, PACKED, PAQUET, PAS, POUR, PROCEDURE, PROCHE, PROGRAM, PROGRAMME, RANGEE, RECORD, REGISTER, REGISTRE, REPEAT, REPETER, SET, SHL, SHR, SI, SINON, TANTQUE, THEN, TO, TTQ, TYPE, TYPEDEF, UNIT, UNITE, USES, UTILISES, VAR, VARIABLE, VIRTUAL, VIRTUEL, WHILE, WITH et XOR |
PopMenu |
Mots réservé |
ASSIGN, BEGIN, END, EXECUTE, MATCH, MEND, MENU, MENUITEM, NOTHING, PEND, POPUP, SELECT, SEPARATOR, TEXT et TYPE |
En plus, on devra offrir la possibilité de l'activer ou de le désactiver ou de passer d'un format à l'autre selon le désir de l'utilisateur!
Concernant les macros, on aura le choix entre les différentes commandes suivantes exécutable à partir d'un fichier texte:
Instruction |
Description |
---|---|
For |
Pour produire un effet répétitif. |
Ln |
Saute d'une ligne. L'équivalent de la touche «Enter». |
PageFormat |
Cette instruction indique au traitement de texte que vous voulez spécifier le format (ou la dimension de votre page pour permettre de ne pas produire de conflit de trop petite ou grande taille de page... ) |
PageNm |
«PageNumber», numéro de page, indique votre numéro de page additionner lors de l'impression de votre texte. |
Put |
Affiche du texte(s) mais sans passer à la ligne suivante. Il attend bien sagement à la suite du texte venant d'être écrit. |
PutLn |
Affiche du texte(s) et passe à la ligne suivante. |
SetDblChr |
«SetDoubleCharacter», fixe en double largeur les prochains caractères, change le mode d'édition du traitement de texte. Les caractères suivant seront automatiquement d'une largeur double. |
SetNorChr |
«SetNormalCharacter», fixe en mode normal, s'en attribue particulier les prochains caractères. Les caractères suivant ne seront plus double largeur, gras, italique ou quelque chose du même genre, ils seront ordinaire, sans charme, par défaut... |
Voici maintenant une description plus détaillés de chacune des macros:
L'instruction PageFormat
Sa syntaxe ne permet qu'un style possible «PageFormat» suivi d'un numéro à 4 chiffres séparées par des virgules comme ce format ci:
PageFormat X1,Y1,X2,Y2 |
Vous ne pouvez naturel pas placer des lettres dans cette instruction, ils sont là juste comme identificateur. Le premier, «X1», indique la coordonnée (marge de) gauche de la feuille. Le deuxième «Y1» indique la coordonnée du haut de la feuille. Le troisième «X2» indique la marge de droite, en partant de la gauche, en caractères. Et non pas de droite vers la gauche! Le dernier, «Y2», est naturel la position du bas en partant du haut. Et surtout pas la marge de bas de la feuille vers le haut, sinon vous rencontrerez des dimensions de feuilles négative, soit théoriquement impossible dans notre univers!
Par exemple si vous souhaitez ardemment garder une feuille de format standard, voici ce qu'il faut marquer: «PageFormat 10,6,70,60», pour en mode compressé «PageFormat 10,6,120,82».
Les instructions Put et PutLn
Ces 2 instructions s'applique de la même manière à la seule différence que l'un saute une ligne après (PutLn) et l'autre pas (Put). Il suffit d'écrire entre guillemet (") votre message à transmettre. Si par exemple vous souhaitez faire écrire le message «Je déteste les macros!». Vous écrirez le l'instruction suivante:
Put "Je déteste les macros!" |
L'interpréteur de macro n'écrit pas les guillemets! C'est seulement une délimitation pour lui.
Chiffrier électronique (tableur)
Le chiffrier électronique mieux connu sous le nom de tableur devra s'orienter vers la technique dites “Liste Symétrique Intelligente”, celle-ci offre la possibilité d'avoir un nombre relative de ligne vide sans pour autant devoir gaspiller de la mémoire ou du temps dans sa recherche appliquer. Autrement dit, si on rentre des données seulement à la cellule AAAB65520 on ne gaspillera pas 5 Mo pour pouvoir stocker cette cellule mais seulement la vingtaine d'octet nécessaire à imaginer le delta correspondant. On devra également inclure les formules au sein même du code permettant d'obtenir par exemple des fonctions statistiques, astronomiques ou autres.
Les caractéristiques de chacune des cellules permettront d'obtenir une couleur particulier, un format de bordure et autres caractéristiques du même genre:
Nom |
Taille |
Description |
|
---|---|---|---|
Format |
1 octet |
Type de cellule |
|
Code |
Description |
||
0 |
Vide |
||
1 |
Valeur numérique |
||
2 |
Texte |
||
3 |
Formule mathématique |
||
4 |
Date |
||
Justification |
1 octet |
Droite, Centrer ou Gauche |
|
Attribut |
1 octet |
Couleur d'attribut (comme celui de l'écran de texte) |
|
Attribut spéciaux |
1 octet |
Attribut gras, souligner, exposant,... |
|
Bordure |
1 octet |
Bordure: droite, gauche, haut et/ou bas |
Dans le cas d'une bordure, il y a aura une combinaison possible de haut et bas, de gauche et droite, et ainsi de suite,... Toutes les combinaisons sont donc autorisées.
Programme de dessin technique
Le programme de dessin technique ne peut sauvegarde en Bitmap chacun des points, lignes, rectangles, ... dans un fichier d'image, il serait impossible de pouvoir le modifier, raccourcir, déplacement chacune de ses formes. Il deviendra invraisemblable de chercher une couleur de pixel ressemblant a une ligne a travers une image, ça demanderait des calculs presque infinie, voir même une compréhension humaine de l'image. Et se serait beaucoup trop long! Alors pour remédier a se problème, on suppose que chaque forme est en fait un objet manipulable de façon indépendante. On devra effectuer une recherche pour trouver le bonne objet peut importe l'échelle, la position, la taille,...
Tout d'abord, les objets sont tous en trois dimensions et se sont ses coordonnées ainsi que le modèle représentant chacun des objets au niveau interne. Voici de quel façon les caractéristiques de chaque objets devront être stockée en mémoire:
Nom |
Taille |
Description |
|
---|---|---|---|
Modèle |
1 octet |
Le modèle correspondant: |
|
Code |
Description |
||
0 |
Nulle, inutilisé |
||
4 |
Point |
||
5 |
Ligne |
||
6 |
Boîte (rectangle) |
||
7 |
Cercle (sphère) |
||
8 |
Cylindre |
||
9 |
Cône |
||
50 |
Flèche avec les coins carrés |
||
51 |
Flèche avec les coins en rond. |
||
99 |
DFD: Boite de contexte |
||
100 |
DFD: Processus (Traitement) |
||
101 |
DFD: Entité |
||
102 |
DFD: Dépôt (Fichier) |
||
X1 |
Réel (6 octets) |
Position X1 d'un cube (X1,Y1,Z1)-(X2,Y2,Z2) |
|
Y1 |
Réel (6 octets) |
Position Y1 d'un cube (X1,Y1,Z1)-(X2,Y2,Z2) |
|
X2 |
Réel (6 octets) |
Position X2 d'un cube (X1,Y1,Z1)-(X2,Y2,Z2) |
|
Y2 |
Réel (6 octets) |
Position Y2 d'un cube (X1,Y1,Z1)-(X2,Y2,Z2) |
|
Z1 |
Réel (6 octets) |
Position Z1 d'un cube (X1,Y1,Z1)-(X2,Y2,Z2) |
|
Z2 |
Réel (6 octets) |
Position Z2 d'un cube (X1,Y1,Z1)-(X2,Y2,Z2) |
|
Encrée |
Booléen (1 octet) |
Invisible lorsqu'ils sont encrées dans un autre objet? |
Applications terminal
Les applications terminal contrairement aux autres applications inclus dans le MonsterBook, seront codés comme une application console lequel seront exécuté à l'intérieur du MonsterBook sous la forme d'une session d'émulateur 8086. En effet, le but de cette construction un peu spécial n'est pas sans raison, puisqu'il faudra permettre d'exécuter le noyau de façon indépendant ou juxtaposer de l'environnement graphique avec le terminal de son choix. Il ne pourra donc pas être tout simplement inclus dans l'environnement graphique et être impossible a exécuter sans lui. Pour cette raison, il devra être diviser du projet d'environnement graphique pour atteindre cette objectif.
Outils programmeurs
L'outils des programmeurs devant rendre un service rapide, immédiat et simple est sans nulle doute l'inclusion d'un genre de Visual Basic à l'intérieur même du MonsterBook. Celui-ci devra, pour permettre une pleine adaptation optimale être précompilé en P-Code (un peu comme le GWBASIC à l'époque pour accélérer l'interpréteur) de façon entièrement transparente, c'est-à-dire ne pas avertir le programmeur des différentes étapes pour l'interpréter son code mais simplement voir le résultat final.
L'autre élément permettant d'obtenir une puissance colossale en terme d'espace disque d'espace et de simplicité c'est le puissant code DPU. Celui-ci est ni plus ni moins qu'un code machine scripte spécialisé pour la boite de dialogue. En voici les principaux codes valides:
Code |
Description |
00h |
Indicatif de terminaison |
01h |
SIZE X,Y |
02h |
WINDOWCOLORCLASSIC Title |
03h |
CLOSEICON |
04h |
LN |
05h |
BARUP |
06h |
TEXT Message |
07h |
TEXT (X,Y),Message |
08h |
TEXT (X),Message |
09h |
MESSAGE message |
0Ah |
SIMPLE GRID(x,y),attribut |
0Bh |
BARHORI (x1,y,x2) |
10h |
IF TRUE THEN |
11h |
ELSE |
12h |
END IF |
31h |
COLORCUBE (X,Y),Largeur,Hauteur |
41h |
CAPTION BYTE (X,Y),Longueur |
42h |
CAPTION WORD (X,Y),Longueur |
43h |
CAPTION LONG (X,Y),Longueur |
44h |
CAPTION REAL (X,Y),Longueur |
46h |
CAPTION STRING (X,Y),Longueur |
4Fh |
CAPTION COPY ( Xsource, Ysource ), ( Xtarget, Ytarget ) , ( XglobalProgress , YglobalProgress ) , ( XlocalProgress , YlocalProgress ) |
50h |
COPY|MOVE source,target[,OVERWRITE][,SUBFOLDER] |
6Dh |
RADIOBUTTON EXTERN (X,Y),Titre,Option |
6Fh |
CHECKBOX EXTERN (X,Y),Longueur,Message |
70h |
EXTERNAL PROCESSUS |
81h |
INPUT BYTE (X1,Y,X2),Longueur |
82h |
INPUT WORD (X1,Y,X2),Longueur |
83h |
INPUT LONG (X1,Y,X2),Longueur |
84h |
INPUT REAL (X1,Y,X2),Longueur |
85h |
KEYHORIDOWN Touche |
86h |
INPUT STRING (X1,Y,X2),Longueur |
87h |
LISTBOX (X1,Y1)-(X2,Y2),[SHADOW,]Titre |
88h |
SCROLLBAR Minimum:Maximum (X1,Y,X2),Couleur |
8Ah |
TABBEDNOTEBOOK Couleur,Nom |
8Bh |
COLORGRID (X,Y)[,Nombre de couleurs][,Nombre de ligne][,FALSE|PALETTE] |
8Ch |
FRAME (X1,Y1)-(X2,Y2),Titre |
8Dh |
RADIOBUTTON (X,Y),Titre,Option |
8Eh |
KEYHORI (X,Y),Largeur,Nom |
8Fh |
CHECKBOX (X,Y),Longueur,Message |
91h |
GHOST BYTE |
92h |
GHOST WORD |
93h |
GHOST LONG |
94h |
GHOST REAL |
96h |
GHOST STRING |
B0h |
SECTORIAL (X1,Y1)-(X2,Y2),Color1[,Color2][...] |
On retrouve donc une suite de ces codes avec les paramètres appropriées pour enfin obtenir un code terminaison 0.
Selon exactement le même principe, on retrouvera cette forme de scripte pour les menus contextuels selon le tableau suivant:
Code |
Description |
---|---|
00h |
Indicatif de terminaison |
01h |
ITEM - |
02h |
ITEM ... |
03h |
ITEM switch |
04h |
ITEM ... |
05h |
GROUP ITEM |
06h |
END GROUP |
07h |
IF TRUE THEN |
08h |
ELSE |
09h |
END IF |
0Ah |
MENU message |
On remarquera que d'habitude le DPU des menus est exploitée pour les ressources de menu contextuel activable par le deuxième bouton de la souris.
Enfin, n'oublions pas qu'il sera nécessaire de pouvoir compiler à partir d'une fenêtre d'édition de traitement de texte un fichier de ressource «.RC» en code DPU exploitable immédiatement par le MonsterBook.
Gestionnaire de programmes
Dans le cas du menu déroulant Windows 9X, les icônes seront stockée dans des ressources et ne devront pas être dupliqué. Pour se faire, on effectuera une recherche dans les ressources afin de trouver le numéro correspondant à la liste des ressources. Ce genre de ressource ne sera jamais retirer de la mémoire jusqu'à la fin de l'exécution du programme. Car étant donnée la petite que ceux-ci réclame, il est inadéquat de les décharger et recharger constamment, se serait ni plus ni moins qu'une perte inutile de performances.
Navigateur HTML (Gestionnaire de programmes)
Le navigateur de page HTML sera une partie partie du gestionnaire de programmes tous comme l'est le Panneau de configuration par exemple. La recompilation de l'affichage aura lieu à chaque rafraîchissement de la page en déplacement à l'exception des images, ceux-ci sont trop long à charger en mémoire à cause de leur format compacter, il faudra donc les stocker sous forme de ressources afin de contrer ce genre de problème.
Lors du chargement de la page, le texte affichées, les images, les cadres,... sont classés par groupe afin de permettre une résolution plus simple et rapide de chargement de la page. Il faudra également tenir compte d'erreur de chargement de page étant incomplète, fragmenter ou contenant des données invalide.
La fenêtre de navigation doit être construite dans une optique MDI, c'est-à-dire qu'il sera possible de charger plusieurs fenêtres de navigation HTML à l'écran dans le MonsterBook.
De leur côté, les polices de caractères doivent permettre un affichage transparent afin de supporter par exemple, une image de fond,... Les coordonnées devront également être calculer de façon à avoir une idée fixe concernant l'élément de la page de façon instantané. Certaines routines d'affichage de polices de caractères spécialiser permettront l'exclusion de certaines région devront être développer afin de permettre l'affichage de texte en bordure de l'écran. Ainsi, il donnera le même effet qu'un navigateur HTML professionnel tel Netscape ou Explorer.
Le JavaScript doit être stocké dans une région particulière de la mémoire et être traité que lorsque le HTML lui-même aura tout été traité et exécuter. Donc il devra être lancer après comme un “deuxième passage” des lignes de codes sources HTML.
Accessoires supplémentaires
Dans le cas des accessoires de pays, il devra être possible de fonctionner en fonction des informations retourner par le système d'exploitation ou bien de le configurer manuellement et de se fait de fonctionner à partir d'une base de données ayant une correspondance pour chaque pays ou région. Cependant, il ne devra pas avoir un numéro de clé primaire identique au DOS, mais un numéro lui étant propre en fonction de chaque pays. Toutefois, il est a noter que dans chaque enregistrement, on retrouvera malgré tout un numéro correspondant au code de pays ou de région correspondant au système d'exploitation. La raison de cette particularité est d'éviter d'être confronter un système d'exploitation n'ayant pas d'information à jour sur certains pays ou région non encore reconnu dans leur base de données. En plus, dans d'autres situations, on a put constater que le développement était uniquement orienté sur l'environnement graphique et que le noyau DOS était tout simplement abandonner dans les spécifications particulière. Et donc de cette manière, cela permettra également de changer de pays sans avoir de compte à rendre au système d'exploitation pour la modification par l'intermédiaire d'une interruption. Ceux-ci n'étant actuellement pas très bien supporté, c'est-à-dire qu'il n'autorise pas un programme de catégorie DOS, comme le MonsterBook, à changer lui-même sa configuration de pays. Et cela malgré le fait qu'elle soit spécifier comme potentiellement réalisable dans la documentation technique de ceux-ci.
Chapitre 3
Programmation du projet
3. Programmation du projet
La programmation du projet est la partie décrivant de quel façon le source du MonsterBook est élaborer.
C'est la partie la plus difficile à expliquer car elle est en constant changement. On retrouve sous cette aspect, un problème fondamental, le changement constant de Spécification dû au fait que les techniques de programmation changent et que des meilleurs méthodes sont découvertes à chaque jour! Devant l'ampleur d'un tel problème on pourra facilement en conclure qu'il ne saura jamais terminer? Peut-être bien, mais il aura au moins l'avantage de s'approcher petit à petit comme les pas patient d'une tortue vers un but assurer.
Voulant donc permettre a un humain normal de comprendre rapidement la structure des fichiers contenant les codes sources, on pourra les expliquer de la façon suivantes: les terminaisons en “TEX” pour cortex, sont les unités réservées pour les définitions de l'ensemble Malte Genesis IV: Alias Chantal et Malte Genesis V: Alias Adèle. Ensuite les unités commencent par les trois lettres “RES” sont attribuées pour la gestion des ressources de l'ensemble.
Dans le but d'optimiser les performances des applications, une unité de recouvrement ne fait jamais d'appel direct en boucle à une autre unité également de recouvrement!
Les routines de détection
Steve Job prétendait que si on additionnait toutes les secondes perdu lors de démarrage d'ordinateur, ceux-ci correspondraient à plusieurs vie d'être humain seulement en attente! Pour cette raison, le cas des routines de détection, devra être gérer d'une façon différentes des systèmes actuel afin d'éviter de commettre les mêmes erreurs. Les routines de détection ne seront pas uniquement au niveau du démarrage du MonsterBook. En effet, il sera inutile d'effectuer une détection souvent longue en attente pour l'utilisateur et pourtant celui-ci ne l'utilisera pas forcément lors de cette utilisation. Ainsi, il sera préférable d'effectuer une détection sélective permettant une accélération des routines de façon a effectuer des détections de composantes vraiment indispensable au lancement du programme et de seulement effectuer les autres lorsqu'une requête particulière attribuer a ceux-ci seront faites.
Place maintenant au explication de programmation, voici donc l'algorithme visant a effectuer la détection aura le cheminement suivant:
* Ce module permet de détecter le matériel disponible actuellement installer sur la machine.
MODULE Détection Matériel APPEL MODULE Détection Microprocesseur APPEL MODULE Détection Souris Détection Carte vidéo IBM SI Autorise la détection Super VGA ALORS Vérifie la présence d'une carte vidéo ATI Vérifie la présence d'une carte vidéo XGA Vérifie la présence d'une carte vidéo Video 7 Vérifie la présence d'une carte vidéo Ahead Vérifie la présence d'une carte vidéo Genoa Vérifie la présence de la carte vidéo Tseng Labs Vérifie la présence d'une carte vidéo IT-VGA2 Vérifie la présence d'une carte vidéo Cirrus Vérifie la présence d'une carte vidéo CTI Vérifie la présence d'une carte vidéo Trident Vérifie la présence d'une carte vidéo Everex Vérifie la présence d'une carte vidéo Zymos Vérifie la présence d'une carte vidéo Oak Vérifie la présence d'une carte vidéo Paradise FIN SI Détection du BIOS au standard VESA SI VESA ALORS Vérifie la présence d'une carte vidéo Matrox FIN SI |
Cette algorithme représente la méthode utilisée afin de détecter les microprocesseurs de différentes catégories et de fabricants (AMD, Cyrix, Intel,...):
MODULE Détection Microprocesseur Vérification du Micro-Processeur installée SI Processeur 32 bits ALORS Routine 32 bits Supportée VRAI SINON Routine 32 bits Supportée FAUX FIN SI Vérification du Pentium par Instruction CPUID SI Introuvable ALORS Teste Cyrix par contrôleur SI Cyrix trouvé ALORS Teste Présence Instruction CPUID FIN SI FIN SI |
L'algorithme suivant est employé dans le but de détecter les souris installés et d'éventuellement chargés le pilote appropriés en mémoire:
MODULE Détection Souris SI Pilote Souris EXISTE ALORS Souris Existe VRAI Déterminer configuration actuel SINON SI fonction BIOS du PS/2 EXISTE ALORS Souris Existe VRAI Modèle Souris PS/2 SINON Détection Souris Série SI Souris Trouvé ALORS Souris Existe VRAI Modèle Souris Port Série SINON Souris Existe FAUX FIN SI FIN SI FIN SI |
Détection du CMOS
La détection de la mémoire sur pile appeler plus couramment CMOS, existe de façon officiel qu'à partir de la gamme des PC/AT. Toutefois, de nombreux modèles de CMOS ont existé sur les clones de modèles PC/XT. Ceux-ci, offrant les mêmes services appréciables tel l'heure, la configuration,... Il est indispensable de fournir des techniques de détection appréciable pour les modèles suivantes malgré le fait qu'il n'en existe presque plus:
Numéro interne |
Port d'Entrée/Sortie associées |
Nom |
---|---|---|
01h |
0E0h à 0E1h |
Contrôleur CMOS RTC des machines WYSE |
02h |
2C0h à 2DFh |
Contrôleur CMOS RTC MM58167 |
03h |
2C0h à 2C7h |
Contrôleur CMOS RTC MM58167 |
04h |
2C0h à 2C1h |
Contrôleur CMOS RTC-58321 |
05h |
070h à 071h |
Contrôleur CMOS RTC MC146818 de Motorola |
Les fichiers
Les fichiers sont une des problématiques à la fois les plus simple et la plus compliqué dans un projet comme celui du MonsterBook. En effet, le problème est relativement simple quand on passe par un système d'exploitation DOS, sauf qu'avec les LFNs de Windows 9X, les descriptions de 4DOS, NDOS et toutes les fichiers généré par les applications populaires, il en devient parfois étourdissant de si retrouver.
Tout d'abord, dans la bibliothèque de code source, il existe deux méthodes, la première, en mode réel, est appelé ShortBF, puisqu'il s'agit d'une liste statique ne demandant pas beaucoup de mémoire mais ayant une limite de fichiers assez basse, la seconde est une méthode de liste symétrique, beaucoup plus gourmande et beaucoup moins efficace que la première.
ShortBF
Cette technique se résume ainsi: méthode de programmation visant essentiellement à économiser la mémoire tout en accélérant la vitesse de chargement des noms de fichiers du disque vers la mémoire.
Fonctionnement
Tout d'abord, il utilise un bloc de mémoire de 65520 octets ou le reste de la mémoire disponible sur le tas.
Ensuite, il charge les fichiers dans cette banque avec le format élémentaire «^Array of Search32Rec». Attention: Il faut éviter d'excéder le nombre de 2047 fichiers dans cette banque car un plantage ou un écrasement de données se produira.
Lorsque tous les fichiers sont chargés en mémoire, libérer dans la mémoire située à la fin de la banque, car elle n'est pas utilisé en fin de compte:
FreeMem(Ptr^[NombreFichiers], MémoireUtilisé-NombreFichiers*SizeOf(Search32Rec)); |
Problème à surmonté
Dans le Turbo Pascal conventionnel, il n'y a pas de possibilité de diminuer ou d'agrandir directement une zone de mémoire attribué par GetMem et MemAlloc. Pourtant, cette technique ne peut être efficace que si la banque de mémoire à la fin de l'opération peut être changé. Alors que faire?
Il suffit de libérer une partie de spécifique de mémoire avec l'instruction FreeMem. Toutefois, il faut s'assurer que l'offset est inférieur à 10h et de préférence égale 0 ou 8. C'est pour cette raison que souhaitera un enregistrement de multiple de 16 octets afin d'éviter ce genre d'ennui. Car, par exemple, 43 octets se tranche assez mal par rapport à 32 octets.
Format des Enregistrements
Pour éviter de nombreux problèmes techniques, il faut que la structure d'enregistrement d'un fichier soit d'une longueur exacte de 32 octets. Cependant, le système d'exploitation DOS par exemple, envoi des paquets de 43 octets. Il faudra donc être sélectif et envoyer seulement la partie concerné de façon à incrémenter de 2 le segment pour connaître l'emplacement de l'élément suivant. Voici d'abord l'enregistrement de format DOS:
SearchRec=Record |
Cette enregistrement doit être copié dans le «Search32Rec» à partir de la position Fill[12]:
Search32Rec=Record |
Les polices de caractères
Étant donnée que les polices de caractères actuel comme TrueType sont très lourd en terme de mémoire à utiliser, on devra reprogrammer un compromis à celui-ci beaucoup plus acceptable. Le résultat de cette idée est le QQF (Quick Québec Font). Celui-ci est rien de plus que des bitmaps cadré sur une surface spécifier. Les caractères seront tous accessibles de façon absolue dans le fichier afin qu'on puisse gagner un maximum de temps sans par ailleurs être obligé de le charger en mémoire.
Les pays et les régions
Les pays et les régions seront coder avec un numéro de reconnaissance propre indépendant du celui du DOS ou de Windows, car ceux-ci par exemple dans le cas de Windows 98 et Me, on ne retrouve pas autant de détails pour une application DOS que celle de Windows. En plus, il y a souvent plusieurs associations de régions pour un seul même code de pays. Il est donc indispensable de créer un code de reconnaissance autonome permettant de contrer le problème. Voici donc la liste des différentes régions utiliser à l'interne:
ID |
Code de page |
Code de pays |
Abréviation |
Pays/Région |
---|---|---|---|---|
100 |
27 |
437 |
ENU |
Afrique du Sud |
200 |
213 |
437 |
ENU |
Algérie |
300 |
49 |
850 |
DEU |
Allemagne |
310 |
61 |
437 |
ENU |
Anglais International |
400 |
44 |
437 |
ENG |
Angleterre |
500 |
3 |
437 |
ENU |
Amérique Latine |
600 |
966 |
437 |
ENU |
Arabie Saoudite |
700 |
54 |
437 |
ENU |
Argentine |
800 |
99 |
437 |
ENU |
Asie anglophone |
900 |
61 |
437 |
ENG |
Australie |
1000 |
43 |
437 |
DEU |
Autriche |
1100 |
880 |
437 |
ENU |
Bangladesh |
1200 |
32 |
850 |
FRA |
Belgique (Français) |
1300 |
32 |
850 |
NLD |
Belgique (Hollandais) |
1400 |
55 |
850 |
PTG |
Brésil |
1500 |
11 |
437 |
ENG |
Canada anglophone |
1600 |
2 |
863 |
FRC |
Canada francophone |
1700 |
56 |
437 |
ENU |
Chili |
1800 |
86 |
936 |
ENU |
Chine |
1900 |
357 |
437 |
ENU |
Chypre |
2000 |
57 |
437 |
ENU |
Colombie |
2100 |
82 |
934 |
KOR |
Corée |
2200 |
506 |
437 |
ENU |
Costa Rica |
2300 |
45 |
865 |
DAN |
Danemark |
2400 |
20 |
437 |
ENU |
Égypte |
2500 |
971 |
437 |
ENU |
Émirats Arabes Unis |
2600 |
34 |
850 |
ESP |
Espagne |
2700 |
1 |
437 |
ENU |
États-Unis |
2800 |
358 |
437 |
FIN |
Finlande |
2900 |
33 |
850 |
FRA |
France |
3000 |
30 |
437 |
ENU |
Grèce |
3100 |
502 |
437 |
ENU |
Guatemala |
3200 |
509 |
437 |
ENU |
Haïti |
3300 |
852 |
437 |
ENU |
Hong Kong |
3400 |
36 |
852 |
ENU |
Hongrie |
3500 |
22 |
437 |
ENU |
Île de Malte |
3600 |
91 |
437 |
ENU |
Inde |
3700 |
62 |
437 |
ENU |
Indonésie |
3800 |
98 |
437 |
ENU |
Iran |
3900 |
353 |
437 |
ENG |
Irlande |
4000 |
354 |
850 |
ISL |
Islande |
4100 |
972 |
862 |
ENU |
Israël |
4200 |
39 |
850 |
ITA |
Italie |
4300 |
81 |
932 |
ENU |
Japon |
4400 |
60 |
437 |
ENU |
Malaisie |
4500 |
212 |
437 |
ENU |
Maroc |
4600 |
52 |
850 |
ESP |
Mexique |
4700 |
64 |
437 |
ENG |
Nouvelle Zélande |
4800 |
47 |
865 |
NOR |
Norvège |
4900 |
92 |
437 |
ENU |
Pakistan |
5000 |
507 |
437 |
ENU |
Panama |
5100 |
785 |
864 |
ENU |
Pays arabes |
5200 |
31 |
850 |
NLD |
Pays-Bas |
5300 |
51 |
437 |
ENU |
Pérou |
5400 |
63 |
437 |
ENU |
Philippines |
5500 |
48 |
852 |
ENU |
Pologne |
5600 |
351 |
860 |
PTG |
Portugal |
5700 |
2 |
863 |
FRC |
Québec |
5800 |
88 |
437 |
ENU |
République Populaire de Chine |
5900 |
40 |
852 |
ENU |
Roumanie |
6000 |
44 |
437 |
ENG |
Royaume-Uni |
6050 |
2 |
863 |
FRC |
Saguenay/Lac-St-Jean |
6100 |
503 |
437 |
ENU |
Salvador |
6200 |
65 |
437 |
ENU |
Singapour |
6300 |
94 |
437 |
ENU |
Sri Lanka |
6400 |
46 |
850 |
SVE |
Suède |
6500 |
41 |
850 |
FRA |
Suisse (Français) |
6600 |
41 |
850 |
DEU |
Suisse (Allemand) |
6700 |
41 |
850 |
ITA |
Suisse (Italien) |
6800 |
886 |
938 |
ENG |
Taiwan |
6900 |
42 |
852 |
ENU |
Tchécoslovaquie |
7000 |
66 |
437 |
ENU |
Thaïlande |
7100 |
216 |
437 |
ENU |
Tunisie |
7200 |
90 |
857 |
ENU |
Turquie |
7300 |
7 |
437 |
ENU |
U.R.S.S. |
7400 |
58 |
437 |
ENU |
Venezuela |
7500 |
38 |
852 |
ENU |
Yougoslavie |
7600 |
1 |
437 |
ENU |
Autres pays |
Enfin que les personnes utilisant le MonsterBook ne se sentent pas trop dépayser, voici un les drapeaux correspondant à chacune des régions ou pays:
Pays/Région |
Pays/Région |
Pays/Région |
Pays/Région |
Pays/Région |
|
|
|
|
|
Afghanistan |
Afrique du Sud |
Albanie |
Algérie |
Allemagne |
|
|
|
|
|
Andorre |
Angleterre |
Angola |
Argentine |
Australie |
|
|
|
|
|
Autriche |
Bangladesh |
Belgique |
Brésil |
Canada |
|
|
|
|
|
Chili |
Chine |
Colombie |
Danemark |
Égypte |
|
|
|
|
|
Espagne |
France |
Grèce |
Hongrie |
Île de Malte |
|
|
|
|
|
Indonésie |
Italie |
Japon |
Mexique |
Nouvelle-Zélande |
|
|
|
|
|
Norvège |
Pays-Bas |
Pérou |
Philippines |
Pologne |
|
|
|
|
|
Québec |
Roumanie |
Saguenay/Lac-St-Jean |
Suède |
Suisse |
|
|
|
|
|
Tchécoslovaquie |
Thaïlande |
U.R.S.S |
États-Unis |
Venezuela |
|
|
|
|
|
Yougoslavie |
|
|
|
|
En plus dans le cas de l'affichage des dates, on devra supporter tous les cas possibles, c'est-à-dire selon les 6 suivantes à la manière d'un Macintosh:
Code |
Format |
---|---|
00h |
MM/JJ/AA |
01h |
JJ/MM/AA |
02h |
AA/MM/JJ |
03h |
MM/AA/JJ |
04h |
JJ/AA/MM |
05h |
AA/JJ/MM |
Les bases de données
On pourra gérer les divers informations contenu dans les bases de données de la façon suivante:
ResLoadD(ataBase) |
ResServD(ataBase) |
ResSaveD(ataBase) |
Reconnaissance du modèle de bases de données et de leur entête |
Lecture et écriture d'enregistrement
Positionnement et référencement |
Écriture de base de données à partir d'un source SQL
Création des nouvelles bases de données
Création des index de fichiers |
Naturellement, les trois unités ont des liaisons constantes les unes les autres.
Le traitement de texte
Un des principales problèmes d'un traitement de texte n'est pas le traitement de texte lui-même, mais l'importation de format de document étranger. En autre, mais certain langage de programmation comme le Basic peuvent encrypter en un genre de scripte les informations du source. Tout d'abord sachez que dans le tableau suivante, le code correspond aux octets lus par le module de chargements. Alors voici donc, pour commencer, la signification des codes en incompréhensible du BASICA et GWBASIC:
Code |
Description |
---|---|
00h 00h 00h |
Code de fin |
0Ch xxh yyh |
«&H» suivie de 4 chiffres en hexadécimal contenu sur deux octets. |
0Fh |
Indique que le suivant est un nombre (un octet) |
10h |
Indique que le suivant est un nombre (2 octets) |
11h à 1Ah |
Correspondent respectivement au symbole suivant: « », «!», «"», «#», «$», «%», «&», «'», «(», «)» |
3Ah 20h |
Instruction «GOSUB» |
3Ah A1h |
Instruction «ELSE» |
81h |
Instruction «END» |
82h |
Instruction «FOR» |
83h |
Instruction «NEXT» |
84h |
Instruction «DATA» |
85h |
Si fonction «INT» autrement «INPUT» |
86h |
Instruction «DIM» |
87h |
Instruction «READ» |
88h |
Instruction «RND» |
89h |
Instruction «GOTO» |
8Ah |
Instruction «RUN» |
8Bh |
Instruction «IF» |
8Ch |
Instruction «RESTORE» |
8Dh |
Instruction «GOSUB» |
8Eh |
Instruction «RETURN» |
91h |
Instruction «PRINT» |
95h |
Instruction «ON» |
97h |
Instruction «DEF» |
98h |
Instruction «POKE» |
0A0h |
Instruction «WIDTH» |
0ADh |
Instruction «DEFINT» |
0B0h |
Instruction «LINE» |
0B1h 0E9h |
Instruction «WHILE» |
0B2h |
Instruction «WEND» |
0B9h |
Instruction «RANDOMIZE» |
0BFh |
Instruction «COLOR» |
0C0h |
Instruction «CLS» |
0C2h |
Instruction «BSAVE» |
0C3h |
Instruction «BLOAD» |
0C4h |
Instruction «SOUND» |
0C5h |
Instruction «BEEP» |
0C6h |
Instruction «PSET» |
0C8h |
Instruction «SCREEN» |
0C9h |
Instruction «KEY» |
0CAh |
Instruction «LOCATE» |
0CCh |
Instruction «TO» |
0CDh |
Instruction «THEN» |
0CFh |
Instruction «STEP» |
0D2h |
Instruction «SPC» |
0D6h |
Instruction «STRING$» |
0D7h |
Instruction «USING» |
0DDh |
Instruction «OFF» |
0DEh |
Instruction «INKEY$» |
0E6h |
Instruction «>» |
0E7h |
Instruction «=» |
0E8h |
Instruction «<» |
0E9h |
Instruction «+» |
0EAh |
Instruction «-» |
0EBh |
Instruction «*» |
0ECh |
Instruction «/» |
0EEh |
Instruction «AND» |
0EFh |
Instruction «OR» |
0F0h |
Instruction «XOR» |
0FEh 081h |
Instruction «FILES» |
0FEh 083h |
Instruction «SYSTEM» |
0FEh 088h |
Instruction «PUT» |
0FEh 089h |
Instruction «GET» |
0FEh 08Bh |
Instruction «COMMON» |
0FEh 08Eh |
Instruction «TIME$» |
0FEh 08Fh |
Instruction «PAINT» |
0FEh 091h |
Instruction «CIRCLE» |
0FEh 092h |
Instruction «DRAW» |
0FEh 093h |
Instruction «PLAY» |
0FEh 094h |
Instruction «TIMER» |
0FFh 081h |
Instruction «LEFT$» |
0FFh 082h |
Instruction «RIGHT$» |
0FFh 083h |
Instruction «MID$» |
0FFh 08Eh |
Instruction «TIME$» |
0FFh 092h |
Instruction «LEN» |
0FFh 094h |
Instruction «VAL» |
0FFh 095h |
Instruction «ASC» |
0FFh 096h |
Instruction «CHR$» |
0FFh 097h |
Instruction «PEEK» |
En plus, on devra pouvoir lire le contenu de fichiers de format de page comme le HTML. Ce langage à balise renferme de nombreux code particulier simplement pour les tables de caractères accentuer. En voici une brève liste et leur équivalence:
Caractères |
Description |
---|---|
— |
Caractère «—» |
á |
Caractère «á» |
â |
Caractère «â» |
à |
Caractère «à» |
& |
Caractère «&» |
ä |
Caractère «ä» |
Ä |
Caractère «Ä» |
ç |
Caractère «ç» |
Ç |
Caractère «Ç» |
é |
Caractère «é» |
É |
Caractère «É» |
ê |
Caractère «ê» |
è |
Caractère «è» |
ë |
Caractère «ë» |
> |
Caractère «>» |
í |
Caractère «í» |
î |
Caractère «î» |
ì |
Caractère «ì» |
ï |
Caractère «ï» |
< |
Caractère «<» |
  |
Un espace |
ñ |
Caractère «ñ» |
Ñ |
Caractère «Ñ» |
ó |
Caractère «ó» |
ô |
Caractère «ô» |
ò |
Caractère «ò» |
Ö |
Caractère «Ö» |
ö |
Caractère «ö» |
ú |
Caractère «ú» |
û |
Caractère «û» |
ù |
Caractère «ù» |
ü |
Caractère «ü» |
ÿ |
Caractère «ÿ» |
Un peu comme le langage HTML, le format RTF, contient des codes textes permettant d'identifier clairement des caractères spéciaux, en voici la liste (remarquer que les «Caractères» comme \'A0 peuvent aussi bien être en majuscule quand minuscule, soit \'A0 ou \'a0):
Caractères |
Description |
---|---|
\'A0 |
Un espace |
\'A1 |
Caractère «¡» |
\'A2 |
Caractère «ø» |
\'A3 |
Caractère «£» |
\'A4 |
Caractère «o» |
\'A5 |
Caractère «Ø» |
\'A6 |
Caractère «|» |
\'A7 |
Caractère «§» |
\'A8 |
Caractère «¨» |
\'A9 |
Caractère «©» |
\'AA |
Caractère «ª» |
\'AB |
Caractère « « » |
\'AC |
Caractère «¬» |
\'AE |
Caractère «®» |
\'AF |
Caractère «¯» |
\'B0 |
Caractère «°» |
\'B1 |
Caractère «±» |
\'B2 |
Caractère «²» |
\'B3 |
Caractère «³» |
\'B4 |
Caractère «´» |
\'B5 |
Caractère «µ» |
\'B6 |
Caractère «¶» |
\'B7 |
Caractère «·» |
\'B8 |
Caractère «"¸» |
\'B9 |
Caractère «¹» |
\'BA |
Caractère «º» |
\'BB |
Caractère « » » |
\'BC |
Caractère «¼» |
\'BD |
Caractère «½» |
\'BE |
Caractère «¾» |
\'BF |
Caractère «¿» |
\'C0 |
Caractère «À» |
\'C1 |
Caractère «Á» |
\'C2 |
Caractère «Â» |
\'C3 |
Caractère «Ã» |
\'C4 |
Caractère «Ä» |
\'C5 |
Caractère «Å» |
\'C6 |
Caractère «Æ» |
\'C7 |
Caractère «Ç» |
\'C8 |
Caractère «È» |
\'C9 |
Caractère «É» |
\'CA |
Caractère «Ê» |
\'CB |
Caractère «Ë» |
\'CC |
Caractère «Ì» |
\'CD |
Caractère «Í» |
\'CE |
Caractère «Î» |
\'CF |
Caractère «Ï» |
\'D0 |
Caractère «Ð» |
\'D1 |
Caractère «Ñ» |
\'D2 |
Caractère «Ò» |
\'D3 |
Caractère «Ó» |
\'D4 |
Caractère «Ô» |
\'D5 |
Caractère «Õ» |
\'D6 |
Caractère «Ö» |
\'D7 |
Caractère «×» |
\'D8 |
Caractère «Ø» |
\'D9 |
Caractère «Ù» |
\'DA |
Caractère «Ú» |
\'DB |
Caractère «Û» |
\'DC |
Caractère «Ü» |
\'DD |
Caractère «Ý» |
\'DE |
Caractère «Þ» |
\'DF |
Caractère «ß» |
\'E0 |
Caractère «à» |
\'E1 |
Caractère «á» |
\'E2 |
Caractère «â» |
\'E3 |
Caractère «ã» |
\'E4 |
Caractère «ä» |
\'E5 |
Caractère «å» |
\'E6 |
Caractère «æ» |
\'E7 |
Caractère «ç» |
\'E8 |
Caractère «è» |
\'E9 |
Caractère «é» |
\'EA |
Caractère «ê» |
\'EB |
Caractère «ë» |
\'EC |
Caractère «ì» |
\'ED |
Caractère «í» |
\'EE |
Caractère «î» |
\'EF |
Caractère «ï» |
\'F0 |
Caractère «ð» |
\'F1 |
Caractère «ñ» |
\'F2 |
Caractère «ò» |
\'F3 |
Caractère «ó» |
\'F4 |
Caractère «ô» |
\'F5 |
Caractère «õ» |
\'F6 |
Caractère «ö» |
\'F7 |
Caractère «÷» |
\'F8 |
Caractère «ø» |
\'F9 |
Caractère «ù» |
\'FA |
Caractère «ú» |
\'FB |
Caractère «û» |
\'FC |
Caractère «ü» |
\'FD |
Caractère «ý» |
\'FE |
Caractère «þ» |
\'FF |
Caractère «ÿ» |
Le tableur
Le tableur est programmer au niveau de la gestion des cellules avec une technique de «table haché» lequel permet une meilleure répartition des informations sur une grille.
La grande puissance d'une tableur s'exprime par les formules mathématiques, et donc une attention toute particulière a été apporté à cette effet afin de reproduire le maximum de formule des tableurs les plus répandu: Excel, Quattro Pro, Lotus 1-2-3, StarCalc, SuperCalc,... Voici les différentes fonctions et leurs algorithmes respective:
Algorithme des fonctions |
---|
MODULE @ACOS
( Valeur ) |
MODULE @ASIN
( Valeur ) |
MODULE
@Combin ( N, R ) |
MODULE @Cosh
( Valeur ) |
MODULE
@DureeComp(Taux,
ValeurFutur, ValeurActuelle) |
MODULE @Fact
( Nombre ) |
MODULE
@FactLn ( Nombre
) |
MODULE @Faux |
MODULE @Heure
( Temps ) |
MODULE @Log
( Base, DansNombre ) |
MODULE @Max
( GroupeCellule ) |
MODULE @Min
( GroupeCellule ) |
MODULE
@Minute (
Temps ) |
MODULE @PI |
MODULE
@ProdScal (
GroupeCellule1, GroupeCellule2 ) |
MODULE
@Rembour ( Va, Taux, NombrePériodes
) |
MODULE @Sech
( Valeur ) |
MODULE
@Seconde (
Temps ) |
MODULE @Sinh
( Valeur ) |
MODULE @Tan
( Radians ) |
MODULE @Tanh
( Valeur ) |
MODULE @Taux
( ValeurFutur, ValeurPrésent, Term ) |
MODULE @Temps
( Heure, Minute, Seconde ) |
MODULE
@Valact ( Pmt, Taux, NombrePériode
) |
MODULE @Van
( Taux, GroupeCellule, Type ) |
MODULE @Vrai |
MODULE
LnGamma ( X ) |
MODULE Log10
( DansNombre ) |
MODULE
LOI.BINOMIALE ( N, K ) |
Annexe
Annexe A: Les abréviations interne de programmation du Projet
Voici les principales abréviations employé dans le code source du projet:
Abréviation |
Nom |
Description |
---|---|---|
0 |
Zero |
Zéro |
1 |
First |
Premier |
1_8 |
1_8 |
_1/8 |
2 |
To |
À |
4 |
For |
Pour |
a |
Asychronous |
Synchronisation de communication |
ac |
Assembler-C/C++ |
Assembleur – C/C++ |
AC |
AsyChronous |
Synchronisation de communication |
AL |
AdLib |
Carte de son de classe AdLib |
App |
Application |
Application |
Asm |
Assembler |
Langage assembleur |
Async |
Asychronous |
Synchronisation de communication |
Attr |
Attribut |
Attribut généralement associé à des couleurs d'affichage d'écran de texte. |
B |
Button |
Bouton ou icône de bouton |
BA |
Buffer Allocate |
Tampon d'allocation de mémoire dynamique |
BF |
Bank Files |
Banques de fichiers |
BS |
BackSpace |
Retour de chariot |
Buf |
Buffer |
Tampon |
Chg |
Change |
Change(ment) |
Chr |
Character |
Caractère |
CK64 |
Commodore 64K |
Commodore 64 Ko |
CLI |
ClearInterrupt |
Efface le drapeau d'interruption |
Clr |
Clear |
Éclaircissement/Effacement |
Cmd |
Command |
Commande |
Cmp |
Compare |
Comparaison |
Colr |
Color |
Couleur |
Coord |
Coordonned |
Coordonnée(s) |
Cur |
Cursor |
Curseur |
Curr |
Current |
Courant(e) |
Dbl |
Double |
Double |
Def |
Default |
Par Défaut |
Del |
Delete |
Efface |
Dir |
Directory |
Répertoire |
Disp |
Display |
Écran |
Dn |
Down |
Bas |
Dta |
Data |
Donnée(s) |
E |
Extension |
Extension |
Emm |
Expand Memory Manager |
Gestionnaire de mémoire étendu |
Env |
Environment |
Environnement |
EOB |
End of Base |
Fin de la base de données |
EOF |
End Of File |
Fin du fichier |
Eol |
End of line |
Fin de ligne |
Err |
Error |
Erreur |
Esc |
Escape |
Échappatoire/Échappement |
Exec |
Execute |
Exécute |
Ext |
Extension |
Extension |
F |
Foreground |
Couleur de premier plan d'un caractère. |
fa |
File Attribut |
Attribut de fichier |
FilePos |
File Position |
Pointeur sur une position dans un fichier |
FN |
FileName |
Nom de fichier |
FP |
File Position |
Pointeur sur une position dans un fichier |
FS |
File Size |
Taille du fichier |
G |
Graphic |
Graphique |
GAT |
Genesis ASCII Typewriter |
Format de traitement de de format GAT lequel est orientée exclusivement sur le format ASCII pure. |
Gatt |
Gatt |
Genèse ASCII Traitement de texte |
GS |
Graphic Solutions |
Carte vidéo Super CGA d'ATI |
H |
Handle/Information |
Information ou “Handle” associée ou méthode H. |
Hi |
High |
Haut(e) |
Hlp |
Help |
Aide |
Hor |
Horizontal |
Horizontalement |
I |
count a |
Compteur de boucle a |
I |
Information |
Information |
IBM |
International Business Machine |
Concept IBM PC |
Icn |
Icon |
Icône |
Img |
Image |
Image ou dessin |
Inc |
Incremented |
Incrémentation |
ind |
Index |
Index |
Ini |
Initiation |
Initiation |
Inp |
Input |
Entrée |
Ins |
Insert |
Insère |
Int |
Integer ou Interrupt |
Entier ou interruption logiciel |
IO |
Input/Ouput |
Entrée/sortie |
Ix |
Index |
Index |
J |
count b |
Compteur de boucle b |
K |
Key |
Touche |
kb |
Keyboard |
Clavier |
Kr |
Color |
Couleur |
Lck |
Lock |
Fermer |
Ln |
Line |
Ligne |
Lo |
Low |
Base |
Ls |
List |
Liste |
Lst |
List |
Liste |
M |
Message ou Memory |
Message ou mémoire. |
Mac |
Macro |
Macro-commande |
Max |
Maximum |
Maximum |
Mem |
Memory |
Mémoire |
Min |
Minimum |
Minimum |
MIV |
Mode Information Video |
Information sur le mode vidéo |
MM |
Memory Manager |
Gestionnaire de mémoire |
Mnu |
Menu |
Menu |
Mod |
Modulo |
Opérateur modulo (partie restante d'une division) |
Ms |
Mouse |
Souris |
Msg |
Message |
Message |
Mtx |
Matrix |
Matrice |
N |
And |
Et |
ND |
Number Divised |
Nombre divisé |
NM |
Number Modulo |
Nombre modulo |
Nm |
Number |
Nombre |
NS |
Number of String |
Nombre de chaîne de caractères |
Num |
Number |
Nombre |
Nxt |
Next |
Suivant |
O |
Center |
Centre ou Centrer |
Opt |
Option |
Option (supplément) |
Out |
Output |
Sortie |
P |
PChar |
Dans un mot, il s'agit d'un pointeur de caractères |
P |
Position |
Pour une variable, il s'agit d'une position |
P2P |
Page To Page |
Papier à papier |
Param |
Parameter(s) |
Paramètre(s) |
Pas |
Pascal |
Pascal |
PC |
Pointer Characters |
Pointeur de caractères |
Pg |
Page |
Page |
PIV |
Physical Info Video |
Information physique sur la vidéo |
PIx |
Pointer Index |
Pointeur d'index |
Pix |
Pixel |
Pixel |
PJ |
Personal Journal |
Journal Personnel |
pn |
Printer Name |
Nom d'imprimante |
Pos |
Position |
Position |
Prn |
Printer(s) |
Imprimante(s) |
ps |
Printer String |
Chaîne de caractères pour l'imprimante |
Ptr |
Pointer(s) |
Pointeur(s) |
PW |
Professional Write |
Écriture professionnel |
Q |
Québec Structure |
Structure à la Québécoise |
R |
Real |
Réel |
RB |
Remove Buffer |
Tampon flexible |
Rbuf |
Remove Buffer |
Tampon flexible |
RC |
Ressource C/C++ |
Ressource au format du C ou du C++ |
Rec |
Record |
Enregistrement |
Rem |
Remark |
Remarque |
Res |
Reserved |
Réservé |
S |
String |
Chaîne de caractères |
Scr |
Screen |
Écran |
Scrn |
Screen |
Écran |
sd |
Sound |
Son |
Sel |
Select |
Sélection |
Sf |
Size Of |
Taille de ... |
Sml |
Small |
Petit |
Spc |
Space |
Espace |
STI |
Set Interrupt |
Fixe le drapeau d'interruption |
Str |
String |
Chaîne de caractères |
Swp |
Swap |
Échange |
Sys |
System(s) |
Système(s) |
Tab |
Tabulation |
Tabulation |
TIx |
Tempory Index |
Index Temporaire |
Txt |
Text |
Texte |
U |
Upper |
Majuscule |
Under |
Underground |
Arrière plan |
Up |
Upper |
Majuscule |
V |
Virtual |
Virtuel |
Val |
Value |
Valeur |
Ver |
Version |
Version |
Ver |
Vertical |
Verticalement |
Vert |
Vertical |
Verticalement |
Vid |
Video |
Vidéo |
VS |
Virtual Swap |
Échange virtuel |
W |
Window |
Dans le cas d'une variable, il s'agit d'une fenêtre |
Wd |
Word |
Mot |
Win |
Window(s) |
Fenêtre(s) |
WM |
Writer Mode |
Mode d'écriture |
Wn |
Window |
Dans le cas du mot, alors il s'agit d'une fenêtre |
x0 |
Buffer |
Tampon linéaire |
Xms |
eXtented Memory System |
Mémoire étendue du système |
Xtrk |
Extract |
Extraire |
Annexe B: Les répertoires attribués au projet
Voici les principaux répertoires employés pour le projet:
Répertoire |
Description |
---|---|
\MALTE |
Répertoire racine du projet compiler. |
\MALTE\DATA |
Répertoire des bases de données compilé. |
\MALTE\FONT |
Répertoire des polices de caractères. |
\MALTE\HLP |
Répertoire des fichiers d'aide. |
\MALTE\ICON |
Répertoire attribué au icône. |
\MALTE\ICON\SETUP |
Répertoire attribué au icône de panneau de configuration. |
\MALTE\SPELL |
Répertoire du dictionnaire d'orthographe. |
\MALTE\SYSTEMS |
Répertoire racine de la bibliothèque de ressource compiler. |
\OUTPUT |
Répertoire des unités compilé. |
\SOURCE\CHANTAL |
Répertoire racine des codes sources |
\SOURCE\CHANTAL\GAMES |
Répertoire des jeux |
\SOURCE\CHANTAL\LIBRARY |
Répertoire de bibliothèque de code source particulier. |
\SOURCE\CHANTAL\LIBRARY\COM |
Répertoire de bibliothèque de code source sur les communications. |
\SOURCE\CHANTAL\LIBRARY\COMPILER |
Répertoire de bibliothèque de code source sur les compilateurs. |
\SOURCE\CHANTAL\LIBRARY\CPU |
Répertoire de bibliothèque de code source sur les microprocesseurs. |
\SOURCE\CHANTAL\LIBRARY\CPU\CYRIX |
Répertoire de bibliothèque de code source sur les microprocesseurs Cyrix. |
\SOURCE\CHANTAL\LIBRARY\CPU\INTEL |
Répertoire de bibliothèque de code source sur les microprocesseurs du fabricant INTEL. |
\SOURCE\CHANTAL\LIBRARY\CPU\MOTOROLA |
Répertoire de bibliothèque de code source sur les microprocesseurs de Motorola. |
\SOURCE\CHANTAL\LIBRARY\DISK |
Répertoire de bibliothèque de code source sur les unités de disque. |
\SOURCE\CHANTAL\LIBRARY\FILES |
Répertoire de bibliothèque de code source sur les structures de fichiers. |
\SOURCE\CHANTAL\LIBRARY\INTERRUP.T |
Répertoire de bibliothèque de code source sur les interruptions. |
\SOURCE\CHANTAL\LIBRARY\JOYSTICK |
Répertoire de bibliothèque de code source sur les manettes de jeux. |
\SOURCE\CHANTAL\LIBRARY\KEYBOARD |
Répertoire de bibliothèque de code source sur le clavier. |
\SOURCE\CHANTAL\LIBRARY\MATH |
Répertoire de bibliothèque de code source sur les routines mathématiques. |
\SOURCE\CHANTAL\LIBRARY\MEMORIES |
Répertoire de bibliothèque de code source sur les types de mémoires. |
\SOURCE\CHANTAL\LIBRARY\MOUSE |
Répertoire de bibliothèque de code source sur la souris. |
\SOURCE\CHANTAL\LIBRARY\SECURITY |
Répertoire de bibliothèque de code source sur la sécurité. |
\SOURCE\CHANTAL\LIBRARY\SECURITY\MONSTERB.OOK |
Répertoire de bibliothèque de code source sur la sécurité du MonsterBook. |
\SOURCE\CHANTAL\LIBRARY\SOUND |
Répertoire de bibliothèque de code source sur le son. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM |
Répertoire de bibliothèque de code source sur les différents systèmes. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\AMIGA |
Répertoire de bibliothèque de code source sur le système de l'Amiga. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\APPLEII |
Répertoire de bibliothèque de code source sur le système de l'Apple ][. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\ATARI |
Répertoire de bibliothèque de code source sur le système de l'Atari. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\C64 |
Répertoire de bibliothèque de code source sur le système du Commodore 64K. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\COCO3 |
Répertoire de bibliothèque de code source sur le système du Coco 3. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\CPM |
Répertoire de bibliothèque de code source sur le système du CP/M. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\DOS |
Répertoire de bibliothèque de code source sur le système d'exploitation DOS. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\DOS16M |
Répertoire de bibliothèque de code source sur le système d'exploitation DOS/16M. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\DRDOS |
Répertoire de bibliothèque de code source sur le système d'exploitation DR-DOS. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\LINUX |
Répertoire de bibliothèque de code source sur le système d'exploitation Linux. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\MAC |
Répertoire de bibliothèque de code source sur le système Apple Macintosh. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\OS2 |
Répertoire de bibliothèque de code source sur le système d'exploitation OS/2. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\UNIX |
Répertoire de bibliothèque de code source sur le système d'exploitation Unix. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\WINDOWS |
Répertoire de bibliothèque de code source sur l'environnement graphique Windows. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\WINDOWS.NT |
Répertoire de bibliothèque de code source sur le système d'exploitation Windows NT. |
\SOURCE\CHANTAL\LIBRARY\SYSTEM\XENIX |
Répertoire de bibliothèque de code source sur le système d'exploitation Xenix. |
\SOURCE\CHANTAL\LIBRARY\VIDEO |
Répertoire de bibliothèque de code source sur le système d'affichage vidéo. |
\SOURCE\CHANTAL\LIBRARY\VIDEO\FONT |
Répertoire de bibliothèque de code source sur les polices de caractères du système d'affichage vidéo. |
\SOURCE\CHANTAL\MAKER |
Répertoire de fabrication de données automatisé destiné au MonsterBook. |
\SOURCE\CHANTAL\OS |
Répertoire associé au noyau du système d'exploitation compatible DOS. |
\SOURCE\CHANTAL\RESOURCE |
Répertoire attribué au ressources de données, d'image,... |
\SOURCE\CHANTAL\RESOURCE\COUNTRY |
Répertoire attribué au ressources de pays et de géographie. |
\SOURCE\CHANTAL\RESOURCE\HARDWARE |
Répertoire attribué au ressources de renseignements matériel. |
\SOURCE\CHANTAL\RLL |
Bibliothèque en mode réel de format RLL. |
\SOURCE\CHANTAL\SAMPLES |
Répertoire de démonstrateur |
\SOURCE\CHANTAL\TOOLS |
Répertoire associé au outils |
\SOURCE\CHANTAL\TRASHCAN |
Répertoire poubelle de vieux bout de code source inappropriée mais pouvant être cependant pertinents... |
Annexe C: Les répertoires des bases de données
Voici les principaux répertoires de base de données du projet:
Chemin |
Description |
---|---|
CHANTAL:/Compiler/ASM/IfCond.Dat |
Table de base de données des différentes conditions d'une macro «IF» du langage de programmation assembleur. |
CHANTAL:/Compiler/ASM/InstName.Dat |
Table de base de données des différents noms des instructions du langage de programmation assembleurs. |
CHANTAL:/Compiler/ASM/Register.Dat |
Table de base de données des différents registres du langage de programmation assembleurs. |
CHANTAL:/Compiler/PASCAL/Instr.Dat |
Table de base de données des différentes instructions du langage de programmation Pascal. |
CHANTAL:/Compiler/PASCAL/MainWord.Dat |
Table de base de données des différents mots réservés du langage de programmation Pascal. |
CHANTAL:/Compiler/PASCAL/Variable.Dat |
Table de base de données des différents types de variable du langage de programmation Pascal. |
CHANTAL:/Country/Azerty.Dat |
Table des différentes touches clavier du clavier de modèle Azerty. |
CHANTAL:/Country/Country.Dat |
Table de base de données des pays et régions. Contient, les caractères de configuration, l'image du drapeau correspondant, son nom,.... |
CHANTAL:/Country/Querty.Dat |
Table des différentes touches clavier du clavier de modèle Querty. |
CHANTAL:/Country/Villes.Dat |
Table de base de données des différentes villes du mondes avec leurs coordonnées géographique. |
CHANTAL:/CPU/Intel/InLine8080.Dat |
Table de base de données des codes machines du microprocesseur INTEL 8080 et 8085. |
CHANTAL:/CPU/Intel/InLine8086.Dat |
Table de base de données des codes machines du microprocesseur de la famille INTEL 80x86. |
CHANTAL:/CPU/Sun/Java/InLine.Dat |
Table de base de données des codes machines du microprocesseur de la machine virtuel Java de Sun. |
CHANTAL:/CPU/Motorola/InLine6502.Dat |
Table de base de données des codes machines du microprocesseur Motorola 6502. |
CHANTAL:/Disque/Partition.Dat |
Table de base de données des différents format de partition. |
CHANTAL:/Graph/TIFF.Dat |
Table de base de données des entêtes des formats de dessins TIFF. |
CHANTAL:/Materiel/Modem.Dat |
Table de base de données de configuration des modems des différents fabricants. |
CHANTAL:/Materiel/Printers.Dat |
Table de base de données de configuration d'imprimantes des différents fabricants. |
CHANTAL:/Materiel/DIDComputer.Dat |
Table de base de données des codes de cartes des fabricants (DID) du standard PCI.. |
CHANTAL:/Materiel/VIDComputer.Dat |
Table de base de données des codes des fabricants (VID) du standard PCI. |
CHANTAL:/Materiel/VideoMode.Dat |
Table de base de données de configuration des modes vidéos. |
CHANTAL:/Materiel/Imprimantes/Modele.Dat |
Table des différents modèles d'imprimantes avec le standard à laquelle elles correspondent. |
CHANTAL:/Materiel/Imprimantes/Standard.Dat |
Table de mise en forme par rapport au standard de l'imprimante (IBM, EPSON, DeskJet, PostFixe,...) |
CHANTAL:/Math/Convers.Dat |
Table de base de données de conversion de formule mathématique. |
CHANTAL:/Math/Calc.Dat |
Table de base de données de la calculatrice et du tableur (chiffrier électronique). |
Annexe D: Les principaux fichiers de code sources
Voici les principaux fichiers de code sources du projet:
Nom |
Description |
---|---|
_TESetMo.inc |
Fixeur de modification du traitement de texte. |
ACSendX.asm |
Envoie un caractère au modem. |
Adele.asm |
Moteur Adèle: Détecteur de configuration |
Adele.pas |
Démarreur de programme «Adèle» |
App7Iles.rc |
Ressource de dialogue Application dit «Sept-Iles» |
Apps.pas |
Unité de gestion des applications. |
Arcade.pas |
Effet spéciaux et économiseur d'écran |
Assistan.rc |
Ressource d'Assistant |
CI.asm |
Teste de performance du CPU |
Compiler.pas |
Outil de compilateur |
DBaseIII.pas |
Visualisateur de Base de données |
Dialex.pas |
Structure des fenêtres de dialogues |
Dialplus.pas |
Supplément des fenêtres de dialogues. |
Dials.pas |
Gestionnaire de boite de dialogues |
Disk.pas |
Gestionnaire d'unité de disque (IDE, CD-ROM,...). |
Dos.rc |
Aide Prompt DOS |
Dostex.pas |
Structure du DOS |
DrawEdit.pas |
Programme de dessin |
EditIcon.pas |
Éditeur d'Icône |
Editor.pas |
Noyau de l'éditeur (traitement de texte) |
Editor.rc |
Éditeur – Table |
EdtBlock.pas |
Outil de gestion de bloc de l'éditeur |
EdtDone.pas |
Routine de terminaison de l'éditeur |
EdtExtra.pas |
Outils supplémentaire de l'éditeur |
EdtJust.pas |
Éditeur – Justification |
EdtLoad.pas |
Chargeur de document du traitement de texte |
EdtMacro.pas |
Macro de l'éditeur |
EdtSave.pas |
Éditeur – Sauvegarde |
EdtSearc.pas |
Recherche à effectuer dans l'éditeur |
FileMana.pas |
Gestionnaire de fichiers |
FontEdt.pas |
Éditeur de police de caractères. |
FontMana.pas |
Gestionnaire de polices de caractères |
GoldNAxe.pas |
Gold N'Axe (Vidéo complexe) |
GPXServi.pas |
Service du GPX (Dessin d'impression) |
InfoMemo.pas |
Dialogue d'information mémoire |
InsSDir.pas |
Ajustement de répertoire du l'installateur |
Install.pas |
Programme d'installation |
Int01h.asm |
Interruption de deboguage |
Isatex.pas |
Structure d'Isabel (Malte Genesis III) |
Loader.pas |
Gestionnaire de menu de programme |
LptxExst.asm |
Détection de port parallèle |
MakeHlp.bat |
Créateur d'aide du «Monster Book» |
MakeMB.bat |
Créateur de programme «Monster Book» |
MalCalc.pas |
Tableur du «Monster Book» |
MalEnv.pas |
Environnement du «Monster Book» |
MalLibra.pas |
Bibliothèque de routine du «Monster Book» |
MalSDir.pas |
Boîte de dialogue d'ajustement de répertoire |
Manuel.rc |
Manuel d'instruction du «Monster Book» |
MB.pas |
Programme «Monster Book» |
MBAbout.pas |
Écran de présentation du «Monster Book» |
MBConfig.pas |
Outils de configuration pour le «Monster Book» |
MBCortex.pas |
Structure du «Monster Book» |
MBDebug.pas |
Debogueur du «Monster Book» |
MBDebugT.pas |
Outils de deboguage du «Monster Book» |
MBExit.pas |
Terminer le «MonsterBook» |
MBInitSc.pas |
Écran d'initialisation du «Monster Book» |
MBSearch.pas |
Recherche à l'intérieur du «Monster Book» |
MBShell.pas |
Shell du «Monster Book» |
MBStart.pas |
Démarreur du «Monter Book» |
MCat.pas |
Catalogueur de disquette |
Mouse.pas |
Gestionnaire de Souris |
Numerix.pas |
Utilitaire numérique |
Pack.pas |
Protocole de communication |
ProgMan.pas |
Gestionnaire de programmes |
Project.pas |
Gestionnaire de projet |
ResLoadI |
Module de chargement des images |
ResSaveI |
Module de sauvegarde des images |
ResServI |
Module de traitement et de services des images |
ResLoadD |
Module de chargement des bases de données |
ResSaveD |
Module de sauvegarde des bases de données et traitement SQL |
ResServD |
Module de service et traitement des bases de données |
SysInfo.pas |
Système d'information |
SysInter.pas |
Service système au niveau interne |
SysPlus.pas |
Unité de supplément système |
Systems.pas |
Service système |
TechDraw.Pas |
Dessin technique (objet en fil de fer). |
TMDials.pas |
Terminal de communication/Modem |
ToolCoun.pas |
Outil de gestion de pays |
ToolDsk.pas |
Outil de manipulation de disque |
ToolHead.pas |
Outil de compréhension d'entête |
ToolInfo.pas |
Outil d'information |
ToolNGZ.pas |
Outil de Guide Norton |
ToolPrn.pas |
Outil d'imprimante |
Tools.pas |
Outils de base |
ToolSoun.pas |
Outil pour gérer le son |
ToolTerm.pas |
Outils: Terminal/Shell |
ToolTime.pas |
Outils gérant le temps |
ToolVid.pas |
Outils vidéo |
ToolView.pas |
Visualisateur ASCII / Aide |
Unix.rc |
Ressource pour Unix |
Video.pas |
Routine vidéo |
Volume.pas |
Volume Exécutable |
WEPutChg.inc |
Affichage de caractère typée d'une boîte de dialogue |
WESetKr.asm |
Définition de couleur des boites de dialogues |
WordTex.pas |
Structure des traitements de texte |
Annexe E: Structures des fichiers
Dans cette annexe, on retrouve les structures des fichiers utilisés par le MonsterBook et donc il peut aussi bien s'agir d'un concurrent que des ses propres fabrication.
Nous commenceront par les fichiers de base de données car ils sont utilisé de façon intensive dans le système entre-autre à pour accélérer le traitement des demandes utilisateurs.
Base de données serveur de format Mentronix
Voici donc tout d'abord l'entête d'une base de données serveurs de format Mentronix:
Offset |
Taille |
Description |
|
---|---|---|---|
0 |
40 octets |
Variable, message de sortie avec un «TYPE» du DOS. |
|
40 |
13 octets |
Signature «ServerDbMalte» pour un serveur de base de données. |
|
53 |
81 octets |
Chaîne de caractères de format PASCAL contenant le nom réel de la base de données serveur. |
|
134 |
1 octets |
Attribut de la base de données |
|
Bit |
Description |
||
0 |
Données numérique en format Intel? |
||
1 |
Table de fichier en format base de données? |
||
2 |
Table de fichier en sens inverse? |
||
3 à 7 |
Réservés |
||
135 |
1 double mot |
Table des utilisateurs avec mots de passe, vaut 0 si tous le monde peut lire ou modifier l'information. |
|
139 |
1 double mot |
Position de la table des fichiers |
|
143 |
17 octets |
Inutilisé pour avoir la même taille qu'une table de base de données de format Mentronix. |
Voici une entrée de la table des fichiers:
Offset |
Taille |
No |
Description |
---|---|---|---|
0 |
1 double mot |
0 |
Position physique ou se trouve la base de données rechercher |
4 |
1 double mot |
1 |
Taille de cette base de données |
8 |
1 octet |
2 |
Priorité requise pour l'ouverture de cette base de données |
9 |
1 mot |
3 |
Attribut fichier (compatible avec ceux du DOS) |
11 |
8 octets |
4 |
Date de création |
19 |
8 octets |
5 |
Date de dernière modification |
27 |
256 octets |
6 |
Nom de cette base de données en chaîne de caractères de format PASCAL. |
Table de base de données de format Mentronix
Voici l'entête d'une base de données Mentronix contenant uniquement une table. Elle est parfaitement identique à celle d'une table de la base de données serveur du format Mentronix et peut aussi bien se trouver seul dans un fichier qu'à l'intérieur d'une base de données serveur:
Offset |
Taille |
Description |
|
---|---|---|---|
0 |
40 octets |
Variable, message de sortie avec un «TYPE» du DOS. |
|
40 |
13 octets |
Signature «DataBaseMalte» pour un serveur de base de données. |
|
53 |
81 octets |
Chaîne de caractères de format PASCAL contenant le nom réel de la table. |
|
134 |
1 mot |
Nombre de champs |
|
136 |
1 octet |
Attribut de la base de données |
|
Bit |
Description |
||
0 |
Index d'accélération de données? |
||
1 |
Index situé à la fin de la base de donnée? |
||
2 |
Index en 32-bits? |
||
3 |
Enregistrement de taille séquentiel |
||
4 |
Trier en ordre |
||
5 |
Trier en ordre croissant |
||
6 |
Protégé par un cryptage |
||
137 |
1 double mot |
Taille total de la description des champs |
|
141 |
1 double mot |
Position de l'index |
|
145 |
1 double mot |
Taille de l'index |
|
149 |
11 octets |
Réservé pour un usage futur |
Structure d'un fichier dBase III+
Les fichiers de dBase III+ sont excessivement primitive mais combien répandu et voici donc le pourquoi ils sont inclus au MonsterBook. Voici tout d'abord la structure d'en-tête:
Offset |
Taille |
Description |
---|---|---|
0 |
1 octet |
Type d'en-tête |
1 |
1 octet |
Année |
2 |
1 octet |
Mois |
3 |
1 octet |
Jour |
4 |
1 double mot |
Nombre d'enregistrement |
8 |
1 mot |
Taille de l'entête |
10 |
1 mot |
Taille d'un enregistrement |
12 |
20 octets |
Réservés |
Voici la structure des champs suivants immédiatement l'entête et elle se termine lorsque le premier caractère de cette enregistrement à la valeur ASCII 13:
Offset |
Taille |
Description |
---|---|---|
0 |
11 octet |
Nom du champs |
11 |
1 octet |
Type de champs |
12 |
1 mot |
Séparateur 1 |
14 |
1 mot |
Séparateur 2 |
16 |
1 octet |
Largeur |
17 |
1 octet |
Nombre de décimal |
18 |
14 octets |
Réservés |
Les enregistrements suivent après les champs. Et on peut donc comprendre quel la structure général est la suivante:
Description |
---|
Entête de la table de base de données |
Champs de la table de base de données |
Enregistrement de la table de la base de données |
Base de registres de format Malte Genesis IV: Chantal
Voici la base de registres de format Malte Genesis IV: Alias Chantal laquelle contient les différentes informations utilisateurs et d'historique. Voici tout d'abord son entête:
Offset |
Taille |
Description |
---|---|---|
0 |
4 octets |
Signature: 'REG'#26 |
4 |
1 double mot |
Pointeur sur les registres HKEY_CLASSES_ROOT |
8 |
1 double mot |
Pointeur sur les registres HKEY_CURRENT_USER |
12 |
1 double mot |
Pointeur sur les registres HKEY_LOCAL_MACHINE |
16 |
1 double mot |
Pointeur sur les registres HKEY_USERS |
20 |
1 double mot |
Pointeur sur les registres HKEY_PERFORMANCE_DATA |
24 |
1 double mot |
Pointeur sur les registres HKEY_CURRENT_CONFIG |
28 |
1 double mot |
Pointeur sur les registres HKEY_DYN_DATA |
32 |
1 double mot |
Pointeur sur les registres HKEY_SYSTEM (du MonsterBook) |
36 |
8 double mot |
Réservé pour de futur adresse. |
68 |
1 double mot |
Pointeur sur les fragments |
Base
de registres de format XOKY
La
base de registres de format XOKY est la seconde génération
de base de données développé pour le
MonsterBook, celle-ci comprenait l'avantage de pouvoir contenir des
fichiers de format Mac, Unix, Vax et DOS dans la même base de
registres. La structure d'entête est assez similaire à
la base de registres de format « Malte Genesis IV:
Alias Chantal », voici sa structure:
Offset |
Taille |
Description |
---|---|---|
0 |
8 octets |
Signature: 'XOKYREG'#26 |
4 |
1 double mot |
Pointeur sur les registres HKEY_CLASSES_ROOT |
8 |
1 double mot |
Pointeur sur les registres HKEY_CURRENT_USER |
12 |
1 double mot |
Pointeur sur les registres HKEY_LOCAL_MACHINE |
16 |
1 double mot |
Pointeur sur les registres HKEY_USERS |
20 |
1 double mot |
Pointeur sur les registres HKEY_PERFORMANCE_DATA |
24 |
1 double mot |
Pointeur sur les registres HKEY_CURRENT_CONFIG |
28 |
1 double mot |
Pointeur sur les registres HKEY_DYN_DATA |
32 |
1 double mot |
Pointeur sur les registres HKEY_SYSTEM (du MonsterBook) |
36 |
1 double mot |
Pointeur sur les registres de répertoire Web |
40 |
7 double mot |
Réservé pour de futur adresse. |
68 |
1 double mot |
Numéro de série |
72 |
1 double mot |
Pointeur sur les fragments |
74 |
1 mot |
Couleur d'arrière plan en 16-bits |
76 |
1 double mot |
Pointeur sur un nom d'image d'arrière plan. |
80 |
1 double mot |
Pointeur sur un icône |
84 |
1 double mot |
Pointeur sur la prochaine zone libre (0 si indéterminé) |
88 |
1 double mot |
Taille de l'unité (0 si variable) |
92 |
1 double mot |
Espace de libre sur l'unité si de l'unité n'est pas égale à 0 |
96 |
1 double mot |
Année de création |
100 |
1 octet |
Mois de création |
101 |
1 octet |
Jour de création |
102 |
1 octet |
Heure de création |
103 |
1 octet |
Minute de création |
104 |
1 octet |
Seconde de création |
Document de format GAT
Les documents de format GAT sont les documents (Genesis Ascii Typewriter) étant sauvegarder par le MonsterBook par défaut. Leur structure est essentiellement ASCII afin de permettre une récupération facile des informations contenu. Leur structure est la suivante:
Organisation |
Description |
---|---|
: x1 y1 x2 y2 [paramètres] |
Le deux points suivi d'un espace identifie comme une signature le format GAT. La taille de la feuille ainsi que les paramètres de pages. |
texte |
Le texte lui-même du document |
Lorsqu'au début d'une ligne ont rencontre des symboles «[» c'est qu'il s'agit d'information particulière. Les caractères suivants ont des sens particulier:
Code |
Description |
---|---|
[AUTEUR: |
Auteur du document |
[DC: |
Image centrée |
[DD: |
Image à droite |
[DESCR: |
Description du document |
[DG: |
Image à gauche |
[SUJET: |
Sujet du document |
[TITRE: |
Titre du document |
En plus, il existe un attribut spécial lorsque des codes ASCII inférieur à 32 sont rencontrer, ceux-ci permettent d'attribuer du gras, italique, double largeur,...
Document de format Premier Choix (First Choice)
Voici la structure d'en-tête des fichiers documents que l'application Premier Choix de PFS permettant de le sauvegarder:
Offset |
Type |
Description |
Valeur par défaut |
0000h |
Mot |
X1 (marge de gauche du document) |
0Ah |
0002h |
Mot |
X2 (marge de droite du document) |
46h |
0004h |
Mot |
Nombre de lettres contenu dans le document |
|
0006h |
Mot |
Nombre de ligne contenu dans le document |
|
0008h |
13 octets |
Signature "GERBILDOC". Celle-ci est stocké comme une chaîne de caractères de format Pascal: String[12]. C'est-à-dire que le premier octet correspond à la longueur, soit, dans ce cas si 9, suivi par le message de la signature. |
9h
"G" "E" "R" "B" "I"
"L" "D" "O" "C" |
0015h |
Octet |
Signification inconnu? |
00h |
0016h |
Mot |
Marge du haut |
06h |
0018h |
Mot |
Marge du bas |
3Ch |
001Ah |
Mot |
Longueur de la page en ligne de texte affichée. |
42h |
001Ch |
484 octets |
Signification inconnu? |
Tous à 00h |
0200h |
[Offset 0004h] octets |
Le texte lui-même du document. Celui-ci utilise comme saut de ligne le code 12 (0Ch). Les codes ASCII supérieurs ou égal à 128 sous toujours précédés par un code ASCII de référence. Le code de fin est 14 (0Eh). Autrement dit les caractères sont stockée de la façon suivante: Caractère
(bit 0 à 6) |
Structure d'un fichier tableur MGC
Voici la structure d'un fichier de chiffrier électronique (tableur) utilisé par le MonsterBook comme son format par défaut. Tout d'abord son entête:
Offset |
Taille |
Description |
---|---|---|
0 |
4 octets |
Signature « MGC »#26 |
4 |
Variable |
La définitions de chacune des cellules et des colonnes. |
Ensuite, il faut lire une par une chacune des cellules ayant sa propre structure à elle. Le premier caractère de chacune de ces cellules explique la structure de ces cellules. Voici le signification des premiers caractères de cellule:
Code |
Description |
---|---|
0 |
Cellule vide |
1 |
Valeur numérique |
2 |
Valeur texte |
3 |
Formule mathématique |
4 |
Date |
5 |
Colonne |
129 |
Valeur numérique avec précision décimal |
131 |
Formule mathématique avec précision décimal |
Voici la définition de chacune des cellules:
Définition d'une cellule vide
Offset |
Taille |
Description |
---|---|---|
0 |
1 octet |
ID (Identificateur) et sa valeur est toujours 0. |
1 |
1 double mot |
Colonne de la cellule |
5 |
1 double mot |
Ligne de la cellule |
9 |
1 octet |
Format |
10 |
1 octet |
Justification (0=Gauche, 1=Centre, 2=Droite) |
11 |
1 octet |
Couleur d'attribut (Quartet haut = Arrière plan, Quartet bas = Couleur d'écriture). |
12 |
1 octet |
Attribut spécial (gras, souligner,...) |
Définition d'une cellule à valeur numérique
Offset |
Taille |
Description |
---|---|---|
0 |
1 octet |
ID (Identificateur) et sa valeur est toujours 2. |
1 |
1 double mot |
Colonne de la cellule |
5 |
1 double mot |
Ligne de la cellule |
9 |
1 octet |
Format |
10 |
1 octet |
Justification (0=Gauche, 1=Centre, 2=Droite) |
11 |
1 octet |
Couleur d'attribut (Quartet haut = Arrière plan, Quartet bas = Couleur d'écriture). |
12 |
1 octet |
Attribut spécial (gras, souligner,...) |
13 |
6 octets |
Nombre de réel de type «Real» |
Définition d'une cellule texte
Offset |
Taille |
Description |
---|---|---|
0 |
1 octet |
ID (Identificateur) et sa valeur est toujours 2. |
1 |
1 double mot |
Colonne de la cellule |
5 |
1 double mot |
Ligne de la cellule |
9 |
1 octet |
Format |
10 |
1 octet |
Justification (0=Gauche, 1=Centre, 2=Droite) |
11 |
1 octet |
Couleur d'attribut (Quartet haut = Arrière plan, Quartet bas = Couleur d'écriture). |
12 |
1 octet |
Attribut spécial (gras, souligner,...) |
13 |
Variable |
Texte contenu dans la cellule sous forme de chaîne de caractères de format Pascal. |
Définition d'une cellule de formule
Offset |
Taille |
Description |
---|---|---|
0 |
1 octet |
ID (Identificateur) et sa valeur est toujours 3. |
1 |
1 double mot |
Colonne de la cellule |
5 |
1 double mot |
Ligne de la cellule |
9 |
1 octet |
Format |
10 |
1 octet |
Justification (0=Gauche, 1=Centre, 2=Droite) |
11 |
1 octet |
Couleur d'attribut (Quartet haut = Arrière plan, Quartet bas = Couleur d'écriture). |
12 |
1 octet |
Attribut spécial (gras, souligner,...) |
13 |
6 octets |
Valeur actuel de la formule sous type «Real» |
19 |
1 octet |
Formule calculer? |
20 |
1 octet |
Erreur de la valeur? |
21 |
1 octet |
Y a-t-il au moins une cellule dans la formule? |
23 |
Variable |
Formule proprement dite en format chaîne de caractères Pascal. |
Définition d'une cellule de formule avec décimal
Offset |
Taille |
Description |
---|---|---|
0 |
1 octet |
ID (Identificateur) et sa valeur est toujours 131. |
1 |
1 double mot |
Colonne de la cellule |
5 |
1 double mot |
Ligne de la cellule |
9 |
1 octet |
Format |
10 |
1 octet |
Justification (0=Gauche, 1=Centre, 2=Droite) |
11 |
1 octet |
Couleur d'attribut (Quartet haut = Arrière plan, Quartet bas = Couleur d'écriture). |
12 |
1 octet |
Attribut spécial (gras, souligner,...) |
13 |
6 octets |
Valeur actuel de la formule sous type «Real» |
19 |
1 octet |
Formule calculer? |
20 |
1 octet |
Erreur de la valeur? |
21 |
1 octet |
Y a-t-il au moins une cellule dans la formule? |
22 |
1 octet |
Nombre de décimal |
23 |
Variable |
Formule proprement dite en format chaîne de caractères Pascal. |
Structure d'un fichier image BGX (Bitmap Genesis graphiX)
Ce format est une image utilisé par le MonsterBook. Il ne s'agit que d'un vulgaire BitMap et pour cette raison il est très simple:
Offset |
Taille |
Description |
---|---|---|
0 |
4 octets |
Signature «BGX1» |
4 |
1 mot |
Nombre de pixels horizontalement |
6 |
1 mot |
Nombre de pixels verticalement |
8 |
1 octet |
Nombre de bits par pixel |
9 |
Horizontal * Vertical * (1 << Bits par pixel)/8 |
Image en format Bitmap |
Structure d'un fichier image Bitmap Windows
Voici l'entête de fichier de format BitMap Windows:
Offset |
Taille |
Description |
---|---|---|
0 |
2 octets |
Signature «BM» |
2 |
1 double mot |
Taille |
4 |
1 double mot |
Réservé |
8 |
1 double mot |
Offset bits |
12 |
1 double mot |
Taille du Bitmap de l'image |
16 |
1 double mot |
Largeur de l'image |
20 |
1 double mot |
Hauteur de l'image |
24 |
1 mot |
Nombre de plan |
26 |
1 mot |
Bits par pixel |
28 |
1 double mot |
Compression |
32 |
1 double mot |
Taille de l'image |
36 |
1 double mot |
Nombre de pixel horizontal par mètre |
40 |
1 double mot |
Nombre de pixel vertical par mètre |
44 |
1 double mot |
Efface utilisé |
48 |
1 double mot |
Efface important |
Structure d'une image d'impression GPX
Voici l'entête d'une image d'impression GPX:
Offset |
Taille |
Description |
---|---|---|
0 |
4 octets |
Signature: 'GPX'#26 |
4 |
1 mot |
Largeur en pixels |
6 |
1 mot |
Hauteur en pixels |
8 |
1 mot |
Nombre de bande |
10 |
1 octet |
Bits par pixel |
Deux images
suivantes immédiatement cette entête, l'image en bande
et l'image en Bitmap. On a donc la structure suivante:
Description |
---|
Entête de fichier GPX |
Image en format bande (la taille est calculable par la formule: Largeur en pixels * Nombre de bande) |
Image en Bitmap |
Structure d'un fichier image Gem/Img Ventura
Voici l'entête d'un format d'image Gem/Img Ventura:
Offset |
Taille |
Description |
---|---|---|
0 |
2 octets |
Signature: 00h 01h |
2 |
1 mot |
Point de départ en format de mot Motorola |
4 |
1 mot |
Bits par pixel en format de mot Motorola |
6 |
1 mot |
Taille de la palette |
8 |
4 octets |
Réservés |
12 |
1 mot |
Largeur de l'image en format de mot Motorola |
14 |
1 mot |
Hauteur de l'image en format de mot Motorola |
16 |
3 octets |
Réservés |
L'image suit naturellement après l'entête.
Structure d'un fichier image LBM
Entête d'un format d'image LBM:
Offset |
Taille |
Description |
---|---|---|
0 |
4 octets |
Signature: "FORM" |
4 |
1 double mot |
Longueur du fichier – 8 |
8 |
8 octets |
Signature: "ILBMBMHD" ou "PBM BMHD" |
16 |
1 double mot |
Longueur de l'entête |
20 |
1 mot |
Largeur |
22 |
1 mot |
Longueur |
24 |
1 mot |
Position X1 |
26 |
1 mot |
Position Y1 |
28 |
1 octet |
Nombre de bits par pixel |
29 |
1 octet |
Masque |
30 |
1 octet |
Compression |
31 |
1 octet |
Pad |
32 |
1 mot |
Transparence |
34 |
1 octet |
Ratio X |
35 |
1 octet |
Ratio Y |
36 |
1 mot |
Largeur de l'image |
38 |
1 mot |
Hauteur de l'image |
Structure d'un fichier d'image Targa
Voici l'entête de fichier de format Targa:
Offset |
Taille |
Description |
|||
---|---|---|---|---|---|
0 |
1 octet |
Taille de l'en-tête en octets |
|||
1 |
1 octet |
Version du format TGA : |
|||
Code |
Description |
||||
1 |
Celle reconnue par cette application. |
||||
2 |
1 octet |
Format de codage des données : |
|||
Code |
Description |
||||
1 |
Données directes en 8bpp |
||||
2 |
Données directes en 24bpp (RVB) |
||||
9 |
Codage des répétitions (RLE) en 8 bpp |
||||
10 |
Codage des répétitions (RLE) en 24 bpp |
||||
3 |
1 mot |
Position dans le fichier de la palette |
|||
5 |
1 mot |
Nombre de couleurs |
|||
7 |
1 mot |
Position d'origine X dans l'image |
|||
9 |
1 mot |
Position d'origine Y dans l'image |
|||
11 |
1 mot |
Dimension horizontal de l'image |
|||
13 |
1 mot |
Dimension vertical de l'image |
|||
15 |
1 octet |
Nombre de bits par pixel |
|||
16 |
1 octet |
Option de l'image: |
|||
Code |
Description |
||||
0 |
Image renversée verticalement |
||||
32 |
Image dans le sens normal |
Structure d'un fichier d'image GIF
Les fichier graphique de format GIF sont très répandu, il est impossible de ne pas en tenir compte! Voici la structure de l'en-tête d'un fichier GIF 87a et 89a:
Offset |
Taille |
Description |
|
00h à 05h |
6 octets |
Nom du GIF ('GIF87a' ou 'GIF89a') |
|
06h à 07h |
1 mot |
Nombre de pixels sur l'axe des X |
|
08h à 09h |
1 mot |
Nombre de pixels sur l'axe des Y |
|
0Ah |
1 octet |
Information étendue |
|
Bit(s) |
Description |
||
0 à 2 |
Nombre de palettes: 0: 2 palettes |
||
3 à 7 |
Réservé |
||
0Bh |
1 octet |
Arrière plan (Background) |
|
0Ch |
1 octet |
Ratio |
|
0Dh |
3*2 << (offset 0Ah) ET LOGIQUE 7 octets |
Table de couleur (Color Map) |
|
3*2 << (offset 0Ah) ET LOGIQUE 7 |
1 octet + Extra |
Identificateur |
|
... |
1 octet |
Identificateur |
Structure de l'Identificateur
Type |
Description |
||||
';' |
Fin |
||||
'!' |
Extension |
||||
Taille |
Description |
||||
Jusqu'à un code ASCII 0 soit rencontré |
Donnée de compression de l'image |
||||
',' |
Séparateur d'image |
||||
Offset |
Taille |
Description |
|||
00h à 03h |
4 octets |
Réservé |
|||
04h à 05h |
1 Mot |
Longueur (Nombre de pixels X) |
|||
06h à 07h |
1 Mot |
Largeur (Nombre de pixels Y) |
|||
08h |
1 octet |
Bits 0 à 2: Nombre de palettes: |
|||
Code |
Description |
||||
0 |
2 palettes |
||||
1 |
4 palettes |
||||
2 |
8 palettes |
||||
3 |
16 palettes |
||||
4 |
32 palettes |
||||
5 |
64 palettes |
||||
6 |
128 palettes |
||||
7 |
256 palettes |
||||
Bit 3 à 5: Réservé
(??) |
|||||
09h |
1 octet |
Taille du code d'entrée (Valide de 2 à 11) Image... |
L'image tant qu'à suit le principe d'une compression LZW et n'est pas exposé dans cette annexe.
Annexe F : Code d'erreurs
Voici la liste des erreurs utilisés par le MonsterBook pour son fonctionnement interne:
Code |
Description |
---|---|
0000h |
Aucune erreur n'est apparue |
0001h |
Numéro de fonction invalide |
0002h |
Fichier introuvable |
0003h |
Chemin introuvable |
0004h |
Trop de fichiers ouverts simultanément |
0005h |
Accès refusé |
0006h |
Handle inconnu |
0007h |
Bloc de contrôle de la mémoire détruit |
0008h |
Mémoire disponible insuffisante |
0009h |
Adresse de mémoire incorrecte |
000Ah |
Environnement incorrecte |
000Bh |
Format invalide |
000Ch |
Code d'accès incorrecte |
000Dh |
Données incorrecte |
000Fh |
Lecteur (unité) inconnu |
0010h |
Tentative de destruction du répertoire courant |
0011h |
Périphériques différentes |
0012h |
Plus d'autre fichier |
0013h |
Support protégé contre l'écriture |
0014h |
Périphérique inconnu |
0015h |
Périphérique pas prête |
0016h |
Instruction inconnue |
0017h |
Erreur CRC |
0018h |
Largeur de données incorrecte |
0019h |
Recherche infructueuse |
001Ah |
Type de périphérique inconnu |
001Bh |
Secteur introuvable |
001Ch |
Imprimante: Plus de papier |
001Dh |
Erreur d'écriture |
001Eh |
Erreur de lecture |
001Fh |
Erreur générale |
0020h |
Erreur de partage de ressource |
0021h |
Violation du verrouillage |
0022h |
Changement de disque invalide |
0023h |
FCB non disponible |
0024h |
Dépassement du tampon des ressources |
0025h |
Pays: Code de page invalide |
0026h |
Impossible de compléter l'opération fichier (manque d'entrée) |
0027h |
Espace disque insuffisant |
0032h |
Réseau: Appel réseau insupportable |
0033h |
Réseau: Ordinateur distant ne répondant pas |
0034h |
Réseau: Duplication du nom dans le réseau |
0035h |
Réseau: Nom du réseau introuvable |
0036h |
Réseau: Réseau occupé |
0037h |
Réseau: Périphérique réseau inexistante |
0038h |
Réseau: Commande BIOS réseau trop grande |
0039h |
Réseau: Erreur matérielle de l'adapteur réseau |
003Ah |
Réseau: Réponse invalide du réseau |
003Bh |
Réseau: Erreur inattendue du réseau |
003Ch |
Réseau: Adapteur incompatible |
003Dh |
Queue d'impression pleine |
003Eh |
Queue d'impression encore pleine |
003Fh |
Fichier d'impression effacé |
0040h |
Réseau: Nom de réseau effacé |
0041h |
Réseau: Accès refusé |
0042h |
Réseau: Type de périphérique réseau incorrecte |
0043h |
Réseau: Nom de réseau introuvable |
0044h |
Réseau: Nom de réseau trop grand |
0045h |
Réseau: Session de BIOS réseau trop grand |
0046h |
Réseau: Arrêt temporaire |
0047h |
Réseau: Appel réseau introuvable |
0048h |
Réseau: Arrêt d'impression ou de redirection |
0049h |
Réseau: Logiciel réseau non installé/Version réseau invalide |
004Ah |
Réseau: Adapteur fermé inattendu/Estimation expiré |
004Bh |
Réseau: Mot de passe expiré |
004Ch |
Réseau: Tentative de branchement invalide en ce moment |
004Dh |
Réseau: Excède la limite disque dans la station de travail |
004Eh |
Réseau: Pas de branchement dans la station de travail |
0050h |
Fichier déjà existant |
0052h |
Impossible de créer un répertoire |
0053h |
Erreur sur Interruption 24h (Erreur critique) |
0054h |
Hors structure (trop de redirections) |
0055h |
Redirection dupliquée |
0056h |
Mot de passe invalide |
0057h |
Paramètre invalide |
0058h |
Réseau: Erreur d'écriture sur une périphérique réseau |
0059h |
Réseau: Fonction non supporté par le réseau |
005Ah |
Réseau: Les composants système requis ne sont pas installé |
0064h |
CD-ROM: Erreur totalement inconnu |
0065h |
CD-ROM: Pas prêt |
0066h |
CD-ROM: La mémoire EMS n'est pas d'une longueur valide |
0067h |
CD-ROM: Le format CD-ROM n'est pas High Sierra ou ISO-9660 |
0068h |
CD-ROM: La porte est ouverte |
0080h |
EMS: Erreur interne dans l'EMM (peut indiquer une image mémoire incorrecte dans le pilote) |
0081h |
EMS: Mauvais fonctionnement dans la partie matérielle de la mémoire étendue |
0082h |
EMS: EMM occupé |
0083h |
EMS: Handle invalide |
0084h |
EMS: Fonction indéfinie |
0085h |
EMS: Les handles sont épuisés |
0086h |
EMS: Erreur dans la sauvegarde ou la restitution de la pagination |
0087h |
EMS: La demande d'allocation a spécifié plus de pages que celles se trouvant physiquement allouée |
0088h |
EMS: La demande d'allocation a spécifié plus de pages que le nombre disponible. Aucune page n'a été allouée |
0089h |
EMS: Aucune page n'a été allouée |
008Ah |
EMS: La page logique demandée est en dehors des pages autorisées par le handle |
008Bh |
EMS: Page physiquement illégale dans la demande de pagination |
008Ch |
EMS: La zone de sauvegarde de l'état matériel de page de pagination est plein |
008Dh |
EMS: La sauvegarde du contexte de pagination a échoué. La zone de sauvegarde est déjà remplie |
008Eh |
EMS: La restitution du contexte de pagination a échoué. La zone de sauvegarde est vide |
008Fh |
EMS: Paramètre de sous-fonction non défini |
0090h |
EMS: Type d'attribut non défini |
0091h |
EMS: Caractéristique non supportée |
0092h |
EMS: Les mémoires source et destination ont les mêmes handles et se chevauchent. Le déplacement demandé a été effectué, mais une partie de la zone source a été écrasée |
0093h |
EMS: La longueur spécifié de la zone source ou destination spécifié est supérieur à la longueur autorisée |
0094h |
EMS: Une zone de mémoire conventionnelle se trouve à la même adresse qu'une zone de mémoire étendue |
0095h |
EMS: Le déplacement spécifié est en dehors de la page logique |
0096h |
EMS: Longueur de zone supérieure à 1 Mo |
0097h |
EMS: Les zones de mémoire source et destination ont les mêmes handles et se chevauchent. L'échange ne peut être effectué |
0098h |
EMS: Type des mémoires source et destination non défini |
009Ah |
EMS: La pagination alterné ou l'initialisation de registres alterné ou l'initialisation de registres DMA est supportée, mais l'initialisation du registre alterné spécifié n'est pas possible. |
009Bh |
EMS: La pagination alterné ou l'initialisation de registres DMA est supportée, mais tous les registres alternés initialisés sont actuellement alloués |
009Ch |
EMS: Les cartes alternées ou la définition de registres DMA n'est pas supportée, et le registre alterné est différent de 0 |
009Dh |
EMS: La pagination alterné ou l'initialisation de registres DMA sont supportés, mais la définition du registre DMA spécifié n'est pas définie ou autorisée |
009Eh |
EMS: Les canaux DMA dédiés ne sont pas autorisés |
009Fh |
EMS: Les canaux DMA dédiés sont autorisés, mais le canal DMA spécifié n'est pas autorisé |
00A0h |
EMS: Le handle dont le nom est spécifié n'est pas trouvé |
00A1h |
EMS: Un handle du même nom existe |
00A2h |
EMS: Rotation d'adresse mémoire: l'adresse de base d'une zone source ou destination additionnée à la longueur dépasse 1 Mo |
00A3h |
EMS: Un pointeur invalide a été passé à la fonction, ou le contenu d'un tableau source a été écrasé |
00A4h |
EMS: L'accès à la fonction est refusé par le système d'exploitation |
00B0h |
XMS: Fonction non implémentée |
00B1h |
XMS: Pilote de périphérique VDISK détecté |
00B2h |
XMS: Erreur A20 |
00BEh |
XMS: Erreur générale du pilote XMM |
00BFh |
XMS: Erreur fatale |
00C0h |
XMS: La mémoire HMA n'existe pas |
00C1h |
XMS: La mémoire HMA est en cours d'utilisation |
00C2h |
XMS: DX inférieur à /HMAMIN=paramètre |
00C3h |
XMS: Mémoire HMA non allouée |
00C4h |
XMS: Ligne A20 toujours validée |
00D0h |
XMS: Toute la mémoire étendue est allouée |
00D1h |
XMS: Plus de handles EMM |
00D2h |
XMS: Handle invalide |
00D3h |
XMS: Handle source invalide |
00D4h |
XMS: Déplacement source invalide |
00D5h |
XMS: Handle destination invalide |
00D6h |
XMS: Déplacement de destination invalide |
00D7h |
XMS: Longueur invalide |
00D8h |
XMS: Recouvrement invalide dans une requête MOVE |
00D9h |
XMS: Erreur de parité |
00DAh |
XMS: Bloc non verrouillé |
00DBh |
XMS: Bloc verrouillé |
00DCh |
XMS: Dépassement dans le compteur de verrou |
00DDh |
XMS: Erreur de verrou |
00E0h |
XMS: Plus petit UMB disponible |
00E1h |
XMS: Aucun UMB n'est disponible |
00E2h |
XMS: Numéro de segment UMB invalide |
00FEh |
Erreur de création de fichier |
00FFh |
Fin de fichier déjà atteint |
0101h |
Erreur interne RLL |
0102h |
Manque de mémoire lors d'une allocation de fonction RLL |
0103h |
Libération interdite de mémoire en zone inférieur du tas |
0104h |
Erreur d'allocation dans la libération du tas |
0120h |
L'imprimante n'est pas prête |
0121h |
Ressource Mémoire: Tentative de libération d'une mémoire inexistante |
0122h |
Ressource Mémoire: Tentative de lecture dans une mémoire inexistante |
0123h |
Ressource Mémoire: Tentative d'écriture dans une mémoire inexistante |
0124h |
Ressource Mémoire: Tentative de déplacement du pointeur de tas dans une mémoire inexistante |
0125h |
Ressource Mémoire: Tentative de lecture du pointeur de tas dans une mémoire inexistante |
0126h |
Ressource Mémoire: Tentative de lecture dans une zone de mémoire en écriture |
0127h |
Ressource Mémoire: Tentative d'utilisation d'un Handle inexistant |
0128h |
Ressource Mémoire: Tentative d'écriture dans une zone de mémoire en lecture |
012Dh |
Teste de démarrage: Le clavier ne répond pas à l'initialisation logiciel ou ne réagit pas |
012Eh |
Teste de démarrage: L'utilisation système indique un erreur clavier ou l'unité système est verrouillé |
012Fh |
Teste de démarrage: Clavier ou erreur de la carte mère |
0130h |
Teste de démarrage: Le CMOS ne correspond pas au système |
0131h |
Vidéo: Impossible de créer un tampon pour le curseur |
0132h |
Vidéo: Impossible de charger les fonctions en mémoire |
0133h |
Vidéo: Système vidéo non-initialisé |
0134h |
Vidéo: Fichier de palette introuvable |
0135h |
Vidéo: Impossible de charger la police en mémoire |
0141h |
Fenêtre Primitive: Impossible d'effectuer un sauvegarde de l'arrière plan en mode graphique |
0142h |
Fenêtre Primitive: Impossible d'effectuer un sauvegarde de l'arrière plan en mode texte |
0151h |
Traitement de donnée: Erreur de syntaxe |
0152h |
Traitement de donnée: Retour sans avoir été appelé |
0153h |
Traitement de donnée: Fin de données |
0154h |
Traitement de donnée: Appel de fonction interdite |
0155h |
Teste de démarrage: Remplacer le clavier |
0156h |
Teste de démarrage: Remplacer le câble de l'interface du clavier |
0157h |
Teste de démarrage: Remplacer la carte d'extension ou le câble du clavier |
0158h |
Traitement de donnée: Indice inférieur incorrecte |
0159h |
Traitement de donnée: Tentative de modifié la taille d'un format fixe |
015Ah |
Traitement de donnée: Division par 0 |
015Bh |
Traitement de donnée: Instruction directe interdite |
015Ch |
Traitement de donnée: Type de donnée incompatible |
015Dh |
Traitement de donnée: Fin de l'espace du chaîne de texte Pascal |
015Eh |
Traitement de donnée: chaîne trop longue |
015Fh |
Traitement de donnée: Formule trop complexe |
0160h |
Traitement de donnée: Impossible de poursuivre les mécanismes |
0161h |
Traitement de donnée: Donnée de fichier erroné |
0162h |
Traitement de donnée: Opération déjà en cours |
0163h |
Traitement de donnée: Erreur de numéro de dispositif |
0164h |
Traitement de donnée: Erreur d'entrée/sortie |
0165h |
Traitement de donnée: Traitement de donnée inadéquat |
0166h |
Traitement de donnée: Traitement d'opération dans un ordre illogique |
0167h |
Traitement de donnée: Manque de mémoire |
0168h |
Traitement de donnée: Dépassement de capacité |
0169h |
Traitement de donnée: Paramètre inconnue |
016Dh |
Teste de démarrage: Remplacer le clavier |
016Eh |
Teste de démarrage: Remplacer le câble de l'interface clavier |
016Fh |
Teste de démarrage: Remplacer la carte d'extension ou le câble clavier |
0170h |
Mot de passe invalide |
0171h |
Éditeur: Fichier introuvable/impossible d'ouvrir le fichier texte |
0172h |
Éditeur: Erreur de lecture de la taille du fichier |
0173h |
Éditeur: Erreur de lecture du fichier texte |
0174h |
Éditeur: Fichier trop gros pour être chargé en mémoire |
0175h |
Erreur d'écriture du Journal de Bord |
0176h |
Nombre de ligne insuffisant pour effectuer un tri |
0177h |
Numéro de page invalide |
0178h |
Numéro de page inexistant |
0179h |
Erreur dans l'échange d'information |
017Ah |
Marge gauche et droite non défini |
0191h |
Teste de démarrage: Échec de la mémoire vidéo, du teste de la fréquence horizontal ou vidéo du système monochrome |
0198h |
Teste de démarrage: L'utilisateur indique que l'affichage des attributs vidéo échoue sur le système monochrome |
0301h |
APM: Fonction désactivé |
0302h |
APM: Interface déjà dans le processus |
0303h |
APM: Interface déconnecté |
0305h |
APM: Mode 16-bits d'interface déjà établie |
0309h |
APM: Identificateur non reconnu |
0360h |
APM: Incapable d'entrée dans la requête demandé |
03FFh |
Problème avec ce mode |
0FFAh |
Trop de fichier ouvert simultanément |
0FFBh |
Fichier ou répertoire déjà effacé |
0FFCh |
Impossible de monter le volume |
0FFDh |
Impossible de modifier l'attribut de cette entrée |
0FFEh |
Impossible de modifier l'attribut du fichier |
0FFFh |
Destination de copie invalide |
1000h |
Impossible de renommer le nom de votre fichier |
1001h |
Impossible de renommer le volume |
1002h |
Source à imprimer non définit |
1003h |
Information sur le pays non disponible |
1004h |
Impossible de changer de pays! Seul l'application sera affecté |
1005h |
Manque de ressource |
1101h |
Problème d'ajustement du contrôleur clavier |
1181h |
Cette machine ne dispose pas de mémoire sur pile «CMOS» |
1200h |
Impossible d'effectuer cette opération avec votre matériel |
1201h |
Une carte de son Sound Blaster minimum est réclamé |
1202h |
Vous n'avez pas de carte de son installé, seulement votre haut-parleur de base mono de votre PC |
1301h |
Image du pointeur de souris trop gros |
1302h |
Aucune souris détecté |
1401h |
Disquette protégée contre l'écriture |
1402h |
Erreur de piste |
1403h |
Une erreur a interrompu le formatage |
1404h |
Le format demandé ne peut être utilisé sur ce lecteur |
1405h |
Cette unité n'est pas une unité de disquette |
1406h |
Désolé! Impossible de stationner votre/vos disque(s) dur |
1407h |
Disque dur introuvable! |
1408h |
Erreur de lecteur en voulant accéder au secteur de démarrage! |
1409h |
Impossible d'ouvrir le fichier |
1500h |
Désolé votre carte vidéo ne supporte pas le standard VESA |
1501h |
Mode vidéo non supportée |
1502h |
Aucun mode vidéo ne permet l'affichage désirez |
1503h |
Taille de l'écran insuffisante pour l'application demandé |
1504h |
Mode graphique requis |
1505h |
Ligne d'image trop grande |
1506h |
Image à copier vide |
1601h |
Cette option est seulement disponible avec les microprocesseurs Cyrix |
2001h |
Format de fichier image inconnue |
2002h |
Le format d'image de recherche n'a pas été trouvé |
2003h |
Fichier introuvable |
2004h |
Entête du fichier invalide pour ce format |
2005h |
Ligne trop grande |
2006h |
Manque de mémoire |
2007h |
L'image n'a pas de suivant |
2008h |
Fin manquante |
2009h |
Mauvais code de taille |
200Ah |
Mauvais code |
200Bh |
Annuler par l'utilisateur |
200Ch |
Index introuvable |
200Dh |
Donnée invalide |
200Eh |
Taille invalide |
200Fh |
Impossible de créer le fichier |
2010h |
Format non supportée |
2011h |
Donnée trop grosse |
2012h |
Couleur incompatible |
Erreur de compilateur/Message d'erreur:
Code |
Description |
---|---|
10001 |
';' attendu |
10002 |
'{' attendu |
10003 |
'}' attendu |
10004 |
'[' attendu |
10005 |
']' attendu |
10006 |
'(' attendu |
10007 |
')' attendu |
10008 |
'*' attendu |
10009 |
Nombre attendu |
10010 |
'>' attendu |
10011 |
«'» attendu |
10012 |
'.' attendu |
10013 |
Énumération attendu |
10014 |
Nombre de l'instruction « ARRAY » attendu |
10015 |
Fin de fonction attendu |
10016 |
Fin de source attendu |
10017 |
Fin de chaîne de caractères attendu |
10018 |
Fin de commentaire attendu |
10019 |
Fin de commande attendu |
10020 |
Fin d'argument attendu |
10021 |
Type de variable attendu |
10022 |
Nom de variable attendu |
10023 |
Directive attendu |
10024 |
Nom de l'instruction « typedef » attendu |
10025 |
Nom de l'inclusion de fichier attendu |
10026 |
Nom de la directive conditionnel « IF » attendu |
10027 |
Nom de la directive conditionnel « IFDEF » attendu |
10028 |
Nom de la directive conditionnel « IFNDEF » attendu |
10029 |
Instruction « WHILE » attendu |
10030 |
Instruction « BEGIN » attendu |
10031 |
Nom attendu |
10032 |
Valeur attendu |
10033 |
Type attendu |
10034 |
Instruction « OF » attendu |
10035 |
Étiquette attendu |
10036 |
Nom de programme attendu |
10037 |
Nom d'unité attendu |
10038 |
Nom de constante attendu |
10039 |
Instruction « END » attendu |
10040 |
':' attendu |
10041 |
'=' attendu |
10042 |
« CF » attendu |
10043 |
Identificateur attendu |
10044 |
'<' attendu |
10045 |
'+' attendu |
10046 |
'-' attendu |
10047 |
',' attendu |
10048 |
'THEN' attendu |
10049 |
Duplication d'expression |
10050 |
Duplication d'énumération |
10051 |
Variable de la structure dupliqué |
10052 |
Duplication de définition d'unité |
10053 |
Variable dupliqué |
10054 |
Instruction 'AS' attendu |
10055 |
'TO' attendu |
10056 |
Ctrl+Break enfoncé |
10057 |
Variable introuvable |
10058 |
«NEXT» sans « FOR » |
10059 |
'#' attendu |
10060 |
Appel de fonction invalide |
10061 |
'$' attendu |
10062 |
Trop de « 'GOSUB » |
10063 |
Instruction « RETURN » sans instruction « GOSUB » |
10064 |
Instruction « WHILE » sans instruction « WEND » |
10065 |
« WEND » mal placé |
10066 |
Image trop grosse |
10067 |
Duplication d'étiquette! |
10068 |
Constante dupliqué |
10069 |
Nombre invalide |
10070 |
Utilise un mot réservé PASCAL comme variable |
10071 |
Identificateur « ITEM » attendu |
10072 |
« TRUE » attendu |
10073 |
Appel externe attendu |
10074 |
Identificateur valide attendu |
10075 |
Nombre attendu |
10076 |
Nombre entre 1 et 9 attendu |
10080 |
Énumération vide |
10081 |
Structure vide |
10096 |
Trop de répertoire dans l'entête |
10097 |
Trop de message d'attention |
10098 |
Identificateur inconnue |
10099 |
Type inconnu |
10100 |
Erreur de syntaxe |
10101 |
Erreur de nombre |
10102 |
Erreur de syntaxe d'un enregistrement |
10124 |
« PROGRAM » mal placé |
10125 |
« NEXT » mal placé |
10126 |
« ELSE » mal placé |
10127 |
« BEGIN » mal placé |
10128 |
Directive conditionnel mal placé |
10129 |
Fin de symbole mal placé |
10130 |
« ; » mal placé |
10131 |
« UNIT » mal placé |
10132 |
« USES » mal placé |
10133 |
« INTERFACE » mal placé |
10134 |
« IMPLEMENTATION » mal placé |
10135 |
« INITIALIZATION » mal placé |
10136 |
« FINALIZATION » mal placé |
10139 |
Trop de boucle |
10140 |
Nombre trop grand |
10141 |
Type incompatible |
10150 |
Instruction pour 80186 |
10151 |
Instruction pour 80286 |
10152 |
Instruction coprocesseur mathématique 80287 |
10153 |
Instruction pour 80386 |
10154 |
Instruction coprocesseur mathématique 80387 |
10180 |
Dépassement d'index |
10198 |
Unité introuvable |
10199 |
Fichier non ouvert |
10200 |
Fichier introuvable |
10201 |
Impossible de créer le fichier |
10202 |
Erreur de lecture du fichier |
10254 |
Manque de mémoire |
10255 |
Erreur interne |
10256 |
Erreur de paramètre(s) interne |
10401 |
Fichier ressource non spécifié |
10701 |
Erreur de traitement SQL |
10702 |
Base de données trop grande |
10703 |
Manque de « DATA » |
Erreur de format:
Code |
Description |
---|---|
15001 |
Aucun renseignement sur le « MP3 » |
15002 |
Erreur d'impression dans un fichier |
15003 |
Police de caractères introuvable |
15004 |
Erreur de structure de fichier |
15005 |
Fichier corrompu |
15006 |
Entête de fichier invalide |
15007 |
Données du fichier invalide |
15008 |
Pas de "Samples" dans le fichier sonore |
15009 |
Aucune police de caractères n'a été trouvé |
15010 |
Technique de compression inconnue |
Erreur de compression du format de fichier ZIP:
Code |
Description |
---|---|
16001 |
Erreur CRC |
16002 |
Problème d'écriture |
16003 |
Problème de lecture |
16004 |
Fichier ZIP |
16005 |
Abordé par l'utilisateur |
16006 |
Format non supporté |
16007 |
Encryptage |
16008 |
Erreur dans l'utilisation |
16009 |
Erreur interne |
16010 |
Plus d'item |
16011 |
Fichier |
16012 |
Aucun ZIP trouvé |
16013 |
Entête trop large |
16014 |
Erreur d'ouverture de fichier |
16100 |
Erreur sérieuse |
16500 |
Paramètres attendu |
Erreur interface:
Code |
Description |
---|---|
20001 |
Erreur de lecture du Bureau |
20002 |
Impossible d'éditer le Bureau |
20003 |
Journal de bord introuvable |
20004 |
« Passe » avant un « Copie » |
20005 |
« Copie » incompatible |
20006 |
Aucun fichier correspondant trouvé |
20007 |
Impossible de créer un fichier de bureau |
20008 |
Fonctionnalité non disponible dans ce contexte |
20009 |
Confirmation invalide! Veuillez retaper le mot de passe car ils ne sont pas identique |
20010 |
Nombre de copie d'impression invalide |
20011 |
Impossible de renommer votre nom de répertoire |
20012 |
Vous n'avez pas de fenêtre ouverte |
20013 |
Modèle d'application introuvable |
20014 |
Recherche infructueuse |
20015 |
Commande invalide |
20016 |
Chaîne de caractères introuvable |
20017 |
Procédure introuvable |
20101 |
Taille du presse-papier trop gros |
20102 |
Impossible d'ouvrir le Presse-Papier |
20103 |
Le Presse-Papier n'est pas disponible. Exécuter cette fonction à l'intérieur d'une session Windows-DOS |
20104 |
Système vidéo secondaire inexistant. Impossible d'effectuer une analyse |
Erreur d'installation d'interface:
Code |
Description |
---|---|
21001 |
Problème d'enregistrement de l'«AUTOEXEC.BAT» |
21002 |
Problème de lecture de l'«AUTOEXEC.BAT»! Opération de modification abandonner |
Erreur d'appel d'application externe:
Code |
Description |
---|---|
22001 |
Compilateur associée introuvable |
22002 |
Programme de liaison introuvable |
22003 |
Programme de traitement introuvable |
22004 |
Erreur de sortie de liaison |
22005 |
Erreur de sortie du compilateur |
22006 |
Conversion associée introuvable |
Erreur application:
Code |
Description |
---|---|
31001 |
Trop de numéro de téléphone |
31002 |
Plus de place pour une nouvelle personne dans l'agenda |
31003 |
Plus de place pour une nouvelle personne dans la base de données |
31004 |
Personne introuvable |
31101 |
Palette non-supportée |
31102 |
Point en dehors des limites permises |
31201 |
Demande incohérente. Une seule page existe |
31301 |
Image introuvable ou incompréhensible |
31501 |
Impossible d'enregistrer le titre |
Index
Index lexical
@ACOS 72
@ASIN 9, 72
@ATAN 9
@Combin 72
@Cosh 72
@COSH 10
@DureeComp 72
@Fact 73
@FactLn 73
@Faux 73
@FAUX 11
@Heure 73
@HEURE 11
@Log 73
@LOG 11
@Max 73
@MAX 11
@Min 73
@MIN 11
@Minute 73
@MINUTE 11
@PI 73
@ProdScal 73
@Rembour 74
@Sech 74
@Seconde 74
@SECONDE 12
@SIN 12
@Sinh 74
@SINH 12
@Tan 74
@TAN 12
@Tanh 74
@Taux 74
@Temps 74
@TEMPS 12
@Valact 74
@Van 75
@VAN 13
@Vrai 75
.INI 39
.MOD 39suivante, 42
.RC 54
/V 32
4DOS 61
4MAT 18
6502 29
80386 7
8088 7
A
A20 107
Acumos 34
Ada 9
Adèle 27
Adobe Illustrator 15
Ahead 33, 58
Ahead A 34
Ahead B 34
AMD 29, 58
Amiga 7, 43
ANSI 9
ARC 16
ARJ 16
ASCII 9, 41, 91
Assembleur 9, 31
ATI 33suivante, 58
ATI 16 MD 34
ATI GU Pro/Ultra 34
AUTOEXEC.BAT 116
B
B57 26
BankRoutine 33
BARHORI 53
BARUP 53
base de registres 92
Basic 9, 31, 67
BASICA 67
BBM 27
BGX 27
BGX1 98
Bitmap 99
BitMap Windows 98
BM 98
BMP 27
BOOT Disquette 15
Borland 19
Bubble 44
C
C 31
C/C++ 9, 38
CAB 16
Cached Directory Table Entry 24, 35
CAPTION 53
CCR1 35
CCR2 35
CCR3 35
CCR4 35
CCR5 35
CD-ROM 106
CHECKBOX 53
CheckSVGA 32
Chips & Technologie 34
Cirrus 33, 58
Cirrus 54 34
CL5426 34
Clone Commander 7, 16
CLOSEICON 53
CMOS 60, 108, 110
CMOS RTC-58321 60
CMOS RTC MC146818 60
CMOS RTC MM58167 60
Cobol 9, 38
COLORCUBE 53
COLORGRID 53
Color Ma 102
Color Map Flag 103
CONFIG.SYS 23
Corel 45
Corel Draw 15
CPU 24
CPUID 24, 35, 58
Creative Labs 19
CTI 33, 58
CurrPrn 31
CuteHTML 7
Cyrix 24, 29, 35, 58, 110
D
DataBaseMalte 90
Data forwarding 24, 35
dBase III+ 91
DBR0 35
DC 29
DefaultMode 33
Démarrer 23
DFD 15, 52
Diagramme de Flux de Données 15
Dir 31
Disk 30suivante
Disque Compacte 29
DMA 107
DOS 23, 26, 29
DOSEmu 7, 15, 43
DPU 44, 53suivante
DR-DOS 7, 19
DX 107
E
EGA 44
Elvis 44
Emac 45
EMM 106
EMS 27, 106
Euphoria 9
Everex 33, 58
Excel 9
Explorer 55
Extended Bios Interrupt 15h 27
F
FastLynx 16
FAT12 7
FAT16 7
FAT32 7
FCB 104
Files 31
First Choice 94
FontTitle 33
For 49
FORM 100
Fortran 9
FrameBuffer 24, 35
FRANCAIS.MNB 23
FRANCAIS.MNX 23
FreeDos 7
FX 24
G
GAT 39suivantes, 80, 93
Gem/Img Ventura 99
GemImg 27
Genesis Ascii Typewriter 93
Genoa 33, 58
GERBILDOC 94
GetMem 61
GFX 27
GHOST 53
GIF 27, 102
GIF 87a 102
GIF 89a 102
GIF animer 44
GPX 27, 87, 99
GROUP 54
GS 43
Guide Norton 88
GWBASIC 52, 67
H
HALT 24, 35
HANDLE 23
Headland 33
HeightPaperLPT1 32
High Sierra 106
HKEY_CLASSES_ROOT 92
HKEY_CURRENT_CONFIG 92
HKEY_CURRENT_USER 92
HKEY_DYN_DATA 92
HKEY_LOCAL_MACHINE 92
HKEY_PERFORMANCE_DATA 92
HKEY_SYSTEM 92
HKEY_USERS 92
HMA 107
HPFS 7, 29
HTML 9, 17, 22, 54
I
ICE 16
ILBMBMHD 100
Image en format bande 99
ImageInDialog 34
INPUT 53
Intel 29
Isabel 37
ISO-9660 106
ITEM 54
IT-VGA2 58
J
Java 9, 46
JavaScript 55
JPEG 27
K
Kébecup 21
L
Laplink 16
LBM 27, 100
LFN 61
Linux 7, 16, 29, 43, 45
Liste Symétrique 45
Ln 49
LN 53
LnGamma 76
Log 32
Log10 76
LOG10 14
LOI.BINOMIALE 14, 77
LOOP 24, 35
Lotus 1-2-3 9
LZH 16
LZW 103
M
Macintosh 44, 65
MacPaint 27
Malte Genesis IV: Alias Chantal 27, 57, 92
Malte Genesis V: Alias Adèle 57
Matrox 58
MB.CFG 23, 30
MB.INI 23, 30
MB /V 30
MCB 38
MDI 55
MemAlloc 61
Mentronix 15, 89
MENU 54
MESSAGE 53
MGC 95
Microsoft Office 45
Modem 30
MOS 19
Motorola 60, 99
MP3 114
MSCDEX 29
MS-DOS 7
N
NDOS 61
NEC 29
Negate Lock 24, 35
Netscape 55
Norton Commander 15suivante
Norton Utility 18
NT 16
NWCDEX 29
O
Oak 33, 58
OS/2 7, 15suivante, 29suivante, 37
OS/2 Warp 3 7
OverCode 26
overlay 32
OvrEms 32
P
Page Down 17
PageFormat 49suivante
PageNm 49
Page Up 17
PAK 16
Paper2Paper 31
PapierPeint 33
Paradise 33, 58
Pascal 9, 26, 31, 38
Pays 105
PBM BMHD 100
PC/AT 60
PC/XT 60
P-Code 52
PC Shell 16
PC Tools 16
PCX 27
PFS 94
PL/1 9
PPM 27
Premier Choix 9, 45, 94
Printers 30suivante
Print Screen 27
PROCESSUS 53
Professionnal Write 9, 45
prompt DOS 18
PS/2 29, 59
Put 49
PutLn 49
Q
QQF 17, 62
Quattro Pro 9
Quick Québec Font 62
R
RADIOBUTTON 53
RAR 16
RealTek 34
recouvrement 32
REG 92
Relief 44
Réseau 105
ResLoadD 67, 88
ResSaveD 67, 88
ResServD 67, 88
RLE 101
RLL 108
Robotic 44
ROM BIOS 24
RTF 9, 70
RVB 101
S
S3805 - 1M / S3864 – 2M 34
Samples 114
SCi 27
ScrSaver 32
Search32Rec 62
SearchRec 62
SECTORIAL 54
SerialCode 31
ServerDbMalte 89
SetDblChr 49
SetNorChr 50
shell Unix 18
ShortBF 61
SIMPLE GRID 53
SIZE 53
Sound Blaster 110
Sparadise 34
SQL 9, 67, 88, 114
SQL-92 7
SS24X/WD90C3x 34
StarOffice 7
StartUp 29suivante
STB 33
Super VGA 24
SwapEMS 32
SWG 16
Switch 30
Symantec 16
Systems 30, 32
T
TABBEDNOTEBOOK 53
tableur 95
Targa 101
TEX 57
TEXT 53
TGA 27, 101
TIF 27
Trident 33, 58
Trident 8900 34
Tseng Labs 58
Tseng Labs ET3000 33
Tseng Labs ET4000 33
TZ 16
U
UMB 108
Unix 7, 20
User 31
UserName 31
V
VAX 7
VDISK 107
VERIFY ON/OFF 38
VESA 32suivante, 58
VesaBiosBank 33
VESA S3 34
VGA 33
Video 30, 32
Video 7 58
Video Seven 33
Viper 34
Visio 15
Visual Basic 21, 31, 52
VRAM 27
W
WD Vanila / WD90C31 34
WINDOWCOLORCLASSIC 53
Windows 7, 16, 29, 37
Windows 9X 16, 24
Word 9
Word Perfect 45
WordStar 37
Workshop 21
Write Allocate 24, 35
Write-Back cache 24, 35
X
XBM 27
XGA 34, 58
XMS 27, 107
Z
ZIP 16, 114
ZOO 16
Zymos 34, 58