			 EUPHORIC : Manuel d'utilisation


0. Installation 
1. Dmarrage rapide
2. Touches de fonction
3. Fonctionalits
4. CLOAD et CSAVE
5. Utiliser les images disques
6. Sortie imprimante
7. Transfrer des programmes de l'Oric au PC
8. Configuration matrielle et quelques chiffres
9. Changer la vitesse
10. Claviers nationaux
11. Copyrights et remerciements
12. Problmes et rponses

_______________________________________________________________________________

0. Installation
---------------

Linux seulement :
	Euphoric a besoin d'accder aux ports d'entres-sorties de la carte VGA
	et de la carte son. Vous devez l'installer en "setuid root". Pour cela,
	tapez les commandes suivantes : 

		% su
		Password: <mot-de-passe>
		# chown root euphoric
		# chmod u+s euphoric
		# exit
		%

DOS seulement :
	Des problmes ont t rapports par des personnes utilisant le dos
	extender go32 aprs des programmes tels que le gestionnaire multitche 
	de DesqView. Il est plus sr de dmarrer avec une configuration simple,
	sans gestionnaire de mmoire, ou avec les himem et emm386 de Microsoft.
	Notez aussi que si vous utilisez le cache en criture de smartdrv, vous
	devez sortir d'euphoric avant d'teindre votre pc, comme pour n'importe
	quelle autre application.

DOS et Linux :

	Je vous conseille de positionner la variable d'environnement ORIC. Ainsi
	vous pourrez excuter euphoric depuis n'importe quel rpertoire sans
	vous soucier de dupliquer la rom et le schma de clavier, et vous
	pourrez alors trier plus facilement vos programmes oric. Cette variable
	donne le chemin o vous avez install euphoric et les fichiers d'accom-
	pagnement. Dans ce rpertoire doit imprativement tre trouv le fichier
	Oric.ROM (attention, minuscules et majuscules sont diffrencies sous
	Unix). Si le fichier Keyboard.def n'y est pas trouv, l'mulateur utili-
	sera le clavier par dfaut : amricain comme sur l'oric.
	Exemple pour dos:

		C> set oric=c:\euphoric\

	Exemples pour unix:
	
		% setenv ORIC /usr/local/euphoric/

	ou
		% ORIC=/usr/local/euphoric/
		% export ORIC
	
	suivant le shell utilis.
	Bien sr, vous pouvez mettre ces lignes dans votre autoexec.bat ou
	.login, .profile, etc.

	NB: il faut obligatoirement inclure le / (ou \) terminal.

	NB2: Si vous ne positionnez pas cette variable, l'mulateur cherchera
	ces deux fichiers dans le rpertoire courant.

_______________________________________________________________________________

1. Dmarrage rapide
-------------------

Bon d'accord, vous voulez tester l'mulateur tout de suite ? Lancez "euphoric"
puis chargez un programme avec la commande Basic :

CLOAD "GOBBLER"

Deux heures aprs, tapez F10 pour sortir et revenez lire cette documentation,
elle n'est pas bien longue, vous utiliserez mieux l'mulateur, et ainsi je ne
l'aurais pas crite pour rien...

_______________________________________________________________________________

2. Touches de fonction reconnues par l'mulateur
----------------------

Les puristes n'utiliseront pas la touche F1 afin de garder un cran absolument
identique  l'Oric ! Les autres pourront discrtement l'activer pour ne pas se
tromper dans les manipulations...

F1 : Affiche/Efface la ligne d'aide

F2 : Bouton marche arrt du son

Ctrl-F3 : Utilisateurs Linux seulement, provoque un BREAK (Ctrl-C)

F7 : quivalent au bouton Reset situ sous l'oric

F8 : un reset sur la prise d'alimentation (Power ON)

F9: "Dump", sortie de l'mulateur en sauvant l'tat pour permettre une reprise

F10 : sortie de l'mulateur

PrtSc: Copie d'cran au vol, dans le fichier ScreenXX.bmp

_______________________________________________________________________________

3. Fonctionalits
-----------------

