N64® Functions Menu

al - Audio Library Functions
gDP - DP GBI Macros
gdSP - General GBI Macros
gSP - SP GBI Macros
gt - Turbo Microcode RDP
gu - Graphics Utilities
Math - Math Functions
nuSys - NuSystem
os - N64 Operating System
sp - Sprite Library Functions
uh - Host to Target IO
64DD - N64 Disk Drive

Nintendo® Confidential

## osPfsRepairId

Syntax

#include <ultra64.h>
s32 osPfsRepairId(OSPfs *pfs);
Explanation
It checks the Controller Pak ID area, assigns a new ID if this area is damaged, and repairs the Controller Pak file system.

This function can be used if a PFS_ERR_ID_FATAL error code is returned by the osPfsInitPak function. The OSPfs structure pfs is a file handle initialized by the function osPfsInitPak. For information on creating this handle, see osPfsInitPak.
If the function call is successful, a 0 is returned as the return value. If an error occurs, one of following error codes is returned:

- PFS_ERR_NOPACK - Some type of PIF error has occurred; either the Controller Pak is not inserted into the specified Controller or the Controller is not properly connected. To determine which is the case, use the osContStartQuery or osContGetQuery function.
- PFS_ERR_NEW_PACK - A different Controller Pak has been inserted. To use the inserted Controller Pak, initialize it by calling osPfsInitPak.
- PFS_ERR_CONTRFAIL - Data transfer to or from the Controller has failed. If a transfer error occurs, up to three tries will be done internally, so this error is rarely seen. If it does occur, it is possible that either the Controller is not connected properly, or the Controller Pak or Controller Socket is damaged.
- PFS_ERR_ID_FATAL - Recovery failed. Possible causes are an abnormality in the controller Joyport or Controller Pak.
- PFS_ERR_DEVICE - A peripheral device other than a Controller Pak (eg, Rumble Pak, 64GB Pak) has been inserted in the controller. Whether a Controller Pak has been inserted is determined by whether the device has RAM. This error is issued if there is no RAM present.
- PFS_ERR_INVALID - The function Pfs was called without initialization by osPfsInitPak. This error also can be issued if the file handle structure pfs is initialized by a function other than the Controller Pak initialization function osPfsInitPak and a Controller Pak function is then executed. An example would be if the Rumble Pak initialization function osMotorInit were used to initialize the structure pfs and osPfsRepairId were then executed. Game program processing should be modified if this error is returned.

See Also
osContInit
osContStartQuery
osContGetQuery
osPfsAllocateFile
osPfsChecker
osPfsDeleteFile
osPfsFileState
osPfsFindFile
osPfsFreeBlocks
osPfsInitPak
osPfsIsPlug
osPfsReadWriteFile

Revision History
2/1/1999 Revised entirely

Nintendo® Confidential Warning: all information in this document is confidential and covered by a non-disclosure agreement. You are responsible for keeping this information confidential and protected. Nintendo will vigorously enforce this responsibility.
Copyright © 1998
Nintendo of America Inc. All rights reserved
Nintendo and N64 are registered trademarks of Nintendo
Last updated March 1998