Vous aurez une piste que je puisses explorer un peu le truc ? Merci d'avance pour tout.
Essaie de régler correctement vitesse, parité, et bit de start/stop, tout devrait rentrer dans l'ordre. 9600Bauds/Parité paire/Un bit stop est une configuration très courante.
En principe, surtout si tu débutes en programmation, ce genre de choses sera complètement transparent pour toi. Seule chose à savoir, la taille des « int » (pour faire simple) sera par défaut sur 64 bits au lieu de 32. Ce serait surtout gênant dans l'autre sens. Dans ton cas, il faudra juste faire attention de mettre les masques de bits au bon format (et si tu ne vois pas de quoi je parles, c'est que tu n'en as pas encore besoin).
Moi j'utilise normalement g++, il fonctionne très bien (à condition d'avoir au moins la version 3 de GCC, cela dit). Si par « logiciel pour écrire en C++ » tu entends « un truc qui ressemble à Visual Studios », tu peux toujours utiliser KDevelop, et eventuellement Glade, mais ce n'est pas le chemin à prendre. Lance-toi plutôt directement dans la ligne de commande, tu en seras récompensé au quotidien en moins de temps qu'il ne t'en faudras pour le réaliser.
Voila un commentaire que je pertinente plutôt deux fois qu'une.
J'ai également été assez surpris de voir kppp relégué à l'arrière-plan par Mandrake. Cela fait partie des bizarreries dont souffre cette distribution depuis quelques temps.
En effet, bienvenue dans le monde merveilleux de la programmation des threads et des soucis qui en découlent !
Ceci dit, si l'on peut éviter d'utiliser un thread pour tout et n'importe quoi, c'est aussi bien. Le multitâche coopératif est extrêmement bénéfique lorsqu'on l'implémente au sein d'un même programme ...
Je l'ai fait sans problème. Bon il faut peut-être télécharger une JVM récente d'une part et autoriser le plug-in à se mettre à la bonne place, d'autre part, et enfin jeter un oeil à son firewalling, sinon ça marche.
Méfiance avec le AltGr+SysRq+SUB. En principe "u" est censé provoquer le démontage en règle des partitions actives, mais il m'est pourtant plusieurs fois arrivé de subir un e2fsck au redémarrage pour cause de disques non proprement démontés. Bref, l'opération se fait peut-être un niveau trop bas.
Fondamentalement, l'acquisition des caractères se fait soit par la console, soit par les événements X-Windows.
Donc, sous x, xmodmap devrait te tirer d'affaire. Evidement, il ne faut pas que le logiciel se soucie des scancodes, mais bon. En principe ce n'est jamais le cas.
Les filles faisaient déjà parler d'elles il y a 3 ans, et les photos, célèbres sont encore plus anciennes (regardez la tête de fillette d'Adrianna :-).
Le principe de base est de rendre communes les fonctions d'un programme qui présentent un intérêt général.
Exemple : Ouvrir une fenêtre. Il est bien sûr inconcevable que chaque programmeur réécrive lui-même le système X-Window depuis zéro pour pouvoir travailler. A la place, il va faire appel à une fonction de réputation publique (dont on mettra le prototype dans un *.h pour que le programme C sache comment l'utiliser).
Ensuite, au moment de construire l'exécutable, on intégrera dans le fichier les fonctions de gestion de fenêtres, déjà compilées à cet effet. C'est donc une bibliothèque statique. C'est exactement comme un exécutable sauf qu'il n'y pas de point d'entrée.
Par contre, quand il commence à y avoir beaucoup de programmes quu ouvrent des fenêtres, on se rend compte que d'une part les exécutables sont gargantuesques (toute la gestion du X est intégrée dans l'exécutable juste pour afficher Hello World à l'écran), et que d'autre part il est idiot de charger 15 fois en mémoire les même fonctions ! A la place, on ne va compiler que le nécéssaire et l'on va laisser "en l'air" les reférences à la bibliothèque partagée. Ce sera alors le boulot du système d'exploitation de charger LORSQUE C'EST NECESSAIRE les ressources dont un logiciel a besoin et de résoudre les noms de fonctions en adresse mémoire.
En outre, et c'est là l'intérêt majeur, si la ressource réclamée a déjà été chargée pour un autre logiciel, il est inutile de la charger une deuxième fois (gain de temps), et les deux programmes peuvent appeler le même endroit (gain de place).
Avantage de la compilation statique: On obtient un exécutable parfaitement autonome, ou presque, qui pourra fonctionner toutes les plateforme équipées d'un même OS. Inconvénient: Cela génère des exécutables gigantesques pour rien.
Avatnage de la compilation dynamique: On ne compile que ce qui est nécéssaire, on gagne du temps et de la place, et quand on met à jour une fonction, cela se répercute immédiatement sur tous les programmes qui l'utilisent. Inconvénient, lorsque l'on installe un logiciel, il faut installer toute sa suite avec, vérifier si les libs ne sont pas déjà en place, etc. et gérer les dépendances en cascades (tel logiciel à beosin de telle lib, qui elle même s'appuie sur une autre lib, qui à son tour a besoin deux trois libs de plus bas niveau, etc.).
Je suppose que quand tu parles de bloc 0, il s'agit du superbloc, et pas du MBR puisque tu arrives à lire les autres partitions. Il me semble que justement, pour éviter ce genre de soucis, le superbloc est répété à intervalles réguliers. Un petit coups dans la man page de e2fsck :
-b superblock
Au lieu d'utiliser le superbloc normal, utilise un autre
superbloc specifie par superblock. On se sert de cette option
lorsque le superbloc primaire a ete corrompu. L'emplacement du
superbloc de sauvegarde depend de la taille des blocs du systeme
de fichiers. Pour les systemes de fichiers avec des blocs de
tailles 1K, le superbloc de sauvegarde est situe dans le block
8193, avec des blocs de tailles 2K, il se situe dans le bloc
16384 et avec les blocs de 4K, dans le bloc 32768.
Donc, je suis désolé de te l'annoncer, mais un mkfs sur ta partoche, c'est ce que l'on appelle un formattage logique, ou de haut niveau, sur d'autres systèmes d'exploitation. Tu peux à la limite faire un xxd /dev/sda1 pour essayer de récupérer des bribes de tes fichiers, mais étant donné que tu ne pourras plus t'appuyer sur l'ancien filesystem, même modifié, cela va être très dur.
Tu peux toujours essayer cependant de reconnaître tes blocs parmi les limbes en utilisant des trucs comme debugfs ou autre. Une seule lecture : L'undeletion-Mini-HOWTO:
C'est parce que l'on trouve majoritairement les dernières productions de la StarAc' et de la Nouvelle Star dans la corbeille ... donc, maintenant, on ouvre xmms par défaut !
Première chose, est-ce que tu travailles sous Linux ou sous DOS ?
Réponse longue :
Ensuite, étant donné qu'en ASCII standard le bit7 (celui de poids fort, de 0 à 7) est utilisé comme bit de parité pour les télétransmissions, seuls les 128 premiers caractères sont standard (et encore, les caractères de contrôle et le 127 ont tendance à être implémentés de différentes manières en fonction des plateformes).
Ce qui veut dire qu'utiliser les caractères au dessus de 127 pour dessiner des cadres est une très mauvaise idée ! Du temps du DOS, tout le monde avait le même problème.
Les caractères que tu recherches sont ceux définis par IBM pour son PC, en tant que jeu par défaut, et définis à la quatre-cent-trente-septième page de leurs spécifications. Donc sous DOS: C:\> chcp 437 ("Change CodePage"). A titre d'info, la page de code utilisée en Europe est la 850, et bon nombres des « angles » ont été remplacés par les caractères accentués.
Maintenant, lorsque tu mets une carte graphique sous tension, comme elle est prévue pour gérer un mode texte (ne serait-ce que pour afficher l'état de l'autotest à l'allumage de ta machine), elle est livrée avec un jeu de caractères bitmap VGA standard, en général mappant celui d'IBM.
Sous Linux, ensuite, tu as deux choix:
Soit tu cherches à afficher ton programme en mode texte. Dans ce cas-là, il faut recharger un nouveau bitmap dans la carte graphique. Jette un oeil à ce qui se trouve dans /usr/lib/kbd/consolefonts et utilise setfont pour effectuer l'action en question, soit tu travailles sous X-Window et il faut demander au terminal d'utiliser une fonte fixe qui produit ces symboles.
Eventuellement, tu peux générer un .ps à l'aide de a2ps pipé sur la sortie de ton programme. Avec les bonnes options, tu peux lui demander d'utiliser la cp437 pour faire son rendu. Ensuite il passera partout puisque c'est un fichier « graphique » ! Vois aussi du coté de recode.
Tu peux aussi utiliser l'UTF-8 ou l'Unicode si tes périphs de sortie les reconnaissent.
Réponse courte :
Utilise comme tout le monde les "+","|" et "-" pour faire tes cadres. C'est pratiquement aussi propre et tu es alors sûr que ton programme fonctionnera sur tous les ordinateurs et terminaux du monde.
C'est pas grave, ça ne sert à rien, Windows XP, de toutes façons. :-)
Bon, il y a de fortes chances que la partition sur laquelle grub recherche le système ne soit plus la bonne. Fais un fdisk sur ton disque et retrouve le numéro de la partition sur laquelle se trouve ton Windows, puis mets à jour /etc/grub.conf en conséquence. Cela devrait suffire.
# Z'avez une piste ?
Posté par Obsidian . En réponse au message Dialogue sur le port série /dev/ttyS0. Évalué à 4.
Essaie de régler correctement vitesse, parité, et bit de start/stop, tout devrait rentrer dans l'ordre. 9600Bauds/Parité paire/Un bit stop est une configuration très courante.
# Ne t'inquiète pas.
Posté par Obsidian . En réponse au message Ordi 64 bits et C++. Évalué à 3.
# Ben G++
Posté par Obsidian . En réponse au message Logiciel C++. Évalué à 4.
[^] # Re: Istalle kppp !
Posté par Obsidian . En réponse au message comment créer un bouton d'accés internet sur le tableau de bord ?. Évalué à 2.
J'ai également été assez surpris de voir kppp relégué à l'arrière-plan par Mandrake. Cela fait partie des bizarreries dont souffre cette distribution depuis quelques temps.
[^] # Re: Chanceux
Posté par Obsidian . En réponse au message Editeur hexa. Évalué à 2.
( * Aïe ! *)
[^] # Ou rev ...
Posté par Obsidian . En réponse au message Parcourir un fichier à l'envers.. Évalué à 4.
$ cat fichier | rev | more
[^] # Re: yo
Posté par Obsidian . En réponse au message Question sur Perl-Gtk !. Évalué à 2.
Ceci dit, si l'on peut éviter d'utiliser un thread pour tout et n'importe quoi, c'est aussi bien. Le multitâche coopératif est extrêmement bénéfique lorsqu'on l'implémente au sein d'un même programme ...
[^] # Re: Ah bon ?
Posté par Obsidian . En réponse au message bug télédéclaration. Évalué à 2.
# /etc/shells
Posté par Obsidian . En réponse au message Nécessité de préciser "sh script.sh". Évalué à 3.
# Fais comme l'oiseau
Posté par Obsidian . En réponse au message icones. Évalué à 3.
Y a un certain LaFontaine qui avait fait un HOWTO sur le sujet, mais je crois qu'il date un peu maintenant ...
[^] # Re: solution du hacker fou
Posté par Obsidian . En réponse au message Inverser deux touches du clavier. Évalué à 2.
# Xmodmap
Posté par Obsidian . En réponse au message Inverser deux touches du clavier. Évalué à 3.
Donc, sous x, xmodmap devrait te tirer d'affaire. Evidement, il ne faut pas que le logiciel se soucie des scancodes, mais bon. En principe ce n'est jamais le cas.
[^] # Re: trop pas gros, passera pas...
Posté par Obsidian . En réponse à la dépêche FACT, un projet de directive européenne pour une dictature numérique ?. Évalué à 2.
http://linuxfr.org/2003/12/09/14814.html(...)
# Pas frais, ce poisson !
Posté par Obsidian . En réponse à la dépêche FACT, un projet de directive européenne pour une dictature numérique ?. Évalué à 6.
Moi, maintenant, j'aurais bien vu un truc du style :
"Après Hotmail, Microsoft acquiert DLFP"
Ca, ç'aurait été un bon trool des familles ! :-)
[^] # Re: Ce que Microsoft s'est bien gardé de dévoiler
Posté par Obsidian . En réponse au journal OEB recrute. Évalué à 4.
[ ] Oui
[ ] Non
[ ] Ne sais pas
[ ] <- Je sors.
Etant donné la proportion de « portes » déjà prises sur linuxfr.org, cela doit faire grimper le pourcentage. :-)
Plus sérieusement, s'il n'y avait que des lumières qui utilisaient Linux, cela se saurait. Et puis il faut prendre en compte la mauvaise foi aussi ...
# Pas nouveau ...
Posté par Obsidian . En réponse au journal XXX mais pas trop transparent. Évalué à 3.
http://www.linuxfr.org/2002/08/15/9275.html(...)
Linus himself a dù intervenir pour dire « C'est marrant, mais ça suffit ».
[^] # Re: Re:questions relatives à l'execution d'un programme....
Posté par Obsidian . En réponse au message questions relatives à l'execution d'un programme..... Évalué à 2.
DLL = Dynamically Linkable Library
Comme çà, tout est dit.
[^] # Re: correction
Posté par Obsidian . En réponse au message Petit problème d'ascenseur.... Évalué à 2.
# Petit problème d'ascenseur...
Posté par Obsidian . En réponse au message Petit problème d'ascenseur.... Évalué à 3.
Prendre l'escalier ? /o\
[^] # Re: Re:questions relatives à l'execution d'un programme....
Posté par Obsidian . En réponse au message questions relatives à l'execution d'un programme..... Évalué à 3.
Exemple : Ouvrir une fenêtre. Il est bien sûr inconcevable que chaque programmeur réécrive lui-même le système X-Window depuis zéro pour pouvoir travailler. A la place, il va faire appel à une fonction de réputation publique (dont on mettra le prototype dans un *.h pour que le programme C sache comment l'utiliser).
Ensuite, au moment de construire l'exécutable, on intégrera dans le fichier les fonctions de gestion de fenêtres, déjà compilées à cet effet. C'est donc une bibliothèque statique. C'est exactement comme un exécutable sauf qu'il n'y pas de point d'entrée.
Par contre, quand il commence à y avoir beaucoup de programmes quu ouvrent des fenêtres, on se rend compte que d'une part les exécutables sont gargantuesques (toute la gestion du X est intégrée dans l'exécutable juste pour afficher Hello World à l'écran), et que d'autre part il est idiot de charger 15 fois en mémoire les même fonctions ! A la place, on ne va compiler que le nécéssaire et l'on va laisser "en l'air" les reférences à la bibliothèque partagée. Ce sera alors le boulot du système d'exploitation de charger LORSQUE C'EST NECESSAIRE les ressources dont un logiciel a besoin et de résoudre les noms de fonctions en adresse mémoire.
En outre, et c'est là l'intérêt majeur, si la ressource réclamée a déjà été chargée pour un autre logiciel, il est inutile de la charger une deuxième fois (gain de temps), et les deux programmes peuvent appeler le même endroit (gain de place).
Avantage de la compilation statique: On obtient un exécutable parfaitement autonome, ou presque, qui pourra fonctionner toutes les plateforme équipées d'un même OS. Inconvénient: Cela génère des exécutables gigantesques pour rien.
Avatnage de la compilation dynamique: On ne compile que ce qui est nécéssaire, on gagne du temps et de la place, et quand on met à jour une fonction, cela se répercute immédiatement sur tous les programmes qui l'utilisent. Inconvénient, lorsque l'on installe un logiciel, il faut installer toute sa suite avec, vérifier si les libs ne sont pas déjà en place, etc. et gérer les dépendances en cascades (tel logiciel à beosin de telle lib, qui elle même s'appuie sur une autre lib, qui à son tour a besoin deux trois libs de plus bas niveau, etc.).
[^] # Re: Résolu mais pas compris
Posté par Obsidian . En réponse au message XMMS lié à la poubelle de KDE. Évalué à 1.
Pas compris...
C'est un mystérésis ! :-)
# Gni ?
Posté par Obsidian . En réponse au message récupérer des données d'un disque.... Évalué à 2.
Donc, je suis désolé de te l'annoncer, mais un mkfs sur ta partoche, c'est ce que l'on appelle un formattage logique, ou de haut niveau, sur d'autres systèmes d'exploitation. Tu peux à la limite faire un xxd /dev/sda1 pour essayer de récupérer des bribes de tes fichiers, mais étant donné que tu ne pourras plus t'appuyer sur l'ancien filesystem, même modifié, cela va être très dur.
Tu peux toujours essayer cependant de reconnaître tes blocs parmi les limbes en utilisant des trucs comme debugfs ou autre. Une seule lecture : L'undeletion-Mini-HOWTO:
http://www.traduc.org/docs/HOWTO/vf/Ext2fs-Undeletion.html(...)
[^] # Re: ?
Posté par Obsidian . En réponse au message XMMS lié à la poubelle de KDE. Évalué à 7.
# Bienvenue dans le monde merveilleux des charsets.
Posté par Obsidian . En réponse au message Caractères imprimables qui passent pas. Évalué à 5.
Réponse longue :
Ensuite, étant donné qu'en ASCII standard le bit7 (celui de poids fort, de 0 à 7) est utilisé comme bit de parité pour les télétransmissions, seuls les 128 premiers caractères sont standard (et encore, les caractères de contrôle et le 127 ont tendance à être implémentés de différentes manières en fonction des plateformes).
Ce qui veut dire qu'utiliser les caractères au dessus de 127 pour dessiner des cadres est une très mauvaise idée ! Du temps du DOS, tout le monde avait le même problème.
Les caractères que tu recherches sont ceux définis par IBM pour son PC, en tant que jeu par défaut, et définis à la quatre-cent-trente-septième page de leurs spécifications. Donc sous DOS: C:\> chcp 437 ("Change CodePage"). A titre d'info, la page de code utilisée en Europe est la 850, et bon nombres des « angles » ont été remplacés par les caractères accentués.
Maintenant, lorsque tu mets une carte graphique sous tension, comme elle est prévue pour gérer un mode texte (ne serait-ce que pour afficher l'état de l'autotest à l'allumage de ta machine), elle est livrée avec un jeu de caractères bitmap VGA standard, en général mappant celui d'IBM.
Sous Linux, ensuite, tu as deux choix:
Soit tu cherches à afficher ton programme en mode texte. Dans ce cas-là, il faut recharger un nouveau bitmap dans la carte graphique. Jette un oeil à ce qui se trouve dans /usr/lib/kbd/consolefonts et utilise setfont pour effectuer l'action en question, soit tu travailles sous X-Window et il faut demander au terminal d'utiliser une fonte fixe qui produit ces symboles.
Eventuellement, tu peux générer un .ps à l'aide de a2ps pipé sur la sortie de ton programme. Avec les bonnes options, tu peux lui demander d'utiliser la cp437 pour faire son rendu. Ensuite il passera partout puisque c'est un fichier « graphique » ! Vois aussi du coté de recode.
Tu peux aussi utiliser l'UTF-8 ou l'Unicode si tes périphs de sortie les reconnaissent.
Réponse courte :
Utilise comme tout le monde les "+","|" et "-" pour faire tes cadres. C'est pratiquement aussi propre et tu es alors sûr que ton programme fonctionnera sur tous les ordinateurs et terminaux du monde.
# XP ?
Posté par Obsidian . En réponse au message probleme pour booter winfowsXP apres installatio de fedora 3. Évalué à 4.
Bon, il y a de fortes chances que la partition sur laquelle grub recherche le système ne soit plus la bonne. Fais un fdisk sur ton disque et retrouve le numéro de la partition sur laquelle se trouve ton Windows, puis mets à jour /etc/grub.conf en conséquence. Cela devrait suffire.