Euphoric mule Oric 1 et Oric Atmos :

	- mulation complte du processeur 6502 en technologie MOS, y compris
	les codes des instructions non-officielles. Emule aussi le blocage du
	6502 sur les codes invalides.

	- mulation de l'horloge de l'Oric par comptage des cycles ncessaires
	 l'excution des instructions.

	- excution  la vitesse originale de l'oric, quel que soit le cpu sur
	l'hte (voir malgr tout le paragraphe 'configuration matrielle')

	- mulation de l'adaptateur d'interface universel VIA 6522 : ports
	d'entres-sorties, timers programmables dcrments par l'horloge
	prcdente, controleur d'interruptions (il manque l'mulation du
	registre srie qui n'est pas utilis sur l'oric)

	- mulation de priphriques interfacs par le 6522 : matrice clavier,
	imprimante, accs au gnrateur de son (bientt le joystick de
	l'interface PASE, et le lecteur de cassette au niveau hardware)

	- mulation du bouton Reset situ sous l'oric, par la touche F7.

	- mulation du gnrateur de son programmable GI AY-3-8912 : les trois
	canaux sons avec les diffrentes enveloppes sont muls, le gnrateur
	de bruit est partiellement mul (la frquence bruit n'est pas
	programmable). Il reste aussi  retrouver le timbre exact de l'oric
	(produire un signal carr).

	- mulation du controleur de disquettes WD 1793 avec support pour 4
	lecteurs virtuels (3", 3"1/2, 5"1/4... la dimension physique est sans
	importance)
	
	- mulation des signaux ROMDIS et ROMSELECT, tels qu'ils sont utiliss
	sur l'interface disque, permettant de basculer sur la rom Basic, la
	ram overlay ou l'eprom du controleur disque.

	- mulation de la logique de l'UAL pour la construction de l'image
	cran, avec tous les attributs srie, y compris le clignotement et les
	changements de mode (texte/haute rsolution), les redfinitions
	dynamiques des deux jeux de caractres, etc.

	- mulation du balayage cran tous les 1/50e de seconde (mais suivant la
	puissance du processeur, une partie seulement de l'cran peut tre
	affiche, ou au contraire, plus d'une fois l'cran)

Facilits:

	- Lecture et sauvegarde des fichiers sur le systme hte par
	interception des lectures/critures sur cassette.

	- Coupure du volume son, et reprise par la touche F2

	- Prise en compte des claviers nationaux par ajout de touches dans la
	matrice clavier de l'oric, et interception de la traduction en code
	ascii.

	- Touche F8 pour la dconnexion et reconnexion immdiate de la prise
	d'alimentation de l'oric.

	- Arrt avec sauvegarde de l'tat de l'oric (touche F9) dans deux
	fichiers (State pour les registres cpu, registres 6522, etc. et Dump
	pour le contenu de la mmoire). Reprise d'un tat avec l'option -r sur
	la ligne de commande (permet de reprendre l'excution d'un programme
	exactement  l'endroit o il avait t laiss, ou de sauver la mmoire
	pour examen, ou pour faire une photo de l'cran, etc)

	- Copie d'cran 'au vol' vers un fichier au format .bmp
	
	- Un indice de vitesse oric peut tre donn sur la ligne de commande,
	pour obtenir un oric plus rapide ou moins rapide que l'original.

	- la touche F1 donne un rcapitulatif des touches de fonction.

_______________________________________________________________________________

4. CLOAD et CSAVE , logique interne
-----------------

Bon, comme vous l'avez srement dj remarqu, la commande CLOAD du Basic va
chercher le programme demand sur le systme hte (DOS ou Linux). Il en est
de mme avec la sauvegarde de programmes par CSAVE.

Ceci permet une utilisation trs intuitive et parfaitement compatible avec tous
les programmes prvus pour fonctionner depuis une cassette, mme ceux qui sont
crits en langage machine, ou qui sont protgs.

Pour une utilisation avance, si vous voulez ranger vos programmes oric dans
des rpertoires diffrents, fabriquer des programmes en plusieurs parties, ou
utiliser le nom vide, lisez ce qui suit :

- CLOAD et CSAVE transmettent sans modification le nom donn en paramtre au
systme d'exploitation hte. Ce qui veut dire que le nom de programme que vous
demandez est pris tel que comme nom de fichier sur l'hte. Vous pouvez donc
inclure un nom de chemin satisfaisant aux rgles de l'hte ! Par exemple :

	CLOAD "A:\JEUX\GOBBLER"

	CSAVE "/tmp/version1",AUTO

Le premier exemple est pour DOS bien sr, le deuxime marche aussi bien pour
Linux que pour DOS (essayez le ne serait-ce que pour vrifier que vous savez
toujours activer le passage en minuscules avec Ctrl-T). Notez qu'il est plus
facile sous Linux de mmoriser les fichiers Oric avec des majuscules.

Voil donc qui permet de classer un peu vos programmes dans des rpertoires,
mais ATTENTION ! l'oric tronque le nom de programme  16 caractres, ce qui
vous obligera  choisir entre un nom long (sous Linux), un seul niveau de
rpertoire fils, ou des noms de rpertoires trs courts.

- une exception est faite pour les programmes sans nom : vous savez qu'il est
possible de sauvegarder un programme par 
	
	CSAVE ""

ou de le charger de la mme faon avec la commande CLOAD. Comme les systmes
htes n'acceptent pas de mmoriser des fichiers sans nom, le fichier prend le
nom "________" sur l'hte (8 caractres trait-bas).

Il est fortement dconseill de sauver un programme sans lui donner de nom bien 
que cela soit possible : vous ne vous rappellerez plus ce qu'il contient, et le
programme court le risque d'tre cras par la prochaine sauvegarde d'un autre
programme sans nom. 

Vous verrez parfois apparatre ce fichier dans vos rpertoires, c'est le signe
qu'un programme a fait une sauvegarde (l'tat d'un jeu par exemple) sans lui
donner de nom. Avec les commandes du systme hte, vous pouvez trs bien alors
grer plusieurs de ces sauvegardes en les renommant sous des noms diffrents.

- il est trs facile d'utiliser un programme en plusieurs parties, parfois vous
ne vous en rendrez mme pas compte si les diffrentes parties sont concatnes 
dans un seul fichier. Pour charger un tel programme, il suffit en effet de
taper la commande CLOAD avec le nom du fichier en paramtre : le premier
programme contenu dans le fichier sera charg, et des commandes CLOAD
successives chargent les autres morceaux du programme toujours dans le mme
fichier.

La logique de l'mulateur est en effet la suivante pour le chargement des
programmes : la premire commande CLOAD dtermine le nom du fichier  ouvrir
en lecture, puis charge le premier programme oric trouv  l'intrieur. Le
fichier reste ouvert en lecture, et les commandes CLOAD suivantes considrent
le fichier comme une cassette (accs squenciel). En particulier, cela veut
dire qu'un programme dans le fichier peut tre saut si son nom ne correspond
pas  celui demand. Si une commande CLOAD est demande alors que la fin du
fichier a t atteinte, ce dernier est ferm et un nouveau fichier est ouvert,
de mme nom sur le systme hte que le programme demand.

Pas clair ? Prenons un exemple : supposons que The Hobbit soit un programme
en quatre morceaux, concatns dans un fichier HOBBIT. Avec CLOAD"HOBBIT" vous
demandez  ouvrir le fichier HOBBIT et  lire le premier programme oric qui
se trouve  l'intrieur. Celui-ci s'excute automatiquement et va charger les
trois morceaux suivants (avec des instructions en langage machine dans cet
exemple), puis vous voulez charger une sauvegarde que vous aviez faite dans
un jeu prcdent : dans le vocabulaire compris par The Hobbit, vous utilisez
la commande LOAD qui va demander  charger un premier programme sans nom, or
la fin du fichier HOBBIT a t atteinte, c'est donc un nouveau fichier qui va
tre ouvert, en l'occurrence le fichier spcial ________ puisque le nom voulu
est vide. Le premier programme (un bloc de donnes dans cet exemple) va tre
charg, et le fichier va rester ouvert en lecture (The Hobbit demandera
d'ailleurs trois autres blocs car il sauve l'tat d'un jeu sous forme de
quatre morceaux). Et ainsi de suite : si vous demandez  recharger cette mme
sauvegarde, la fin du fichier tant dornavant atteinte, il sera ferm puis
aussitt rouvert. Et si maintenant vous dcidez de rebooter l'oric avec F8,
puis de charger un nouveau jeu ? Toujours pareil, la fin du fichier en cours
tant atteinte, un nouveau fichier sera ouvert...

Bref, normalement, vous n'avez pas  vous poser de questions, tout se passe
comme si vous aviez un robot qui vous charge les cassettes dans votre
magntophone, et qu'ensuite vous droulez la cassette jusqu'au bout pour
charger des programmes. La comprhension de cette logique vous sera seulement
utile si vous fabriquez vos propres "cassettes".

Et en criture ? Bonne question, comme vous n'avez pas envie d'crire vos
sauvegardes n'importe o, et surtout pas d'craser le contenu d'une de vos
"cassettes", un nouveau fichier est toujours ouvert pour la sauvegarde d'un
programme. Deux programmes diffrents ne se retrouveront donc pas concatns
sur une mme "cassette" (si c'tait ce que vous vouliez faire, vous aurez
toujours la possibilit de le faire avec les commandes du systme hte, par
exemple 'cat' sous linux ou 'COPY /B' sous Dos). Une exception  cette rgle :
la sauvegarde de programmes sans nom. La premire sauvegarde sans nom viendra
se placer dans le fichier ________ (crasant ce qui pouvait s'y trouver) et les
sauvegardes sans nom viendront se mettre  la suite.

_______________________________________________________________________________

5. Utiliser des images disques
------------------------------

Euphoric simule un Oric avec de 0  4 lecteurs de disquettes. Il suffit de
donner les noms d'images disques sur la ligne de commande pour obtenir un oric
avec le nombre de lecteurs correspondants, et dmarrer sur le premier. Si vous
ne donnez pas de nom d'image disque, vous dmarrez avec un systme sans disque,
c'est  dire avec cassettes seulement.

Les images disques sont des fichiers sur le systme hte reproduisant secteur
par secteur le contenu d'une disquette oric (secteurs de 256 octets). Euphoric
peut dmarrer sur les diffrents systmes d'exploitation disponibles pour le
vritable oric (aujourd'hui, les utilisateurs d'oric ont presque tous choisi
Sedoric). Une image disque est cre avec le petit programme readdsk (pour
DOS seulement) qui lit une disquette oric 3"1/2 ou 5"1/4 sur PC, quel que soit
le nombre de faces, pistes, ou secteurs. Bien sur, une fois que vous avez une
image disque, vous pouvez la dupliquer gratuitement, c'est un des avantages du
virtuel...

Un exemple maintenant: supposons que vous avez trois images disques nommes
	Sed10.dsk
	Arcade1.dsk
	Nibble.dsk
vous pouvez dmarrer un systme  3 lecteurs en lanant simplement:
	euphoric Sed10.dsk Arcade1.dsk Nibble.dsk

ainsi, vous dmarrerez sur l'image Sed10 dans le lecteur A, et vous aurez la
possibilit d'accder aux images Arcade1 et Nibble dans les lecteurs B et C.

Supposons que vous ayez besoin d'une nouvelle disquette, il suffit de passer
sur un lecteur sans disque, et de formatter sur ce lecteur. Vous crez ainsi
une disquette vierge sans nom (le nom de l'image est ________.dsk sur le systeme
hte), et c'est toujours gratuit... Quand vous sortez d'Euphoric, mieux vaut
mettre une tiquette sur cette nouvelle disquette, je veux dire la renommer
vers quelque chose de plus parlant.

Pour finir, vous pouvez crire des images disques sur des disquettes 3"1/2 ou
5"1/4 afin de les lire sur un vritable oric, grace au petit programme writedsk.
Toutefois, il vous faut prformatter les disquettes sur oric pour l'instant.

________________________________________________________________________

6. Sortie imprimante
--------------------

Pas de problme, le fichier Printer.Out accumule tout ce que vous pourrez
envoyer  l'imprimante pendant l'utilisation d'Euphoric (mme le premier
caractre NUL pendant le dmarrage de l'Oric). Vous aurez ensuite tout loisir
sur le systme hte de traiter ce fichier.

_______________________________________________________________________________

7. Transfrer des programmes de l'oric vers le PC
-------------------------------------------------

Si vous ne possdez pas de lecteur de disquettes 3"1/2 ou 5"1/4 sur votre oric,
je vous conseille de faire le cable parallle unidirectionnel dcrit ci-dessous.
C'est le moyen le plus fiable et le plus rapide pour transfrer vos programmes.

Bien sr, cette mthode demande que vous soyez toujours apte  charger vos
programmes sur votre vritable oric, donc que vos cassettes ou disquettes 3"
soient en bonne condition, comme votre oric et votre lecteur d'ailleurs...

Donc, avant de vous lancer dans ce petit bricolage trs simple (pas de
composant, juste deux connecteurs parallles et du cable), vrifiez que ce bon
vieil oric et sa priphrie marchent effectivement et que vous arrivez 
charger vos programmes.

Pourquoi pas une connexion bidirectionnelle ? J'en ai une aussi : pendant un
moment, j'utilisais mon Atari comme serveur de fichier et j'avais modifi une
rom Atmos pour remplacer les instructions STORE et RECALL rarement utilises
par un SEND et un RECEIVE. Mais ceci tait possible parce que l'Atari a comme
l'Oric un port bidirectionnel, et il fallait synchroniser les changements de
sens, ce qui n'est pas sans risque : il faut savoir que le port de l'Oric n'a
que 10 lignes (les autres sont  la masse), c.a.d 8 lignes de donnes, une
ligne STROBE et une ligne ACKNOWLEDGE. Les lignes de donnes viennent 
directement du port A du VIA, et elles servent aussi pour la communication avec 
le gnrateur de sons, qui lui mme est un passage oblig pour l'criture d'un 
buffer indiquant la ligne de clavier  inspecter. Bref, le Basic de l'Oric et 
tous les programmes s'attendent  voir ce port en sortie la grande majorit du 
temps (on peut le programmer tout ou partie en entre pendant quelques instants 
si on masque les interruptions, pour lire un registre du gnrateur de sons ou 
utiliser un joystick sur le port parallle). Si vous voulez connecter une ligne 
de sortie du PC sur une de ces lignes Oric, il faut qu'elle reste tout le temps 
en entre (on pourrait alors faire un utilitaire de transfert  lancer AVANT de 
brancher le cable (ouch!), faire le transfert, dbrancher le cable AVANT de 
terminer le programme...vous tes sr de faire une mauvaise manip un jour ou 
l'autre).
J'ai aussi une connexion bidirectionnelle Oric<->PC, mais elle met en oeuvre
un petit montage externe avec un VIA supplmentaire.

Donc, tant que vous n'envisagez pas de faire du dveloppement crois sur votre
Oric (a viendra...), ce cablage est tout ce qu'il vous faut pour transfrer
vos programmes de l'Oric vers le PC. Votre PC deviendra une espce de demi-
imprimante pour l'oric ;-) 

Prt ? Alors on y va :

    A) Fabriquez votre cable

     PC DB25    Oric 20 broches
     -------    ------------
	15      3 (D0)
	13      5 (D1)
	12      7 (D2)
	10      9 (D3)
	11      1 (STROBE)
	6       19 (ACK)
	18-25   2,4,6,8,10,12,14,16,18,20 ou une d'entre elles suffit (GROUND)
	toutes les autres broches non connectes...

    Soyez srs de ne pas vous tromper dans la numrotation des broches de 
    l'Oric (pas de problme avec la DB25, les numros sont souvent marqus 
    dessus), quand vous regardez l'arrire de votre Oric, voici ce que vous 
    voyez (port parallle mle):

		1 3 5 7  9 11 13 15 17 19
		2 4 6 8 10 12 14 16 18 20

    Autre possibilit, si vous avez dj un cable de liaison parallle PC<->PC,
    et que vous aimez comme moi mettre les cables bout  bout, vous pouvez faire
    un petit convertisseur Oric-PC, que vous brancherez au bout de votre cable
    parallle PC:

	DB25    Oric 20 broches
	----    ------------
	2       3 (D0)
	3       5 (D1)
	4       7 (D2)
	5       9 (D3)
	6       1 (STROBE)
	11      19 (ACK)
	18-25   2,4,6,8,10,12,14,16,18,20 ou une seule d'entre elles (GROUND)
	(si vous choisissez de ne mettre  la masse qu'une des broches 18  25
	de la DB25, assurez-vous que la masse est bien transmise de bout en 
	bout)


    B) Un point de suret : vrifiez que vous pouvez toujours sauver sur une
    cassette neuve un petit programme Basic (par exemple 10 REM) avec CSAVE, 
    et le recharger sans erreur avec CLOAD.

    C) Le point rbarbatif : tapez le programme Basic ci-dessous (un petit 
    effort, il ne fait que 1ko...). Excutez le. Vrifiez ce que vous avez 
    tap si vous obtenez le message d'erreur. Ok, vous n'avez plus besoin de 
    ce programme Basic mais si vous avez envie de le sauver, vous l'aurez pour 
    le cas o vous voudriez le modifier plus tard.

        100 DATA141,1,3,173,0,3,73,16
        101 DATA141,0,3,173,13,3,41,2
        102 DATA240,249,96,72,32,0,4,104
        103 DATA74,74,74,74,32,0,4,96
        104 DATA162,4,189,168,2,149,0,202
        105 DATA208,248,96,162,4,181,0,157
        106 DATA168,2,202,208,248,96,56,173
        107 DATA171,2,237,169,2,141,171,2
        108 DATA173,172,2,237,170,2,24,105
        109 DATA6,141,172,2,169,0,141,169
        110 DATA2,169,6,141,170,2,96,16
        111 DATA7,83,101,110,116,58,32,0
        112 DATA16,7,76,111,97,100,101,100
        113 DATA58,32,0,8,32,178,231,32
        114 DATA106,231,32,125,229,32,172,228
        115 DATA32,155,229,32,32,4,32,54
        116 DATA4,32,224,228,32,61,233,40
        117 DATA32,43,4,169,96,160,4,32
        118 DATA171,229,32,81,230,96,120,169
        119 DATA191,141,0,3,169,228,160,4
        120 DATA32,171,229,162,9,189,167,2
        121 DATA32,19,4,202,208,247,189,147
        122 DATA2,240,6,32,19,4,232,208
        123 DATA245,32,19,4,32,32,4,32
        124 DATA54,4,173,169,2,172,170,2
        125 DATA133,51,132,52,160,0,177,51
        126 DATA32,19,4,32,108,229,144,246
        127 DATA32,43,4,169,87,160,4,32
        128 DATA171,229,88,96,16,7,83,101
        129 DATA110,100,105,110,103,32,0
        200 FORI=#400TO#4EE
        210 READA:POKEI,A
        215 S=S+A
        220 NEXT
        230 IFS<>22457THENPRINT"YOU MADE AN ERROR IN THE DATAS"

    D) Le point important : sauvez le code machine avec 
	CSAVE"TRANS",A#400,E#4FF
    Comme a, vous viterez de tout retaper si vous voulez faire un transfert 
    un autre jour (vous avez bien fait un RUN du programme Basic ?)

    E) Le retour du point de suret : CLOAD"TRANS",V

    F) Bon, on y est presque. A partir de maintenant, il vous faudra suivre ces
    instructions  chaque fois que vous rechargez cet utilitaire. D'abord un
    DOKE#2F5,#46B pour n'avoir plus que !""  taper pour chaque chargement de
    programme (ne lancez pas encore le chargement, il reste un dtail)

    G) L'assurance intgrit : tapez HIMEM#5FF pour que les programmes que vous
    allez charger ne soient pas abims par les commandes Basic que vous pourriez
    utiliser. Remarquez que j'ai fait en sorte que l'utilitaire vous laisse une
    place maximale pour autoriser le chargement des plus gros programmes
    (jusqu' 44800 octets sans problme, et plus encore si vous pouvez taper en 
    aveugle).

    H) Cette fois, on y est. Tapez !"" pour charger un programme, regardez la 
    ligne d'tat suprieure. Si vous obtenez un ERRORS FOUND, il faut 
    recommencer le chargement, peut-tre que votre cassette a vieilli... 
    rappelez-vous aussi toutes vos anciennes astuces (dmarrer le magnto 
    quelques secondes avant le dbut du fichier, lancer le chargement alors que
    la synchro si caractristique  l'oreille a dj commenc, dplacer la tte 
    de lecture avec la petite vis pour obtenir le son le plus clair, etc)

    I) Lancez l'utilitaire oriclink sur le PC, tapez CALL#496 sur l'Oric, puis
    la touche Return sur le PC, et voil, le programme est sur le PC, il ne 
    reste plus qu' lui donner un nom pour le sauver. Vous pouvez recommencer 
    au point H pour un autre transfert.

