Incomprehensible syntax
procedure MikuInit( const Sprite : zglPSprite2D ); begin Sprite.X := 800 + random( 800 ); Sprite.Y := random( 600 - 128 ); zgl_GetMem( Sprite.Data, SizeOf( zglTPoint2D ) ); with zglTPoint2D( Sprite.Data^ ) do begin X := -random( 10 ) / 5 - 0.5; Y := ( random( 10 ) - 5 ) / 5; end; end; Explain why a constant parameter declared in a procedure as constant changes inside it. Written in FreePascal. Why by the way there is no label FreePascal?