OpenCores
URL https://opencores.org/ocsvn/thor/thor/trunk

Subversion Repositories thor

[/] [thor/] [trunk/] [software/] [emuThor/] [source/] [clsPIC.h] - Diff between revs 32 and 35

Show entire file | Details | Blame | View Log

Rev 32 Rev 35
Line 1... Line 1...
#pragma once
#pragma once
#include "stdafx.h"
#include "stdafx.h"
 
// Programmable Interrupt Controller Emulator
 
//
 
// This class emulates some of the functionality of the interrupt
 
// controller. Edge sensing on the interrupt inputs is not currently
 
// supported. The edge sensing on the clock interrupts is emulated
 
// by resetting the interrupt input when the PIC recieves the
 
// command to acknowledge the edge sensitive interrupt and only
 
// driving the interrupt signal true by the timer. The timers
 
// effectively act like pulse generators which provide only a
 
// positive transition to the clock signal. The negative 
 
// transition is supplied when the interrupt is acknowledged.
 
// In the real system the clock generator provides a square wave
 
// output for the interrupts so edge sensing is necessary.
 
// It's faked out so that from the perspective of the BIOS
 
// software it looks the same.
 
 
extern clsSystem system1;
extern clsSystem system1;
 
 
class clsPIC : public clsDevice
class clsPIC : public clsDevice
{
{
public:
public:
        bool enables[16];
        bool enables[16];
 
        bool edges[16];         // edge sensitive
        bool irq30Hz;
        bool irq30Hz;
        bool irq1024Hz;
        bool irq1024Hz;
        bool irqKeyboard;
        bool irqKeyboard;
        bool irqUart;
        bool irqUart;
        bool irq;
        bool irq;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.