NB: Utilisateurs Linux : comme pour tous les programmes accdant  des ports
d'entres-sorties physiques, le programme a besoin des droits root. Vous devez
donc utiliser le programme en tant que super-utilisateur ou changer le 
propritaire du programme pour root et positionner le bit setuid
(soit chown root oriclink ; chmod u+s oriclink )

_______________________________________________________________________________

8. Configuration matrielle et quelques chiffres
--------------------

VGA :   Euphoric tourne sur n'importe quelle carte VGA en mode X 320x240

386 :   Euphoric tourne sur tout processeur acceptant le jeu d'instructions du 
	386, donc au minimum un 386SX.
	MAIS, si votre processeur n'est pas assez puissant, vous ne verrez
	rien  l'cran : l'mulateur tourne mais il n'a pas le temps de faire
	d'affichage. C'est le cas sur les 386 originaux d'Intel mme  40 MHz.
	Dans ce cas, vous serez obligs de vous contenter d'un oric plus lent,
	lisez le paragraphe suivant...
	Il faut savoir que le chargement d'un registre  partir d'une case
	mmoire peut tre 4 fois plus lent sur un 386 que sur un 486.
	Par contre, un processeur 386 optimis comme ceux d'IBM ou de Cyrix peut
	tre suffisant. Je l'ai vu tourner sur un Cyrix 486 SLC 33 (un 386 SX
	optimis avec cache 1 Ko). Chez Intel, le processeur 486 SX 16 permet
	de faire tourner Euphoric avec un indice Oric de 100%, mais pour avoir
	un rafraichissement satisfaisant, il faut avoir un 486 SX 33.
	Euphoric est crit en langage machine optimis pour le 486 et
	est dvelopp sur un processeur Cyrix 486 DLC 40 ( peu prs la
	performance d'un Intel 486 SX 33). (Comme l'optimisation pour un
	processeur 486 est diffrente de celle pour un processeur 386, je
	travaille actuellement sur une version allge, sans protection de la
	rom en criture, sans mmoire overlay, donc sans disque, qui devrait
	permettre aux possesseurs de 386 de faire tourner  la vitesse nominale
	leurs jeux favoris)

	A l'inverse, plus votre processeur est puissant, plus le nombre de
	rafraichissements crans par seconde sera important : aucun cycle CPU
	n'est perdu, ds que l'mulateur a trait un quantum de temps de l'oric
	virtuel, il termine le quantum de temps rel en faisant une partie ou
	plusieurs affichages de l'cran (la rapidit du bus et de la carte
	graphique sont ici mis  contribution)

