; ; File: FastTraps.a ; ; Contains: Faster fatter trap macros that jump straight throught the trap vectors ; ; Copyright: © 1984-1990, 1992-1993 by Apple Computer, Inc., all rights reserved. ; ; Change History (most recent first): ; ; 10/6/93 SAM The QDExtensions macros were not setting the upper word of the ; selector (what contains the param count for each routine). This ; confused the native dispatcher. The macros have been updated to ; contain the full longword of info in D0. ; 10/13/92 CSS Nop calls if the machine doesn't support 24 bit mode ; (SwapMMUMode and StripAddress). ; <8> 7/26/92 DTY Add fast traps for DeviceLoop and GetGray to get the ROM ; building again. ; <7> 3/13/91 JT Rolled the Font Manager and TrueType traps into this file ; (nasty, fast versions of course) to support changes in DrawText ; and DrawPicture. Code checked by KON and BAL. BRC numbers 82651 ; and 79185. Worksheet number KON-022. ; <6> 8/20/90 dvb Remove drawgrayishtext ; <6> 8/4/90 dvb Add LayerDispatch, grr. ; <6> 8/4/90 dvb Add LayerDispatch, grr. ; <5> 7/17/90 DVB Add more PMgr Dispatchs ; <4> 6/19/90 DVB Add Gestalt ; <3> 3/29/90 DVB Add WhatPal pmgr dispatch ; <2> 1/12/90 DVB Fix the palette mgr fasttraps ; <1.3> 8/22/89 SES Added contents of Multifinder.a to bottom of this file in ; attempt to rid the world of nFiles. ; <1.2> 6/30/89 BAL Cleared runBuf(a6) before calling getSeek ; <1.1> 6/10/89 CEL Moved Private.a QuickDraw Equates into proper QuickDraw private ; file (colorequ.a), got rid of QuickDraw nFiles dependencies and ; fixed up necessary files… ; <1.0> 5/29/89 BAL Blasting in 32-Bit QuickDraw version 1.0 Final ; 3/12/89 BAL added _InitPalettes vector ; 8/12/87 rwh added _SetPalette vector ; 8/11/87 rwh 02,10 jun changes are now on the build system! ; 6/10/87 EHB Added more palette manager vectors. ; 6/2/87 DAF Added 2 palette manager vectors. ; 1/25/87 CRC changed toolbox traps to jumps through the dispatch table ; ; To Do: ; ;EASE$$$ READ ONLY COPY of file “fasttraps.a” ; 1.3 SES 08/22/1989 Added contents of Multifinder.a to bottom of this file in attempt to ; rid the world of nFiles. ; 1.2 BAL 06/30/1989 Cleared runBuf(a6) before calling getSeek ; 1.1 CEL 06/10/1989 Moved Private.a QuickDraw Equates into proper QuickDraw ; private file (colorequ.a), got rid of QuickDraw nFiles dependencies ; and fixed up necessary files… ; 1.0 BAL 05/29/1989 Blasting in 32-Bit QuickDraw version 1.0 Final ; END EASE MODIFICATION HISTORY ; File: FastTraps.a ; ; Version 2.0 ; ; Copyright Apple Computer, Inc. 1984, 1985, 1986 ; All Rights Reserved ; ; CRC changed toolbox traps to jumps through the dispatch table ; ;<02Jun87> DAF Added 2 palette manager vectors. ;<10Jun87> EHB Added more palette manager vectors. ;<11aug87> rwh 02,10 jun changes are now on the build system! ;<12aug87> rwh added _SetPalette vector ;<12Mar89> BAL added _InitPalettes vector IF &TYPE('Supports24Bit') = 'UNDEFINDED' THEN Supports24Bit SET 0 ENDIF ;_______________________________________________________________________ ; ; Equates for setting trap option bits ; ;_______________________________________________________________________ immed EQU $200 ; execute immediately, bypass I/O queue clear EQU $200 ; async EQU $400 ; asynchronous, don't wait for completion sys EQU $400 ; autoPop EQU $400 ; set autopop bit ; for string routines marks EQU $200 ; set to ignore/strip diacriticals case EQU $400 ; set for case sensitivity ; for Get/Set & NGet/NSet TrapAddress newTool EQU $0600 ; tool trap, under new ordering newOS EQU $0200 ; os trap, under new ordering ; QuickDraw Traps MACRO _CopyMask JSR ([$E00+$17*4]) ENDM MACRO _MeasureText JSR ([$E00+$37*4]) ENDM MACRO _GetMaskTable JSR ([$E00+$36*4]) ENDM MACRO _InitCursor JSR ([$E00+$50*4]) ENDM MACRO _SetCursor JSR ([$E00+$51*4]) ENDM MACRO _HideCursor JSR ([$E00+$52*4]) ENDM MACRO _ShowCursor JSR ([$E00+$53*4]) ENDM MACRO _ShieldCursor JSR ([$E00+$55*4]) ENDM MACRO _ObscureCursor JSR ([$E00+$56*4]) ENDM MACRO _Random JSR ([$E00+$61*4]) ENDM MACRO _ForeColor JSR ([$E00+$62*4]) ENDM MACRO _BackColor JSR ([$E00+$63*4]) ENDM MACRO _ColorBit JSR ([$E00+$64*4]) ENDM MACRO _GetPixel JSR ([$E00+$65*4]) ENDM MACRO _StuffHex JSR ([$E00+$66*4]) ENDM MACRO _LongMul JSR ([$E00+$67*4]) ENDM MACRO _FixMul JSR ([$E00+$68*4]) ENDM MACRO _FixRatio JSR ([$E00+$69*4]) ENDM MACRO _FixRound JSR ([$E00+$6C*4]) ENDM MACRO _InitPort JSR ([$E00+$6D*4]) ENDM MACRO _InitGraf JSR ([$E00+$6E*4]) ENDM MACRO _OpenPort JSR ([$E00+$6F*4]) ENDM MACRO _LocalToGlobal JSR ([$E00+$70*4]) ENDM MACRO _GlobalToLocal JSR ([$E00+$71*4]) ENDM MACRO _GrafDevice JSR ([$E00+$72*4]) ENDM MACRO _SetPort JSR ([$E00+$73*4]) ENDM MACRO _GetPort JSR ([$E00+$74*4]) ENDM MACRO _SetPBits JSR ([$E00+$75*4]) ENDM MACRO _PortSize JSR ([$E00+$76*4]) ENDM MACRO _MovePortTo JSR ([$E00+$77*4]) ENDM MACRO _SetOrigin JSR ([$E00+$78*4]) ENDM MACRO _SetClip JSR ([$E00+$79*4]) ENDM MACRO _GetClip JSR ([$E00+$7A*4]) ENDM MACRO _ClipRect JSR ([$E00+$7B*4]) ENDM MACRO _BackPat JSR ([$E00+$7C*4]) ENDM MACRO _ClosePort JSR ([$E00+$7D*4]) ENDM MACRO _AddPt JSR ([$E00+$7E*4]) ENDM MACRO _SubPt JSR ([$E00+$7F*4]) ENDM MACRO _SetPt JSR ([$E00+$80*4]) ENDM MACRO _EqualPt JSR ([$E00+$81*4]) ENDM MACRO _StdText JSR ([$E00+$82*4]) ENDM MACRO _DrawChar JSR ([$E00+$83*4]) ENDM MACRO _DrawString JSR ([$E00+$84*4]) ENDM MACRO _DrawText JSR ([$E00+$85*4]) ENDM MACRO _TextWidth JSR ([$E00+$86*4]) ENDM MACRO _TextFont JSR ([$E00+$87*4]) ENDM MACRO _TextFace JSR ([$E00+$88*4]) ENDM MACRO _TextMode JSR ([$E00+$89*4]) ENDM MACRO _TextSize JSR ([$E00+$8A*4]) ENDM MACRO _GetFontInfo JSR ([$E00+$8B*4]) ENDM MACRO _StringWidth JSR ([$E00+$8C*4]) ENDM MACRO _CharWidth JSR ([$E00+$8D*4]) ENDM MACRO _SpaceExtra JSR ([$E00+$8E*4]) ENDM MACRO _StdLine JSR ([$E00+$90*4]) ENDM MACRO _LineTo JSR ([$E00+$91*4]) ENDM MACRO _Line JSR ([$E00+$92*4]) ENDM MACRO _MoveTo JSR ([$E00+$93*4]) ENDM MACRO _Move JSR ([$E00+$94*4]) ENDM MACRO _HidePen JSR ([$E00+$96*4]) ENDM MACRO _ShowPen JSR ([$E00+$97*4]) ENDM MACRO _GetPenState JSR ([$E00+$98*4]) ENDM MACRO _SetPenState JSR ([$E00+$99*4]) ENDM MACRO _GetPen JSR ([$E00+$9A*4]) ENDM MACRO _PenSize JSR ([$E00+$9B*4]) ENDM MACRO _PenMode JSR ([$E00+$9C*4]) ENDM MACRO _PenPat JSR ([$E00+$9D*4]) ENDM MACRO _PenNormal JSR ([$E00+$9E*4]) ENDM MACRO _StdRect JSR ([$E00+$A0*4]) ENDM MACRO _FrameRect JSR ([$E00+$A1*4]) ENDM MACRO _PaintRect JSR ([$E00+$A2*4]) ENDM MACRO _EraseRect JSR ([$E00+$A3*4]) ENDM MACRO _InverRect JSR ([$E00+$A4*4]) ENDM MACRO _FillRect JSR ([$E00+$A5*4]) ENDM MACRO _EqualRect JSR ([$E00+$A6*4]) ENDM MACRO _SetRect JSR ([$E00+$A7*4]) ENDM MACRO _OffSetRect JSR ([$E00+$A8*4]) ENDM MACRO _InSetRect JSR ([$E00+$A9*4]) ENDM MACRO _SectRect JSR ([$E00+$AA*4]) ENDM MACRO _UnionRect JSR ([$E00+$AB*4]) ENDM MACRO _Pt2Rect JSR ([$E00+$AC*4]) ENDM MACRO _PtInRect JSR ([$E00+$AD*4]) ENDM MACRO _EmptyRect JSR ([$E00+$AE*4]) ENDM MACRO _StdRRect JSR ([$E00+$AF*4]) ENDM MACRO _FrameRoundRect JSR ([$E00+$B0*4]) ENDM MACRO _PaintRoundRect JSR ([$E00+$B1*4]) ENDM MACRO _EraseRoundRect JSR ([$E00+$B2*4]) ENDM MACRO _InverRoundRect JSR ([$E00+$B3*4]) ENDM MACRO _FillRoundRect JSR ([$E00+$B4*4]) ENDM MACRO _StdOval JSR ([$E00+$B6*4]) ENDM MACRO _FrameOval JSR ([$E00+$B7*4]) ENDM MACRO _PaintOval JSR ([$E00+$B8*4]) ENDM MACRO _EraseOval JSR ([$E00+$B9*4]) ENDM MACRO _InvertOval JSR ([$E00+$BA*4]) ENDM MACRO _FillOval JSR ([$E00+$BB*4]) ENDM MACRO _SlopeFromAngle JSR ([$E00+$BC*4]) ENDM MACRO _StdArc JSR ([$E00+$BD*4]) ENDM MACRO _FrameArc JSR ([$E00+$BE*4]) ENDM MACRO _PaintArc JSR ([$E00+$BF*4]) ENDM MACRO _EraseArc JSR ([$E00+$C0*4]) ENDM MACRO _InvertArc JSR ([$E00+$C1*4]) ENDM MACRO _FillArc JSR ([$E00+$C2*4]) ENDM MACRO _PtToAngle JSR ([$E00+$C3*4]) ENDM MACRO _AngleFromSlope JSR ([$E00+$C4*4]) ENDM MACRO _StdPoly JSR ([$E00+$C5*4]) ENDM MACRO _FramePoly JSR ([$E00+$C6*4]) ENDM MACRO _PaintPoly JSR ([$E00+$C7*4]) ENDM MACRO _ErasePoly JSR ([$E00+$C8*4]) ENDM MACRO _InvertPoly JSR ([$E00+$C9*4]) ENDM MACRO _FillPoly JSR ([$E00+$CA*4]) ENDM MACRO _OpenPoly JSR ([$E00+$CB*4]) ENDM MACRO _ClosePgon JSR ([$E00+$CC*4]) ENDM MACRO _KillPoly JSR ([$E00+$CD*4]) ENDM MACRO _OffSetPoly JSR ([$E00+$CE*4]) ENDM MACRO _PackBits JSR ([$E00+$CF*4]) ENDM MACRO _UnpackBits JSR ([$E00+$D0*4]) ENDM MACRO _StdRgn JSR ([$E00+$D1*4]) ENDM MACRO _FrameRgn JSR ([$E00+$D2*4]) ENDM MACRO _PaintRgn JSR ([$E00+$D3*4]) ENDM MACRO _EraseRgn JSR ([$E00+$D4*4]) ENDM MACRO _InverRgn JSR ([$E00+$D5*4]) ENDM MACRO _FillRgn JSR ([$E00+$D6*4]) ENDM MACRO _NewRgn JSR ([$E00+$D8*4]) ENDM MACRO _DisposRgn JSR ([$E00+$D9*4]) ENDM MACRO _OpenRgn JSR ([$E00+$DA*4]) ENDM MACRO _CloseRgn JSR ([$E00+$DB*4]) ENDM MACRO _CopyRgn JSR ([$E00+$DC*4]) ENDM MACRO _SetEmptyRgn JSR ([$E00+$DD*4]) ENDM MACRO _SetRecRgn JSR ([$E00+$DE*4]) ENDM MACRO _RectRgn JSR ([$E00+$DF*4]) ENDM MACRO _OfSetRgn JSR ([$E00+$E0*4]) ENDM MACRO _InSetRgn JSR ([$E00+$E1*4]) ENDM MACRO _EmptyRgn JSR ([$E00+$E2*4]) ENDM MACRO _EqualRgn JSR ([$E00+$E3*4]) ENDM MACRO _SectRgn JSR ([$E00+$E4*4]) ENDM MACRO _UnionRgn JSR ([$E00+$E5*4]) ENDM MACRO _DiffRgn JSR ([$E00+$E6*4]) ENDM MACRO _XOrRgn JSR ([$E00+$E7*4]) ENDM MACRO _PtInRgn JSR ([$E00+$E8*4]) ENDM MACRO _RectInRgn JSR ([$E00+$E9*4]) ENDM MACRO _SetStdProcs JSR ([$E00+$EA*4]) ENDM MACRO _StdBits JSR ([$E00+$EB*4]) ENDM MACRO _CopyBits JSR ([$E00+$EC*4]) ENDM MACRO _StdTxMeas JSR ([$E00+$ED*4]) ENDM MACRO _StdGetPic JSR ([$E00+$EE*4]) ENDM MACRO _ScrollRect JSR ([$E00+$EF*4]) ENDM MACRO _StdPutPic JSR ([$E00+$F0*4]) ENDM MACRO _StdComment JSR ([$E00+$F1*4]) ENDM MACRO _PicComment JSR ([$E00+$F2*4]) ENDM MACRO _OpenPicture JSR ([$E00+$F3*4]) ENDM MACRO _ClosePicture JSR ([$E00+$F4*4]) ENDM MACRO _KillPicture JSR ([$E00+$F5*4]) ENDM MACRO _DrawPicture JSR ([$E00+$F6*4]) ENDM MACRO _ScalePt JSR ([$E00+$F8*4]) ENDM MACRO _MapPt JSR ([$E00+$F9*4]) ENDM MACRO _MapRect JSR ([$E00+$FA*4]) ENDM MACRO _MapRgn JSR ([$E00+$FB*4]) ENDM MACRO _MapPoly JSR ([$E00+$FC*4]) ENDM ; These are copied out of Traps.a. They aren't "Fast." but ; Traps.a and FastTraps.a are mutually exclusive, so they ; must be in both places. ; ; Font Manager MACRO _SetFractEnable JSR ([$E00+$14*4]) ENDM MACRO _FontDispatch JSR ([$E00+$54*4]) ENDM selectIsOutline EQU 0 selectSetOutlinePreferred EQU 1 selectGetOutlinePreferred EQU 9 selectOutlineMetrics EQU 8 selectSetPreserveGlyph EQU $A selectGetPreserveGlyph EQU $B selectFlushFonts EQU $C MACRO _IsOutline moveq #selectIsOutline,d0 _FontDispatch ENDM MACRO _SetOutlinePreferred moveq #selectSetOutlinePreferred,d0 _FontDispatch ENDM MACRO _GetOutlinePreferred moveq #selectGetOutlinePreferred,d0 _FontDispatch ENDM MACRO _OutlineMetrics moveq #selectOutlineMetrics,d0 _FontDispatch ENDM MACRO _SetPreserveGlyph moveq #selectSetPreserveGlyph,d0 _FontDispatch ENDM MACRO _GetPreserveGlyph moveq #selectGetPreserveGlyph,d0 _FontDispatch ENDM MACRO _FlushFonts moveq #selectFlushFonts,d0 _FontDispatch ENDM ; These are copied out of Traps.a. They aren't "Fast." but ; Traps.a and FastTraps.a are mutually exclusive, so they ; must be in both places. ; ; PaletteDispatch selectors _PaletteDispatch OPWORD $AAA2 selectEntry2Index EQU 0 selectRestoreDeviceClut EQU 2 selectResizePalette EQU 3 selectZapLinks EQU 4 selectWhatPal EQU 5 selectDeltaRGB EQU 10 selectNewHiliteColor EQU 11 selectPMgrExit EQU 12 selectSaveFore EQU 13 selectSaveBack EQU 14 selectRestoreFore EQU 15 selectRestoreBack EQU 16 selectReleaseList EQU 18 selectSetDepth EQU 19 selectHasDepth EQU 20 selectPMgrVersion EQU 21 selectSetPaletteUpdates EQU 22 selectGetPaletteUpdates EQU 23 selectCheckColors EQU 24 selectGetGray equ 25 MACRO ; Generic Palette Switch Macro DoPaletteDispatch &selector,¶metersStackSize lcla &value &value: seta (&eval(¶metersStackSize)<<8)+&eval(&selector) if &value < 128 then moveq #&value,d0 else move.w #&value,d0 endif _PaletteDispatch ENDM MACRO _Entry2Index DoPaletteDispatch selectEntry2Index,0 ENDM MACRO _RestoreDeviceClut DoPaletteDispatch selectRestoreDeviceClut,0 ENDM MACRO _ResizePalette DoPaletteDispatch selectResizePalette,0 ENDM MACRO _ZapLinks DoPaletteDispatch selectZapLinks,0 ENDM MACRO _WhatPal DoPaletteDispatch selectWhatPal,4 ENDM MACRO _DeltaRGB DoPaletteDispatch selectDeltaRGB,8 ENDM MACRO _NewHiliteColor DoPaletteDispatch selectNewHiliteColor,0 ENDM MACRO _PMgrExit DoPaletteDispatch selectPMgrExit,0 ENDM MACRO _SaveFore DoPaletteDispatch selectSaveFore,4 ENDM MACRO _SaveBack DoPaletteDispatch selectSaveBack,4 ENDM MACRO _RestoreFore DoPaletteDispatch selectRestoreFore,4 ENDM MACRO _RestoreBack DoPaletteDispatch selectRestoreBack,4 ENDM MACRO _ReleaseList DoPaletteDispatch selectReleaseList,4 ENDM MACRO _SetDepth DoPaletteDispatch selectSetDepth,10 ENDM MACRO _HasDepth DoPaletteDispatch selectHasDepth,10 ENDM MACRO _PMgrVersion DoPaletteDispatch selectPMgrVersion,0 ENDM MACRO _SetPaletteUpdates DoPaletteDispatch selectSetPaletteUpdates,6 ENDM MACRO _GetPaletteUpdates DoPaletteDispatch selectSetPaletteUpdates,6 ENDM MACRO _CheckColors DoPaletteDispatch selectCheckColors,12 ENDM MACRO _GetGray DoPaletteDispatch selectGetGray,12 ENDM ; Fast Traps for the Quickdraw Extensions MACRO _QDExtensions JSR ([$E00+$31D*4]) ENDM MACRO _NewGWorld MOVE.L #$160000,D0 _QDExtensions ENDM MACRO _LockPixels MOVE.L #$40001,D0 _QDExtensions ENDM MACRO _UnlockPixels MOVE.L #$40002,D0 _QDExtensions ENDM MACRO _UpdateGWorld MOVE.L #$160003,D0 _QDExtensions ENDM MACRO _DisposeGWorld MOVE.L #$40004,D0 _QDExtensions ENDM MACRO _GetGWorld MOVE.L #$80005,D0 _QDExtensions ENDM MACRO _SetGWorld MOVE.L #$80006,D0 _QDExtensions ENDM MACRO _CTabChanged MOVE.L #$40007,D0 _QDExtensions ENDM MACRO _PixPatChanged MOVE.L #$40008,D0 _QDExtensions ENDM MACRO _PortChanged MOVE.L #$40009,D0 _QDExtensions ENDM MACRO _GDeviceChanged MOVE.L #$4000A,D0 _QDExtensions ENDM MACRO _AllowPurgePixels MOVE.L #$4000B,D0 _QDExtensions ENDM MACRO _NoPurgePixels MOVE.L #$4000C,D0 _QDExtensions ENDM MACRO _GetPixelsState MOVE.L #$4000D,D0 _QDExtensions ENDM MACRO _SetPixelsState MOVE.L #$8000E,D0 _QDExtensions ENDM MACRO _GetPixBaseAddr MOVE.L #$4000F,D0 _QDExtensions ENDM MACRO _NewScreenBuffer MOVE.L #$E0010,D0 _QDExtensions ENDM MACRO _DisposeScreenBuffer MOVE.L #$40011,D0 _QDExtensions ENDM MACRO _GetGWorldDevice MOVE.L #$40012,D0 _QDExtensions ENDM ; The following trap is not being documented yet MACRO _QDDone MOVE.L #$40013,D0 _QDExtensions ENDM ;end of QuickDraw Traps ; Tool Box Traps ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ;The following twelve OS traps have been redundantly defined as ;Tool traps as well. They should be ;accessed as OS traps, but their slots in the Tool trap table ;will be reserved forever. ; $1A GetZone ; $1B SetZone ; ; $1D MaxMem ; $1E NewPtr ; ; $22 NewHandle ; $23 DisposHandle ; $24 SetHandleSize ; $25 GetHandleSize ; ; $29 HLock ; $2A HUnLock ; ; $32 FlushEvents ; ; $4C CompactMem ; MACRO _Count1Resources JSR ([$E00+$0D*4]) ENDM MACRO _Get1IxResource JSR ([$E00+$0E*4]) ENDM MACRO _Get1IxType JSR ([$E00+$0F*4]) ENDM MACRO _Unique1ID JSR ([$E00+$10*4]) ENDM MACRO _TESelView JSR ([$E00+$11*4]) ENDM MACRO _TEPinScroll JSR ([$E00+$12*4]) ENDM MACRO _TEAutoView JSR ([$E00+$13*4]) ENDM MACRO _Pack8 JSR ([$E00+$16*4]) ENDM MACRO _FixATan2 JSR ([$E00+$18*4]) ENDM MACRO _XMunger JSR ([$E00+$19*4]) ENDM MACRO _Count1Types JSR ([$E00+$1C*4]) ENDM MACRO _Get1Resource JSR ([$E00+$1F*4]) ENDM MACRO _Get1NamedResource JSR ([$E00+$20*4]) ENDM MACRO _MaxSizeRsrc JSR ([$E00+$21*4]) ENDM MACRO _InsMenuItem JSR ([$E00+$26*4]) ENDM MACRO _HideDItem JSR ([$E00+$27*4]) ENDM MACRO _ShowDItem JSR ([$E00+$28*4]) ENDM MACRO _Pack9 JSR ([$E00+$2B*4]) ENDM MACRO _Pack10 JSR ([$E00+$2C*4]) ENDM MACRO _Pack11 JSR ([$E00+$2D*4]) ENDM MACRO _Pack12 JSR ([$E00+$2E*4]) ENDM MACRO _Pack13 JSR ([$E00+$2F*4]) ENDM MACRO _Pack14 JSR ([$E00+$30*4]) ENDM MACRO _Pack15 JSR ([$E00+$31*4]) ENDM MACRO _ScrnBitMap JSR ([$E00+$33*4]) ENDM MACRO _SetFScaleDisable JSR ([$E00+$34*4]) ENDM MACRO _FontMetrics JSR ([$E00+$35*4]) ENDM MACRO _ZoomWindow JSR ([$E00+$3A*4]) ENDM MACRO _TrackBox JSR ([$E00+$3B*4]) ENDM MACRO _InitFonts JSR ([$E00+$FE*4]) ENDM MACRO _GetFName JSR ([$E00+$FF*4]) ENDM MACRO _GetFNum JSR ([$E00+$100*4]) ENDM MACRO _FMSwapFont JSR ([$E00+$101*4]) ENDM MACRO _RealFont JSR ([$E00+$102*4]) ENDM MACRO _SetFontLock JSR ([$E00+$103*4]) ENDM MACRO _DrawGrowIcon JSR ([$E00+$104*4]) ENDM MACRO _DragGrayRgn JSR ([$E00+$105*4]) ENDM MACRO _NewString JSR ([$E00+$106*4]) ENDM MACRO _SetString JSR ([$E00+$107*4]) ENDM MACRO _ShowHide JSR ([$E00+$108*4]) ENDM MACRO _CalcVis JSR ([$E00+$109*4]) ENDM MACRO _CalcVBehind JSR ([$E00+$10A*4]) ENDM MACRO _ClipAbove JSR ([$E00+$10B*4]) ENDM MACRO _PaintOne JSR ([$E00+$10C*4]) ENDM MACRO _PaintBehind JSR ([$E00+$10D*4]) ENDM MACRO _SaveOld JSR ([$E00+$10E*4]) ENDM MACRO _DrawNew JSR ([$E00+$10F*4]) ENDM MACRO _GetWMgrPort JSR ([$E00+$110*4]) ENDM MACRO _CheckUpDate JSR ([$E00+$111*4]) ENDM MACRO _InitWindows JSR ([$E00+$112*4]) ENDM MACRO _NewWindow JSR ([$E00+$113*4]) ENDM MACRO _DisposWindow JSR ([$E00+$114*4]) ENDM MACRO _ShowWindow JSR ([$E00+$115*4]) ENDM MACRO _HideWindow JSR ([$E00+$116*4]) ENDM MACRO _GetWRefCon JSR ([$E00+$117*4]) ENDM MACRO _SetWRefCon JSR ([$E00+$118*4]) ENDM MACRO _GetWTitle JSR ([$E00+$119*4]) ENDM MACRO _SetWTitle JSR ([$E00+$11A*4]) ENDM MACRO _MoveWindow JSR ([$E00+$11B*4]) ENDM MACRO _HiliteWindow JSR ([$E00+$11C*4]) ENDM MACRO _SizeWindow JSR ([$E00+$11D*4]) ENDM MACRO _TrackGoAway JSR ([$E00+$11E*4]) ENDM MACRO _SelectWindow JSR ([$E00+$11F*4]) ENDM MACRO _BringToFront JSR ([$E00+$120*4]) ENDM MACRO _SendBehind JSR ([$E00+$121*4]) ENDM MACRO _BeginUpDate JSR ([$E00+$122*4]) ENDM MACRO _EndUpDate JSR ([$E00+$123*4]) ENDM MACRO _FrontWindow JSR ([$E00+$124*4]) ENDM MACRO _DragWindow JSR ([$E00+$125*4]) ENDM MACRO _DragTheRgn JSR ([$E00+$126*4]) ENDM MACRO _InvalRgn JSR ([$E00+$127*4]) ENDM MACRO _InvalRect JSR ([$E00+$128*4]) ENDM MACRO _ValidRgn JSR ([$E00+$129*4]) ENDM MACRO _ValidRect JSR ([$E00+$12A*4]) ENDM MACRO _GrowWindow JSR ([$E00+$12B*4]) ENDM MACRO _FindWindow JSR ([$E00+$12C*4]) ENDM MACRO _CloseWindow JSR ([$E00+$12D*4]) ENDM MACRO _SetWindowPic JSR ([$E00+$12E*4]) ENDM MACRO _GetWindowPic JSR ([$E00+$12F*4]) ENDM MACRO _InitMenus JSR ([$E00+$130*4]) ENDM MACRO _NewMenu JSR ([$E00+$131*4]) ENDM MACRO _DisposMenu JSR ([$E00+$132*4]) ENDM MACRO _AppendMenu JSR ([$E00+$133*4]) ENDM MACRO _ClearMenuBar JSR ([$E00+$134*4]) ENDM MACRO _InsertMenu JSR ([$E00+$135*4]) ENDM MACRO _DeleteMenu JSR ([$E00+$136*4]) ENDM MACRO _DrawMenuBar JSR ([$E00+$137*4]) ENDM MACRO _HiliteMenu JSR ([$E00+$138*4]) ENDM MACRO _EnableItem JSR ([$E00+$139*4]) ENDM MACRO _DisableItem JSR ([$E00+$13A*4]) ENDM MACRO _GetMenuBar JSR ([$E00+$13B*4]) ENDM MACRO _SetMenuBar JSR ([$E00+$13C*4]) ENDM MACRO _MenuSelect JSR ([$E00+$13D*4]) ENDM MACRO _MenuKey JSR ([$E00+$13E*4]) ENDM MACRO _GetItmIcon JSR ([$E00+$13F*4]) ENDM MACRO _SetItmIcon JSR ([$E00+$140*4]) ENDM MACRO _GetItmStyle JSR ([$E00+$141*4]) ENDM MACRO _SetItmStyle JSR ([$E00+$142*4]) ENDM MACRO _GetItmMark JSR ([$E00+$143*4]) ENDM MACRO _SetItmMark JSR ([$E00+$144*4]) ENDM MACRO _CheckItem JSR ([$E00+$145*4]) ENDM MACRO _GetItem JSR ([$E00+$146*4]) ENDM MACRO _SetItem JSR ([$E00+$147*4]) ENDM MACRO _CalcMenuSize JSR ([$E00+$148*4]) ENDM MACRO _GetMHandle JSR ([$E00+$149*4]) ENDM MACRO _SetMFlash JSR ([$E00+$14A*4]) ENDM MACRO _PlotIcon JSR ([$E00+$14B*4]) ENDM MACRO _FlashMenuBar JSR ([$E00+$14C*4]) ENDM MACRO _AddResMenu JSR ([$E00+$14D*4]) ENDM MACRO _PinRect JSR ([$E00+$14E*4]) ENDM MACRO _DeltaPoint JSR ([$E00+$14F*4]) ENDM MACRO _CountMItems JSR ([$E00+$150*4]) ENDM MACRO _InsertResMenu JSR ([$E00+$151*4]) ENDM MACRO _DelMenuItem JSR ([$E00+$152*4]) ENDM MACRO _UpdtControl JSR ([$E00+$153*4]) ENDM MACRO _NewControl JSR ([$E00+$154*4]) ENDM MACRO _DisposControl JSR ([$E00+$155*4]) ENDM MACRO _KillControls JSR ([$E00+$156*4]) ENDM MACRO _ShowControl JSR ([$E00+$157*4]) ENDM MACRO _HideControl JSR ([$E00+$158*4]) ENDM MACRO _MoveControl JSR ([$E00+$159*4]) ENDM MACRO _GetCRefCon JSR ([$E00+$15A*4]) ENDM MACRO _SetCRefCon JSR ([$E00+$15B*4]) ENDM MACRO _SizeControl JSR ([$E00+$15C*4]) ENDM MACRO _HiliteControl JSR ([$E00+$15D*4]) ENDM MACRO _GetCTitle JSR ([$E00+$15E*4]) ENDM MACRO _SetCTitle JSR ([$E00+$15F*4]) ENDM MACRO _GetCtlValue JSR ([$E00+$160*4]) ENDM MACRO _GetMinCtl JSR ([$E00+$161*4]) ENDM MACRO _GetMaxCtl JSR ([$E00+$162*4]) ENDM MACRO _SetCtlValue JSR ([$E00+$163*4]) ENDM MACRO _SetMinCtl JSR ([$E00+$164*4]) ENDM MACRO _SetMaxCtl JSR ([$E00+$165*4]) ENDM MACRO _TestControl JSR ([$E00+$166*4]) ENDM MACRO _DragControl JSR ([$E00+$167*4]) ENDM MACRO _TrackControl JSR ([$E00+$168*4]) ENDM MACRO _DrawControls JSR ([$E00+$169*4]) ENDM MACRO _GetCtlAction JSR ([$E00+$16A*4]) ENDM MACRO _SetCtlAction JSR ([$E00+$16B*4]) ENDM MACRO _FindControl JSR ([$E00+$16C*4]) ENDM MACRO _Draw1Control JSR ([$E00+$16D*4]) ENDM MACRO _DeQueue JSR ([$E00+$16E*4]) ENDM MACRO _EnQueue JSR ([$E00+$16F*4]) ENDM MACRO _GetNextEvent JSR ([$E00+$170*4]) ENDM MACRO _EventAvail JSR ([$E00+$171*4]) ENDM MACRO _GetMouse JSR ([$E00+$172*4]) ENDM MACRO _StillDown JSR ([$E00+$173*4]) ENDM MACRO _Button JSR ([$E00+$174*4]) ENDM MACRO _TickCount JSR ([$E00+$175*4]) ENDM MACRO _GetKeys JSR ([$E00+$176*4]) ENDM MACRO _WaitMouseUp JSR ([$E00+$177*4]) ENDM MACRO _UpdtDialog JSR ([$E00+$178*4]) ENDM MACRO _CouldDialog JSR ([$E00+$179*4]) ENDM MACRO _FreeDialog JSR ([$E00+$17A*4]) ENDM MACRO _InitDialogs JSR ([$E00+$17B*4]) ENDM MACRO _GetNewDialog JSR ([$E00+$17C*4]) ENDM MACRO _NewDialog JSR ([$E00+$17D*4]) ENDM MACRO _SelIText JSR ([$E00+$17E*4]) ENDM MACRO _IsDialogEvent JSR ([$E00+$17F*4]) ENDM MACRO _DialogSelect JSR ([$E00+$180*4]) ENDM MACRO _DrawDialog JSR ([$E00+$181*4]) ENDM MACRO _CloseDialog JSR ([$E00+$182*4]) ENDM MACRO _DisposDialog JSR ([$E00+$183*4]) ENDM MACRO _FindDItem JSR ([$E00+$184*4]) ENDM MACRO _Alert JSR ([$E00+$185*4]) ENDM MACRO _StopAlert JSR ([$E00+$186*4]) ENDM MACRO _NoteAlert JSR ([$E00+$187*4]) ENDM MACRO _CautionAlert JSR ([$E00+$188*4]) ENDM MACRO _CouldAlert JSR ([$E00+$189*4]) ENDM MACRO _FreeAlert JSR ([$E00+$18A*4]) ENDM MACRO _ParamText JSR ([$E00+$18B*4]) ENDM MACRO _ErrorSound JSR ([$E00+$18C*4]) ENDM MACRO _GetDItem JSR ([$E00+$18D*4]) ENDM MACRO _SetDItem JSR ([$E00+$18E*4]) ENDM MACRO _SetIText JSR ([$E00+$18F*4]) ENDM MACRO _GetIText JSR ([$E00+$190*4]) ENDM MACRO _ModalDialog JSR ([$E00+$191*4]) ENDM MACRO _DetachResource JSR ([$E00+$192*4]) ENDM MACRO _SetResPurge JSR ([$E00+$193*4]) ENDM MACRO _CurResFile JSR ([$E00+$194*4]) ENDM MACRO _InitResources JSR ([$E00+$195*4]) ENDM MACRO _RsrcZoneInit JSR ([$E00+$196*4]) ENDM MACRO _OpenResFile JSR ([$E00+$197*4]) ENDM MACRO _UseResFile JSR ([$E00+$198*4]) ENDM MACRO _UpdateResFile JSR ([$E00+$199*4]) ENDM MACRO _CloseResFile JSR ([$E00+$19A*4]) ENDM MACRO _SetResLoad JSR ([$E00+$19B*4]) ENDM MACRO _CountResources JSR ([$E00+$19C*4]) ENDM MACRO _GetIndResource JSR ([$E00+$19D*4]) ENDM MACRO _CountTypes JSR ([$E00+$19E*4]) ENDM MACRO _GetIndType JSR ([$E00+$19F*4]) ENDM MACRO _GetResource JSR ([$E00+$1A0*4]) ENDM MACRO _GetNamedResource JSR ([$E00+$1A1*4]) ENDM MACRO _LoadResource JSR ([$E00+$1A2*4]) ENDM MACRO _ReleaseResource JSR ([$E00+$1A3*4]) ENDM MACRO _HomeResFile JSR ([$E00+$1A4*4]) ENDM MACRO _SizeRsrc JSR ([$E00+$1A5*4]) ENDM MACRO _GetResAttrs JSR ([$E00+$1A6*4]) ENDM MACRO _SetResAttrs JSR ([$E00+$1A7*4]) ENDM MACRO _GetResInfo JSR ([$E00+$1A8*4]) ENDM MACRO _SetResInfo JSR ([$E00+$1A9*4]) ENDM MACRO _ChangedResource JSR ([$E00+$1AA*4]) ENDM MACRO _AddResource JSR ([$E00+$1AB*4]) ENDM MACRO _AddReference JSR ([$E00+$1AC*4]) ENDM MACRO _RmveResource JSR ([$E00+$1AD*4]) ENDM MACRO _RmveReference JSR ([$E00+$1AE*4]) ENDM MACRO _ResError JSR ([$E00+$1AF*4]) ENDM MACRO _WriteResource JSR ([$E00+$1B0*4]) ENDM MACRO _CreateResFile JSR ([$E00+$1B1*4]) ENDM MACRO _SystemEvent JSR ([$E00+$1B2*4]) ENDM MACRO _SystemClick JSR ([$E00+$1B3*4]) ENDM MACRO _SystemTask JSR ([$E00+$1B4*4]) ENDM MACRO _SystemMenu JSR ([$E00+$1B5*4]) ENDM MACRO _OpenDeskAcc JSR ([$E00+$1B6*4]) ENDM MACRO _CloseDeskAcc JSR ([$E00+$1B7*4]) ENDM MACRO _GetPattern JSR ([$E00+$1B8*4]) ENDM MACRO _GetCursor JSR ([$E00+$1B9*4]) ENDM MACRO _GetString JSR ([$E00+$1BA*4]) ENDM MACRO _GetIcon JSR ([$E00+$1BB*4]) ENDM MACRO _GetPicture JSR ([$E00+$1BC*4]) ENDM MACRO _GetNewWindow JSR ([$E00+$1BD*4]) ENDM MACRO _GetNewControl JSR ([$E00+$1BE*4]) ENDM MACRO _GetRMenu JSR ([$E00+$1BF*4]) ENDM MACRO _GetNewMBar JSR ([$E00+$1C0*4]) ENDM MACRO _UniqueID JSR ([$E00+$1C1*4]) ENDM MACRO _SysEdit JSR ([$E00+$1C2*4]) ENDM MACRO _OpenRFPerm JSR ([$E00+$1C4*4]) ENDM MACRO _RsrcMapEntry JSR ([$E00+$1C5*4]) ENDM MACRO _Secs2Date JSR ([$E00+$1C6*4]) ENDM MACRO _Date2Secs JSR ([$E00+$1C7*4]) ENDM MACRO _SysBeep JSR ([$E00+$1C8*4]) ENDM MACRO _SysError JSR ([$E00+$1C9*4]) ENDM MACRO _TEGetText JSR ([$E00+$1CB*4]) ENDM MACRO _TEInit JSR ([$E00+$1CC*4]) ENDM MACRO _TEDispose JSR ([$E00+$1CD*4]) ENDM MACRO _TextBox JSR ([$E00+$1CE*4]) ENDM MACRO _TESetText JSR ([$E00+$1CF*4]) ENDM MACRO _TECalText JSR ([$E00+$1D0*4]) ENDM MACRO _TESetSelect JSR ([$E00+$1D1*4]) ENDM MACRO _TENew JSR ([$E00+$1D2*4]) ENDM MACRO _TEUpdate JSR ([$E00+$1D3*4]) ENDM MACRO _TEClick JSR ([$E00+$1D4*4]) ENDM MACRO _TECopy JSR ([$E00+$1D5*4]) ENDM MACRO _TECut JSR ([$E00+$1D6*4]) ENDM MACRO _TEDelete JSR ([$E00+$1D7*4]) ENDM MACRO _TEActivate JSR ([$E00+$1D8*4]) ENDM MACRO _TEDeactivate JSR ([$E00+$1D9*4]) ENDM MACRO _TEIdle JSR ([$E00+$1DA*4]) ENDM MACRO _TEPaste JSR ([$E00+$1DB*4]) ENDM MACRO _TEKey JSR ([$E00+$1DC*4]) ENDM MACRO _TEScroll JSR ([$E00+$1DD*4]) ENDM MACRO _TEInsert JSR ([$E00+$1DE*4]) ENDM MACRO _TESetJust JSR ([$E00+$1DF*4]) ENDM MACRO _Munger JSR ([$E00+$1E0*4]) ENDM MACRO _HandToHand JSR ([$E00+$1E1*4]) ENDM MACRO _PtrToXHand JSR ([$E00+$1E2*4]) ENDM MACRO _PtrToHand JSR ([$E00+$1E3*4]) ENDM MACRO _HandAndHand JSR ([$E00+$1E4*4]) ENDM MACRO _InitPack JSR ([$E00+$1E5*4]) ENDM MACRO _InitAllPacks JSR ([$E00+$1E6*4]) ENDM MACRO _Pack0 JSR ([$E00+$1E7*4]) ENDM MACRO _Pack1 JSR ([$E00+$1E8*4]) ENDM MACRO _Pack2 JSR ([$E00+$1E9*4]) ENDM MACRO _Pack3 JSR ([$E00+$1EA*4]) ENDM MACRO _FP68K JSR ([$E00+$1EB*4]) ENDM MACRO _Pack4 JSR ([$E00+$1EB*4]) ENDM MACRO _Elems68K JSR ([$E00+$1EC*4]) ENDM MACRO _Pack5 JSR ([$E00+$1EC*4]) ENDM MACRO _Pack6 JSR ([$E00+$1ED*4]) ENDM MACRO _DECSTR68K JSR ([$E00+$1EE*4]) ENDM MACRO _Pack7 JSR ([$E00+$1EE*4]) ENDM MACRO _PtrAndHand JSR ([$E00+$1EF*4]) ENDM MACRO _LoadSeg JSR ([$E00+$1F0*4]) ENDM MACRO _UnLoadSeg JSR ([$E00+$1F1*4]) ENDM MACRO _Launch JSR ([$E00+$1F2*4]) ENDM MACRO _Chain JSR ([$E00+$1F3*4]) ENDM MACRO _ExitToShell JSR ([$E00+$1F4*4]) ENDM MACRO _GetAppParms JSR ([$E00+$1F5*4]) ENDM MACRO _GetResFileAttrs JSR ([$E00+$1F6*4]) ENDM MACRO _SetResFileAttrs JSR ([$E00+$1F7*4]) ENDM MACRO _MethodDispatch JSR ([$E00+$1F8*4]) ENDM MACRO _InfoScrap JSR ([$E00+$1F9*4]) ENDM MACRO _UnlodeScrap JSR ([$E00+$1FA*4]) ENDM MACRO _LodeScrap JSR ([$E00+$1FB*4]) ENDM MACRO _ZeroScrap JSR ([$E00+$1FC*4]) ENDM MACRO _GetScrap JSR ([$E00+$1FD*4]) ENDM MACRO _PutScrap JSR ([$E00+$1FE*4]) ENDM MACRO ; <12Mar89 BAL> _InitPalettes JSR ([$E00+$290*4]) ENDM MACRO ; <02Jun87 DAF> _NewPalette JSR ([$E00+$291*4]) ENDM MACRO ; <02Jun87 DAF> _GetNewPalette JSR ([$E00+$292*4]) ENDM MACRO ; <12Mar89 BAL> _DisposePalette JSR ([$E00+$293*4]) ENDM MACRO ; <02Jun87 DAF> _ActivatePalette JSR ([$E00+$294*4]) ENDM MACRO ; <12Aug87 rwh> _SetPalette JSR ([$E00+$295*4]) ENDM MACRO ; <12Aug87 rwh> _GetPalette JSR ([$E00+$296*4]) ENDM MACRO ; <10Jun87 EHB> _PMForeColor JSR ([$E00+$297*4]) ENDM MACRO ; <10Jun87 EHB> _PMBackColor JSR ([$E00+$298*4]) ENDM MACRO ; <10Jun87 EHB> _SetEntryUsage JSR ([$E00+$29E*4]) ENDM ; end of Tool Box Traps ; System Traps ;_______________________________________________________________________ ; ; Core routine system TRAPS ; ;_______________________________________________________________________ ; First we have the I/O core routines. These are also used by ; the file system. _Open OPWORD $A000+00 _Close OPWORD $A000+01 _Read OPWORD $A000+02 _Write OPWORD $A000+03 _Control OPWORD $A000+04 _Status OPWORD $A000+05 _KillIO OPWORD $A000+06 ; other file system calls go here _GetVolInfo OPWORD $A000+07 _Create OPWORD $A000+08 _Delete OPWORD $A000+09 _OpenRF OPWORD $A000+10 _ReName OPWORD $A000+11 _GetFileInfo OPWORD $A000+12 _SetFileInfo OPWORD $A000+13 _UnMountVol OPWORD $A000+14 _MountVol OPWORD $A000+15 _Allocate OPWORD $A000+16 _GetEOF OPWORD $A000+17 _SetEOF OPWORD $A000+18 _FlushVol OPWORD $A000+19 _GetVol OPWORD $A000+20 _SetVol OPWORD $A000+21 _FInitQueue OPWORD $A000+22 _Eject OPWORD $A000+23 _GetFPos OPWORD $A000+24 ;These are the HFS additions MACRO _TFSCORE IF &SYSLIST[1] <> '' THEN LEA &SYSLIST[1],A0 ENDIF IF &SYSLIST[3] = '' THEN DC.W $A200+&SYSLIST[2] ENDIF IF &SYSLIST[3] = 'REGS' THEN DC.W $A300+&SYSLIST[2] ENDIF IF &SYSLIST[3] = 'ASYNC' THEN DC.W $A600+&SYSLIST[2] ENDIF IF &SYSLIST[3] = 'SYS' THEN DC.W $A600+&SYSLIST[2] ENDIF IF &SYSLIST[3] = 'IMMED' THEN DC.W $A200+&SYSLIST[2] ENDIF ENDM MACRO _FSControl MOVEQ #0,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _OpenWD MOVEQ #1,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _CloseWD MOVEQ #2,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM _HSetVol OPWORD $A200+21 _HGetVol OPWORD $A200+20 MACRO _CatMove MOVEQ #5,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _DirCreate MOVEQ #6,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _GetWDInfo MOVEQ #7,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _GetFCBInfo MOVEQ #8,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _GetCatInfo MOVEQ #9,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _SetCatInfo MOVEQ #10,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _SetVolInfo MOVEQ #11,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _SetPMSP MOVEQ #12,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _LockRng MOVEQ #16,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM MACRO _UnlockRng MOVEQ #17,D0 _TFSCore &SYSLIST[1],96,&SYSLIST[2] ENDM _HOpen OPWORD $A200+0 _HGetVInfo OPWORD $A200+7 _HCreate OPWORD $A200+8 _HDelete OPWORD $A200+9 _HOpenRF OPWORD $A200+10 _HRename OPWORD $A200+11 _HGetFileInfo OPWORD $A200+12 _HSetFileInfo OPWORD $A200+13 _AllocContig OPWORD $A200+16 _SetPEOF OPWORD $A200+18 _HSetFLock OPWORD $A200+65 _HRstFLock OPWORD $A200+66 ; end of HFS additions ; Here are the memory manager core routines _InitZone OPWORD $A000+25 _GetZone OPWORD $A100+26 _SetZone OPWORD $A000+27 _FreeMem OPWORD $A000+28 _MaxMem OPWORD $A100+29 _NewPtr OPWORD $A100+30 _DisposPtr OPWORD $A000+31 _SetPtrSize OPWORD $A000+32 _GetPtrSize OPWORD $A000+33 _NewHandle OPWORD $A100+34 _DisposHandle OPWORD $A000+35 _SetHandleSize OPWORD $A000+36 _GetHandleSize OPWORD $A000+37 _HandleZone OPWORD $A100+38 _ReAllocHandle OPWORD $A000+39 _RecoverHandle OPWORD $A100+40 _HLock OPWORD $A000+41 _HUnLock OPWORD $A000+42 _EmptyHandle OPWORD $A000+43 _InitApplZone OPWORD $A000+44 _SetApplLimit OPWORD $A000+45 _BlockMove OPWORD $A000+46 ; Here are the event manager routines _PostEvent OPWORD $A000+47 _PPostEvent OPWORD $A100+47 ;preserves A0 on return _OSEventAvail OPWORD $A000+48 _GetOSEvent OPWORD $A000+49 _FlushEvents OPWORD $A000+50 ; Here are the utility core routines _VInstall OPWORD $A000+51 _VRemove OPWORD $A000+52 _OffLine OPWORD $A000+53 _MoreMasters OPWORD $A000+54 _WriteParam OPWORD $A000+56 _ReadDateTime OPWORD $A000+57 _SetDateTime OPWORD $A000+58 _Delay OPWORD $A000+59 _CmpString OPWORD $A000+60 _DrvrInstall OPWORD $A000+61 _DrvrRemove OPWORD $A000+62 _InitUtil OPWORD $A000+63 _ResrvMem OPWORD $A000+64 _SetFilLock OPWORD $A000+65 _RstFilLock OPWORD $A000+66 _SetFilType OPWORD $A000+67 _SetFPos OPWORD $A000+68 _FlushFile OPWORD $A000+69 _GetTrapAddress OPWORD $A100+70 _SetTrapAddress OPWORD $A000+71 _PtrZone OPWORD $A100+72 _HPurge OPWORD $A000+73 _HNoPurge OPWORD $A000+74 _SetGrowZone OPWORD $A000+75 _CompactMem OPWORD $A000+76 _PurgeMem OPWORD $A000+77 _AddDrive OPWORD $A000+78 _RDrvrInstall OPWORD $A000+79 _UprString OPWORD $A000+84 _SetApplBase OPWORD $A000+87 ;new 128K ROM additions _RelString OPWORD $A050 _ReadXPRam OPWORD $A051 _WriteXPRam OPWORD $A052 _InsTime OPWORD $A058 _RmvTime OPWORD $A059 _PrimeTime OPWORD $A05A _MaxBlock OPWORD $A061 _PurgeSpace OPWORD $A162 _MaxApplZone OPWORD $A063 _MoveHHi OPWORD $A064 _StackSpace OPWORD $A065 _NewEmptyHandle OPWORD $A166 _HSetRBit OPWORD $A067 _HClrRBit OPWORD $A068 _HGetState OPWORD $A069 _HSetState OPWORD $A06A _InitFS OPWORD $A06C _InitEvents OPWORD $A06D ;end of System Traps _SlotManager OPWORD $A06E ; new Traps IF Supports24Bit THEN ; we don't need this call if we don't support 24 bit mode _StripAddress OPWORD $A055 ; new memory manager trap ELSE Macro _StripAddress EndM ENDIF _SetAppBase OPWORD $A000+87 ; IF Supports24Bit THEN ; we don't need this call if we don't support 24 bit mode _SwapMMUMode OPWORD $A05D ; ELSE Macro _SwapMMUMode EndM ENDIF ;_SetMMUmode OPWORD $A05E ;deleted ;_RestoreMMUmode OPWORD $A05F _SlotVInstall OPWORD $A06F ; _SlotVRemove OPWORD $A070 ; _AttachVBL OPWORD $A071 ; _DoVBLTask OPWORD $A072 ; _CountADBs OPWORD $A077 _GetIndADB OPWORD $A078 _GetADBInfo OPWORD $A079 _SetADBInfo OPWORD $A07A _ADBReInit OPWORD $A07B ; _ADBOp OPWORD $A07C _GetDefaultStartup OPWORD $A07D ; _SetDefaultStartup OPWORD $A07E ; _InternalWait OPWORD $A07F ; _rGetResource OPWORD $A80C ; for NuMac Only _GetVideoDefault OPWORD $A080 ; for NuMac Only _SetVideoDefault OPWORD $A081 ; for NuMac Only _DTInstall OPWORD $A082 ; for NuMac Only _SetOSDefault OPWORD $A083 ; for NuMac Only _GetOSDefault OPWORD $A084 ; for NuMac Only MACRO _InitProcMenu JSR ([$E00+$08*4]) ENDM MACRO _KeyTrans JSR ([$E00+$1C3*4]) ENDM ; Color Quickdraw MACRO _OpenCport JSR ([$E00+$200*4]) ENDM MACRO _InitCport JSR ([$E00+$201*4]) ENDM MACRO _CloseCport JSR ([$E00+$202*4]) ENDM MACRO _NewPixMap JSR ([$E00+$203*4]) ENDM MACRO _DisposPixMap JSR ([$E00+$204*4]) ENDM MACRO _CopyPixMap JSR ([$E00+$205*4]) ENDM MACRO _SetCPortPix JSR ([$E00+$206*4]) ENDM MACRO _NewPixPat JSR ([$E00+$207*4]) ENDM MACRO _DisposPixPat JSR ([$E00+$208*4]) ENDM MACRO _CopyPixPat JSR ([$E00+$209*4]) ENDM MACRO _PenPixPat JSR ([$E00+$20A*4]) ENDM MACRO _BackPixPat JSR ([$E00+$20B*4]) ENDM MACRO _GetPixPat JSR ([$E00+$20C*4]) ENDM MACRO _MakeRGBPat JSR ([$E00+$20D*4]) ENDM MACRO _FillCRect JSR ([$E00+$20E*4]) ENDM MACRO _FillCOval JSR ([$E00+$20F*4]) ENDM MACRO _FillCRoundRect JSR ([$E00+$210*4]) ENDM MACRO _FillCArc JSR ([$E00+$211*4]) ENDM MACRO _FillCRgn JSR ([$E00+$212*4]) ENDM MACRO _FillCPoly JSR ([$E00+$213*4]) ENDM MACRO _RGBForeColor JSR ([$E00+$214*4]) ENDM MACRO _RGBBackColor JSR ([$E00+$215*4]) ENDM MACRO _SetCPixel JSR ([$E00+$216*4]) ENDM MACRO _GetCPixel JSR ([$E00+$217*4]) ENDM MACRO _GetCTable JSR ([$E00+$218*4]) ; ENDM MACRO _GetForeColor JSR ([$E00+$219*4]) ; ENDM MACRO _GetBackColor JSR ([$E00+$21A*4]) ; ENDM MACRO _GetCCursor JSR ([$E00+$21B*4]) ; ENDM MACRO _SetCCursor JSR ([$E00+$21C*4]) ; ENDM MACRO _AllocCursor JSR ([$E00+$21D*4]) ; ENDM MACRO _GetCIcon JSR ([$E00+$21E*4]) ; C313/31oct86> ENDM MACRO _PlotCIcon JSR ([$E00+$21F*4]) ; C313/31oct86> ENDM MACRO _OpenCPicture JSR ([$E00+$220*4]) ; C313/31oct86> ENDM MACRO _OpColor JSR ([$E00+$221*4]) ; ENDM MACRO _HiliteColor JSR ([$E00+$222*4]) ; ENDM MACRO _CharExtra JSR ([$E00+$223*4]) ; ENDM MACRO _DisposCTable JSR ([$E00+$224*4]) ; ENDM MACRO _DisposCIcon JSR ([$E00+$225*4]) ; ENDM MACRO _DisposCCursor JSR ([$E00+$226*4]) ; ENDM ; Routines for video devices MACRO _GetMaxDevice JSR ([$E00+$227*4]) ; ENDM MACRO _GetCTSeed JSR ([$E00+$228*4]) ; ENDM MACRO _GetDeviceList JSR ([$E00+$229*4]) ; ENDM MACRO _GetMainDevice JSR ([$E00+$22A*4]) ; ENDM MACRO _GetNextDevice JSR ([$E00+$22B*4]) ; ENDM MACRO _TestDeviceAttribute JSR ([$E00+$22C*4]) ; ENDM MACRO _SetDeviceAttribute JSR ([$E00+$22D*4]) ; ENDM MACRO _InitGDevice JSR ([$E00+$22E*4]) ; ENDM MACRO _NewGDevice JSR ([$E00+$22F*4]) ; ENDM MACRO _DisposGDevice JSR ([$E00+$230*4]) ; ENDM MACRO _SetGDevice JSR ([$E00+$231*4]) ; ENDM MACRO _GetGDevice JSR ([$E00+$232*4]) ; ENDM Macro _DeviceLoop jsr ([$E00+$3CA*4]) EndM ; Color Manager MACRO _Color2Index JSR ([$E00+$233*4]) ENDM MACRO _Index2Color JSR ([$E00+$234*4]) ENDM MACRO _InvertColor JSR ([$E00+$235*4]) ENDM MACRO _RealColor JSR ([$E00+$236*4]) ENDM MACRO _GetSubTable JSR ([$E00+$237*4]) ENDM MACRO _UpdatePixMap JSR ([$E00+$238*4]) ENDM MACRO _MakeITable JSR ([$E00+$239*4]) ENDM MACRO _AddSearch JSR ([$E00+$23A*4]) ENDM MACRO _AddComp JSR ([$E00+$23B*4]) ENDM MACRO _SetClientID JSR ([$E00+$23C*4]) ENDM MACRO _ProtectEntry JSR ([$E00+$23D*4]) ENDM MACRO _ReserveEntry JSR ([$E00+$23E*4]) ENDM MACRO _SetEntries JSR ([$E00+$23F*4]) ENDM MACRO _QDError JSR ([$E00+$240*4]) ; DAF ENDM MACRO _SaveEntries JSR ([$E00+$249*4]) ; DAF ENDM MACRO _RestoreEntries JSR ([$E00+$24A*4]) ; DAF ENDM ; Color ToolBox MACRO _SetWinColor JSR ([$E00+$241*4]) ENDM MACRO _GetAuxWin JSR ([$E00+$242*4]) ENDM MACRO _SetCtlColor JSR ([$E00+$243*4]) ENDM MACRO _GetAuxCtl JSR ([$E00+$244*4]) ENDM MACRO _NewCWindow JSR ([$E00+$245*4]) ENDM MACRO _GetNewCWindow JSR ([$E00+$246*4]) ; EHB ENDM MACRO _SetDeskCPat JSR ([$E00+$247*4]) ; DAF ENDM MACRO _DelSearch JSR ([$E00+$24C*4]) ; DAF ENDM MACRO _GetCWMgrPort JSR ([$E00+$248*4]) ; DAF ENDM MACRO _GetCVariant JSR ([$E00+$09*4]) ; DAF ENDM MACRO _GetWVariant JSR ([$E00+$0A*4]) ; DAF ENDM ; ; color menus ; MACRO _DelMCEntries JSR ([$E00+$260*4]) ENDM MACRO _GetMCInfo JSR ([$E00+$261*4]) ENDM MACRO _SetMCInfo JSR ([$E00+$262*4]) ENDM MACRO _DispMCInfo JSR ([$E00+$263*4]) ENDM MACRO _GetMCEntry JSR ([$E00+$264*4]) ENDM MACRO _SetMCEntries JSR ([$E00+$265*4]) ENDM ; ; other menu stuff ; MACRO _MenuChoice JSR ([$E00+$266*4]) ENDM ; ; background notification mananger ; MACRO _InitBNM JSR ([$E00+$270*4]) ENDM MACRO _BNMRegister JSR ([$E00+$271*4]) ENDM MACRO _BNMUnregister JSR ([$E00+$272*4]) ENDM MACRO _BNMNotify JSR ([$E00+$273*4]) ENDM MACRO _BNMRemove JSR ([$E00+$274*4]) ENDM MACRO _BNMTask JSR ([$E00+$275*4]) ENDM MACRO _BNMChgDAMenu JSR ([$E00+$276*4]) ENDM MACRO _BNMDialog JSR ([$E00+$277*4]) ENDM ; TextEdit MBK MACRO _TEGetOffset JSR ([$E00+$3C*4]) ENDM MACRO _TEDispatch JSR ([$E00+$3D*4]) ENDM MACRO _TEStylNew JSR ([$E00+$3E*4]) ENDM ; Dialog Manager MACRO _NewCDialog JSR ([$E00+$24B*4]) ENDM ;----------------------------------------------------------------------------- <1.3> ;----------------------------------------------------------------------------- <1.3> ; ; This is the start of what once was Multifinder.a. It was moved here since ; cqd was the only thing using it and this seemed the most logical place to put ; these particular equates. ; _OSDispatch OPWORD $A88F ;MultiFinder trap ;_WaitNextEvent OPWORD $A860 ;WaitNextEvent trap. ; WaitNextEvent was released in MPW 2.0 interfaces. It is ; commented out below to avoid a duplicate declaration. ; Uncomment only if working with earlier interfaces. */ mfMaxMemSel EQU 21 mfFreeMemSel EQU 24 mfTempNewHandleSel EQU 29 mfTempHLockSel EQU 30 mfTempHUnLockSel EQU 31 mfTempDisposHandleSel EQU 32 ; Macros MACRO _MFMaxMem MOVE.W #mfMaxMemSel,-(SP) _OSDispatch ENDM MACRO _MFFreeMem MOVE.W #mfFreeMemSel,-(SP) _OSDispatch ENDM MACRO _MFTempNewHandle MOVE.W #mfTempNewHandleSel,-(SP) _OSDispatch ENDM MACRO _MFTempHLock MOVE.W #mfTempHLockSel,-(SP) _OSDispatch ENDM MACRO _MFTempHUnLock MOVE.W #mfTempHUnLockSel,-(SP) _OSDispatch ENDM MACRO _MFTempDisposHandle MOVE.W #mfTempDisposHandleSel,-(SP) _OSDispatch ENDM _Gestalt OPWORD $A1AD _NewGestalt OPWORD $A3AD ; <1.7> _ReplaceGestalt OPWORD $A5AD ; <1.7> _Debugger OPWORD $A9FF _LayerDispatch OPWORD $A829 MACRO DoDispatch &TrapRef,&selector,¶mWords lcla &selectorNum lcla ¶mCount ; Check the selector for validity &selectorNum: seta &eval(&selector) if (&selectorNum > 127) OR (&selectorNum < -128) then aerror &CONCAT('Selector number for ', &TrapRef, ' “',&selector, '” is outside the range -128 to 127') exitm endif if (¶mWords = '') then ¶mCount: seta 0 ; Procedure call if ¶mWords was not specified else ¶mCount: seta &eval(¶mWords) endif if (¶mCount < 0) OR (¶mCount > 255) then aerror &CONCAT('Parameter words for ', &TrapRef, ' “',¶mWords, '” is outside the range 0-255') exitm endif if (¶mCount = 0) then moveq #&selectorNum, D0 ; Move the selector into D0 quickly else ¶mCount: seta (¶mCount << 8) + (&selectorNum AND $ff) move.w #¶mCount, D0 ; Move the selector into D0 endif ; now do the trap if &type(&TrapRef)≠'OPWORD' then dc.w &TrapRef exitm endif &TrapRef ENDM