Quote Originally Posted by WILL
What I mean is; so far I understand that I can read the value of a sample in an allocation of memory using the byte and word pointers, but would I be able to then assign values back to the allocated memory using these same pointers?
Yes.
[pascal]Chuck := @MemoryAddress^; // Get Address I need
[/pascal]
If MemoryAddress is a pointer, [pascal]Chuck := MemoryAddress;[/pascal] is ok too.
Quote Originally Posted by WILL
Also can I easily extract the data and the inser it in as a diferent format? ie. read a signed byte/word value and then feed back an unsigned byte/word value?
The format for signed and unsigned values depends on how you treat the array:
[pascal]var
Bob: shortint;
Chuck: pshortint;

Chuck := @MemoryAddress^; // access same memory
Bob := Chuck^; // Read signed data I need
inc(Bob); // Mess with it...
Chuck^ := Bob; // Stick it back in there how I need it![/pascal]
The values that are over 127 will be negative now.
As for the OpenAL issue... try to feed it with signed data and see what happens, if it treats the data as signed values internally, it should work.