src/mess/drivers/fmtowns.c
| r9123 | r9124 | |
| 1332 | 1332 | logerror("CD: CD-DA start from LBA:%i length:%i\n",state->towns_cd.cdda_current,state->towns_cd.cdda_length); |
| 1333 | 1333 | |
| 1334 | 1334 | state->towns_cd.extra_status = 1; |
| 1335 | | towns_cd_set_status(device->machine,0x00,0x00,0x00,0x00); |
| 1335 | towns_cd_set_status(device->machine,0x00,0x03,0x00,0x00); |
| 1336 | 1336 | } |
| 1337 | 1337 | |
| 1338 | 1338 | static void towns_cdrom_execute_command(running_device* device) |
| r9123 | r9124 | |
| 1396 | 1396 | towns_cd_set_status(device->machine,0x00,0x00,0x00,0x00); |
| 1397 | 1397 | break; |
| 1398 | 1398 | } |
| 1399 | | if(cdda_audio_active(state->cdda)) |
| 1399 | if(cdda_audio_active(state->cdda) && !cdda_audio_paused(state->cdda)) |
| 1400 | 1400 | towns_cd_set_status(device->machine,0x00,0x03,0x00,0x00); |
| 1401 | 1401 | else |
| 1402 | 1402 | towns_cd_set_status(device->machine,0x00,0x01,0x00,0x00); |
| r9123 | r9124 | |
| 1411 | 1411 | } |
| 1412 | 1412 | logerror("CD: Command 0x81: set state (CDDASET)\n"); |
| 1413 | 1413 | break; |
| 1414 | | case 0x84: // Stop CD audio track |
| 1414 | case 0x84: // Stop CD audio track -- generates no status output? |
| 1415 | 1415 | if(state->towns_cd.command & 0x20) |
| 1416 | 1416 | { |
| 1417 | 1417 | state->towns_cd.extra_status = 1; |
| 1418 | 1418 | towns_cd_set_status(device->machine,0x00,0x00,0x00,0x00); |
| 1419 | | cdda_stop_audio(state->cdda); |
| 1419 | cdda_pause_audio(state->cdda,1); |
| 1420 | 1420 | } |
| 1421 | 1421 | logerror("CD: Command 0x84: STOP CD-DA\n"); |
| 1422 | 1422 | break; |
| r9123 | r9124 | |
| 1425 | 1425 | { |
| 1426 | 1426 | state->towns_cd.extra_status = 1; |
| 1427 | 1427 | towns_cd_set_status(device->machine,0x00,0x00,0x00,0x00); |
| 1428 | | cdda_stop_audio(state->cdda); |
| 1428 | cdda_pause_audio(state->cdda,1); |
| 1429 | 1429 | } |
| 1430 | 1430 | logerror("CD: Command 0x85: STOP CD-DA\n"); |
| 1431 | 1431 | break; |
| 1432 | case 0x87: // Resume CD-DA playback |
| 1433 | if(state->towns_cd.command & 0x20) |
| 1434 | { |
| 1435 | state->towns_cd.extra_status = 1; |
| 1436 | towns_cd_set_status(device->machine,0x00,0x03,0x00,0x00); |
| 1437 | cdda_pause_audio(state->cdda,0); |
| 1438 | } |
| 1439 | logerror("CD: Command 0x87: RESUME CD-DA\n"); |
| 1440 | break; |
| 1432 | 1441 | default: |
| 1433 | 1442 | state->towns_cd.extra_status = 0; |
| 1434 | 1443 | towns_cd_set_status(device->machine,0x10,0x00,0x00,0x00); |