Obligement - L'Amiga au maximum

Lundi 23 juin 2025 - 17:52  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

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

Articles in English


Réseaux sociaux

Suivez-nous sur X




Liste des 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,
ALL


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


Galeries

Menu des galeries

BD d'Amiga Spécial
Caricatures Dudai
Caricatures Jet d'ail
Diagrammes de Jay Miner
Images insolites
Fin de jeux (de A à E)
Fin de Jeux (de F à O)
Fin de jeux (de P à Z)
Galerie de Mike Dafunk
Logos d'Obligement
Pubs pour matériels
Systèmes d'exploitation
Trombinoscope Alchimie 7
Vidéos


Téléchargement

Documents
Jeux
Logiciels
Magazines
Divers


Liens

Associations
Jeux
Logiciels
Matériel
Magazines et médias
Pages personnelles
Réparateurs
Revendeurs
Scène démo
Sites de téléchargement
Divers


Partenaires

Annuaire Amiga

Amedia Computer

Relec


A Propos

A propos d'Obligement

A Propos


Contact

David Brunet

Courriel

 


Programmation : GFA Basic - gestion des disquettes
(Article écrit par Pierre-Philippe Launay et extrait d'Amiga News - mai 1991)


Ce chapitre permet de mieux comprendre les accès d'écriture et de lecture de la disquette. Le bout de code présenté ci-après nous demande avant tout quel est notre type de lecture puis il en vérifie la bonne moralité. Il marque alors de son sceau "Lu et approuvé" et comme tout censeur qui se respecte, il ne respecte rien et détruit l'original.

En fait, il y a bel et bien trois erreurs dont la première est une simple faute de syntaxe. Pour vous aider, je précise que tout se passe avant la boucle "REPEAT...UNTIL". La deuxième erreur est plus fine et s'avère au contraire un avantage quand on maîtrise bien le langage. Cette deuxième erreur est répétée puis arrive la troisième erreur, tout à fait impardonnable mais un "!" (point d'exclamation) permet de sauter par-dessus.

Je vous accorde que cette dernière erreur n'est pas évidente tant que n'est pas présente la routine "test.répertoire" mais un peu de logique et surtout les commentaires et les noms en français permettent malgré tout de la déceler.

Pour confirmer vos soupçons, je vous indique que la deuxième erreur s'avère désastreuse pour un programme dépassant 32767 octets. En effet, GFA distingue six espèces de farfadets selon la longueur de leur heu...structure :
  • (1) Le BOOL! -1 à 0
  • (1) Le BYTE! 0 à 255
  • (2) Le WORD& -32768 à 32767
  • (4) Le LONG% -2147483648 à 2147483647
  • (8) L'EXPO# 2.225073858507E-308 à 3.595386269725E+308
  • (n) Le TEXT$ 0 à 32767 lettres
Plus c'est petit, plus c'est rapide mais nous verrons que l'on peut ruser. La routine "test.info" permet de tester l'état de la disquette insérée. Notre logiciel n'acceptera ainsi que le format AmigaDOS. Le principe d'utilisation d'une routine du système d'exploitation se révèle donc particulièrement simple sous GFA. La Bible de l'Amiga de chez Micro Application nous indique que la routine "Info" utilise une structure de 36 octets : on réserve donc 36 octets. La position relative 8 à 12 montre l'état de la disquette (DiskState) tandis que la position relative 24 à 28 montre l'état (DiskType).

Bien. Supprimez la ligne "VOID MFREE" et lancez le programme : rien ne semble modifié et pourtant, nous venons de créer un virus de l'espèce octetophage. En assembleur, cela correspond à un AllocMem sans le FreeMem. Ça marche jusqu'à ce que trop de mémoire soit grignotée. Et après, trop c'est trop : on se convertit à Krishna et quel triste résultat ! Voyez donc Guru Nicholas Chertier et ses Félés. Ainsi, c'est une excellente protection pour les programmes de démonstration ou l'erreur par excellence des programmeurs de PC. Ah, si tout avait été conçu comme un Amiga, c'est pourtant simple de ne pas se tromper : il suffit de laisser en partant les lieux aussi propres qu'on les a trouvés en entrant. Sinon ça golfe à tous les coups.

GFA Basic


[Retour en haut] / [Retour aux articles] [Article précédent] / [Article suivant]