# FSOverlayID, FS_OVERLAY_ID, FS_EXTERN_OVERLAY

## Definition

  `#include <nitro/fs.h>`
  `

      typedef u32 FSOverlayID;
      #define FS_EXTERN_OVERLAY(name) extern u32 SDK_OVERLAY_## name ## _ID[1]
      #define FS_OVERLAY_ID(name)     ((u32)&(SDK_OVERLAY_## name ## _ID))

  `

## Description

This function defines the module ID of the overlay that is specified by the `FS_LoadOverlay` and `FS_UnloadOverlay` functions. This is generated at link time by `makerom`. The program side can use it as shown below.
Use a `.lsf` file to specify an overlay.
Example:
`Overlay overlay_1
{
After main
Object func_1.o
}`
(2) Defines the overlay ID using a macro within the program.
Example:
FS_EXTERN_OVERLAY(overlay_1); Specify an overlay ID in the `FS_LoadOverlay` function or the `FS_UnloadOverlay` function.
Example:
FS_LoadOverlay(MI_PROCESSOR_ARM9, FS_OVERLAY_ID(overlay_1));
Or
`FSOverlayID id = FS_OVERLAY_ID(overlay_1); FS_LoadOverlay(MI_PROCESSOR_ARM9, id);`

## See Also

`FS_LoadOverlay`, `FS_UnloadOverlay`

## Revision History

2005/06/02 Changed & to &.
2004/11/02 Corrected the structure definition to match the header file.
2004/09/24 Fixed links.
2004/04/08 Revised description due to changes in the `FSOverlayID` type.
2004/04/05 Initial version.

CONFIDENTIAL