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

   

osPiWriteIo
osPiReadIo

Format
#include <ultra64.h>

s32 osPiWriteIo(u32 devAddr,
   u32 data);

s32 osPiReadIo(u32 devAddr,
   u32 *data);
What These Functions Do
The osPiStartDma, osPiWriteIo, osPiReadIo, osCreatePiManager, and osPiGetCmdQueue functions provide managed access to the parallel (or peripheral) interface (PI).

The PI is responsible for the transport of data between RDRAM and bulk-storage devices (BSD) such as ROM, RAM, CD-ROM, and other technologies. These functions provide "managed" control of the PI; they provide synchronization and mutual exclusion support when the PI is to be shared for simple peripheral IO. The use of these PI routines require that the operating system be correctly initialized.

The osPiWriteIo routine performs a 32-bit programmed IO write to the PI device address (devAddr).

The osPiRawReadIo routine performs a 32-bit programmed IO read from the PI device address (devAddr) and returns the value in data.

Notes
Nintendo strongly recommends that you use these high-level functions to manage PI access rather than using the raw, low-level functions.

Be very careful when intermixing low-level (raw, unmanaged access) and high-level (managed access) PI functions. Without proper synchronization, this mix can cause an error in the PI because the PI can only support one IO operation at any one time.

See Also
osPiStartDma
osPiGetCmdQueue
osCreatePiManager
osPiRawStartDma
osSendMesg
osJamMesg



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 January 1998