Skip to content
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.

Core Dump in Linux Installer

In some cases the Linux installer produces an immediate core dump. This is due to a problem with the terminal handling; the installer can't find the terminal information database. The error occurs even before the splash screen appears. You can likely work around the problem by setting the TERMINFO environment variable to point at the proper location of the terminal information database. For example:

export TERMINFO=/lib/terminfo

Other solution by setup terminal type before run installer.

export TERM=vt100

DOS4GW Versions Compatibility

Previous versions of OW up to OW1.9 was using DOS4GW 1.97. Latest versions of DOS4GW 2.0x are not compatible with older versions configuration. To ensure OW 2.0 works with both versions, OW 2.0 doesn't use any setup for DOS4GW. Therefore DOS4GW banner is displayed by default. If you want to suppress DOS4GW banner then you must configure following environment variable.

For DOS4GW version 1.97 or lower

set DOS4G=QUIET

For DOS4GW 2.0x

set DOS4G=STARTUPBANNER:1

Extend existing / add a new Processor Architecture

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

Probably resuable work (for backports / tests / comparsion):

Links to online infos:

Clone this wiki locally