OK. I finally killed the EACCESS VIOLATION error...I hope so, did a lot of testing and it seems to be resolved :-)

The problem seems to be this:

- I had DXSpriteEngine.Items.Clear

- Which I changed to:

for i:= DXSpriteEngine.Engine.AllCount-1 downto 0 do
begin
if (DXSpriteEngine.Engine.Items[i] <> nil) then
begin
DXSpriteEngine.Engine.Items[i].dead;
end;
end;

- Which also caused the error and finally I changed it to

DXSpriteEngine.ENGINE.Clear, which seems to be doing the job of clearing/freeing my sprites.