
Mac::Errors - constants for Mac error codes

use Mac::Errors qw(openErr);
if( $value == openErr )
{
...
}
my $error = $MacErrors{ $symbol };
# -- OR --
my $error = $MacErrors{ $number };
my $symbol = $error->symbol;
my $number = $error->number;
my $desc = $error->description;
# in MacPerl, $^E is meaningful, and we tie $MacError to it
use Mac::Errors qw( $MacError );
open FILE, $foo or die $^E; # error number
open FILE, $foo or die $MacError; # gets description from $^E

The %MacErrors hash indexes error information by the error number or symbol. Each value is a Mac::Errors object which has the symbol, number, and description.
The $MacError scalar performs some tied magic to translate MacPerl's $^E to the error text.

Returns the symbolic constant, (e.g. openErr)
Returns the error number, (e.g. -23)
Returns the errror description from MacErrors.h, which may mean something to you, and may not, (e.g. I/O System Errors).
Descriptions of errors are not unique, and some errors do not have a description.

All symbolic constants also have a subroutine of the same name. The subroutine returns the error number.
error in user parameter list
Sound Manager Error Returns
Sound Manager Error Returns
queue element not found during deletion
invalid queue element
core routine number out of range
unimplemented core routine
invalid queue element
no debugger installed to handle debugger command
I/O System Errors
I/O System Errors
I/O System Errors
I/O System Errors
I/O System Errors
I/O System Errors
I/O System Errors
I/O System Errors
tried to remove an open driver
IO call aborted by KillIO
IO abort error (Printing Manager)
Couldn't rd/wr/ctl/sts cause driver not opened
unit table has no more entries
dce extension error
invalid slot # error
gcr format on high density media error
Directory full
disk full
no such volume
I/O error (bummers)
there may be no bad names in the final system!
File not open
End of file
tried to position to before start of file (r/w)
memory full (open) or file won't fit (load)
too many files open
File not found
diskette is write protected.
volume is locked
File is busy (delete)
duplicate filename (rename)
file already open with with write permission
refnum error
get file position error
volume not on line error (was Ejected)
permissions error (on file open)
drive volume already on-line at MountVol
no such drive (tried to mount a bad drive num)
not a mac diskette (sig bytes are wrong)
volume in question belongs to an external fs
file system internal error:during rename the old entry was deleted but could not be restored.
bad master directory block
write permissions error
Directory not found
No free WDCB available
Move into offspring error
Wrong volume type error [operation not supported for MFS]
no file thread exists.
file id already exists
directory specified
files on different volumes
the catalog has been modified
desktop database files are corrupted
can't exchange a file with itself
file id is dangling or doesn't match with the file number
when _Mount allows only remounts and doesn't get one
file's EOF, offset, mark or size is too big
file or volume is too big for system
can't eject because volume is in use by VM
FCBRecPtr is not valid
selector is not recognized by this filesystem
FSRef parameter is bad
Fork name parameter is bad
A buffer parameter was bad
A ForkRefNum parameter was bad
A CatalogInfoBitmap or VolumeInfoBitmap has reserved or invalid bits set
A CatalogInfo parameter was NULL
Expected a folder, got a file
Named fork does not exist
File/fork name is too long to create/rename
A Unicode name parameter was NULL or nameLength parameter was zero
Newline bits set in positionMode
Invalid bits set in allocationFlags
Iteration ran out of items to return
maximumItems was zero
Something wrong with CatalogSearch searchParams
FSCompareFSRefs; refs are for different objects
Named fork already exists.
Flags passed to FSOpenIterator are bad
Passed FSIterator is not an open iterator
The iterator's flags or container are not supported by this call
returned by glue.
Version non-positive
Version bigger than call can handle
error during font declaration
font not declared
font substitution occurred
bitmap font passed to routine that does outlines only
I/O System Errors
I/O System Errors
drive not installed
r/w requested for an off-line drive
couldn't find valid addr mark
read verify compare failed
addr mark checksum didn't check
bad addr mark bit slip nibbles
couldn't find a data mark header
bad data mark checksum
bad data mark bit slip nibbles
write underrun occurred
step handshake failed
track 0 detect doesn't change
unable to initialize IWM
tried to read 2nd side on a 1-sided drive
unable to correctly adjust disk speed
track number wrong on address mark
sector number never found on a track
can't find sector 0 after track format
can't get enough sync
track failed to verify
unable to read same clock value twice
time written did not verify
parameter ram written didn't read-verify
InitUtil found the parameter ram uninitialized
SCC receiver error (framing; parity; OR)

No scrap exists error

Length error ddpLenErr
error in soket number
data length too big
no network bridge for non-local send
error in attaching/detaching protocol
excessive collisions on write
serial port not currently powered
driver Open error code (port is in use)

soft error in ROZ
hard error in ROZ
hard error in ROZ
Not enough room in heap zone
Master Pointer was NIL in HandleZone or other
WhichZone failed (applied to free block)
trying to purge a locked or non-purgeable block
address was odd; or out of range
Address in zone check failed
Pointer Check failed
Block Check failed
Size Check failed

Resource already in memory
Writing past end of file
Offset of Count out of bounds
Resource not found
Resource file not found
AddResource failed
AddReference failed
RmveResource failed
RmveReference failed
attribute inconsistent with operation
map inconsistent with operation
resource bent ("the bends") - can't decompress a compressed resource
extended resource has a bad format.
Color2Index failed to find an index
failed to allocate memory for temporary structures
failed to allocate memory for structure
range error on colorTable request
colorTable entry protection violation
invalid type of graphics device
invalid resolution for MakeITable
invalid pixel depth
insufficient memory to update a pixmap
wrong version of the PictInfo structure
the internal consistancy check for the PictInfoID is wrong
the passed verb was invalid
unable to load the custom pick proc
the number of colors requested was illegal

CMM not present
Responder error
Profiles the same
Profile can't be concatenated
CMM cant handle XYZ space
Responder error
Responder error

obsolete spelling
obsolete spelling
Sound Manager Error Returns
Sound Manager Error Returns
Sound Manager Error Returns
Sound Manager Error Returns
could not allocate enough memory
was not type AIFF or was of bad format,corrupt
the Channel is being used for a PFD already
can not operate in the memory allowed
not enough CPU cycles left to add another task
vbr audio compression not supported for this operation
no Sound Input hardware
invalid index passed to SoundInGetIndexedDevice
returned by synchronous SPBRecord if nil buffer passed
invalid compression type
hard drive too slow to record to disk
invalid sample rate
invalid sample size
input device already in use
input device could not be opened
invalid input device reference number
input device hardware failure
invalid info type selector (returned by driver)
no client with that ID found
no port with that ID found
too many ports already installed in the system
too many connections made
pending virtual connection created
pending virtual connection resolved
pending virtual connection removed
no connection exists between specified ports
MIDIWritePacket couldn't write to all connected ports
name supplied is longer than 31 characters
duplicate client ID
slot int dispatch table could not be initialized.
VBLqueues for all slots could not be initialized.
slot priority table could not be initialized.
SDM Jump Table could not be initialized.
SDM could not be initialized.
Slot Resource Table could not be initialized.
Slot PRAM could not be initialized.
Error; SDM could not be initialized.
Error; Slot Resource Table could not be initialized.
Error; Slot Resource Table could not be initialized.
Error; Cards could not be initialized.
No card in slot
CRC check failed for declaration data
FHeader Format is not Apple's
Wrong revison level
Directory offset is Nil
This slot is disabled (-305 use to be smLWTstBad)
Fatal reserved error. Resreved field <> 0.
Unexpected BusError
ByteLanes field was bad.
Error occurred during _sGetFHeader.
Error occurred during _sDisposePtr (Dispose of FHeader block).
_DisposePointer error
No Board sResource.
Error occurred during _sGetPRAMRec (See SIMStatus).
No Board Id.
The InitStatusV field was negative after primary or secondary init.
An error occurred while trying to initialize the Slot Resource Table.
SDM jump table could not be created.
slot is reserved, VM should not use this address space.
BoardId was wrong; re-init the PRAM record.
BusError time out. These errors are logged in the vendor status field of the sInfo record.
Temporarily disable card but run primary init.
Reserve range -32640 to -32768 for Apple temp disables.
Reference Id not found in List
Bad sList: Id1 < Id2 < Id3 ...format is not followed.
Reserved field not zero
Code revision is wrong
LPointer is nil From sOffsetData. If this error occurs; check sInfo rec for more information.
Nil sBlock error (Dont allocate and try to use a nil sBlock)
Slot out of bounds error
Selector out of bounds error
_NewPtr error
_BlockMove error
Status of slot = fail.
Error occurred during _sGetDrvrName.
Error occurred during _sDisDrvrName.
No more sResources
Error occurred during _sGetDriver.
Bad pointer was passed to sCalcsPointer
NumByteLanes was determined to be zero.
Offset was too big (temporary error
No opens were successfull in the loop.
SRT over flow.

The file is not a dictionary.
Can't allocate disk space.
Record already exists.
Record cannot be found.
Maximum key length is too long or equal to zero.
There is no such a key attribute.
There is no such an insert mode.
The record data is bigger than buffer size (1024 bytes).
Foreign File system does not exist - new Pack2 could return this error too
File system is busy, cannot be removed
Name length not 1 <= length <= 31
FSD size incompatible with current FSM vers
FSID already exists on InstallFS
FSM version incompatible with FSD
no alternate stack for HFS CI

edition manager not inited by this app
not a valid SectionRecord
not a registered SectionRecord
edition file is corrupt
can not use sub parts in this release
A Publisher is already registered for that container
could not find editionContainer at this time
container already opened by this section
scrap item too big for text edit record
bad selector for _HWPriv

no eligible process with specified descriptor
not enough room to launch app w/special requirements
memory mode is 32-bit, but app not 32-bit clean
app made module calls in improper order
hardware configuration not correct for call
application SIZE not big enough for launch
app is BG-only, and launch flags disallow this
error returns from Post and Accept

The application could not launch because the required platform is not available
The application's creator and version are incompatible with the current version of Mac OS.
insufficient physical memory
specified range of memory is not held
cannot make specified range contiguous
specified range of memory is not locked
donÍt call with interrupts masked
unable to defer additional functions
VM could not start because there was more physical memory than virtual memory (bad setting in VM config resource)
VM could not start because VM_MMUInit kernel call failed
VM was configured off, or command key was held down at boot
VM could not start because of a lock table conflict (only on non-SuperMario ROMs)
VM could not start because the driver was incompatible
invalid BackingFileID
requested MappingPrivileges cannot be obtained
open views found on BackingFile
no more BackingFiles were found
invalid FileViewID
requested FileViewAccess cannot be obtained
no more FileViews were found
address is not in a FileView
bad session number for DBGetConnInfo
bad ddev specified on DBInit
ddev does not support async calls
tried to kill a bad pb
no app handler for specified data type
incompatible versions
Show Balloons mode was off, call to routine ignored
Returned if mouse was moving or mouse wasn't in window port rect
Returned from HMShowMenuBalloon if menu & item is same as last time
Returned from HMGetHelpMenuHandle if help menu not setup
Returned from calls if helpmsg specified a skip balloon
Returned if help mgr resource was the wrong version
Returned if help msg record contained a bad type
Returned from HMShowBalloon call if bad method passed to routine
Returned from HMRemoveBalloon if no balloon was visible when call was made

PPCToolBox not initialized
Invalid or inappropriate locationKindSelector in locationName
Unable to open port or bad portRefNum. If you're calling AESend, this is because your application does not have
The system is hosed, better re-boot
Network activity is currently disabled
Port does not exist at destination
Out of session tables, try again later
Invalid session reference number
bad parameter or invalid state for operation
port is already open (perhaps in another app)
user name unknown on destination machine
Destination rejected the session request
user hasn't named his Macintosh in the Network Setup Control Panel
A system resource is missing, not too likely
unable to contact destination
port was closed
session was closed
PPCPortRec malformed
user hasn't typed in owners name in Network Setup Control Pannel
The default userRefNum does not yet exist
unable to create a new userRefNum
An error has occurred in the network, not too likely
PPCStart failed because destination did not have inform pending
unable to authenticate user at destination
Invalid user reference number
illegal service type, or not supported
location name malformed

Buffer overflow in LookupName
Name confirmed at different socket
Duplicate name exists already
Name not found on remove
Server cannot support this ASP version
Buffer too small
No more sessions on server
No servers at that address
Parameter error
Server cannot open another session
Session closed
Command block too big
Too many clients (server error)

bad connection refNum
control call was aborted
bad connection state for this operation
open connection request failed
attention message too long
read terminated by forward reset
DSP Read/Write Queue Too small

bad parameter data or unable to coerce the data supplied
the specified list item does not exist
need newer version of the AppleEvent manager
the event is not in AppleEvent format
the AppleEvent was not handled by any handler
AEResetTimer was passed an invalid reply parameter
mode wasn't NoReply, WaitReply, or QueueReply or Interaction level is unknown
in AESend, the user cancelled out of wait loop for reply or receipt
the AppleEvent timed out
no user interaction is allowed
there is no special function for/with this keyword
a required parameter was not accessed
the target address type is not known
no handler in the dispatch tables fits the parameters to AEGetEventHandler or AEGetCoercionHandler
the contents of the reply you are accessing have not arrived yet
index is out of range in a put operation
A range like 3rd to 2nd, or 1st to all.
Logical op kAENOT used with other than 1 term
Accessor proc matching wantClass and containerType or wildcards not found
Something other than AND, OR, or NOT
Test is neither typeLogicalDescriptor nor typeCompDescriptor
Param to AEResolve not of type 'obj '
e.g.,: specifier asked for the 3rd, but there are only 2. Basically, this indicates a run-time resolution error.
CountProc returned negative value
Attempt to pass empty list as container to accessor
available only in version 1.0.1 or greater
available only in version 1.0.1 or greater
break out of all levels of AEReceive to the topmost (1.1 or greater)
break out of only lowest level of AEReceive (1.1 or greater)
event has been filtered, and should not be propogated (1.1 or greater)
attempt to install handler in table for identical class and id (1.1 or greater)
nesting violation while streaming
attempt to convert a stream that has already been converted
attempting to perform an invalid operation on a null descriptor
AEBuildDesc and friends detected a syntax error
Parameters are from 2 different components


unknown drag reference
unknown drag item reference
unknown flavor type
flavor type already exists
error while trying to get flavor data
handler already exists
handler not found
drag was not accepted by receiver
call is for PowerPC only
no displays support translucency
bad translucent image region
bad translucent image PixMap

replica
happens when file already exists
QT for Windows error
QT for Windows error
QT for Windows error
Windows specific errors (when component is loading)
Windows specific errors (when component is loading)
Windows specific errors (when qtml is loading)
Windows specific errors (when qtml is loading)