RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
Loading...
Searching...
No Matches
RetroLinker, a linker for multiple 8-bit, 16-bit and 32-bit executable formats

Introduction

This program grew out of a desire to be able to process and generate old object and executable file formats. The initial targets were 16-bit 8086 operating systems, in particular CP/M-86, MS-DOS, Windows and ELKS (16-bit port of Linux). It was also a goal to be able to parse Intel OMF object files as well as as86 object files, to provide a drop-in replacement for the WATCOM and dev86 compilers.

Supported output formats

File format CPU

Platform

Flat binary (.com) Intel 8080
Zilog Z80

CP/M-80
MSX-DOS

Intel 8086

MS-DOS

Acorn ARM

RISC OS

Motorola 68000

QDOS for Sinclair QL

Relocatable (flat) binary (.r) Motorola 68000

Human68k

Page relocatable (.prl) Intel 8080
Zilog Z80

MP/M-80
CP/M-80 3.0

CMD binary (.cmd) 8080 model
Small/compact model
Intel 8086

CP/M-86

FlexOS format (.186, .286)

FlexOS (untested)

MZ (.exe) Intel 8086

MS-DOS
GEM

DL (.exm) Intel 8086

HP LX System Manager (untested)

NE (.exe) Intel 8086

Windows (16-bit)
OS/2 (16-bit)
(European) Multitasking MS-DOS 4.0

MINIX a.out Combined/impure
Split/pure
Intel 8086

ELKS

BW (.exp, .exe) Intel 8086

DOS/16M extender

P2 (.exp) Intel 80286

Phar Lap extender (untested)

P3 (.exp) Intel 80386

Phar Lap extender

MP (.exp)
MQ (.rex)
Intel 80386

Phar Lap extender

MP (.exp)
MQ (.rex)
Intel 80386

Phar Lap extender

XP (.exp) Intel 80286
Intel 80386

Ergo OS/286 and OS/386 extenders (unimplemented)

32-bit UNIX a.out ZMAGIC (.exe) Intel 80386

DJGPP (prior to 1.11)

OMAGIC (.exe) Intel 80386

early PDOS/386

COFF Intel 80386

DJGPP (since 1.11)

FlexOS 386 (.386) (untested)

Motorola 68000

Concurrent DOS 68K (.68k)
with crunched relocations (untested)

PE (.exe) Intel 80386

Windows (32-bit)
Windows NT
Windows 95
Win32s (unimplemented)

LE (.exe) LE (.exe)

DOS/4G

LX (.exe)

OS/2 (32-bit)

PMW1 (.exe) PMW1 (.exe)

PMODE/W (unimplemented)

CP/M-68K binary Contiguous binary Motorola 68000

CP/M-68K (.68k)
GEMDOS (.prg)
Atari TOS (.prg)
Human68k (.z)

Non-contiguous binary (.68k)

CP/M-68K

Contiguous binary (.68k)
with CP/M-68K or crunched relocations

Concurrent DOS 68K

HU (.x) Motorola 68000

Human68k

Hunk Motorola 68000
PowerPC

AmigaOS

AppleSingle or AppleDouble
Macintosh resource
MacBinary
Motorola 68000

Mac OS

PEF PowerPC
Motorola 68000

Mac OS (unimplemented)

OMF executable WDC65C816

GS/OS (unimplemented)

CP/M-8000 binary Zilog Z8000

CP/M-8000

Mach-O PowerPC
AMD64
ARM
etc.

Mac OS X (unimplemented)

ELF Intel 80386
etc.

Linux
etc. (unimplemented)

Apple ][ (.bin) MOS 6502

Apple ][ (untested)

Atari 400/800 (.exe) MOS 6502

Atari 400/800

Commodore PET/VIC-20/64 (.prg) MOS 6502

Commodore PET/VIC-20/64

CP/M Plus (.com) Intel 8080

CP/M Plus (untested)

FLEX (.cmd) Motorola 6800
Motorola 6809

FLEX (untested)

UZI (Unix-like) Zilog Z80

UZI (untested)

UZI-280 (Unix-like) Zilog Z280

UZI-280 (untested)

Xenix b.out Intel 80286

Xenix (unimplemented)

Xenix x.out Intel 80286

Xenix (unimplemented)

D3X1 Intel 80386

D3X DOS extender (unimplemented)

Adam Intel 80386

Adam Seychell DOS32 extender (unimplemented)

64-bit Flat file AMD64

DX64 DOS extender (unimplemented)

64-bit LV file AMD64

DX64 DOS extender (unimplemented)

Supported input formats

File format CPU

Used by

as86 object Intel 8086
etc.

as86 (unimplemented)

UNIX a.out DEC PDP-11

GNU tools

COFF Zilog Z80
Zilog Z8000

GNU tools

ELF Intel 80386
etc.

GNU tools
etc.

Mach-O PowerPC
AMD64
ARM
etc.

Mac OS X (unimplemented)

xa object MOS 6502

xa

Intel Relocatable Object Module Intel 8086
Intel 80386

16-bit Microsoft
Borland
Watcom (unimplemented)