55 lines
880 B
OpenEdge ABL
55 lines
880 B
OpenEdge ABL
|
IFND EXEC_INITIALIZERS_I
|
||
|
EXEC_INITIALIZERS_I SET 1
|
||
|
**
|
||
|
** $Filename: exec/initializers.i $
|
||
|
** $Release: 1.3 $
|
||
|
**
|
||
|
**
|
||
|
**
|
||
|
** (C) Copyright 1985,1986,1987,1988 Commodore-Amiga, Inc.
|
||
|
** All Rights Reserved
|
||
|
**
|
||
|
|
||
|
INITBYTE MACRO * &offset,&value
|
||
|
DC.B $e0
|
||
|
DC.B 0
|
||
|
DC.W \1
|
||
|
DC.B \2
|
||
|
DC.B 0
|
||
|
ENDM
|
||
|
|
||
|
INITWORD MACRO * &offset,&value
|
||
|
DC.B $d0
|
||
|
DC.B 0
|
||
|
DC.W \1
|
||
|
DC.W \2
|
||
|
ENDM
|
||
|
|
||
|
INITLONG MACRO * &offset,&value
|
||
|
DC.B $c0
|
||
|
DC.B 0
|
||
|
DC.W \1
|
||
|
DC.L \2
|
||
|
ENDM
|
||
|
|
||
|
INITSTRUCT MACRO * &size,&offset,&value,&count
|
||
|
DS.W 0
|
||
|
IFC '\4',''
|
||
|
COUNT\@ SET 0
|
||
|
ENDC
|
||
|
IFNC '\4',''
|
||
|
COUNT\@ SET \4
|
||
|
ENDC
|
||
|
CMD\@ SET (((\1)<<4)!COUNT\@)
|
||
|
IFLE (\2)-255
|
||
|
DC.B (CMD\@)!$80
|
||
|
DC.B \2
|
||
|
MEXIT
|
||
|
ENDC
|
||
|
DC.B CMD\@!$0C0
|
||
|
DC.B (((\2)>>16)&$0FF)
|
||
|
DC.W ((\2)&$0FFFF)
|
||
|
ENDM
|
||
|
|
||
|
ENDC ; EXEC_INITIALIZERS_I
|