mirror of https://github.com/xemu-project/xemu.git
Fix vm state save/load
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4742 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
cc53d26d4d
commit
4143f3e09c
13
hw/cs4231a.c
13
hw/cs4231a.c
|
@ -601,17 +601,23 @@ static void cs_save(QEMUFile *f, void *opaque)
|
||||||
{
|
{
|
||||||
CSState *s = opaque;
|
CSState *s = opaque;
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
|
uint32_t val;
|
||||||
|
|
||||||
for (i = 0; i < CS_REGS; i++)
|
for (i = 0; i < CS_REGS; i++)
|
||||||
qemu_put_be32s(f, &s->regs[i]);
|
qemu_put_be32s(f, &s->regs[i]);
|
||||||
|
|
||||||
qemu_put_buffer(f, s->dregs, CS_DREGS);
|
qemu_put_buffer(f, s->dregs, CS_DREGS);
|
||||||
|
val = s->dma_running; qemu_put_be32s(f, &val);
|
||||||
|
val = s->audio_free; qemu_put_be32s(f, &val);
|
||||||
|
val = s->transferred; qemu_put_be32s(f, &val);
|
||||||
|
val = s->aci_counter; qemu_put_be32s(f, &val);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int cs_load(QEMUFile *f, void *opaque, int version_id)
|
static int cs_load(QEMUFile *f, void *opaque, int version_id)
|
||||||
{
|
{
|
||||||
CSState *s = opaque;
|
CSState *s = opaque;
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
|
uint32_t val, dma_running;
|
||||||
|
|
||||||
if (version_id > 1)
|
if (version_id > 1)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
@ -620,6 +626,13 @@ static int cs_load(QEMUFile *f, void *opaque, int version_id)
|
||||||
qemu_get_be32s(f, &s->regs[i]);
|
qemu_get_be32s(f, &s->regs[i]);
|
||||||
|
|
||||||
qemu_get_buffer(f, s->dregs, CS_DREGS);
|
qemu_get_buffer(f, s->dregs, CS_DREGS);
|
||||||
|
|
||||||
|
qemu_get_be32s(f, &dma_running);
|
||||||
|
qemu_get_be32s(f, &val); s->audio_free = val;
|
||||||
|
qemu_get_be32s(f, &val); s->transferred = val;
|
||||||
|
qemu_get_be32s(f, &val); s->aci_counter = val;
|
||||||
|
if (dma_running && (s->dregs[Interface_Configuration] & PEN))
|
||||||
|
cs_reset_voices (s, s->dregs[FS_And_Playback_Data_Format]);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue