|
Emulator /
128KMemoryClass: ProcMemIOTsIn OS/8 V3D the so called 'Device Extensions' were introduced. It says there 'This document describes the software support for the KT8A
Memory Management Option and the RX02 and RL01 devices'. We do not have either the RX02 floppy or the RL01 disk in our configuration, but in the process of making our latest release of OS/8 (V50), I saw that some components like SAVE, GET and ODT were actively calling KT8-A functions. The OS/8 V3D Device Extensions provide limited support for the KT8A Memory Extension and Management Option, which increases the amount of allowable memory in PDP8 systems from 32K to a maximum of 128K words. The KT8A supports all available sizes of continuous memory from 32K to 128K. System programs, devices, and languages that run in 32K under OS/8 will also operate with the new monitor. In addition , systems with the KT8A and 128K software support will run user-written programs in memory fields 0 t o 37. OS/8 high-level languages and system programs, however, do not make use of memory greater than 32K words. I decided to implement the functions of the KT8-A as described in 'KT8-A memory management control user's guide'. Excerpt from this User Guide: OS/8, Version 3D/128K, support will include greater-than-32K functions of GET, SAVE, ODT, and RUN. Verson 2 of MACREL/LINKER will support greater-than-32K assemblies and linkages. RTS8, Version 3, is capable of using all available memory and supports up to 32 K OS/8 background task. Existing OS/8 and assembly language programs can work with the KT8-A option installed, but will not fully utilize the KT8-A features. Programs can be written under PAL8 to make use of KT8-A extended functions. Early versions of OS/8 utilities do not support extended memory.''
On the right the list of new instructuons introduced by the KT8-a is shown. The whole range of device codes from 17 to 37 is occupied by these instructions. On the left a more detailed mapping of these instructions is shown. Also included are the IOTs of the Multi8 board. It can be seen here that the original Multi8 instructions collide with the XDF (62 F 5) new KT8-A instructions. I have remapped these Multi8 instructions to the IOT range of 30-37 where there is a NOP (63 F 4) KT8-A instruction. See also under Emulator.Memory and Interrupt. Multi8 will have to be reassembled to take these new codes into account.
The testing procedure as detailed in 'KT8-A memory management software' tells us that the appropriate testing program is called MAINDEC-08-DJKTAA. The only binary I have found is AJKTAB. Because no listing exists I had to recompile this binary.
The whole test executes without error and takes 1 minute at PDP8 speed and 3 seconds at full speed. The program can be found on the MyProgs disk (AJKTAB.SV). |