Obligement - L'Amiga au maximum

Vendredi 26 mai 2017 - 13:08  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Hit Parade
 · Liens
 · Liste jeux Amiga
 · Quizz
 · Téléchargements
 · Trucs et astuces


Articles

 · Actualité (récente)
 · Actualité (archive)
 · Comparatifs
 · Dossiers
 · Entrevues
 · Matériel (tests)
 · Matériel (bidouilles)
 · Points de vue
 · En pratique
 · Programmation
 · Reportages
 · Tests de jeux
 · Tests de logiciels
 · Tests de compilations
 · Articles divers

 · Articles in english
 · Articles in other languages


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Moteurs de recherche
 · Pages de liens
 · Constructeurs matériels
 · Matériel
 · Autres sites de matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Développeurs logiciels
 · Logiciels
 · Développeurs de jeux
 · Jeux
 · Autres sites de jeux
 · Scène démo
 · Divers
 · Informatique générale


Jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Partenaires

Annuaire Amiga

Amedia Computer

Relec

Hit Parade


Soutien

N'hésitez pas à soutenir le projet Obligement



Contact

David Brunet

Courriel

 


En pratique : Créer un menu de démarrage sur Pegasos
(Article écrit par Nicolas Gressard - février 2005, mis à jour en mars 2009)


Introduction

Dans cet article, nous allons voir de quelle manière il est possible de créer un menu dans le SmartFirmware du Pegasos de façon à permettre de démarrer facilement différentes configurations sans avoir à entrer de longues et rébarbatives lignes de commandes.

Ce travail sera exécuté via un petit outil du nom de BootCreator, disponible sur www.tbs-software.com/morgoth/projects.html. Je n'ai personnellement testé BootCreator que sur Pegasos II, mais plusieurs personnes l'utilisent avec succès sur Pegasos I même si la fonctionnalité  "timeout" ne semble pas fonctionner en raison de sa version du firmware. BootCreator existe en version MorphOS et Linux. La procédure décrite ici concerne la version MorphOS, mais elle est strictement identique sous Linux.

BootCreator ne se révèle pas utile exclusivement dans le cas de l'utilisation de plusieurs systèmes d'exploitation, mais peut également permettre, par exemple, de lancer MorphOS avec différentes options (debug, etc.).

Alors, BootCreator, comment ça marche ? (® Michel Chevalet)

Le firmware du Pegasos est "scriptable" en langage Forth. Ceci signifie qu'il dispose d'un interpréteur Forth intégré qui permet d'exécuter des programmes directement en son sein. C'est cette fonctionnalité qui va nous permettre de créer un menu de démarrage. Comme le Forth n'est pas un langage particulièrement évident à digérer, sans doute d'ailleurs parce qu'il n'est pas très courant de le rencontrer, nous allons confier la rédaction dudit script à un programme : BootCreator.

BootCreator est une "moulinette" en ligne de commande qui va transformer un fichier de configuration contenant tous les paramètres du menu que l'on souhaite créer en un script Forth directement exploitable par le firmware.

Une fois l'archive décompressée, vous êtes en possession d'un exécutable "bootcreator" et d'un exemple de fichier de configuration situé dans le répertoire "examples" nommé "example.bc". Ce dernier est le fichier de configuration qu'il faudra passer en paramètre à l'exécutable afin de générer le script en Forth. Éditez ce fichier avec n'importe quel éditeur de texte et voici ce que vous voyez :

#
# Example description file for bootcreator 1.1
#

[VERSION]
1

[TITLE]
Boot Menu

[SETTINGS]
AbortOnKey = false
Timeout    = 9
Default    = 1   

[SECTION]
Local HD -> MorphOS      (Normal)
ide:0 boot2.img ramdebug edebugflags="logkprintf"

[SECTION]
Local HD -> MorphOS      (Debug)
ide:0 boot2.img ramdebug edebugflags="logextended logkprintf permmemtrack memtrack"

[SECTION]
Local HD -> Linux 2.6.8  (Normal)
ide:0 linux-2.6.8.img video=radeonfb:1024x768@70 root=/dev/hda5
  • La section [VERSION] doit contenir "1" pour un Pegasos II et "0" pour un Pegasos I.
  • La section [TITLE] contient le texte que vous voulez voir affiché au-dessus de votre menu.
  • La section [SETTINGS] contient trois valeurs qui parlent d'elles mêmes :
    • AbortOnKey = false/true (abandonne si une touche est enfoncée)
    • Timeout = x (attend x secondes avant de lancer le choix par défaut)
    • Default = x (détermine le choix par défaut)
  • Les sections [SECTION] contiennent chacune un couple de valeurs déterminant une ligne de choix dans le menu.
