supermario/base/SuperMarioProj.1994-02-09/Libs/InterfaceSrcs/ListTraps.a
2019-06-29 23:17:50 +08:00

96 lines
2.5 KiB
Plaintext

;
; File: ListTraps.a
;
; Contains: implementation for the list manager interface
;
; Copyright: © 1984-1992 by Apple Computer, Inc. All rights reserved.
;
; Change History (most recent first):
;
; <SM2> 10/28/92 SWC Changed INCLUDEs to a LOAD of StandardEqu.d.
;
LOAD 'StandardEqu.d'
; NOTE: The routine selectors for the original version of the list manager were 0,4,8...
; Although I recoded the entry points at intervals of two to save code, I retained the
; old routine selectors for compatibility. Hence the doubling of the offset into the
; BSR.S JumpOff table (and the corresponding divide by 2 when the list manager decodes
; the selectors).
ListStuff PROC EXPORT
EXPORT LActivate
EXPORT LAddColumn
EXPORT LAddRow
EXPORT LAddToCell
EXPORT LAutoScroll
EXPORT LCellSize
EXPORT LClick
EXPORT LClrCell
EXPORT LDelColumn
EXPORT LDelRow
EXPORT LDispose
EXPORT LDoDraw
EXPORT LDraw
EXPORT LFind
EXPORT LGetCell
EXPORT LGetSelect
EXPORT LLastClick
EXPORT LNew
EXPORT LNextCell
EXPORT LRect
EXPORT LScroll
EXPORT LSearch
EXPORT LSetCell
EXPORT LSetSelect
EXPORT LSize
EXPORT LUpdate
LActivate BSR.S JumpOff
LAddColumn BSR.S JumpOff
LAddRow BSR.S JumpOff
LAddToCell BSR.S JumpOff
LAutoScroll BSR.S JumpOff
LCellSize BSR.S JumpOff
LClick BSR.S JumpOff
LClrCell BSR.S JumpOff
LDelColumn BSR.S JumpOff
LDelRow BSR.S JumpOff
LDispose BSR.S JumpOff
LDoDraw BSR.S JumpOff
LDraw BSR.S JumpOff
LFind BSR.S JumpOff
LGetCell BSR.S JumpOff
LGetSelect BSR.S JumpOff
LLastClick BSR.S JumpOff
LNew BSR.S JumpOff
LNextCell BSR.S JumpOff
LRect BSR.S JumpOff
LScroll BSR.S JumpOff
LSearch BSR.S JumpOff
LSetCell BSR.S JumpOff
LSetSelect BSR.S JumpOff
LSize BSR.S JumpOff
LUpdate BSR.S JumpOff
NOP ; this must be here so that last BSR is not folded
JumpOff
LEA LActivate+2,A1
MOVE.L (SP)+,D0
SUB.L A1,D0
ADD.L D0,D0 ; double it to get 0,4,8,12
MOVE.L (SP)+,A0 ; get user's rts
MOVE.W D0,-(SP) ; routine selector
MOVE.L A0,-(SP) ; push rts back on
_Pack0 autoPop ; _Pack0 with autoPop
; never gets here
END