hmm, also ich reserviere mit meinem code ja einen speicher(buffer) der 5000 bytes groß ist... so viel hab ich kappiert. offensichtlich legt PB selber (konfortabler weise)fest, wo der speicher erstellt wird.
so weit so gut. mit meinem code lese ich jetzt quasi nur die speicheradresse des 1 bytes, richtig? wenn ich jetzt mit einem ram-editor an diese adresse gehen würde, fände ich den anfang meines buffers ?
wenn ich jetzt diesen buffer mit hexwerten befüllen möchte, muss es sich ja nicht darum handeln, dass ich unbedingt befehle auf 64bit-basis abarbeiten will. - oder ich verstehe die aussage nicht Kaeru hinaus möchte !?
jedenfalls hat das schon einen sinnvollenhintergrund, dass mein buffer befüllt wird
also ich müsste jetzt quasi eine schleife erstellen und dann byteweise den buffer beschreiben. wie spreche ich denn überhaupt den buffer an einer bstimmten stelle an? ich hab mal folgendes versucht, was vermutlich totaler quatsch ist... außerdem funktionierts nicht
Code: Alles auswählen
Buffer = AllocateMemory(50)
NewHexValue1 = $020304
bufferadress = @Buffer
x=0
Repeat
PokeB(bufferadress, NewHexValue1)
x+1
bufferadress = @Buffer+x
Until x = 50
Debug PeekQ(Buffer) ; DEZ
Debug HexQ(PeekQ(Buffer)) ; HEX
;OpenConsole()
;PrintN("Der Buffer: "+Hex(Buffer))
Delay(100000)
Selbst erkannte fehler:
- NewHexValue1 ist immer konstant, was natürlcih dazu führt, dass immer das erste byte daraus geschrieben wird. außerdem kann ich nicht mehr als 3 bytes in dieser variable definieren.
- hängt sich offensichtlich in der schleife auf...
...das leben ist wie ein schlechtes adventure-game, aber die grafik ist verdammt geil!