Public Member Functions

PicDevice Class Reference

PIC8259 emulation. More...

Inheritance diagram for PicDevice:
StaticReceiver< PicDevice > Device

List of all members.

Public Member Functions

bool receive (MessageLegacy &msg)
 The CPU send an int-ack cycle?
bool receive (MessagePic &msg)
 We get an request on the three-wire PIC bus.
bool receive (MessageIOIn &msg)
bool receive (MessageIOOut &msg)
 Write to the PIC via IO ports.
bool receive (MessageIrq &msg)
 Raise the an irqline.
 PicDevice (DBus< MessageIrq > &bus_irq, DBus< MessagePic > &bus_pic, DBus< MessageLegacy > &bus_legacy, DBus< MessageIrqNotify > &bus_notify, unsigned short base, unsigned char irq, unsigned short elcr_base, unsigned char virq)

Detailed Description

PIC8259 emulation.

Copyright (C) 2007-2009, Bernhard Kauer <bk@vmmon.org> Economic rights: Technische Universitaet Dresden (Germany)

This file is part of Vancouver.

Vancouver is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

Vancouver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License version 2 for more details. An implementation of the Intel 8259.

State: stable Ignored bits: ADI, yPM Documentation: Intel 8259a - 8259A.pdf


Constructor & Destructor Documentation

PicDevice::PicDevice ( DBus< MessageIrq > &  bus_irq,
DBus< MessagePic > &  bus_pic,
DBus< MessageLegacy > &  bus_legacy,
DBus< MessageIrqNotify > &  bus_notify,
unsigned short  base,
unsigned char  irq,
unsigned short  elcr_base,
unsigned char  virq 
) [inline]

Member Function Documentation

bool PicDevice::receive ( MessageLegacy msg  )  [inline]

The CPU send an int-ack cycle?

bool PicDevice::receive ( MessageIrq msg  )  [inline]

Raise the an irqline.

This function needs to be multi-entrance ready! It should only touch the _irr.

bool PicDevice::receive ( MessageIOOut msg  )  [inline]

Write to the PIC via IO ports.

bool PicDevice::receive ( MessageIOIn msg  )  [inline]
bool PicDevice::receive ( MessagePic msg  )  [inline]

We get an request on the three-wire PIC bus.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines