kopia lustrzana https://github.com/hoglet67/RGBtoHDMI
63 wiersze
1.9 KiB
Plaintext
63 wiersze
1.9 KiB
Plaintext
This chapter documents the backend for the PDP-11 CPU architecture.
|
|
|
|
@section Legal
|
|
This module is written in 2020 by Frank Wille
|
|
and is covered by the vasm copyright without modifications.
|
|
|
|
|
|
@section Additional options for this module
|
|
|
|
This module provides the following additional options:
|
|
|
|
@table @option
|
|
@item -eis
|
|
Enables the Extended Instruction Set option (EIS).
|
|
@item -fis
|
|
Enables the Floating point Instruction Set option (FIS).
|
|
@item -msp
|
|
Enables additional memory space instructions.
|
|
@item -opt-branch
|
|
Enables optimization of @code{jmp} instructions to @code{br} when
|
|
possible and translates @code{br} instructions to @code{jmp} when
|
|
required.
|
|
It will also translate conditional branches, where the destination
|
|
is out of range, into a @code{jmp} instruction and a negated
|
|
conditional branch over this @code{jmp}.
|
|
@end table
|
|
|
|
@section General
|
|
|
|
This backend accepts PDP-11 instructions as described in the
|
|
PDP11/40 Processor Handbook, by Digital Equipment Corporation.
|
|
|
|
The target address type is 16 bit.
|
|
|
|
Instructions consist of two up to six bytes and required 16-bit alignment.
|
|
Data, when not accessed as single bytes, also requires 16-bit alignment.
|
|
|
|
@section Known Problems
|
|
|
|
Some known problems of this module at the moment:
|
|
|
|
@itemize @minus
|
|
@item Doesn't support all PDP-11 extensions.
|
|
@end itemize
|
|
|
|
@section Error Messages
|
|
|
|
This module has the following error messages:
|
|
|
|
@itemize @minus
|
|
|
|
@item 2001: bad addressing mode
|
|
@item 2002: bad register
|
|
@item 2003: pc-relative destination out of range: %ld (valid: %d..%d)
|
|
@item 2004: bad trap code %ld (valid: %d..%d)
|
|
@item 2005: displacement out of range: %ld
|
|
@item 2006: immediate value out of range: %ld
|
|
@item 2007: absolute address out of range: %ld
|
|
@item 2008: data size %d not supported
|
|
@item 2009: data expression doesn't fit into %d bits
|
|
|
|
@end itemize
|