mac-rom/Internal/Asm/IntlUtilsPriv.a

157 lines
4.2 KiB
Plaintext
Raw Normal View History

;
; File: IntlUtilsPriv.a
;
; Contains: Private equates and macros for International Utilities (PACK 6).
;
; Written by: Peter Edberg
;
; Copyright: <09> 1990-1992 by Apple Computer, Inc., all rights reserved.
;
; Change History (most recent first):
;
; <10> 2/18/92 ngk Add glue to fix bug in 7.0 version of TypeSelectNewKey. It
; requires high word of D0 to be zero to work.
; <9> 10/9/91 JSM Remove SysVers conditionals to fix ROM build.
; <8> 8/22/91 JSM Clean up header.
; <7> 1/30/91 gbm sab, #38: Change the <20>already including this file<6C> variable to
; all uppercase (for security reasons)
; <6> 1/2/91 PKE (bbm) Add macro for private IUClearCacheSys routine.
; <5> 9/10/90 PKE Add macro for private IUGetScriptItl routine.
; <4> 7/2/90 PKE Added selector and macro for private IUTextOrderSys routine.
; <3> 5/2/90 ngk add type select routines
; <2> 4/27/90 gbm prevent redefinition warnings by avoiding multiple inclusions
; <1> 3/19/90 PKE New today: selectors and macros for IUMagWString, IUMagWPString.
;___________________________________________________________________________________________________
IF &TYPE('__INCLUDINGINTLUTILSPRIV__') = 'UNDEFINED' THEN
__INCLUDINGINTLUTILSPRIV__ SET 1
; Routine selectors
iuMagWString EQU 18 ; $12 <1>
iuMagWPString EQU 38 ; $26 <1>
iuTypeSelectClear EQU 40 ; $28 <3>
iuTypeSelectNewKey EQU 42 ; $2A <3>
iuTypeSelectFindItem EQU 44 ; $2C <3>
iuTypeSelectCompare EQU 46 ; $2E <3>
iuTextOrderSys EQU 48 ; $30 <4>
iuGetScriptItl EQU 50 ; $32 <5>
iuClearCacheSys EQU 52 ; $34 <6>
; Type select records and constants ; <3>
tsPreviousSelectMode EQU -1 ; <3>
tsNormalSelectMode EQU 0 ; <3>
tsNextSelectMode EQU 1 ; <3>
TypeSelectRecord RECORD 0 ; <3>
tsrLastKeyTime DS.L 1 ; <3>
tsrScript DS.W 1 ; <3>
tsrKeyStrokes DS.B 64 ; <3>
ENDR ; <3>
;QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ
; Macros for each routine
;QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ
;
; FUNCTION IUMagWString(aPtr, bPtr: Ptr; aLen, bLen: Integer): Integer;
;
MACRO
_IUMagWString ; <1>
move.w #iuMagWString,-(sp)
_Pack6
ENDM
;
; FUNCTION IUMagWPString(aPtr, bPtr: Ptr; aLen, bLen: Integer; intlParam: Handle): Integer;
;
MACRO
_IUMagWPString ; <1>
move.w #iuMagWPString,-(sp)
_Pack6
ENDM
;
; PROCEDURE TypeSelectClear(VAR tsr: TypeSelectRecord);
;
MACRO
_TypeSelectClear ; <3>
move.w #iuTypeSelectClear,-(sp)
_Pack6
ENDM
;
; FUNCTION TypeSelectNewKey(theEvent: EventRecord;
; VAR tsr: TypeSelectRecord): BOOLEAN;
MACRO
_TypeSelectNewKey ; <3>
moveq #0,d0 ; <10>
move.w #iuTypeSelectNewKey,-(sp)
_Pack6
ENDM
;
; FUNCTION TypeSelectFindItem( tsr: TypeSelectRecord;
; listSize: INTEGER;
; selectMode: TSCode;
; getStringProc: IndexToStringProcPtr;
; yourDataPtr: Ptr): INTEGER;
;
; IndexToStringProcPtr = ^FUNCTION(item: INTEGER;
; VAR itemsScript: ScriptCode;
; VAR itemsStringPtr: StringPtr;
; yourDataPtr: Ptr): BOOLEAN;
;
MACRO
_TypeSelectFindItem ; <3>
move.w #iuTypeSelectFindItem,-(sp)
_Pack6
ENDM
;
; FUNCTION TypeSelectCompare(tsr: TypeSelectRecord;
; testStringScript: ScriptCode;
; testStringPtr: StringPtr): INTEGER;
;
MACRO
_TypeSelectCompare ; <3>
move.w #iuTypeSelectCompare,-(sp)
_Pack6
ENDM
;
; FUNCTION IUTextOrderSys(aPtr, bPtr: Ptr; aLen, bLen: Integer;
; aScript, bScript: ScriptCode; aLang, bLang: LangCode): Integer;
;
MACRO
_IUTextOrderSys ; <4>
move.w #iuTextOrderSys,-(sp)
_Pack6
ENDM
;
; FUNCTION IUGetScriptItl(theID: INTEGER; script: ScriptCode; sysFlag: INTEGER): Handle;
;
MACRO
_IUGetScriptItl ; <5>
move.w #iuGetScriptItl,-(sp)
_Pack6
ENDM
;
; PROCEDURE IUClearCacheSys;
;
MACRO
_IUClearCacheSys ; <6>
move.w #iuClearCacheSys,-(sp)
_Pack6
ENDM
ENDIF ; ...already included