Previous 199869 Revisions Next

r21013 Wednesday 13th February, 2013 at 04:35:53 UTC by Angelo Salese
Fixed a crash bug with CD block, fixes at very least Yoshimoto Mahjong
[src/emu/machine]stvcd.c

trunk/src/emu/machine/stvcd.c
r21012r21013
916916               return;
917917            }
918918
919            if (partitions[bufnum].numblks == 0)
919            if (partitions[bufnum].numblks < sectnum)
920920            {
921               printf("CD: buffer is empty\n");
922               /* TODO: why this is happening? */
921               printf("CD: buffer is not full %08x %08x\n",partitions[bufnum].numblks,sectnum);
923922               cr_standard_return(CD_STAT_REJECT);
924923               hirqreg |= (CMOK|EHST);
925924               return;
r21012r21013
959958               return;
960959            }
961960
962            if (partitions[bufnum].numblks == 0)
961            if (partitions[bufnum].numblks < sectnum)
963962            {
964               printf("CD: buffer is empty\n");
965               /* TODO: why this is happening? */
963               printf("CD: buffer is not full %08x %08x\n",partitions[bufnum].numblks,sectnum);
966964               cr_standard_return(CD_STAT_REJECT);
967965               hirqreg |= (CMOK|EHST);
968966               return;
r21012r21013
10101008               return;
10111009            }
10121010
1013            if (partitions[bufnum].numblks == 0)
1011            /* Yoshimoto Mahjong uses the REJECT status to verify when the data is ready. */
1012            if (partitions[bufnum].numblks < sectnum)
10141013            {
1015               printf("CD: buffer is empty\n");
1014               printf("CD: buffer is not full %08x %08x\n",partitions[bufnum].numblks,sectnum);
10161015               /* TODO: why this is happening? */
10171016               cr_standard_return(CD_STAT_REJECT);
10181017               hirqreg |= (CMOK|EHST);

Previous 199869 Revisions Next


© 1997-2024 The MAME Team