Pour chaque section [SECTION], la première ligne détermine le contenu de la ligne qui sera affichée dans le menu et la seconde ligne contient exactement ce que vous auriez tapé en ligne de commande dans le SmartFirmware.

D'autres exemples

Ces exemples ne sont évidemment valables uniquement si vous avez au préalable installé les systèmes en question et seront à adapter à votre configuration.

Pour démarrer MorphOS "normalement", sans activer le debug sur le port série, mettez :

[SECTION]
MorphOS
ide:0 boot.img ramdebug

Si vous avez installé un deuxième MorphOS sur une autre partition démarrable, il faudra ajouter l'argument "bootdevice=nom_de_la_partition" à votre ligne de commande. Par exemple, pour lancer un MorphOS se trouvant sur votre partition "DH2:", il faudra mettre :

[SECTION]
MorphOS
boot.img ramdebug bootdevice=dh2

Pour lancer PegXLin (avec comme configuration : carte graphique Voodoo, partition de démarrage sur la partition 1 du disque dur maître du second port IDE), mettez :

[SECTION]
PegXLin
ide:0 pegxlin root=/dev/hdb1 video=tdfx hdc=ide-scsi l2cr=0X800000000

Pour lancer Mac OS X via PegXMac (avec comme configuration : carte graphique Radeon, partition de démarrage de MacOnLinux sur la partition 1 du disque dur esclave du premier port IDE), mettez :

[SECTION]
Mac OS X
ide:0 boothd root=/dev/hdb1 video=radeonfb:1024x768-8@75 hdd=scsi hdc=scsi startmacosx

Pour lancer le menu de démarrage de PegXMac (avec comme configuration : carte graphique Radeon, partition de démarrage de MacOnLinux sur la partition 1 du disque dur esclave du premier port IDE), mettez :

[SECTION]
PegXMac Menu
ide:0 boothd root=/dev/hdb1 video=radeonfb:1024x768-8@75 hdd=scsi hdc=scsi

Pour lancer Linux Debian 2.6.8 (avec comme configuration : carte graphique Radeon, partition de démarrage de Linux sur la partition 5 du disque dur maître du premier port IDE), mettez :

[SECTION]
Linux Debian 2.6.8
ide:0 linux-2.6.8.img video=radeonfb:1024x768@70 root=/dev/hda5

Pour lancer Linux Yellow Dog 4.0 (avec comme configuration : carte graphique Radeon, partition de démarrage de Linux sur la partition 1 du disque dur esclave du deuxième port IDE), mettez :

[SECTION]
Linux Yellow Dog 4.0
/pci/ide/disk@0,1:0 /boot/2.6.8.ydl-freescale root=/dev/hdb1

Pour lancer AmigaOS 4.1 (dont le nom de la partition est "os4"), mettez :

[SECTION]
AmigaOS 4.1
hd:0 amigaboot.of os4_bootdevice=os4

Générer le script

Une fois ce fichier modifié, générez le script Forth en tapant dans un Shell la ligne de commande suivante :

bootcreator examples/example.bc bootmenu

Ceci va avoir pour conséquence de créer le fichier "bootmenu" que vous pouvez toujours éditer si vous souhaitez voir à quoi ressemble le programme Forth résultant. Afin que le firmware puisse accéder au fichier Forth, il convient de le mettre sur une partition d'un type qu'il est capable de lire. La partition FFS contenant votre noyau MorphOS est sans doute la plus adaptée.

La dernière chose à faire, est de modifier la variable "boot-file" du firmware de façon à ce qu'il exécute le menu au lieu de lancer directement tel ou tel noyau MorphOS ou Linux. Pour cela, utilisez la commande suivante dans le firmware (en supposant que la variable "boot-device" désigne déjà la bonne partition) :

setenv boot-file bootmenu

Résultat

Lors de votre prochain démarrage, votre Pegasos présentera un menu de ce type :

BootCreator

Si vous avez fait une erreur dans le paramétrage du menu, pas de panique, il est toujours possible de reprendre la main dans le firmware et de démarrer manuellement sur la partition MorphOS ou sur un CD. A vous de jouer maintenant.


[Retour en haut] / [Retour aux articles]