| Win3x.Org http://www.win3x.org/win3board/ |
|
| Documentation ASM http://www.win3x.org/win3board/viewtopic.php?f=2&t=6199 |
Page 1 sur 2 |
| Auteur : | alex7812 [ 25 juil. 2010 12:21 ] |
| Sujet du message : | Documentation ASM |
| Bonjour à tous, Je propose un petit sujet pour partager vos connaissances en assembleur. L'idée ici n'est pas de donner des liens vers des sites extérieurs, mais de mettre des bouts de code en les décrivants pour aider les membres à apprendre ce langage (utile, on est sur win3x et y'a une section de bidouillage d'OS :p). Geler l'ordinateur :
Bonne participation ! |
| Auteur : | gm86 [ 27 juil. 2010 16:57 ] |
| Sujet du message : | Re: Documentation ASM |
| En effet, le langage d'assemblage est la solution aux problèmes les plus pointus sur PC. On peut se débrouiller avec les outils de mise au point tels DEBUG et SID mais posséder un assembleur comme MASM est préférable. Je peux vous donner un exemple d'un utilitaire résident écrit sommairement : il n'affiche aucun message, ne possède aucun paramètre, ne vérifie pas s'il est déjà installé et ne propose pas de se retirer de la mémoire. J'expose mon problème. UTILISER L'IBM BASIC A3.40 SUR UN COMPATIBLE En théorie, IBM BASICA (Advanced BASIC) nécessite un BASIC de ROM que seuls les micros IBM possédaient. Les autres micros, qu'on nomme les compatibles, doivent se contenter de son homologue GW-BASIC. Cependant, il existe une solution simple pour lancer la version 3.40 livrée avec PC/DOS 5 sur un compatible. Celle-ci, qui posséde du code supplémentaire par rapport aux versions d'avant, demande l'adresse du BASIC de ROM à la fonction 22h de l'interruption 15h du BIOS. Si la fonction n'est pas supportée, l'interpréteur considère que la ROM se situe à l'adresse F600:0000h habituelle. D'ailleurs, il faut noter que cette version de BASICA recopie la ROM au sommet de la mémoire conventionnelle. Pour les autres versions, la solution est plus complexe, mais il existe un utilitaire, RUNBASIC.COM, à utiliser sur un micro IBM afin de créer le programme résident ROMBASIC.COM destiné aux compatibles. ( Il nous reste donc à obtenir la ROM BASIC sous forme de fichier, la charger en mémoire, noter son emplacement et détourner l'interruption 15h. Au passage, on modifie le vecteur de l'interruption 18h pour qu'il pointe cet emplacement, comme c'est le cas sur les machines IBM. Il se trouve à l'adresse 0:60h (18h x 4). La solution est de créer un programme résident (TSR, Terminate and Stay Resident) qu'on nommera BASICTSR.COM. On procède en quatre étapes. Le code d'assemblage sera tapé avec un logiciel de mise au point tel DEBUG fourni avec MS/DOS et PC/DOS ou SID, accompagnant DR DOS. 1) Télécharger le BASIC de ROM qu'on renommera IBMBAS11.ROM à cette adresse: http://www.hampa.ch/pce/rom/ibm-basic-1.10.rom 2) Créer la partie résidente du programme, DEBUT.COM, qui remplace l'interruption 15h pour traiter la fonction 22h et lui donne la main dans les autres cas. Cette fonction fonctionne ainsi : Entrée : AH = 22h Sortie : - si fonction non supportée, CF (carry flag) activé AH = 86h - sinon (dans le cas de certains PS/2), CF désactivé AH = 0 ES:BX : adresse de la ROM BASIC 3) Créer la partie non résidente du programme, FIN.COM, servant à son installation. 4) Regrouper les fichiers DEBUT.COM, IBMBAS11.ROM et FIN.COM en un fichier unique, BASICTSR.COM. Ce qui donne en pratique :
Avec le temps, vous remarquerez les points forts et les points faibles de l'IBM BASICA par rapport à GW-BASIC : - BASICA permet un changement de pages d'écran en mode graphique réellement utilisable pour des animations (se référer à mes remarques, http://www.win3x.org/win3board/viewtopic.php?f=24&t=5047&start=67); - BASICA permet l'interception de Ctrl+Pause via le détournement de l'interruption correspondante du BIOS (1Bh) ; - un programme lancé par GW-BASIC peut se comporter différement entre les différentes versions, même équivalentes, des constructeurs ; - il arrive que GW-BASIC perturbe l'horloge système du DOS ; - BASICA possède un peu moins de fonctions (VIEW PRINT par ex.) ; - BASICA est globalement plus lent ; - BASICA supporte mal d'être en tâche de fond sous Windows ; - BASICA nécessite en théorie un micro IBM et non un compatible -- ce n'est plus le cas ici ; - BASICA ne permet pas de renuméroter les lignes en mode AUTO ; - le curseur de BASICA passe toujours à la ligne lorsqu'un caractère est inscrit en dernière colonne ; - sous BASICA, on ne peut définir soi-même une interception via KEY impliquant la pression d'une touche de curseur ; - la fonction INKEY$ de BASICA peut faire planter le PC en mode graphique lorsque le gestionnaire DISPLAY.SYS des dernières versions de PC/DOS est installé. A propos du dernier point, avec certaines cartes VGA, lorsque DISPLAY.SYS est chargé, BASICA et GW-BASIC peuvent ne pas supporter le passage d'un mode graphique 40 colonnes au mode texte 0 (MODE BW40) si la page de codes matérielle n'est pas utilisée (850 au lieu de 437 par ex.). Le plantage semble plus fréquent sous DR DOS. P.S. : comme je l'ai écrit, le vecteur de l'interruption 18h pointe sur le BASIC de ROM. Sur les micros IBM, cette interruption était enclenchée lorsque le système ne trouvait pas de disque avec secteur d'amorce -- c'est-à-dire, pas de disquette système dans le lecteur ou pas de secteur de démarrage sur le disque dur. Sur le PC original, on utilisait le BASIC de ROM conjointement au lecteur (ou enregistreur) de cassettes, d'où son autre appelation de BASIC cassette. Le port cassette disparut des modèles suivants, mis à part le PC Junior, et ce BASIC ne servit alors que pour le diagnostic et comme base pour le BASIC disque (BASIC.COM) et le BASIC avancé (BASICA.COM). On pouvait éventuellement l'appelait sous DOS mais le retour n'était pas prévu -- excepté avec l'utilitaire POPBASIC.COM accompagnant RUNBASIC.COM au lien cité plus haut. Par analogie, BASICTSR.COM fait que ce vecteur pointe une copie en mémoire de ce BASIC après le démarrage du DOS. La seule utilité de cette interruption pour l'utilisateur est de pouvoir lancer ce vieux BASIC par curiosité. Cela ne justifie pas les 33 Ko qu'occupe le TSR. Or, j'ai signalé précédemment que la version 3.40 de BASICA est plus grosse que les autres et qu'elle copie la ROM BASIC en haut de la mémoire conventionnelle. En fait, il s'agit d'une version 4.00 -- celle livrée avec PC/DOS 4 -- qui reconstitue le BASIC C1.10 dont elle inclut une partie des 32 Ko. Il lui manque ainsi les 5120 premiers octets (1400h en hexadécimal) du fait de la limite de taille du format COM. Pour s'en convaincre, modifions BASICTSR.COM :
Dernier point. Lorsque BASICA est lancé sous Windows 9x, il risque de planter s'il passe en tâche de fond avant de redevenir actif. Pour prévenir cela, créez un raccourci à COMMAND.COM et modifiez ses Propriétés : - sélectionnez l'onglet Divers ; - mettez la Sensibilité à l'attente sur Basse ; - acceptez et fermez la fenêtre Propriétes Commandes MS-DOS avec OK. Veillez ensuite à utiliser BASICA depuis la fenêtre ouverte par ce raccourci-là et ne tentez pas de lancer une seconde fenêtre avec BASICA simultanément. GW-BASIC n'impose pas toutes ces restrictions. |
| Auteur : | gm86 [ 06 oct. 2010 17:13 ] |
| Sujet du message : | Re: Documentation ASM |
| OBTENIR LA POLICE D'ANCIENNES CARTES VIDÉO À L'ÉCRAN Je vais vous exposer comment, à partir d'une carte VGA, donner au mode texte un aspect EGA ou CGA. Il faut savoir que la première carte vidéo d'IBM pour son PC est la MDA suivie de la CGA. La carte MDA ne propose que le mode texte standard, 80 colonnes et 25 lignes, avec les couleurs remplacées par des attributs de texte (soulignement, vidéo inverse, surbrillance et clignotement). Cependant, sa matrice de caractère de 9x14 et la longue persistance du phosphore du moniteur monochrome à accès direct rendent son affichage net -- mis à part un défilement fantomatique. La carte CGA propose le texte en 16 couleurs, le mode texte 40 colonnes et des modes graphiques moyenne et haute résolutions pauvres en couleurs -- la basse résolution n'étant pas standardisée. L'écran qui exploite au mieux ses capacités est le moniteur RGB. Si on fait abstraction de la couleur, il est possible d'utiliser un moniteur monochrome composite. Il existe aussi un moniteur composite couleur mais seules certaines combinaisons de couleurs rendent le texte lisible et il vaut mieux parfois désactiver la couleur (MODE BW80). Sa matrice de 8x8 rend la lecture de l'écran fatigante à la longue. Cette carte peut raccorder sa sortie composite à un adaptateur RF mais seules les modes 40 colonnes restent acceptables sur un téléviseur. Il est possible d'installer les deux cartes dans une même machine car les ports utilisés sont différents et leurs segments de mémoire ne se chevauchent pas : ports 3Dxh et segment B800h pour le matériel couleur, ports 3Bxh et segment B000h pour le matériel monochrome. La venue de la carte EGA concilia ces deux mondes. D'abord, elle accepte le moniteur du MDA et le moniteur RGB du CGA tout en apportant la gestion 16 couleurs aux modes graphiques. Ensuite, connectée à un moniteur ECD, sa matrice de 8x14 est comparable à celle du MDA. De plus, elle propose alors une résolution graphique de 640x350 avec une palette de 16 couleurs (4 si seulement 64 ko de mémoire sur la carte) choisies sur 64 nuances. Les circuits VGA et MCGA furent inaugurés sur les PS/2. Ils préfèrent un signal analogique car le signal numérique restreint le nombre de couleurs. La carte VGA fut disponible séparément par la suite. Une carte VGA peut utiliser ces anciennes résolutions d'écran. Toutefois, le mode monochrome requiert que rien n'empiète sa zone mémoire située au segment B000. Deux fonctions du BIOS sont utiles : - la fct 00h de l'interruption 10h qui sélectionne le mode graphique ; - le sous-service 30h de la fct 12h du BIOS VGA. Voilà leurs détails concernant le mode texte :
D'abord MONO :
CGA80 :
MONO.COM : mode monochrome avec la résolution MDA, 720x350 pixels. Il faut se rappeler que l'écran du MDA a un rapport largeur/hauteur de 1,45 alors que celui du VGA est de 1,33 (4/3). CGA80.COM : caractères grossiers (au pluriel, bien sûr). CGA40.COM : gros caractères bien adaptés à la faible résolution de 200 lignes de balayage ; d'ailleurs, ils n'ont pas l'aspect écrasé de ceux d'un affichage EGA ou VGA en mode 40 colonnes. EGA80.COM : résolution proche du mode MDA et de l'affichage VGA 80 colonnes. Déduisons le tableau suivant :
Un dernier point. A part la curiosité, il existe une raison importante de pouvoir modifier le nombre de lignes de balayage : faire que le matériel VGA puisse profiter des modes 43 lignes permis par une carte EGA affichant la police CGA 8x8 sur un moniteur ECD. Ainsi, l'utilitaire MODE43.COM de QuickBASIC 3.0 prévu pour l'EGA affiche 50 lignes de texte sur un moniteur raccordé à un circuit VGA ou MCGA. P.S. : je n'ai pas voulu encombrer le texte en faisant référence aux cartes professionnelles et non-IBM ainsi qu'à la compatibilité des matériels avec le stylet optique. De plus, je n'ai pas pris en compte un éventuel gestionnaire d'affichage actif, tel DISPLAY.SYS sous DR DOS 6. Ainsi, pour éviter que moins de 25 lignes soient affichées, il faudra peut-être entrer cette commande : CHCP 437 |
| Auteur : | gm86 [ 27 août 2011 21:02 ] |
| Sujet du message : | Re: Documentation ASM |
| UTILISER L'INTERPRÈTE BASIC MICROSOFT STANDARD SOUS DR DOS 6 Première chose, cet interprète BASIC Microsoft pour MS/DOS est un programme au format COM issu de la version disque 5.2x pour le système d'exploitation 8 bits CP/M. Il imite donc l'appel aux fonctions 0 à 24h de la BDOS en mettant le numéro de fonction dans le registre CL avant de procéder à un appel proche à la routine débutant à l'offset 5 (CALL 5). Sous DOS, il s'y trouve un appel lointain dont l'offset de l'adresse indique la mémoire disponible dans le segment du programme (CALL Fxxx:FEF0h le plus souvent). Sous CP/M, cet offset était le point d'entrée du système chargé en haut de la mémoire. Or cette adresse boucle sur le segment 0 dans le cas d'un processeur 8086 ou 80186 mais continue sur la mémoire étendue (> 1 Mio) dans la cas d'un 80286 ou supérieur avec la ligne d'adressage A20 activée. Dans ce dernier cas, il est impératif que DOS soit chargé en HMA, la zone de mémoire haute qui représente les 64 premiers Kio de mémoire étendue. Cela signifie que FFFFh:10h représente dorénavant le début de cette mémoire et non celui de la mémoire conventionnelle (1er Mio). Cf. http://blogs.msdn.microsoft.com/larryosterman/2004/11/08/how-did-we-make-the-dos-redirector-take-up-only-256-bytes-of-memory Seconde chose, je remarque que l'interprète est mal renseigné sur la ligne de commande par DR DOS. Ainsi, si on le lance, il a grande chance de se terminer aussitôt en spécifiant que le programme BASIC — même non spécifié — n'a pu être trouvé :
Sachant que les paramètres de la ligne de commande DOS sont inscrits dans la DTA du logiciel BASIC, il reste à savoir si ce dernier examine bien celle se situant dans son PSP. Pour information, le PSP d'un programme va de l'offset 0 à FFh (255) à partir du segment de code initial et sa DTA débute à l'offset 80h. Il est créé par DOS pour remplir le rôle de la page zéro sous CP/M. En désassemblant le programme, l'appel à la fonction 26h doit nous mettre la puce à l'oreille. Elle crée un nouveau PSP. Une lecture de la liste de Ralf Brown nous renseigne que DR DOS 6 copie le PSP depuis un mauvais segment :
Remédions à ce problème par un petit programme résident sans prétention, FCT26H.ASM :
Une meilleure solution est de corriger l'erreur toute bête directement dans la BDOS. Revenant à l'interprète en question, du fait qu'il s'agit d'un logiciel pour DOS 1, il gère les fichiers du répertoire courant via les FCB comme à l'époque du CP/M, et de ce fait, est compatible avec la FAT32 dans une fenêtre DOS de Windows 9x mais pas en mode MS/DOS. Une version est facilement disponible sur Internet mais semble rechigner à utiliser les fonctions USR : Microsoft BASIC Version 5.28. Préférez donc la première : http://poisk-pc.narod.ru/basic-86.rar Je pense que ces outils mériteraient leur propre sujet. P.S. : une courte notice en anglais de MBASIC se trouve aux liens suivants. http://www.pldos.pl/bogus/hardware/komputery/mits/docs/msbasic.htm http://gopherproxy.meulie.net/gopher.fl ... MBASIC.HLP Une méthode pour pouvoir lister un programme protégé (SAVE"...",P) est présentée ici : http://maben.homeip.net/static/S100/victor/software/technical%20reference%20in%20ascii/APQ.txt Le guide du BASIC-80 version 5.x vaut pour le BASIC-86, mis à part l'interface avec les routines en code machine qui fonctionne comme celle du BASIC IBM et du GW/BASIC (du moins, sous CP/M-86 et MS/DOS, Xenix étant un cas plus complexe) : http://www.classiccmp.org/cini/pdf/Microsoft/mbasic.pdf (quelques chapitres sont manquants) ftp://bitsavers.informatik.uni-stuttgar ... r_1980.pdf http://www.bitsavers.org/pdf/microsoft/ ... e_1979.pdf Ainsi, l'architecture du microprocesseur 8086 ou 8088 impose au BASIC-86 l'emploi de l'instruction DEF SEG pour définir le segment de données aux instructions CALL, PEEK et POKE : DEF SEG [=segment] 'Par défaut, le segment de données du BASIC D'ailleurs, le BASIC-86 pour MS/DOS apporte quelques extensions : - les instructions BSAVE et BLOAD qui servent respectivement à enregistrer dans un fichier le contenu d'une zone de mémoire située dans le segment défini par DEF SEG et à effectuer l'opération inverse (en-tête de ce fichier binaire : FDh, segment, offset, longueur) : BSAVE fichier.ext$, adresse, longueur BLOAD fichier.ext$[, adresse] - l'instruction CALLS qui, à la différence de CALL, transmet l'adresse complète des paramètres aux routines en code machine destinés à un autre langage (FORTRAN, par ex.) en déposant le segment après chaque offset sur la pile ; - le mode ajout (append) aux fichiers séquentiels (chose non permise, de tout façon, sur bande) ; OPEN "A", [#]tampon, filename.ext$ - une syntaxe alternative de l'instruction OPEN avec l'accès direct comme mode par défaut (random) ; OPEN filename.ext$ AS [#]tampon [LEN=longueur_enregistrement] (accès direct) OPEN filename.ext$ FOR {OUTPUT|INPUT|APPEND} AS [#]tampon (accès séquentiel) - les fonctions DATE (jour de l'année) et TIME (nombre de secondes écoulées depuis minuit) qui ne sont pas reconnues par le compilateur*, ainsi que DATE$ (date au format américain, m/j/a) et TIME$ (heure au format 24h) qui sont aussi des variables : ? TIME$ 13:40:06 Ok ? DATE$ 01-01-1980 Ok DATE$="6/26/11" Ok ? "C'est le"; STR$(DATE); "ième jour de l'année." C'est le 117ième jour de l'année. Ok 10 REM Initialise la liste des nombres pseudo-aléatoires 20 RANDOMIZE TIME * 512 / 675 - 32768 - l'usage des caractères codés sur 8 bits (ASCII étendu IBM sur PC) qui évite l'emploi d'un des dérivés codés sur 7 bits de l'ISO/IEC 646 pour représenter les caractères nationaux. De plus, la fonction LOF(tampon) ne renvoie plus la taille d'un fichier en enregistrements de 128 octets mais en octets seuls. Cependant, l'écriture de blocs de 128 octets perdurent vu que MS-DOS 1 hérite des FCB du CP/M. Ainsi, les fichiers séquentiels comporte obligatoirement le caractère 26 (EOF, End Of File) après le dernier enregistrement. Cf. http://support.microsoft.com/kb/25996 Les fichiers créés par BSAVE l'ont aussi, bien qu'il faut se fier à la taille donnée dans l'en-tête (mot situé au sixième octet). Voici deux aides utiles :
Une autre solution, à utiliser conjointement à WIDTH 80, est de supprimer le retour à la ligne automatique du DOS. Cela est possible depuis DOS 2, en installant le gestionnaire ANSI et en émettant la séquence ESC[7l (contraire de ESC[7h)via la commande PROMPT ou l'instruction PRINT du BASIC : C:\BASIC>prompt $p$g$e[7l PRINT CHR$(27);"[7l"; * Cf. http://maben.homeip.net/static/S100/victor/software/technical%20reference%20in%20ascii/CH5.txt |
| Auteur : | gm86 [ 31 oct. 2011 00:35 ] |
| Sujet du message : | Re: Documentation ASM |
| ÉCRIRE EN ESPÉRANTO AVEC UNE CONFIGURATION DE CLAVIER CLASSIQUE La langue internationale Espéranto comporte six lettres accentuées qui ne figurent pas sur les configurations classiques de clavier : Ĉ, Ĝ, Ĥ , Ĵ, Ŝ et Ŭ (U bref). La solution qui permettra leur entrée ne devra ni dépendre de la nationalité de la disposition du clavier ni interférer avec. Dans un premier temps, je vais vous présenter un TSR remplissant son rôle au strict minimum. Je me suis inspiré pour cela du programme EKLAVO de Byrial Jensen. Il exploite le service 4Fh de l'interruption 15h et le service 5 de l'interruption 16h. Il s'agit d'obtenir les lettres accentuées avec l'appui simultanée de la touche AltGr (Alt gauche) ou la combinaison Ctrl+Alt (gauche) et de la touche correspondante. Ainsi, ĝ est introduit soit par AltGr (Alt droite)+g soit par Ctrl+Alt (gauche)+g. Le programme requiert la page de codes 853. Je suis parti de deux constats. La touche Maj sert de préfixe. Elle indique toujours le contraire de l'état du verrouillage majuscule — sur le clavier français, elle le désactive aussi. Ensuite, la touche AltGr de la plupart des claviers correspond à l'Alt droite du clavier américain. Normalement, elle peut indiquer qu'une touche Alt est enfoncée via l'octet 17h du segment de données du BIOS (40h). Cependant, le gestionnaire KEYB de DR DOS n'agit pas ainsi (ce que le programme EKLAVO ne prévoit pas). Or, c'est sous DR DOS que la page de codes 853 est disponible (bien que non supportée officiellement). La version suivante met en lumière ce problème accompagné d'un autre : le service 12h de l'interruption 16h du clavier ne permet plus d'indiquer l'actionnement de la touche Alt droite du clavier étendu.
- pour savoir si la touche Maj gauche ou droite était enfoncée, j'ai appliqué un masque sur l'octet d'état du clavier avec seulement les deux bits correspondant positionnés puis vérifier si le résultat était non nul ; - pour savoir si la combinaison Ctrl et Alt était pressée, j'ai d'abord inversé les bits de l'octet recueilli avant d'appliquer le masque afin de vérifier si le résultat était nul. Description des services clavier utilisés :
_____________________ Version fonctionnelle En testant le programme précédent sans charger KEYB de DR DOS, on remarque qu'il est plutôt aisé d'entrer les caractères accentués des touches C, G et S avec AltGr ou la combinaison Maj+AltGr. En revanche, si on souhaite garder la main droite pour les touches G, H et U, l'autre main appuyera sur Ctrl+Alt voire Maj+Ctrl+Alt ; ce qui représente trois doigts en action. En s'inspirant d'autres claviers proposant quatre caractères par touche, il devient envisageable d'adopter la combinaison Maj+Alt. On suppose que le verrouillage majuscule est inactif (ce qui est normalement le cas sur le clavier français lorsque la touche Maj est pressée), on obtient :
http://www.minuszerodegrees.net/bios/BI ... 0JAN86.zip En bref, les machines IBM qui supportent cette interception du clavier sont les suivantes : - les AT mais pas l'original ; - le XT/2 ; - le XT-286 ; - le PC Convertible ; - les PS/2. Tout est bon pour créer un TSR qui se donne la peine de reconnaître le matériel. Toutefois, il faut empêcher son chargement multiple. Ainsi, lors d'un appel au service 4Fh de l'interruption 15h avec le code de touche inexistant FFh, le TSR renvoie AL nul (AX=5000h) pour indiquer sa présence. Voici le programme obtenu :
La tête du tampon peut rattraper la taille mais pas l'inverse (tampon plein). Dans le même segment, se trouvent les octets d'état du clavier (cf. : viewtopic.php?f=24&t=5047&start=67) :
|
| Auteur : | gm86 [ 01 août 2012 13:58 ] |
| Sujet du message : | Documentation ASM (liens) |
| Je conseille chaudement la consultation de cette page de liens : http://www.oopweb.com/Assembly/Files/Assembly.html |
| Auteur : | gm86 [ 03 févr. 2018 13:34 ] |
| Sujet du message : | Re: Documentation ASM |
Quatre routines différentes pour afficher un quartet au format hexadécimal sous DOS.
|
| Auteur : | Deksor [ 03 févr. 2018 13:46 ] |
| Sujet du message : | Re: Documentation ASM |
| Tiens j'avais jamais vu ce sujet, c'est très intéressant |
| Auteur : | gm86 [ 01 févr. 2019 12:40 ] |
| Sujet du message : | Re: Documentation ASM |
| En souvenir du bon temps, un tutoriel en français : http://web.archive.org/web/200205291526 ... asm.fr.fm/ Il s'agit de cours pour DOS et Win32, le tout accompagné d'une documentation. Comme fréquent à l'époque, les écrits de l'auteur peuvent être téléchargés. J'ai retrouvé l'adresse du site dans une boîte à chaussures ! |
| Auteur : | Deksor [ 01 févr. 2019 16:46 ] |
| Sujet du message : | Re: Documentation ASM |
| Quelque-chose qui pourrait être intéressant à documenter : toutes les interruptions du BIOS et aussi DOS ^^ Après vu la quantité y'en a pour un moment ... D'ailleurs pour le BIOS ce qui pourrait être encore plus intéressant c'est de voir le code source qui est exécuté pour chacune des interruptions. J'ai déjà trouvé un code source de bios de 286 donc on pourrait partir de ça ! Évidemment certaines choses sont liées au matériel (chipset, etc), mais d'autres non (communiquer avec le lecteur de disquettes ça doit être standard puisque le contrôleur est toujours le même (ou bien un clone compatible) En tout cas le site que tu as retrouvé est très intéressant |
| Page 1 sur 2 | Fuseau horaire sur UTC+02:00 |
| Développé par phpBB® Forum Software © phpBB Limited Traduction française officielle © Qiaeru |
|