To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.rcxOpen lugnet.robotics.rcx in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / RCX / 2367
  [long] Interrupt programming, buggy code
 
Hi all, I am currently programming the Lego RCX at low-level (plain C) using the GCC cross-compiler for Hitachi H8/300 and Kekoa Proudfoot's LibRCX. In fact, I'm designing exercises for students that learn micro-controller programming. Therefore, I (...) (21 years ago, 2-Mar-04, to lugnet.robotics.rcx)
 
  RE: [long] Interrupt programming, buggy code
 
Having fun yet :-) There are a few things you might want to keep in mind when writing ISRs for the RCX... First, avoid calling into the ROM from an interrupt handler. You never know how long they take, and you may in fact be hitting another OCIA (...) (21 years ago, 2-Mar-04, to lugnet.robotics.rcx)
 
  Re: [long] Interrupt programming, buggy code
 
(...) All I can give you is guesses. There are pleny of gurus here who will know the answer. Do you know if the display_debug() routine or any of the things it uses depends on the interrupts you are taking over? If default interrupt handler provides (...) (21 years ago, 2-Mar-04, to lugnet.robotics.rcx)
 
  Re: [long] Interrupt programming, buggy code
 
Hi Benjamin, When you declare your ISR as an interrupt_handler, GCC terminates the function with an "rte" instead of an "rts". The ROM code that dispatches the interrupt to your function is already doing the rte so your function should not. Here's (...) (21 years ago, 2-Mar-04, to lugnet.robotics.rcx)
 
  RE: [long] Interrupt programming, buggy code
 
Much better and more accurate answer from Mark - who knows a lot more about GCC that I do :-) I should stick to commenting on assembly language stuff. Ralph (...) <snippage> (21 years ago, 2-Mar-04, to lugnet.robotics.rcx)
 
  Re: [long] Interrupt programming, buggy code
 
(...) Eh... Never mind this bit. I just had a gander at Kekoa's rcxlib and he already handles this correctly in debug_value(). Should've known! :-) Mark (21 years ago, 2-Mar-04, to lugnet.robotics.rcx)
 
  Re: [long] Interrupt programming, buggy code
 
On Tue, 2 Mar 2004 17:54:47 GMT "Mark Riley" <markril@hotmail.com> wrote: Hi Mark, (...) [snip] (...) [snip] And that was it, indeed! Many to you, as well as Ralph and Kevin who tried to help me. There shouldn't be much trouble for me I think (if we (...) (21 years ago, 2-Mar-04, to lugnet.robotics.rcx)

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR