Accès directe à la mémoire

Résolu
EddiTheHead Messages postés 58 Date d'inscription mercredi 16 février 2005 Statut Membre Dernière intervention 2 juin 2006 - 9 mars 2005 à 20:47
EddiTheHead Messages postés 58 Date d'inscription mercredi 16 février 2005 Statut Membre Dernière intervention 2 juin 2006 - 11 mars 2005 à 19:56
Bonjour,

Est-il possible d'avoir un accès directe à la mémoire d'un Tbitmap, comme on pouvait le faire en turbo pascal :

mem[adressesegment:adresse offset]
où mem[$A000:$0000] donnait accès à la mémoire de la carte vidéo.

4 réponses

cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
9 mars 2005 à 22:56
Pour aceder au bitmap utilise Tbitmap.scanline.

Bon Coding ....

ManChesTer.
3
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
11 mars 2005 à 15:58
à la place de mem et memw , en delphi 32, on utiliseras un pointeur, pour lire ecrire une astuce consiste a utiliser TmemoryStream:

var Ms : TmemoryStream;
Buff : Pointer;
begin
Ms:=TmemoryStream.Create;
Ms.Memory:=@LObjectQueTuVeux; // Ms.Memory:=Bmp.Scanline[Bmp.Height] (Pour un Bitmap)
Getmem(Buff,1024); // Reserver 1024 octets pour le buffer
Ms.Read(Buff,1024); // Lire 1024 Octets depuis l'object vers le buffer
Ms.Write(Buff,1024); // Ecrire dans l'object
FreeMem(Buff); // Liberer le buffer
Ms.Free; // liberer le memorystream
end;

Bon Coding ....

ManChesTer.
3
EddiTheHead Messages postés 58 Date d'inscription mercredi 16 février 2005 Statut Membre Dernière intervention 2 juin 2006
10 mars 2005 à 19:54
Bonjour,

Merci pour l'info, je connaissais l'existence de scanline via ce forum mais je ne l'ai pas encore testé. Vu qu'il utilise un pointer, je suppose que son exécution est rapide.

Mais j'ai mis tbitmap comme exemple, je pensais à un accès en général, pour une image mais aussi un wave par exemple. Juste pour ne pas toujours se reposer sur delphi.
0
EddiTheHead Messages postés 58 Date d'inscription mercredi 16 février 2005 Statut Membre Dernière intervention 2 juin 2006
11 mars 2005 à 19:56
Ok, ca ressemble plus à de la prog.

Merci
0
Rejoignez-nous