mirror of
https://github.com/elliotnunn/mac-rom.git
synced 2024-10-01 14:56:37 +00:00
72 lines
3.2 KiB
Plaintext
72 lines
3.2 KiB
Plaintext
|
;
|
|||
|
; File: FSpDispatch.a
|
|||
|
;
|
|||
|
; Contains: Dispatcher for FSp routines
|
|||
|
;
|
|||
|
; Written by: David Feldman
|
|||
|
;
|
|||
|
; Copyright: <09> 1990-1992 by Apple Computer, Inc., all rights reserved.
|
|||
|
;
|
|||
|
; Change History (most recent first):
|
|||
|
;
|
|||
|
; <8> 4/4/92 FM #1021881,<DTY>: Add two new calls to turn the ProcessMgr's file
|
|||
|
; tracking on and off. SuspendFileTracking and ResumeFileTracking.
|
|||
|
; These wil be internal calls for a while.
|
|||
|
; <7> 9/13/91 JSM Cleanup header.
|
|||
|
; <6> 1/13/91 dnf (csd) Add private FSpGetCatInfo call.
|
|||
|
; <5> 10/30/90 dnf (with dba) Add FSpExchangeFiles to dispatch table. Use
|
|||
|
; DispatchHelper for maximum throughput.
|
|||
|
; <4> 8/17/90 KST Using A1 points to trap table instead of A2.
|
|||
|
; <3> 8/6/90 dnf Change DispatchEntry names to match new names in FSSpecCalls.a
|
|||
|
; <2> 8/6/90 dnf Turned HFSPinaforeDispatch into a MakePatch routine
|
|||
|
; <1> 8/6/90 dnf first checked in
|
|||
|
;
|
|||
|
|
|||
|
;
|
|||
|
; This dispatcher assumes that the high byte of the low word of d0 contains the
|
|||
|
; number of words of parameters to strip off of the stack if a selector is out of
|
|||
|
; range. This will allow this code to return a paramErr when it sees newer selectors.
|
|||
|
; If you add any selectors to this dispatcher, you must make sure that the
|
|||
|
; trap macro for them includes the number of words of parameters as the high byte
|
|||
|
; of d0.w in case that call is made on a machine running an older dispatcher
|
|||
|
;
|
|||
|
|
|||
|
load 'StandardEqu.d'
|
|||
|
include 'LinkedPatchMacros.a'
|
|||
|
|
|||
|
HighLevelFSDispatch: BeginDispatcher _HighLevelFSDispatch,(Plus,SE,II,Portable,IIci)
|
|||
|
DispatchSelectors __FSMakeFSSpec = selectFSMakeFSSpec
|
|||
|
DispatchSelectors __FSpOpenDF = selectFSpOpenDF
|
|||
|
DispatchSelectors __FSpOpenRF = selectFSpOpenRF
|
|||
|
DispatchSelectors __FSpCreate = selectFSpCreate
|
|||
|
DispatchSelectors __FSpDirCreate = selectFSpDirCreate
|
|||
|
DispatchSelectors __FSpDelete = selectFSpDelete
|
|||
|
DispatchSelectors __FSpGetFInfo = selectFSpGetFInfo
|
|||
|
DispatchSelectors __FSpSetFInfo = selectFSpSetFInfo
|
|||
|
DispatchSelectors __FSpSetFLock = selectFSpSetFLock
|
|||
|
DispatchSelectors __FSpRstFLock = selectFSpRstFLock
|
|||
|
DispatchSelectors __FSpRename = selectFSpRename
|
|||
|
DispatchSelectors __FSpCatMove = selectFSpCatMove
|
|||
|
DispatchSelectors __FSpOpenResFile = selectFSpOpenResFile
|
|||
|
DispatchSelectors __FSpCreateResFile = selectFSpCreateResFile
|
|||
|
DispatchSelectors __FSpExchangeFiles = selectFSpExchangeFiles
|
|||
|
|
|||
|
; This one isn<73>t in the interfaces anywhere, but is here in the dispatcher.
|
|||
|
; We dreamed it up for use by FSpExchangeFiles but it<69>s a bit late
|
|||
|
; to make it into Inside Mac. Feel free to add this call later.
|
|||
|
selectFSpGetCatInfo equ selectFSpExchangeFiles+1
|
|||
|
DispatchSelectors __FSpGetCatInfo = selectFSpGetCatInfo
|
|||
|
|
|||
|
; These routines were needed by Akiko for opening dictionary files. <8>
|
|||
|
; Right now they just call BeginSysMode and EndSysMode. Hopefully in the <8>
|
|||
|
; future we will be able to release these calls to developers, but for <8>
|
|||
|
; now they are internal only. <8>
|
|||
|
|
|||
|
selectSuspendProcessMgrFileTracking equ selectFSpGetCatInfo+1 ;<8>
|
|||
|
DispatchSelectors __SuspendProcessMgrFileTracking = selectSuspendProcessMgrFileTracking ;<8>
|
|||
|
selectResumeProcessMgrFileTracking equ selectSuspendProcessMgrFileTracking+1 ;<8>
|
|||
|
DispatchSelectors __ResumeProcessMgrFileTracking = selectResumeProcessMgrFileTracking ;<8>
|
|||
|
|
|||
|
EndDispatcher
|
|||
|
end
|