Adlib:  Le gnrateur de son est mul par une synthse FM 2 oprateurs sur
	carte Adlib ou compatible (donc aussi les SoundBlaster et compatibles)
	Certains l'ont fait tourner sur GUS avec un mulateur Adlib sous Dos.


Euphoric est freeware, distribu gratuitement.
Si cet mulateur vous plat, vous pouvez me le faire savoir, j'accepte les
donations  l'adresse suivante :

	Fabrice Francs
	16, alle du Vaucluse
	31770 COLOMIERS
	FRANCE
_______________________________________________________________________________

9. Changer la vitesse
---------------------

Cette option est destine essentiellement aux utilisateurs de 386 qui n'ont pas
la puissance suffisante pour faire tourner l'mulateur  la vitesse originale
de l'oric (mais les possesseurs de machines plus puissantes peuvent s'amuser 
tester un oric de course...)

Euphoric accepte sur la ligne de commande un indice de vitesse, l'indice 100
tant pris par dfaut comme la vitesse standard de l'oric. Avec une valeur
infrieure, on obtient un oric lent, avec une valeur suprieure, on obtient un
oric rapide.

Par exemple, pour utiliser un oric deux fois plus lent, il suffit de taper

	euphoric 50

_______________________________________________________________________________

10. Claviers nationaux
---------------------

