public override void Write(byte[] buffer, int offset, int count) { if (offset == 0) { Glk.glk_put_buffer_stream(gstr, buffer, (uint)count); } else { byte[] temp = new byte[count]; Array.Copy(buffer, offset, temp, 0, count); Glk.glk_put_buffer_stream(gstr, temp, (uint)count); } }