Recent Changes - Search:

Introduction

PmWiki

edit SideBar

PowerBoot

Class: PowerBoot

Several newer Maintenance Programs used the following instructions:

MnemonicOctalCode Function
SPL6102Skip if the AC LOW flag is set or AC LOW signal is low
CAL6103Clear the AC LOW interrupt.
SBE6101Skip if the BATTERY EMPTY flag is set.

In order to execute these instructions correctly I decided to implement this functionality. The available test programs were all for the PDP-8/A, so I chose to implement the logic of the M8317 KM8-A Option #1 Board of the PDP-8/A. The description of the logic involved in these operation is found in 'Power Fail/Auto restart andd Bootstrap loader'.

Click to enlarge
Power button and Switch
Click to enlarge
Context menu options


The power fail option requires turning off the power to the computer. This is naturally not possible in an emulator: we have implemented logic so that the power button (as seen on the left in a partial picture of the panel) simulates the removal of power. It does not close the emulator; the closing of the emulator is done by closing any window.

Also shown is the 'Switch' which now functions as a Bootstrap button. It finally has the intended function; the SW cannot be tested by any program, it only was an Omnibus line. Because the emulator does not have all the switches the hardware KM8-A board has, the bootstrap chosen for the bootstrap loader is the last one chosen through the context menu as shown on the right. An extra check button called 'Time share' was added for turning off this feature as requested by the test program.




The logic serving both the Powerfail and Bootstrap functions are implemented in the abovementioned PowerBoot module, with help of some interfacing in Panellogic and Panel8. All bootstraps as shown in the context menu (see higher up on the right) are implemented in this module by means of a pseudo-rom called 'boottable'.

The testing procedure as detailed in KM8-A M8317 Testing tells us that the appropriate testing program is called MAINDEC-08-DJKMA-A or B. The only binary I have found is DJKMAC. That means I had to recompile this binary and also adapt it to the bootstraps of my emulator.
The following list shows the three versions of the test program. Under 'Test program' the name of the test program to be found under 'Tests', under 'Source' the respective sources that were used to produce the executables, under 'Testing procedure' the instructions for executing the test. The last description called 'DJKMAE-Extract-Emulator' will give the step by step instructions for using this program in my emulator.

Test ProgramSourceTesting procedureRemarks
MAINDEC_08-DJKMAB-D_KM8-A_Option_Test_2_BIN=DJKMACDJKMABDJKMAB-ExtractNon matching listing and binary
MAINDEC_08-DJKMAD-D_KM8-A_Option_Test_2_RECOMPILEDJKMADDJKMAB-ExtractRecompiled shown as listing
MAINDEC_08-DJKMAE-D_KM8-A_Option_Test_2_ADAPTDJKMAEDJKMAE-Extract-EmulatorBinary and listing adapted to my bootstraps

The modified and unmodified programs can be found on the MyProgs disk (DJKMAE.SV and DJKMAD.SV).

Edit - History - Print - Recent Changes - Search
Page last modified on August 20, 2016, at 05:10 PM