Time to try out interrupts for the PS/2 keyboard on my picosoc-powered TinyFPGA Snakes game. I think I know what to do, but we'll find out. This is pretty important because the game is currently dropping some keypresses while it's drawing the snakes and checking for collisions.
-
Show this thread
-
Soooo....I know that the picorv32 is getting the interrupt from the keyboard. That's good news. I know that it gets the interrupt because it crashes the moment I press a key now.
Now I need to understand why its crashing.1 reply 0 retweets 4 likesShow this thread -
It's getting to the irq_vec alright. If I insert a call to a debug function at the location it works just fine. If I insert a call after the first 'setq' instruction on line 26 it does not get called. I have QREGs enabled on picorv32. Any thoughts
@oe1cxw?pic.twitter.com/nbtzMPOvq4
1 reply 0 retweets 2 likesShow this thread -
Maybe I’ll write my own interrupt vector routine in assembly. It will do exactly what the existing code does, but it will help me learn exactly what’s going on.
1 reply 0 retweets 0 likesShow this thread -
The picorv32 kept hanging on setq instructions that access q2 and q3. q0 and q1 work fine, which is good, because they are necessary for interrupts to work. I'm using fixed locations in the beginning of SRAM to replace q2 and q3 for now. Almost working.
1 reply 0 retweets 3 likesShow this thread
That's odd! All four q registers should be treated the same way.. Can you reproduce this in a simulation? If so, I'd be interested in looking at the .vcd file for that.
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.