Euphoric cherche le fichier Keyboard.def pour l'utiliser le schma de clavier
qu'il contient. Si ce fichier n'est pas trouv, euphoric utilise la disposition
originale du clavier de l'oric, c'est  dire un clavier amricain.

Si vous avez un clavier franais, il suffit de recopier le
fichier Keybfr.def dans Keyboard.def. Un clavier anglais et un clavier allemand
sont aussi fournis, mais vous pouvez trs facilement crire la dfinition
d'autres claviers internationaux.

L'utilisation d'un clavier national ne gne pas les jeux qui utilisent les
position des touches sur l'oric, puisque seule la transformation position->code
ascii effectue par le basic en rom est affecte.
Pour arriver  ce rsultat, trois touches ont t rajoutes dans la matrice de
clavier de l'oric : la touche AltGr, la touche  ct du shift gauche et une
touche CAPS qui n'tait pas fondamentale, mais plus pratique que le Ctrl-T.

Si vous avez une disposition de clavier qui n'est pas fournie, construisez
votre fichier de dfinition en vous inspirant de ceux fournis : ils
donnent simplement les caractres trouvs sur les touches de votre clavier, par
ordre de scan code. Chaque ligne correspond  une touche, la premire tant la
touche Escape. Le premier caractre, s'il est prsent, donne l'tat de la touche
sans appui sur la touche shift, le second avec shift, et le dernier avec AltGr.
Vous n'aurez normalement pas  dplacer la position des touches spciales
(flches, Enter, BackSpace,...) indiques par des squences telles que ~3.
_______________________________________________________________________________

