From 31c1ae881c39b341da872083dd28ed9f76a6c909 Mon Sep 17 00:00:00 2001 From: Lars Brinkhoff Date: Tue, 14 Apr 2020 14:07:22 +0200 Subject: [PATCH] Update PDP-10 info file with KS10 information. --- doc/info/{pdp-10.15 => pdp-10.16} | 44 +++++++++++++++---------------- 1 file changed, 22 insertions(+), 22 deletions(-) rename doc/info/{pdp-10.15 => pdp-10.16} (98%) diff --git a/doc/info/pdp-10.15 b/doc/info/pdp-10.16 similarity index 98% rename from doc/info/pdp-10.15 rename to doc/info/pdp-10.16 index 01975acd..aa048c84 100755 --- a/doc/info/pdp-10.15 +++ b/doc/info/pdp-10.16 @@ -58,10 +58,10 @@ PDP-10 Node: Intro, Up: Top, Previous: Top, Next: Memory Introduction to PDP-10 Assembly Language Programming -The PDP-10 is a general purpose stored program computer. There are four +The PDP-10 is a general purpose stored program computer. There are five different processors (computers) in the PDP-10 family (the PDP-6, the KA10, -the KI10 and the KL10). This file discusses primarily the KA-10 version, -which is what most of the ITS systems are. +the KI10, the KL10, and the KS10). This file discusses primarily the KA-10 +version, which is what most of the ITS systems are. There are three principal aspects of assembly language programming: the machine instructions, the assembler, and the operating system. @@ -835,16 +835,16 @@ DIVB C(AC) <- C(AC AC+1) / C(E); C(AC+1) <- remainder;  PDP-10 Node: KL-Only, Previous: Fixed Point, Up: Top, Next: Floating Point -This node describes some instructions that only KL-10's have. This -means that the only ITS machine which has them is MC. You should -probably not use them even if you expect to run on MC, so that your -program can be moved. +This node describes some instructions that only KL-10s and KS10s +have. Before the arrival of the KS10, the only ITS machine which had +them was MC. You should probably not use them even if you expect to +run on MC or a KS10, so that your program can be moved. -Double word Move instructions (KI10 and KL10) +Double word Move instructions (KI10, KL10, and KS10) There are four double word move instructions. These are suitable for -manipulating KI10 and KL10 double precision floating point numbers, -and for KL10 double precision integers. +manipulating KI10, KL10, and KS10 double precision floating point +numbers, and for KL10/KS10 double precision integers. DMOVE C(AC AC+1) <- C(E E+1) DMOVEM C(E E+1) <- C(AC AC+1) @@ -857,7 +857,7 @@ precision floating point numbers! If a program is written that may be have to be run on a KA10, the use of all double word instructions should be avoided. -Double Precision Integer Arithmetic (KL10 only) +Double Precision Integer Arithmetic (KL10 and KS10 only) There are four instructions for double precision integer arithmetic. None of these instructions have any modifier: they all operate on @@ -911,16 +911,16 @@ word with a zero fraction and non-zero exponent can produce extreme loss of precision if used as an operand in a floating point addition or subtraction. -In KI10 (and KL10) double precision floating point, a second word is +In KI10, KL10, and KS10 double precision floating point, a second word is included which contains in bits 1:35 an additional 35 fraction bits. The additional fraction bits do not significantly affect the range of representable numbers, rather they extend the precision. -The KA10 lacks double precision floating point hardware, however -there are several instructions by which software may implement double +The KA10 lacks double precision floating point hardware, however there +are several instructions by which software may implement double precision. These instructions are DFN, UFA, FADL, FSBL, FMPL, and -FDVL. Users of the KL10 are strongly advised to avoid using these -intructions. +FDVL. Users of the KL10 and KS10 are strongly advised to avoid using +these intructions. In the PDP-6 floating pointing is somewhat different. Consult a wizard. @@ -952,7 +952,7 @@ Other floating point instructions: FSC (Floating SCale) will add E to the exponent of the number in AC and normalize the result. One use of FSC is to convert an integer in -AC to floating point (but FLTR, available in the KI and KL is better) +AC to floating point (but FLTR, available in the KI, KL, and KS is better) To use FSC to float an integer, set E to 233 (excess 200 and shift the binary point 27 bits). The integer being floated must not have more than 27 significant bits. FSC will set AROV and FOV if the @@ -1131,11 +1131,11 @@ fetched. The POS field is changed by subtracting the size field from it. If the result of the subtraction is greater than or equal to zero, store the difference in the POS field. If the difference is negative, add 1 to the Y field (in the KA10 and PDP-6 if Y contains -777777 then this will carry into the X field; in the KI10 and KL10 the -carry out is suppressed) and set POS field to 44-SIZE (44 is octal). -The effect of this is to modify the byte pointer to address the next -byte (of the same size) that follows the byte addressed by the -original pointer. +777777 then this will carry into the X field; in the KI10, KL10, and +KS10 the carry out is suppressed) and set POS field to 44-SIZE (44 is +octal). The effect of this is to modify the byte pointer to address +the next byte (of the same size) that follows the byte addressed by +the original pointer. ILDB - Increment and Load Byte. Increment the byte pointer contained at the effective address. Then perform a LDB function using