Revision feabfcc6514f3fb411605a6982bc539a220b8fe6 authored by Mike Stewart on 07 August 2021, 22:38:19 UTC, committed by Mike Stewart on 07 August 2021, 22:38:19 UTC
1 parent 9587743
PAR.h
/****************************************************************************
* PAR - PARITY GENERATION AND TEST subsystem
*
* AUTHOR: John Pultorak
* DATE: 9/22/01
* FILE: PAR.h
*
* VERSIONS:
*
* DESCRIPTION:
* Parity Generation and Test for the Block 1 Apollo Guidance Computer
* prototype (AGC4).
*
* SOURCES:
* Mostly based on information from "Logical Description for the Apollo
* Guidance Computer (AGC4)", Albert Hopkins, Ramon Alonso, and Hugh
* Blair-Smith, R-393, MIT Instrumentation Laboratory, 1963.
*
* NOTES:
*
*****************************************************************************
*/
#ifndef PAR_H
#define PAR_H
#include "reg.h"
class regG15 : public reg
{
public:
// memory buffer register bit 15 (parity) only
regG15() :
reg(1, "%01o")
{
}
};
class regP : public reg
{
public:
regP() :
reg(16, "%06o")
{
}
};
class regP2 : public reg
{
public:
regP2() :
reg(1, "%01o")
{
}
};
class regPALM : public reg
{
public:
// parity alarm FF (set on TP)
regPALM() :
reg(1, "%01o")
{
}
};
class PAR
{
public:
static void
execRP_WE();
static void
execWP_WP();
static void
execWP_WPx();
static void
execWP_WP2();
static void
execWP_RP2();
static void
execWP_GP();
static void
execWP_SBWG();
static void
execWP_WGx();
static void
execWP_CLG();
static void
execWP_GENRST();
static void
execWP_TP();
static void
CLR_PALM(); // asynchronous clear for PARITY ALARM
// memory buffer register bit 15; the rest of the
// memory buffer register is defined in MBF
static regG15 register_G15;
static regP2 register_P2;
static regP register_P;
static regPALM register_PALM;
static unsigned
gen1_15Parity(unsigned r);
static unsigned
genP_15Parity(unsigned r);
static unsigned conv_WP[];
};
#endif
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...