irq.h File Reference

Internal LNP Interface: RCX redirected IRQ vectors. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define HANDLER_WRAPPER(wrapstring, handstring)

Functions

void rom_ocia_handler ()
 ROM OCIA interrupt handler.
void rom_ocia_return ()
 return address in ROM OCIA handler
void rom_dummy_handler ()
 address of an RTS instruction
void disable_irqs ()
 disable interrupt processing
void enable_irqs ()
 enable interrupt processing

Variables

void * reset_vector
 reset vector
void * nmi_vector
 NMI interrupt vector.
void * irq0_vector
 IRQ0 interrupt vector.
void * irq1_vector
 IRQ1 interrupt vector.
void * irq2_vector
 IRQ2 interrupt vector.
void * icia_vector
 ICIA interrupt vector.
void * icib_vector
 ICIB interrupt vector.
void * icic_vector
 ICIC interrupt vector.
void * icid_vector
 ICID interrupt vector.
void * ocia_vector
 OCIA interrupt vector.
void * ocib_vector
 OCIB interrupt vector.
void * fovi_vector
 FOVI interrupt vector.
void * cmi0a_vector
 CMI0A interrupt vector.
void * cmi0b_vector
 CMI0B interrupt vector.
void * ovi0_vector
 OVI0 interrupt vector.
void * cmi1a_vector
 CMI1A interrupt vector.
void * cmi1b_vector
 CMI1B interrupt vector.
void * ovi1_vector
 OVI1 interrupt vector.
void * eri_vector
 ERI interrupt vector.
void * rxi_vector
 RXI interrupt vector.
void * txi_vector
 TXI interrupt vector.
void * tei_vector
 TEI interrupt vector.
void * ad_vector
 A/D interrupt vector.
void * wovf_vector
 WOVF interrupt vector.
void * rom_reset_vector
 ROM reset vector.


Detailed Description

Internal LNP Interface: RCX redirected IRQ vectors.

Author:
Markus L. Noga <markus@noga.de>
Lego Mindstorms RCX IRQ redirection vector table All redirected handlers can assume r6 to be saved All redirected handlers must return with rts, *not* rte.

Warning:
Incomplete.

Definition in file irq.h.


Define Documentation

#define HANDLER_WRAPPER ( wrapstring,
handstring   ) 

Value:

__asm__ (".text\n.align 1\n.global _" wrapstring "\n_" wrapstring \
": push r0\npush r1\npush r2\npush r3\njsr @_" handstring \
"\npop r3\npop r2\npop r1\npop r0\nrts\n")

Definition at line 48 of file irq.h.


Function Documentation

void disable_irqs (  )  [inline]

disable interrupt processing

Definition at line 98 of file irq.h.

References __asm__().

Referenced by rom_reset().

void enable_irqs (  )  [inline]

enable interrupt processing

Definition at line 103 of file irq.h.

References __asm__().

void rom_dummy_handler (  ) 

address of an RTS instruction

Referenced by systime_init().

void rom_ocia_handler (  ) 

ROM OCIA interrupt handler.

void rom_ocia_return (  ) 

return address in ROM OCIA handler


Variable Documentation

void* ad_vector

A/D interrupt vector.

void* cmi0a_vector

CMI0A interrupt vector.

void* cmi0b_vector

CMI0B interrupt vector.

void* cmi1a_vector

CMI1A interrupt vector.

void* cmi1b_vector

CMI1B interrupt vector.

void* eri_vector

ERI interrupt vector.

void* fovi_vector

FOVI interrupt vector.

void* icia_vector

ICIA interrupt vector.

void* icib_vector

ICIB interrupt vector.

void* icic_vector

ICIC interrupt vector.

void* icid_vector

ICID interrupt vector.

void* irq0_vector

IRQ0 interrupt vector.

void* irq1_vector

IRQ1 interrupt vector.

void* irq2_vector

IRQ2 interrupt vector.

void* nmi_vector

NMI interrupt vector.

Referenced by systime_init().

void* ocia_vector

OCIA interrupt vector.

Referenced by systime_init().

void* ocib_vector

OCIB interrupt vector.

Referenced by systime_init().

void* ovi0_vector

OVI0 interrupt vector.

void* ovi1_vector

OVI1 interrupt vector.

void* reset_vector

reset vector

Referenced by kmain().

void* rom_reset_vector

ROM reset vector.

Referenced by kmain().

void* rxi_vector

RXI interrupt vector.

void* tei_vector

TEI interrupt vector.

void* txi_vector

TXI interrupt vector.

void* wovf_vector

WOVF interrupt vector.


brickOS is released under the Mozilla Public License.
Original code copyright 1998-2005 by the authors.

Generated on Mon Dec 10 00:56:42 2007 for brickOS Kernel Developer by doxygen 1.5.4