>Bob64:
>2) J'ai lu, et Uther m'a dit que les niveaux de gris n'ont aucune chance de planter sauf si l'utilisateur fait 'break' et que les nvg sont allumés.
Ce que tu as lu est
faux! Et Uther s'est
trompé! Tu crois vraiment que je te raconte n'importe quoi??? C'est qui l'expert des TSRs? Uther ou moi??? Je trouve que le fait que tu me soupçonnes d'inventer un bogue qui n'existe pas, de la manière que tu le fais, est vraiment très insolent!
>Alors d'accord, c'est possible que ce bug existe mais bon vous n'avez jamais vu le code de mon prog et vous me dites qu'il est buggé, déjà ça ça m'étonne, mais en plus ce 'bug' je l'ai jamais eu. Comment est-ce que vous voulez que je corrige qqchose qui n'existe pas ???
Cf. plus haut! Bon, comme gras, rouge et effet "glow" ne suffisent pas pour que tu m'écoutes, on va rajouter des majuscules:
[glow]
MÊME SI TU N'AS JAMAIS EU LE BOGUE, IL EXISTE QUAND-MÊME!!!!!!!!!![/glow]
Et je vais même rajouter:
[glow]
CE N'EST PAS PARCE QUE TU NE COMPRENDS PAS POURQUOI IL Y A UNE ERREUR QU'IL N'Y EN A PAS!!!!!!!!!![/glow]
>Cite-moi UN bug de vertel. Un seul !
Elle installe un TSR avec la fonction
GrayOn. C'est un bogue, point final!
J'ai déjà expliqué pourquoi c'est un bogue, mais je vais quand-même le refaire:
GrayOn redirige une interruption (l'auto-int 1 pour être précis) vers un endroit à l'intérieur de
vertel. Dès que
vertel a fini de s'exécuter, ce programme peut être déplacé en RAM, et donc le pointeur dans l'auto-int 1 n'est plus valable! (Et donc plantage!) Ce déplacement en RAM peut être causé par n'importe quelle fonction qui cause une compression du heap, y compris
HeapAllocHigh et
HeapAllocPtr (
malloc) qui sont utilisées en interne à plein d'endroits dans AMS. Je n'ai pas besoin de voir le reste de ton code, le fait que tu utilises
GrayOn pour installer un TSR est une erreur. (Je connais le code de
GrayOn, et je sais exactement comment il fonctionne.)
À ceci se rajoute le problème de la protection des HW2: si entre 2 appels de
vertel, la librairie a été déplacée, le prochain lancement peut déprotéger une autre zone, reprotégeant ainsi la zone vers laquelle l'auto-int 1 pointe. Mais ceci n'est même pas nécessaire pour causer un plantage, la compression du heap tout seul peut aussi tout faire planter.
Je ne peux que réitérer mon conseil:
[glow]
APPRENDS L'ASSEMBLEUR AVANT DE VOULOIR FAIRE DU C!!! Surtout si c'est pour des choses techniques comme les TSRs![/glow]