Subversion Repositories Kolibri OS

Rev

Rev 1 | Rev 425 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 ha 1
;------------------------------------------------------------------
2
; use "iglobal" for inserting initialized global data definitions.
3
;------------------------------------------------------------------
4
macro iglobal {
5
  IGlobals equ IGlobals,
6
  macro __IGlobalBlock { }
7
 
8
;-------------------------------------------------------------
9
; use 'uglobal' for inserting uninitialized global definitions.
10
; even when you define some data values, these variables
11
; will be stored as uninitialized data.
12
;-------------------------------------------------------------
13
macro uglobal {
14
  UGlobals equ UGlobals,
15
  macro __UGlobalBlock { }
16
 
17
endg fix }      ; Use endg for ending iglobal and uglobal blocks.
18
 
19
macro IncludeIGlobals{
20
  macro IGlobals dummy,[n] \{ __IGlobalBlock
21
     purge __IGlobalBlock  \}
22
  match I, IGlobals \{ I \} }
23
 
24
 
25
macro IncludeUGlobals{
26
  macro UGlobals dummy,[n] \{
27
    \common
28
      \local begin, size
29
      begin = $
30
      virtual at $
31
    \forward
32
      __UGlobalBlock
33
      purge __UGlobalBlock
34
    \common
35
      size = $ - begin
36
    end virtual
37
    rb size
38
  \}
39
  match U, UGlobals \{ U \} }
40
 
41
macro IncludeAllGlobals {
42
  IncludeIGlobals
43
  IncludeUGlobals
44
}
45
 
46
iglobal
47
endg
48
 
49
uglobal
50
endg