MCPcopy Create free account
hub / github.com/BlitterStudio/amiberry / save_cd

Function save_cd

src/blkdev.cpp:2465–2488  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2463}
2464
2465uae_u8 *save_cd (int num, size_t *len)
2466{
2467 struct blkdevstate *st = &state[num];
2468 uae_u8 *dstbak, *dst;
2469
2470 memset(st->play_qcode, 0, SUBQ_SIZE);
2471 if (!currprefs.cdslots[num].inuse || num >= MAX_TOTAL_SCSI_DEVICES)
2472 return NULL;
2473 if (!currprefs.cs_cd32cd && !currprefs.cs_cdtvcd && !currprefs.scsi)
2474 return NULL;
2475 dstbak = dst = xmalloc (uae_u8, 4 + MAX_DPATH + 4 + 4 + 4 + SUBQ_SIZE + 2 * MAX_DPATH);
2476 save_u32 (4 | 8 | 16);
2477 save_path (currprefs.cdslots[num].name, SAVESTATE_PATH_CD);
2478 save_u32 (currprefs.cdslots[num].type);
2479 save_u32 (0);
2480 save_u32 (0);
2481 sys_command_cd_qcode (num, st->play_qcode, -1, false);
2482 for (int i = 0; i < SUBQ_SIZE; i++)
2483 save_u8 (st->play_qcode[i]);
2484 save_u32 (st->play_end_pos);
2485 save_path_full(currprefs.cdslots[num].name, SAVESTATE_PATH_CD);
2486 *len = dst - dstbak;
2487 return dstbak;
2488}
2489
2490uae_u8 *restore_cd (int num, uae_u8 *src)
2491{

Callers 1

save_state_internalFunction · 0.85

Calls 1

sys_command_cd_qcodeFunction · 0.85

Tested by

no test coverage detected