# MI_HTo*

## Syntax

  `#include <nitro/mi.h>`
  `#define MI_HToLE8(val) (val)
  #define MI_HToBE8(val) MI_SwapEndian8(val)
  #define MI_HToLE16(val) (val)
  #define MI_HToBE16(val) MI_SwapEndian16(val)
  #define MI_HToLE32(val) (val)
  #define MI_HToBE32(val) MI_SwapEndian32(val)
  #define MI_HToLE64(val) (val)
  #define MI_HToBE64(val) MI_SwapEndian64(val)
  `

## Arguments

val | The value whose endianity is to be converted. Note: Because this is a macro, evaluation is performed several times.

## Return Values

The value converted to the specified endianness (`u16, u32, or u64`).

## Description

This macro converts the specified value from the current environment to the specified endian. LE represents little-endian, while BE represents big-endian.
Because the Nintendo DS uses a little-endian environment, this macro does nothing when LE is specified.
Note: Because this is a macro, arguments are evaluated several times.

These 8-bit versions do not actually perform any conversions, but they have been included for uniform source code visibility.

## See Also

`MI_SwapEndian*
MI_Load*
MI_Store*
MI_*ToH*`

## Revision History

2007/11/21 Added a description of the 64-bit version.
2006/06/13 Added a description of the 8-bit version.
2006/04/05 Initial version.

CONFIDENTIAL