# MB_GetSegmentLength

## Syntax

  `#include <nitro/mb.h>`
  `u32 MB_GetSegmentLength(FSFile *file);`

## Arguments

file | The `FSFile` structure that holds the program file handle. The seek position of this file must point to the top of the program binary. Also, the seek position holds the initial position when returned from this function. When NULL is specified for this pointer, the parent application is the download program file and the size is calculated.

## Return Values

This function returns a byte size greater than 0 when the program completes successfully. Otherwise, it returns 0.

## Description

This function returns the memory size necessary to register the specified program file to the multi-boot process. For more information, see the `MB_ReadSegment` function.
This function calls the `FS_ReadFile` function internally.

## See Also

`MB_SEGMENT_BUFFER_MIN
MB_ReadSegment
MB_RegisterFile`

## Revision History

2004/11/11 Changed description to include the clone boot release and new read delay method.
2004/09/10 Added a description of the operation when specifying NULL for the file pointer.
2004/08/09 Initial version.

CONFIDENTIAL