summaryrefslogtreecommitdiff
path: root/firmware/mpeg.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/mpeg.c')
-rw-r--r--firmware/mpeg.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/firmware/mpeg.c b/firmware/mpeg.c
index d830b0aac5..4a7d37e8f8 100644
--- a/firmware/mpeg.c
+++ b/firmware/mpeg.c
@@ -33,6 +33,7 @@
33#include "thread.h" 33#include "thread.h"
34#include "usb.h" 34#include "usb.h"
35#include "file.h" 35#include "file.h"
36#include "hwcompat.h"
36#endif 37#endif
37 38
38extern void bitswap(unsigned char *data, int length); 39extern void bitswap(unsigned char *data, int length);
@@ -649,10 +650,18 @@ static void dma_tick(void)
649 TCNT2 = 0; 650 TCNT2 = 0;
650 for(i = 0;i < 30;i++) 651 for(i = 0;i < 30;i++)
651 { 652 {
652 PADR |= 0x800; 653 if(read_hw_mask() & PR_ACTIVE_HIGH)
654 PADR |= 0x800;
655 else
656 PADR &= ~0x800;
657
653 while(PBDR & 0x8000) {}; 658 while(PBDR & 0x8000) {};
654 mp3buf[mp3buf_write] = *(unsigned char *)0x4000000; 659 mp3buf[mp3buf_write] = *(unsigned char *)0x4000000;
655 PADR &= ~0x800; 660
661 if(read_hw_mask() & PR_ACTIVE_HIGH)
662 PADR &= ~0x800;
663 else
664 PADR |= 0x800;
656 665
657 mp3buf_write++; 666 mp3buf_write++;
658 if(mp3buf_write >= mp3buflen) 667 if(mp3buf_write >= mp3buflen)