diff options
| author | SND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2010-09-05 19:09:16 +0000 |
|---|---|---|
| committer | SND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2010-09-05 19:09:16 +0000 |
| commit | 1b4889d1a4bc9cbbcc71d1540d5c5830b7fbd841 (patch) | |
| tree | ea57d7bcb6cf8ad3236c5ddc6b0a2d2bba965951 /libpcsxcore/mdec.c | |
| parent | 872e08ec0e8edb608a3e55c7c8d12f7a25a7a0d7 (diff) | |
| download | pcsxr-1b4889d1a4bc9cbbcc71d1540d5c5830b7fbd841.tar.gz | |
Fix missings (cdriso.c->sec?).
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@56851 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'libpcsxcore/mdec.c')
| -rw-r--r-- | libpcsxcore/mdec.c | 76 |
1 files changed, 38 insertions, 38 deletions
diff --git a/libpcsxcore/mdec.c b/libpcsxcore/mdec.c index fb5bff61..5161a4f5 100644 --- a/libpcsxcore/mdec.c +++ b/libpcsxcore/mdec.c @@ -474,9 +474,9 @@ void psxDma0(u32 adr, u32 bcr, u32 chcr) { case 0x3: // decode mdec.rl = (u16 *)PSXM(adr); mdec.rlsize = mdec.reg0 & MDEC0_SIZE_MASK; -
- MDECINDMA_INT( size / 4 );
- return;
+ + MDECINDMA_INT( size / 4 ); + return; case 0x4: // quantization table upload @@ -488,15 +488,15 @@ void psxDma0(u32 adr, u32 bcr, u32 chcr) { iqtab_init(iq_y, p); iqtab_init(iq_uv, p + 64); } -
- MDECINDMA_INT( size / 4 );
- return;
+ + MDECINDMA_INT( size / 4 ); + return; case 0x6: // cosine table // printf("mdec cosine table\n"); -
- MDECINDMA_INT( size / 4 );
- return;
+ + MDECINDMA_INT( size / 4 ); + return; default: // printf("mdec unknown command\n"); @@ -505,18 +505,18 @@ void psxDma0(u32 adr, u32 bcr, u32 chcr) { HW_DMA0_CHCR &= SWAP32(~0x01000000); DMA_INTERRUPT(0); -}
-
-void mdec0Interrupt()
-{
- HW_DMA0_CHCR &= SWAP32(~0x01000000);
- DMA_INTERRUPT(0);
+} + +void mdec0Interrupt() +{ + HW_DMA0_CHCR &= SWAP32(~0x01000000); + DMA_INTERRUPT(0); } void psxDma1(u32 adr, u32 bcr, u32 chcr) { int blk[DSIZE2 * 6]; unsigned short *image; - int size; + int size, dmacnt; #ifdef CDR_LOG CDR_LOG("DMA1 %08x %08x %08x (cmd = %08x)\n", adr, bcr, chcr, mdec.reg0); @@ -534,11 +534,11 @@ void psxDma1(u32 adr, u32 bcr, u32 chcr) { mdec.rl = rl2blk(blk, mdec.rl); yuv2rgb15(blk, image); } - } else { // 24-b decoding
- // Fear Effect 2 Artwork (4000+ = BIAS 1)
- // Breaks: Lemmings
- //MDECOUTDMA_INT( ((size / 4) / BIAS) * 4000);
-
+ } else { // 24-b decoding + // Fear Effect 2 Artwork (4000+ = BIAS 1) + // Breaks: Lemmings + //MDECOUTDMA_INT( ((size / 4) / BIAS) * 4000); + size = size / ((24 * 16) / 2); for (; size > 0; size--, image += (24 * 16)) { mdec.rl = rl2blk(blk, mdec.rl); @@ -546,23 +546,23 @@ void psxDma1(u32 adr, u32 bcr, u32 chcr) { } } - /*
- Absolute minimum DMA time:
-
- # bytes written to memory *
- average cycles to create byte /
- 32-bit DMA per cycle
-
-
- Note that FF9 Dali accepts 1-75~150
- before slowdown occurs. No crash.
- */
-
- dmacnt = (image - (u16 *)PSXM(adr)) * 1;
-
- MDECOUTDMA_INT( dmacnt / 4);
-
-
+ /* + Absolute minimum DMA time: + + # bytes written to memory * + average cycles to create byte / + 32-bit DMA per cycle + + + Note that FF9 Dali accepts 1-75~150 + before slowdown occurs. No crash. + */ + + dmacnt = (image - (u16 *)PSXM(adr)) * 1; + + MDECOUTDMA_INT( dmacnt / 4); + + mdec.reg1 |= MDEC1_BUSY; } |
