3DO System Programmer's Guide Programmers
User Manual:
Open the PDF directly: View PDF
Page Count: 855 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- Local Disk
- 3DO System Programmer's Guide
- Understanding the Kernel
- Description of the Kernel
- Multitasking
- Managing Memory
- Working With Folios
- Managing Items
- Semaphores
- Intertask Communication
- Portfolio Error Codes
- The Portfolio I/O Model
- Introduction
- Hardware Devices and Connections
- The Event Broker
- About the Event Broker
- Sending Messages Between Tasks and the Event Broker
- Monitoring Events Through the Event Broker
- The Process of Event Monitoring
- Connecting a Task to the Event Broker
- High-Performance Event Broker Use
- Reconfiguring or Disconnecting a Task
- Other Event Broker Activities
- Event Broker Convenience Calls
- Function Calls
- InitEventUtility
- GetControlPad
- GetMouse
- KillEventUtility
- I/O Architecture
- Performing I/O
- Examples
- Portfolio Devices
- Introduction
- Communicating With Devices
- The Timer Device
- The SPORT Device
- The File Pseudo-Device
- Function Calls
- Kernel Folio Calls
- AbortIO
- CheckIO
- CreateIOReq
- DeleteIOReq
- DoIO
- SendIO
- WaitIO
- AddHead
- file:///C|/%23%23DDOC/spr/01spr003.html
- InitList
- IsertNodeFromHead
- RemHead
- InsertNodeFromTail
- file:///C|/%23%23DDOC/spr/01spr111.html
- RemTail
- UniversalInsertNode
- IsListEmpty
- FirstNode
- IsNode
- IsNodeB
- LastNode
- NextNode
- PrevNode
- SanList
- ScanListB
- AllocMem
- AllocMemBlocks
- ControlMem
- ScavengeMem
- AllocMemFromMemLists
- FreeMem
- FreeMemToMemLists
- FreeMemToMemList
- AllocMemFromMemList
- AllocMemList
- FreeMemList
- GetMemAllocAlignment
- GetMemType
- malloc
- AvailMem
- free
- AllocSignal
- FreeSignal
- WaitSignal
- SendSignal
- GetCurrentSignals
- CallFolio
- CallFolioRet
- CheckItem
- CreateItem
- CreateMsg
- CreateMsgPort
- DeleteMsg
- DeleteMsgPort
- SendMsg
- GetMsg
- GetThisMsg
- ReplyMsg
- ReplySmallMsg
- SendSmallMsg
- WaitPort
- CreateBufferedMsg
- CreateSmallMsg
- CreateSemaphore
- DeleteSemaphore
- LockSemaphore
- FindSemaphore
- UnlockSemaphore
- LockItem
- DeleteItem
- DeleteThread
- CreateThread
- exit
- UnlockItem
- FindItem
- FindNamedItem
- FindVersionedItem
- LookupItem
- MkNodeID
- ClearCurrentSignal
- CloseItem
- OpenItem
- CloseNamedDevice
- CountBits
- FindMSB
- FindLSB
- ffs
- CreateMemDebug
- DeleteMemDebug
- DumpMemDebug
- SanityCheckMemDebug
- CreateUniqueMsgPort
- CreateUniqueSemaphore
- DumpNode
- DumpTagList
- NextTagArg
- FindTagArg
- GetTagArg
- FindAndOpenDevice
- OpenNamedDevice
- FindAndOpenItem
- FindAndOpenFolio
- FindAndOpenNamedItem
- FindDevice
- FindFolio
- FindMsgPort
- FindNamedNode
- FindNodeFromHead
- FindNodeFromTail
- FindTask
- GetBankBits
- GetFolioFunc
- GetMemTrackSize
- GetNodeCount
- GetNodePosFromHead
- GetNodePosFromTail
- GetPageSize
- GetSysErr
- PrintSysErr
- GetTaskSignals
- InsertNodeAfter
- InsertNodeBefore
- IsEmptyList
- IsItemOpened
- IsMemReadable
- IsMemWritable
- PrintError
- ReadHardwareRandomNumber
- SampleSystemTime
- SampleSystemTimeTV
- SetItemOwner
- SetItemPri
- SetNodePri
- Yield
- Tasks and Threads
- What Is a Task?
- Starting and Ending Tasks
- Managing Items
- About Items
- Creating an Item
- Portfolio Items
- Attachment
- Bitmap
- Cue
- Envelope
- Instrument
- Template
- Knob
- Probe
- ErrorText
- File
- file:///C|/%23%23DDOC/spr/02spr016.html
- CloseDiskFile
- OpenDiskFileInDir
- OpenDirectoryItem
- OpenDirectoryPath
- CloseDirectory
- ReadDirectory
- OpenDiskStream
- CloseDiskStream
- ReadDiskStream
- SeekDiskStream
- ChangeDirectory
- GetDirectory
- File alias
- CreateAlias
- Folio
- IOReq
- Locale
- intlOpenLocale
- intlCloseLocale
- intlLookupLocale
- Message
- Message port
- Sample
- ScreenGroup
- Semaphore
- Task
- ExecuteAsThread
- LoadCode
- LoadProgram
- LoadProgramPrio
- UnloadCode
- ExecuteAsSubroutine
- Tuning
- VDL
- Using an Item
- Deleting an Item
- Opening an Item
- Closing an Item
- Function Calls
- Controlling the State of a Task
- Starting and Ending Threads
- Loading and Executing Separate Code Modules
- Example
- Function Calls
- Using Tags and TagArgs
- About Tags and TagArgs
- Tags and TagArgs
- Special Tag Commands
- Tags and VarArgs
- Parsing Tags
- TagArg Function Calls
- Managing Linked Lists
- About Linked Lists
- Creating and Initializing a List
- Adding a Node to a List
- Changing the Priority of a Node
- Removing a Node From a List
- Finding out If a List Is Empty
- Traversing a List
- Finding a Node by Name
- Finding a Node by Its Ordinal Position
- Determining the Ordinal Position of a Node
- Counting the Number of Nodes in a List
- Example
- Primary Data Structures
- Function Calls
- Managing Memory
- About Memory
- Allocating Memory
- Using Private Memory Lists
- Transferring Memory to Other Tasks
- Reclaiming Memory for Other Tasks
- The Filesystem and the File Folio
- 3DO File System Interface
- Byte-Stream File Access
- Pathnames and Filenames
- Accessing Directories
- The Current Directory
- Loading and Executing an Application
- Working With NVRAM
- Access: A Simple User Interface
- How Access Works
- How to Use Access
- Communicating Among Tasks
- About Intertask Communication
- Using Signals
- Passing Messages
- Function Calls
- Example
- Access Message Tag Arguments
- Examples
- File System Folio Function Calls
- CreateFile
- DeleteFile
- Debugging Memory Usage
- Getting Information About Memory
- Allowing Other Tasks to Write to Your Memory
- Using Private Memory Pools
- Getting Memory From the System-Wide Free Memory Pool
- Example
- Function Calls
- Sharing System Resources
- About Semaphores
- Creating a Semaphore
- Deleting a Semaphore
- Locking a Semaphore
- Unlocking a Semaphore
- Finding a Semaphore
- Function Calls
- The International Folio
- International Folio Calls
- intlCompareStrings
- intlConvertString
- intlFormatDate
- IntlFormatNumber
- intlGetCharAttrs
- intlTransliterateString
- What Is Internationalization?
- The Locale Data Structure
- Using the Locale Structure
- Converting Character Sets With the JString Folio
- Function Calls and Macros
- ConvertASCII2ShiftJIS
- ConvertShiftJIS2ASCII
- ConvertShiftJIS2UniCode
- ConvertUniCode2ShiftJIS
- The Compression Folio
- Introduction
- 3DO System Programmer's Reference
- File Folio Calls
- Math Folio Calls
- AbsVec3_F16
- AbsVec4_F16
- Add32
- AddF16
- AddF14
- AddF30
- Add64
- AddF32
- AddF60
- Atan2F16
- CloseMathFolio
- OpenMathFolio
- CompareS64
- CompareSF32
- CompareU64
- CompareUF32
- CompareUF60
- CompareSF60
- Convert32_F16
- ConvertF14_F16
- ConvertF16_F14
- ConvertF16_F30
- ConvertF16_32
- ConvertF30_F16
- ConvertF32_F16
- Convert32_F32
- ConvertS32_64
- ConvertSF16_F32
- ConvertU32_64
- ConvertUF16_F32
- CosF16
- SinF16
- CosF32
- SinF32
- CosF30
- SinF30
- Cross3_F16
- DivRemS32
- DivRemU32
- DivRemSF16
- DivS64
- DivU64
- DivSF16
- DivUF16
- DivRemUF16
- Dot3_F16
- Dot4_F16
- Mul32
- Mul64
- MulS32_64
- MulSF16
- MulU32_64
- MulF14
- MulUF16
- MulSF30
- MulSF16_F32
- MulUF16_F32
- MulSF30_F60
- MulUF30_F60
- MulManyF16
- file:///C|/%23%23DDOC/spr/03spr058.html
- MulManyVecMat33_F16
- MulManyVec4Mat44_F16
- MulManyVec3Mat33DivZ_F16
- MulMat33Mat33_F16
- MulVec3Mat33_F16
- MulVec4Mat44_F16
- MulMat44Mat44_F16
- MulObjectMat33_F16
- MulObjectMat44_F16
- MulObjectVec3Mat33_F16
- MulObjectVec4Mat44_F16
- MulVec3Mat33DivZ_F16
- Neg32
- NegF16
- NegF14
- NegF30
- Neg64
- NegF32
- NegF60
- Not32
- NotF16
- NotF14
- NotF30
- Not64
- NotF32
- NotF60
- RecipSF16
- RecipUF16
- Sqrt32
- SqrtF16
- Sqrt64_32
- SqrtF32_F16
- SqrtF60_F30
- Square64
- SquareSF16
- SquareUF16
- Sub32
- SubF32
- Sub64
- SubF60
- SubF16
- SubF30
- SubF14
- Transpose33_F16
- file:///C|/%23%23DDOC/spr/03spr106.html
- Event Broker Calls
- Timer Calls
- AddTimes
- SubTimes
- CompareTimes
- TimeLaterThan
- TimeLaterThanOrEqual
- CreateTimerIOReq
- DeleteTimerIOReq
- WaitTime
- WaitUntil
- JString Folio Calls
- Compression Folio Calls
- CreateCompressor
- FeedCompressor
- DeleteCompressor
- GetCompressorWorkBufferSize
- CreateDecompressor
- FeedDecompressor
- DeleteDecompressor
- GetDecompressorWorkBufferSize
- SimpleCompress
- SimpleDecompress
- How the Compression Folio Works
- The Callback Function
- Controlling Memory Allocations
- Convenience Calls
- Example
- Function Calls
- The Math Folio
- Dealing With Overflow
- List of Math Calls