-
Notifications
You must be signed in to change notification settings - Fork 162
Source Code Macros
Jiří Malák edited this page Jan 3, 2024
·
8 revisions
To guard OW architecture specific source code use following preferred architecture macros.
Target architecture | Preferred macro | Deprecated macros |
---|---|---|
8086 | _M_I86 |
__I86__ , __86__ , __X86__ , _X86_
|
80x86 | _M_X86 |
_M_I386 , __386__ , __X86__ , _X86_
|
x64 | _M_X64 |
|
Alpha | __AXP__ |
_M_ALPHA , __ALPHA__ , _ALPHA_
|
Mips | __MIPS__ |
_M_MRX000 |
PowerPC | __PPC__ |
_M_PPC , __POWERPC__ , _PPC_
|
ARM-32 | _M_ARM |
|
ARM-64 | _M_ARM64 |
To guard OW Target specific source code use following preferred architecture macros.
Target OS | Architecture neutral macro | Specific macros |
---|---|---|
DOS | __DOS__ |
__DOS_086__ , __DOS_386__
|
OS/2 | __OS2__ |
__OS2_286__ , __OS2_386__ , __OS2_PPC__
|
Windows | __WINDOWS__ |
__WINDOWS_286__ , __WINDOWS_386__
|
NT (WIN32) | __NT__ |
__NT_386__ , __NT_AXP__ , __NT_MIPS__ , __NT_PPC__
|
NT (WIN64) | __NT__ |
__NT_X64__ |
Linux |
__LINUX__ , __UNIX__
|
__LINUX_386__ , __LINUX_X64__ , __LINUX_MIPS__ , __LINUX_PPC__ , __LINUX_ARM__ , __LINUX_ARM64__
|
Netware | __NETWARE__ |
__NETWARE_386__ __NETWARE5__
|
QNX |
__QNX__ , __UNIX__
|
__QNX_286__ , __QNX_386__
|
RDOS | __RDOS__ |
|
RDOS drivers | __RDOSDEV__ |
|
OSX |
__OSX__ , __UNIX__
|
__OSX_386__ , __OSX_X64__ , __OSX_ARM__ , __OSX_ARM64__
|
To guard OW memory model specific source code use following memory model macros.
Memory model | Code | Data | Macro | Deprecated macros |
---|---|---|---|---|
Small | near | near | __SMALL__ |
_M_I86SM , M_I86SM
|
Compact | near | far | __COMPACT__ |
_M_I86CM , M_I86CM
|
Medium | far | near | __MEDIUM__ |
_M_I86MM , M_I86MM
|
Large | far | far | __LARGE__ |
_M_I86LM , M_I86LM
|
Huge | far | far | __HUGE__ |
_M_I86HM , M_I86HM
|
Flat | near | near | __FLAT__ |
_M_386FM , M_386FM
|
- Welcome
- Building
- Open Watcom Documentation
- Notes
- Relicensing effort
- Debugging
- OW tools usage Overview
- OW tools usage with CMake
- OW tools usage with Visual Studio Code
- Open Watcom 1.9 Wiki
OW Development
WGML Development
- WGML
- Augmented Devices
- Binary Device Files
- Common File Blocks
- COP Files
- Device File Blocks
- Device Function Language
- Device Function Notes
- Device Functions
- Directory File Format
- Drawing Boxes
- Driver File Blocks
- File and Directory Names
- Font File Blocks
- Fonts
- GML Tag Notes
- Keyword Statistics
- Macros and User Defined Tags
- Meta Data
- Page Layout Subsystem
- Search Paths
- Sequencing
- System Symbol Notes
- Tabs and Tabbing
- whpcvt Utility interaction