-
Notifications
You must be signed in to change notification settings - Fork 163
Development Notes
Jiri Malak edited this page Feb 1, 2024
·
2 revisions
This document contains a collection of unorganized notes. The information here should be organized better at some point but in the meantime it is better here than lost.
OpenWatcom has still no support for many Processors:
- MMX, SIMD,AVX, ... Modern instruction sets for x86
- amd64/x86_64 (internal Name: x64)
- aarch64 (Internal Name: a64)
- arm
Things to consider, when extending to 64bit or adding a new architecture.
(This list is long, not sorted and incomplete)
- 64 bit CPUs: Alignment of functions / stack / args ... must increase to 16 Byte
- 32+64bit: Many currently unsupported CPU commands need higher alignments (MMX/SIMD/AVX)
- orl & owl: (Object Reader Library & Object Writer Library)
- ELF Support and COFF Support for RISC architecture
- many projects: Object reading/writing for the x86 family
- wdis (ndisasm): Disassembler for all file formats and architectures
- wdump (exedump): Executable/DLL/Library/Object dumping tool
- wlink (wl): Linker for all file formats and architectures
- wlib (nwlib): Object file archive tool for all file formats and architectures
- dwarf: Debug info support for ELF file format
- wd & wdw (wv): Debugger for all file formats and architectures
- dig / dig: Debug format support
- wasarm / wasa64: RISC Assembler for arm and aarch64/a64
- wasm: Assembler for the x86 family
- wcpp: preprocessor for all C/C++ Compiler
- cg: The code generator (backend for C/C++/FORTRAN compiler)
- wccarm / wcca64 / wccx64: C compiler for arm, aarch64, x86_64
- wpparm / wppa64 / wppx64: C++ compiler for arm, aarch64, x86_64
- wfc (f77): FORTRAN compiler
- clib: C Runtime library
- cpplib: C++ Runtime library
- mathlib: Math support library
- fpuemu: FPU emulation
- owcc: Compile and Link utility (posix style command line args)
- wclarm / wcla64 / wclx64: Compile and Link utility (OW style command line args)
There are a lot more modules in the bld directory
- Forks of wasm & wlink, extended for x86_64 and new CPU instructions
(with 'Sybase Open Watcom Public License')- jwasm Homepage
- jwasm on github
- jwlink Homepage
-
jwlink on github
There are more forks of wasm/jwasm and wlink/jwlink on Github
- FASM / FASMARM: A free Assembler
- 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