Search found 434 matches
- Wed Jan 05, 2011 5:05 am
- Forum: Getting Started
- Topic: interrupt(s)
- Replies: 2
- Views: 26523
Re: interrupt(s)
The attached demo program IRQFIQ which should run on LPC21xx and LPC22xx targets shows an IRQ being interrupted by an FIQ. It uses Timer0 to generate IRQs and Timer1 to generate FIQs. The IRQ handler stays in an infinite loop which only terminates when it is interrupted by an FIQ. If you need convin...
- Mon Jan 03, 2011 11:19 pm
- Forum: Oberon Language
- Topic: Forward Procedures
- Replies: 1
- Views: 12697
Re: Forward Procedures
There is no special mechanism used for forward procedures in Oberon-07. Normally procedures should be declared before they are referenced. The only time where it is necessary to use a forward procedure is if two procedures mutually call each other e.g. if you want to do something like: PROCEDURE Pro...
- Mon Jan 03, 2011 12:22 pm
- Forum: Getting Started
- Topic: IMPORT Main?
- Replies: 1
- Views: 16398
Re: IMPORT Main?
Main is not documented separately. It's a 140-line module which performs the following startup actions: Copies the interrupt area to mapped memory Installs the Trap Handler Sets Memory mapping control to User RAM Mode Enables the Memory Accelerator Module Initialises UART0 at 38400 baud for runtime ...
- Mon Jan 03, 2011 6:12 am
- Forum: Oberon Language
- Topic: Shifts and masks
- Replies: 3
- Views: 21007
Re: Shifts and masks
There are several possible ways. The style most often seen in Oberon code is: R := LSR(R, 6) MOD 0400H; The code generated is: E1B0B32BH MOV S R11,R11 LSR 6 E1A0BB0BH MOV R11,R11 LSL 22 E1B0BB2BH MOV S R11,R11 LSR 22 An alternative is: R := LSR(LSL(value, 16)); Initially this might appear less reada...