mac-rom/QuickDraw/QDHooks.a

490 lines
7.0 KiB
Plaintext
Raw Normal View History

;
; File: QDHooks.a
;
; Contains: xxx put contents here (or delete the whole line) xxx
;
; Written by: xxx put name of writer here (or delete the whole line) xxx
;
; Copyright: <09> 1987-1990, 1993 by Apple Computer, Inc., all rights reserved.
;
; Change History (most recent first):
;
; <SM2> 9/12/93 SAM Removed rSwapMMUMode and rTranslate24to32 from the ROM build
; (SuperMario is a 32-bit mode only ROM).
; <5> 11/26/90 SMC Added more macros for alpha channel bug fixes. With BAL.
; <4> 10/31/90 SMC Added macros for alpha channel bug fixes.
; <3> 6/20/90 CL Moving the rswapmmumode macro from CQD.a into this file so it
; can be shared.
; <2> 2/5/90 BAL Added _GetPMData vector for pictures.a
; <<3C>1.2> 7/14/89 BAL For Aurora: Final CQD
; <1.1> 6/30/89 BAL Added QDExtDispatch, NewTempBuffer, NewTempHandle,
; DisposeTempBuffer
; <1.0> 5/29/89 BAL Blasting in 32-Bit QuickDraw version 1.0 Final
; 1/8/88 BAL Added CheckPic,Translate24to32
; <C835> 2/20/87 DAF Added ITabMatch
; <???> CRC New today
; <C835/20Feb87> DAF Added ITabMatch
; <08Jan88> BAL Added CheckPic,Translate24to32
IF (&TYPE('CPU') = 'UNDEFINED') THEN
CPU EQU $020
ENDIF
IF forROM THEN ; <SM2>
MACRO
_rSwapMMUMode
ENDM
ELSE
MACRO
_rSwapMMUMode
JSR ([$400+$5d*4])
ENDM
ENDIF
IF forROM THEN ; <SM2>
MACRO
_rTranslate24To32
ENDM
ELSE
MACRO
_rTranslate24To32
JSR ([$400+$91*4])
ENDM
ENDIF
MACRO
_BitBlt
JSR ([$E00+$300*4])
ENDM
MACRO
_BitsToMap
JSR ([$E00+$301*4])
ENDM
MACRO
_BitsToPix
JSR ([$E00+$302*4])
ENDM
MACRO
_ColorMap
JSR ([$E00+$304*4])
ENDM
MACRO
_CopyHandle
JSR ([$E00+$305*4])
ENDM
MACRO
_CullPoints
JSR ([$E00+$306*4])
ENDM
MACRO
_DrawArc
JSR ([$E00+$309*4])
ENDM
MACRO
_DrawLine
JSR ([$E00+$30A*4])
ENDM
MACRO
_DrawSlab
JSR ([$E00+$30B*4])
ENDM
MACRO
_FastSlabMode
JSR ([$E00+$30C*4])
ENDM
MACRO
_GetSeek
JSR ([$E00+$30D*4])
ENDM
MACRO
_MakeScaleTbl
JSR ([$E00+$30E*4])
ENDM
MACRO
_CheckPic
JSR ([$E00+$30F*4])
ENDM
MACRO
_DoLine
JSR ([$E00+$310*4])
ENDM
MACRO
_OldPatToNew
JSR ([$E00+$311*4])
ENDM
MACRO
_PackRgn
JSR ([$E00+$312*4])
ENDM
MACRO
_PatConvert
JSR ([$E00+$313*4])
ENDM
MACRO
_PatDither
JSR ([$E00+$314*4])
ENDM
MACRO
_PatExpand
JSR ([$E00+$315*4])
ENDM
MACRO
_PInit
JSR ([$E00+$316*4])
ENDM
MACRO
_PortToMap
JSR ([$E00+$317*4])
ENDM
MACRO
_PushVerb
JSR ([$E00+$318*4])
ENDM
MACRO
_PutLine
JSR ([$E00+$319*4])
ENDM
MACRO
_PutOval
JSR ([$E00+$31A*4])
ENDM
MACRO
_PutRgn
JSR ([$E00+$31B*4])
ENDM
MACRO
_NewTempBuffer
JSR ([$E00+$31C*4])
ENDM
MACRO
_QDExtDispatch
JSR ([$E00+$31D*4])
ENDM
MACRO
_DisposeTempBuffer
JSR ([$E00+$31E*4])
ENDM
MACRO
_RgnBlt
JSR ([$E00+$31F*4])
ENDM
MACRO
_RgnOp
JSR ([$E00+$320*4])
ENDM
MACRO
_RSect
JSR ([$E00+$321*4])
ENDM
MACRO
_SeekRgn
JSR ([$E00+$322*4])
ENDM
MACRO
_SetFillPat
JSR ([$E00+$323*4])
ENDM
MACRO
_SetUpStretch
JSR ([$E00+$324*4])
ENDM
MACRO
_SlabMode
JSR ([$E00+$325*4])
ENDM
MACRO
_SortPoints
JSR ([$E00+$326*4])
ENDM
MACRO
_StretchBits
JSR ([$E00+$327*4])
ENDM
MACRO
_StdDevLoop
JSR ([$E00+$328*4])
ENDM
MACRO
_TrimRect
JSR ([$E00+$329*4])
ENDM
MACRO
_XorSlab
JSR ([$E00+$32A*4])
ENDM
ExTblPtr EQU $E00+$32b*4
PatExTblPtr EQU $E00+$32e*4
MACRO
_AllocRunBuf
JSR ([$E00+$394*4])
ENDM
MACRO
_InitRgn
JSR ([$E00+$395*4])
ENDM
MACRO
_ScaleBlt
JSR ([$E00+$396*4])
ENDM
stNoStackPtr EQU $E00+$397*4
MACRO
_stNoStack
JSR ([$E00+$397*4])
ENDM
MACRO
_BlitCase
JSR ([$E00+$398*4])
ENDM
MACRO
_stScanLoop
JSR ([$E00+$399*4])
ENDM
MACRO
_PicItem1
JSR ([$E00+$39A*4])
ENDM
MACRO
_MakeGrayITab
JSR ([$E00+$39B*4])
ENDM
MACRO
_FastLineJmp
JMP ([$E00+$39C*4])
ENDM
MACRO
_FastSlantJmp
JMP ([$E00+$39D*4])
ENDM
MACRO
_BitsDevLoop
JSR ([$E00+$39E*4])
ENDM
rArith16TabPtr EQU $E00+$3a0*4
rArith32TabPtr EQU $E00+$3a1*4
rHiliteTabPtr EQU $E00+$3a2*4
gsRunTblPtr EQU $E00+$3a3*4
gsExpTblPtr EQU $E00+$3a4*4
gsSeekTblPtr EQU $E00+$3a5*4
stArith16TabPtr EQU $E00+$3a6*4
stArith32TabPtr EQU $E00+$3a7*4
stColorTabPtr EQU $E00+$3a8*4
stGrayTabPtr EQU $E00+$3a9*4
stSearchTabPtr EQU $E00+$3aa*4
stIndexedSrc EQU $E00+$3ab*4
scIndTab1Ptr EQU $E00+$3ac*4
scIndTab2Ptr EQU $E00+$3ad*4
scIndTab4Ptr EQU $E00+$3ae*4
scIndTab8Ptr EQU $E00+$3af*4
scIndTab16Ptr EQU $E00+$3b0*4
scIndTab32Ptr EQU $E00+$3b1*4
scDirTab1Ptr EQU $E00+$3b2*4
scDirTab2Ptr EQU $E00+$3b3*4
scDirTab4Ptr EQU $E00+$3b4*4
scDirTab8Ptr EQU $E00+$3b5*4
scDirTab16Ptr EQU $E00+$3b6*4
scDirTab32Ptr EQU $E00+$3b7*4
bArith16TabPtr EQU $E00+$3b8*4
bArith32TabPtr EQU $E00+$3b9*4
bHiliteTabPtr EQU $E00+$3ba*4
MACRO
_bArith16jmp
JMP ([$E00+$3bb*4])
ENDM
MACRO
_bArith32jmp
JMP ([$E00+$3bc*4])
ENDM
slArith16TabPtr EQU $E00+$3bd*4
slArith32TabPtr EQU $E00+$3be*4
MACRO
_AlphaDispatch
JSR ([$E00+$3c0*4])
ENDM
MACRO
_AlphaVersion
MOVEQ #0,D0
_AlphaDispatch
ENDM
MACRO
_SetForeStream
MOVEQ #1,D0
_AlphaDispatch
ENDM
MACRO
_SetForeTransparency
MOVEQ #2,D0
_AlphaDispatch
ENDM
MACRO
_SetBackStream
MOVEQ #3,D0
_AlphaDispatch
ENDM
MACRO
_SetBackTransparency
MOVEQ #4,D0
_AlphaDispatch
ENDM
MACRO
_GetForeStream
MOVEQ #5,D0
_AlphaDispatch
ENDM
MACRO
_GetForeTransparency
MOVEQ #6,D0
_AlphaDispatch
ENDM
MACRO
_GetBackStream
MOVEQ #7,D0
_AlphaDispatch
ENDM
MACRO
_GetBackTransparency
MOVEQ #8,D0
_AlphaDispatch
ENDM
MACRO
_ResizeGrafVars
MOVEQ #9,D0
_AlphaDispatch
ENDM
MACRO
_GetStreamMode
MOVEQ #10,D0
_AlphaDispatch
ENDM
MACRO
_StreamToMask
JSR ([$E00+$3c1*4])
ENDM
MACRO
_GetPMData
JSR ([$E00+$3c4*4])
ENDM
IF CPU >= $020 THEN
MACRO
_NewTempHandle
JSR ([$E00+$32d*4])
ENDM
ELSE
MACRO
_NewTempHandle
MOVE.L $E00+$32d*4,A0 ;get address of stack space routine
JSR (A0) ;get stack space into D0 and return
ENDM
ENDIF
BitBltModeTab EQU $E00+$330*4
; BitBltModeTab uses $28 entries
BitBltAvg EQU $E00+$350*4
BitBltAddPin EQU $E00+$351*4
BitBltAddOver EQU $E00+$352*4
BitBltSubPin EQU $E00+$353*4
BitBltMax EQU $E00+$355*4
BitBltSubOver EQU $E00+$356*4
BitBltMin EQU $E00+$357*4
BitBltSetup0 EQU $E00+$358*4
BitBltLeft0 EQU $E00+$359*4
RgnBltModeTab EQU $E00+$35A*4
; RgnBltModeTab uses $18 entries
RgnBltHilite EQU $E00+$372*4
StretchModeTab EQU $E00+$373*4
; StretchModeTab uses $0D entries
SlabModeTab EQU $E00+$380*4
; SlabModeTab uses $11 entries
MACRO ; <C835/20Feb87> DAF
_ITabMatch
JSR ([$E00+$391*4])
ENDM
; next free entry: $392
; many entries from $303 - $32F unused