Give this a try. Should work.
function Memblock_ObjectCreate( iMemblock as integer,iVertexCount as integer)
make memblock iMemblock,12+(36*iVertexCount)
write memblock dword iMemblock,0,850
write memblock dword iMemblock,4,44
write memblock dword iMemblock,8,iVertexCount
endfunction
function Memblock_ObjectSetVertex(iMemblock as integer , iVertex as integer , iVertexPosX as float , iVertexPosY as float,iVertexPosZ as float , iColor as dword , iU as float , iV as float, iU2 as float, iV2 as float)
write memblock float iMemblock,iVertex*36+12,iVertexPosX
write memblock float iMemblock,iVertex*36+16,iVertexPosY
write memblock float iMemblock,iVertex*36+20,iVertexPosZ
write memblock dword iMemblock,iVertex*36+36,iColor
write memblock float iMemblock,iVertex*36+40,iU
write memblock float iMemblock,iVertex*36+44,iV
write memblock float iMemblock,iVertex*36+48,iU2
write memblock float iMemblock,iVertex*36+52,iV2
endfunction
function Memblock_ObjectSetNormal(iMemblock as integer,iVertex as integer,iNormalX as float,iNormalY as float,iNormalZ as float)
write memblock float iMemblock,iVertex*36+24,iNormalX
write memblock float iMemblock,iVertex*36+28,iNormalY
write memblock float iMemblock,iVertex*36+32,iNormalZ
endfunction
function Memblock_ObjectMake(iObject as integer,iMemblock as integer)
local tMesh as integer
tMesh=FreeUp_Mesh()
make mesh from memblock tMesh,iMemblock
make object iObject,tMesh,-1
delete mesh tMesh
endfunction