|
|
1.1 ! root 1: ; ! 2: ; MODEL88.EQU 5.20A June 8, 1995 ! 3: ; ! 4: ; DESCRIPTION ! 5: ; ! 6: ; This is the header file used by assembly files to determine ! 7: ; model dependent information. Previously, Greenleaf libraries ! 8: ; used the file model.h, which had macros for _LCODE, _LDATA, etc. ! 9: ; This new system allows the user to set the model on the command ! 10: ; line by defining the GF_MODEL constant. It also prints out a ! 11: ; helpful (I hope) error message if GF_MODEL is not defined. ! 12: ; ! 13: ; AUTHOR ! 14: ; SM ! 15: ; Copyright (C) 1991-94 Greenleaf Software Inc. All rights reserved. ! 16: ; ! 17: ; MODIFICATIONS ! 18: ; ! 19: ; December 12, 1992 : Released with CommLib 4.00A ! 20: ; ! 21: ! 22: ; ! 23: ; The check for ??version is checking to see if we are running under ! 24: ; Turbo Assembler. ! 25: ; ! 26: ifdef ??version ! 27: mesg_defined = 1 ! 28: mesg macro txt ! 29: %out txt ! 30: endm ! 31: endif ! 32: ifdef ??Version ! 33: mesg_defined = 1 ! 34: mesg macro txt ! 35: %out txt ! 36: endm ! 37: endif ! 38: ifndef mesg_defined ! 39: mesg macro txt ! 40: if1 ! 41: %out txt ! 42: endif ! 43: endm ! 44: endif ! 45: ! 46: % GF_MODEL&_MODEL = 1 ! 47: ! 48: ifdef FLAT_MODEL ! 49: mesg <Flat Memory Model> ! 50: _LCODE = 0 ! 51: _LDATA = 0 ! 52: _HUGE = 0 ! 53: GOOD_MODEL = 0 ! 54: .MODEL FLAT,C ! 55: endif ! 56: ! 57: ifdef SMALL_MODEL ! 58: mesg <Small Memory Model> ! 59: _LCODE = 0 ! 60: _LDATA = 0 ! 61: _HUGE = 0 ! 62: GOOD_MODEL = 0 ! 63: .MODEL SMALL,C ! 64: endif ! 65: ! 66: ifdef COMPACT_MODEL ! 67: mesg <Compact Memory Model> ! 68: _LCODE = 0 ! 69: _LDATA = 1 ! 70: _HUGE = 0 ! 71: GOOD_MODEL = 0 ! 72: .MODEL COMPACT,C ! 73: endif ! 74: ! 75: ifdef MEDIUM_MODEL ! 76: mesg <Medium Memory Model> ! 77: _LCODE = 1 ! 78: _LDATA = 0 ! 79: _HUGE = 0 ! 80: GOOD_MODEL = 0 ! 81: .MODEL MEDIUM,C ! 82: endif ! 83: ! 84: ifdef LARGE_MODEL ! 85: mesg <Large Memory Model> ! 86: _LCODE = 1 ! 87: _LDATA = 1 ! 88: _HUGE = 0 ! 89: GOOD_MODEL = 0 ! 90: .MODEL LARGE,C ! 91: endif ! 92: ! 93: ifdef HUGE_MODEL ! 94: mesg <Huge Memory Model> ! 95: _LCODE = 1 ! 96: _LDATA = 1 ! 97: _HUGE = 1 ! 98: GOOD_MODEL = 0 ! 99: .MODEL HUGE,C ! 100: endif ! 101: ! 102: ifdef OTHER_MODEL ! 103: mesg <Other Memory Model> ! 104: _LCODE = 1 ! 105: _LDATA = 1 ! 106: _HUGE = 0 ! 107: GOOD_MODEL = 0 ! 108: endif ! 109: ! 110: ifndef _LCODE ! 111: mesg <In order to properly build the assembly files for this> ! 112: mesg <library, you need to define GF_MODEL so the files can be> ! 113: mesg <be built for the correct memory model. The best way to> ! 114: mesg <do this is to define it on the command line, like this:> ! 115: mesg < > ! 116: mesg < MASM /DGF_MODEL=SMALL /Ml FILE.ASM ; > ! 117: mesg < > ! 118: mesg <Acceptable choices for GF_MODEL are SMALL, COMPACT, MEDIUM,> ! 119: mesg <LARGE, and HUGE. Note that the Greenleaf Installation programs> ! 120: mesg <will do this automatically.> ! 121: mesg < > ! 122: _LCODE = 0 ! 123: _LDATA = 0 ! 124: _HUGE = 0 ! 125: endif ! 126: ! 127: ifndef GOOD_MODEL ! 128: .ERR ! 129: endif ! 130:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.