the new implementation of 'fifoInternalSend' has serios bugs.
1. in case then 'fifoInternalSend' called and 'fifo_send_queue' not empty, firstword didnt' go to queue.
2. in case then 'fifo_send_queue' is empty and hardware fifo buffer have space only for part of data the rest of data goes to 'fifo_send_queue' but 'fifo_send_queue.head' dont' update and this rest never sended to another cpu.
new fifoInternalSend too buggy.
-
- Site Admin
- Posts: 2060
- Joined: Tue Aug 09, 2005 3:21 am
- Location: UK
- Contact:
Re: new fifoInternalSend too buggy.
You caught me releasing half finished code :p I was kind of hoping nobody would notice that until I got a chance to do some more testing.
The FIFO_CHANNEL_BITS thing was something else I was testing and forgot to revert before commit, sorry about that.
Have a look at the code I just submitted to SVN, it should be relatively sane now but needs a bit more testing. So far I've found it difficult to actually drop through into the buffered code in practice - the data gets pulled out of the FIFO pretty quickly on the other side.
The FIFO_CHANNEL_BITS thing was something else I was testing and forgot to revert before commit, sorry about that.
Have a look at the code I just submitted to SVN, it should be relatively sane now but needs a bit more testing. So far I've found it difficult to actually drop through into the buffered code in practice - the data gets pulled out of the FIFO pretty quickly on the other side.
Re: new fifoInternalSend too buggy.
very easy:WinterMute wrote:So far I've found it difficult to actually drop through into the buffered code in practice - the data gets pulled out of the FIFO pretty quickly on the other side.
Code: Select all
void vBlank()
{
static u32 vBlankCounter=0;
if(vBlankCounter++>30)
{
vBlankCounter=0;
swiDelay(1000000);
}
}
…
irqSet(IRQ_VBLANK,vBlank);
…
Who is online
Users browsing this forum: No registered users and 8 guests