11. Copyrights et remerciements
------------------------------

Euphoric est copyright Fabrice Francs.

Euphoric est dvelopp sous Linux, systme d'exploitation Unix gratuit, avec
tout l'environnement de programmation GNU, en particulier l'assembleur gas et
le compilateur C/C++ gcc (qui gnre un code meilleur que les produits Borland
ou Microsoft).

Le mme source ( quelques dtails prs) est assembl grce au portage
de l'environnement GNU sous DOS (djgpp), et tourne en 32 bits avec l'extender
go32 de DJ Delorie. Je compte sur la prochaine version (2.0) de djgpp et de
go32 pour que l'mulateur tourne sur toute bote DPMI (Windows 3.1, Windows 95,
Windows NT, OS/2 2.x et Warp)

Les routines d'entres-sorties standard (fopen, fread, fwrite...) de la
bibliothque C sont copyright "The Regents of the University of California"
(UCB), c'est pourquoi je signale le message suivant "This product includes
software developed by the University of California, Berkeley and its
contributors".

Aucun code de la Free Software Foundation n'est inclus dans ce programme, il
ne tombe donc pas sous le statut de la GNU General Public License, ni mme
celui de la GNU Library Public License.

La bibliothque svgalib (Harm Hanemaayer) est utilise sous Linux pour passer
en mode X et intercepter le clavier. Sous DOS, aucune librairie autre que la
libc.a n'est utilise.

La logique du code Adlib est tire de l'mulateur Spectrum de Gerton Lunter,
qui a eu la gentillesse de m'envoyer son code source.

Merci  Jonathan Haworth, qui m'a communiqu toutes informations ncessaires
sur l'architecture du controleur de disquettes, et qui est sans doute le plus
grand supporter de l'Oric sur terre (je vous conseille notamment de lire son
livre "Oric, the story so far...")

Merci  tous ceux qui n'ont jamais perdu la foi de l'Oric, comme Laurent
Chiacchierini et tous les membres du Club Europe Oric, ou de l'Oric User Monthly

Merci aux testeurs pour leurs suggestions, particulirement Philipp Mulrane,
Bruno Thiebot et Vaggelis Blathras qui remporte la palme du perfectionnisme...

_______________________________________________________________________________

12. Questions et rponses
------------------------

    A) Comment me contacter pour signaler un succs, un chec, faire une 
    suggestion ou obtenir de l'aide ?
	
	De prfrence, envoyez-moi un mail  frances@ensica.fr.

    B) Existe-t-il une version plus rcente ?

	La version la plus  jour se trouve sur un serveur web, suivez l'URL :
	http://www.ensica.fr/LOCAL/ORIC/euphoric.html
	C'est aussi en passant par cette page www que vous trouverez les 
	derniers utilitaires, informations et programmes pour l'Oric.

    C) Euphoric tourne-t-il sur ma machine XYZ avec mon environnement WKQ ?

	Euphoric tourne sur PC seulement, sous diffrents systmes (pour
	l'instant Linux et DOS, mais bientt OS/2, Windows 3.1, NT, 95...)
	JF.Fabre et O.Balet ont fait un mulateur pour stations Unix/X11
	(contactez balet@ensica.fr ou fabre@cert.fr), et JF.Fabre est sur le
	dveloppement d'un mulateur pour Commodore.

    D) Un Ctrl-C me fait sortir d'Euphoric sous Linux !

	Et oui, je n'y peux hlas rien pour l'instant. J'attend que H.Hanemaayer
	fasse une correction de svgalib. En attendant, je vous propose de taper
	Ctrl-F3  la place...
