File tree Expand file tree Collapse file tree 1 file changed +6
-5
lines changed Expand file tree Collapse file tree 1 file changed +6
-5
lines changed Original file line number Diff line number Diff line change @@ -56,12 +56,12 @@ static void do_sp_dma(struct rsp_core* sp, const struct sp_dma* dma)
5656 {
5757 for (j = 0 ; j < count ; j ++ ) {
5858 for (i = 0 ; i < length ; i ++ ) {
59- dram [dramaddr ^S8 ] = spmem [memaddr ^S8 ];
59+ dram [( dramaddr ^S8 ) & 0x7fffff ] = spmem [( memaddr ^S8 ) & 0xfff ];
6060 memaddr ++ ;
6161 dramaddr ++ ;
6262 }
63-
64- post_framebuffer_write (& sp -> dp -> fb , dramaddr - length , length );
63+ if ( dramaddr <= 0x800000 )
64+ post_framebuffer_write (& sp -> dp -> fb , dramaddr - length , length );
6565 dramaddr += skip ;
6666 }
6767
@@ -72,10 +72,11 @@ static void do_sp_dma(struct rsp_core* sp, const struct sp_dma* dma)
7272 else
7373 {
7474 for (j = 0 ; j < count ; j ++ ) {
75- pre_framebuffer_read (& sp -> dp -> fb , dramaddr );
75+ if (dramaddr < 0x800000 )
76+ pre_framebuffer_read (& sp -> dp -> fb , dramaddr );
7677
7778 for (i = 0 ; i < length ; i ++ ) {
78- spmem [memaddr ^S8 ] = dram [dramaddr ^S8 ];
79+ spmem [( memaddr ^S8 ) & 0xfff ] = dram [( dramaddr ^S8 ) & 0x7fffff ];
7980 memaddr ++ ;
8081 dramaddr ++ ;
8182 }
You can’t perform that action at this time.
0 commit comments