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.


Le projet sera essentiellement divisée en trois parties: soit un noyau système d'exploitation, un environnement graphique et la partie des applications. Ceux-ci seront particulièrement fusionner et mélanger et/ou spécifiquement les deux derniers juste nommée.

Noyau

Système d’exploitation




Base de données globale Mentronix





MonsterBook

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:



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:

  1. Fichier système.

  2. Configuration.

  3. Raccourci.


Ceux-ci seront diviser en des éléments encore plus complexe invisible à l'utilisateur avec les caractéristiques suivantes:

  1. Fichier système:


  1. Configuration:


  1. Raccourci:

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:









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
Lecture du fichier d'initialisation: MB.INI ou MB.CFG
CPU: ?
Système d'exploitation:
DOS Version ?.?
Vérification de la possibilité de chargement du recouvrement...
Initialise le PC Speaker
Détection des cartes de son:
?
Périphérique:
Souris: ?
Clavier: ?
Modem par défaut:
Création d'un tampon d'impression: SPOOLER.PR$
Initialisation des ressources de mémoire étendue:
ExtBios: ? Ko
EMS: ? Ko
XMS: ? Ko
Disque "?:...\MB.$$$": ? Ko

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.

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:




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.

  • Sous l'éditeur de traitement de texte de format GAT, permet de connaître différentes informations statistiques en rapport avec le document.

  • Sous le regarde hexadécimal, retourne des informations reconnue par la bibliothèque.

  • Sous le gestionnaire de fichiers, retourne des informations d'en-tête concernant le fichier actuellement sélectionner.

  • Sous le terminal, lance le docteur modem.

  • Dans les autres cas, il s'agit de l'information détailler.

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

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
Fill:Array[0..21]of Byte;
Time:LongInt;
Size:LongInt;
Name:String[12];
End;

Cette enregistrement doit être copié dans le «Search32Rec» à partir de la position Fill[12]:

Search32Rec=Record
Fill:Array[0..10]of Byte;
Attr:Byte;
Time:LongInt;
Size:LongInt;
Name:String[12];
End;





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

</