Annotation of OpenXM_contrib/gnuplot/header.mac, Revision 1.1.1.1
1.1 maekawa 1: if1
2: LARGE equ 1 ; define your memory model here
3:
4: ifdef SMALL
5: ; default, so do nothing
6: else
7:
8: ifdef MEDIUM
9: LARGE_CODE equ 1
10: else
11:
12: ifdef COMPACT
13: LARGE_DATA equ 1
14: else
15:
16: ifdef LARGE
17: LARGE_DATA equ 1
18: LARGE_CODE equ 1
19:
20: else
21: %out No memory model defined--assuming SMALL
22:
23: endif ; LARGE
24: endif ; COMPACT
25: endif ; MEDIUM
26: endif ; SMALL
27:
28:
29: beginproc macro procname
30:
31: ifdef LARGE_CODE
32: procname proc far
33: else
34: procname proc near
35: endif ; LARGE_CODE
36:
37: endm ; beginproc
38:
39:
40: endif ; if1
41:
42:
43: _TEXT SEGMENT BYTE PUBLIC 'CODE'
44: _TEXT ENDS
45: _DATA SEGMENT WORD PUBLIC 'DATA'
46: _DATA ENDS
47: CONST SEGMENT WORD PUBLIC 'CONST'
48: CONST ENDS
49: _BSS SEGMENT WORD PUBLIC 'BSS'
50: _BSS ENDS
51:
52: DGROUP GROUP CONST, _BSS, _DATA
53: assume cs:_text, ds:dgroup, ss:dgroup, es:dgroup
54:
55: ; define X as the offset of first argument on stack frame
56:
57: ifdef LARGE_CODE
58: X equ 6 ; return offset and segment + old BP
59: else
60: X equ 4 ; return offset + old BP
61: endif ; LARGE_CODE
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>