summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>2007-07-03 09:55:03 +0000
committerblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>2007-07-03 09:55:03 +0000
commitfda77c2d65d15ed35b01f60be37a17e2cd83bfe3 (patch)
tree6f94a971d48e84144666c6a31609848396085542
parentaeb30be60a92148e38d47f79b6f566a47a8a6cbd (diff)
downloadqemu-fda77c2d65d15ed35b01f60be37a17e2cd83bfe3.tar.gz
Fix loadvm
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3044 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r--hw/iommu.c2
-rw-r--r--hw/tcx.c18
2 files changed, 10 insertions, 10 deletions
diff --git a/hw/iommu.c b/hw/iommu.c
index 082451f986..77d8b817e6 100644
--- a/hw/iommu.c
+++ b/hw/iommu.c
@@ -259,7 +259,7 @@ static int iommu_load(QEMUFile *f, void *opaque, int version_id)
return -EINVAL;
for (i = 0; i < IOMMU_NREGS; i++)
- qemu_put_be32s(f, &s->regs[i]);
+ qemu_get_be32s(f, &s->regs[i]);
qemu_get_be64s(f, &s->iostart);
return 0;
diff --git a/hw/tcx.c b/hw/tcx.c
index 10ae987fc2..c334f09234 100644
--- a/hw/tcx.c
+++ b/hw/tcx.c
@@ -354,9 +354,6 @@ static void tcx_save(QEMUFile *f, void *opaque)
{
TCXState *s = opaque;
- qemu_put_be32s(f, (uint32_t *)&s->vram);
- qemu_put_be32s(f, (uint32_t *)&s->vram24);
- qemu_put_be32s(f, (uint32_t *)&s->cplane);
qemu_put_be16s(f, (uint16_t *)&s->height);
qemu_put_be16s(f, (uint16_t *)&s->width);
qemu_put_be16s(f, (uint16_t *)&s->depth);
@@ -370,13 +367,16 @@ static void tcx_save(QEMUFile *f, void *opaque)
static int tcx_load(QEMUFile *f, void *opaque, int version_id)
{
TCXState *s = opaque;
-
- if (version_id != 3)
+ uint32_t dummy;
+
+ if (version_id != 3 && version_id != 4)
return -EINVAL;
- qemu_get_be32s(f, (uint32_t *)&s->vram);
- qemu_get_be32s(f, (uint32_t *)&s->vram24);
- qemu_get_be32s(f, (uint32_t *)&s->cplane);
+ if (version_id == 3) {
+ qemu_get_be32s(f, (uint32_t *)&dummy);
+ qemu_get_be32s(f, (uint32_t *)&dummy);
+ qemu_get_be32s(f, (uint32_t *)&dummy);
+ }
qemu_get_be16s(f, (uint16_t *)&s->height);
qemu_get_be16s(f, (uint16_t *)&s->width);
qemu_get_be16s(f, (uint16_t *)&s->depth);
@@ -546,7 +546,7 @@ void tcx_init(DisplayState *ds, target_phys_addr_t addr, uint8_t *vram_base,
cpu_register_physical_memory(addr + 0x00301000ULL, TCX_THC_NREGS_24,
dummy_memory);
- register_savevm("tcx", addr, 3, tcx_save, tcx_load, s);
+ register_savevm("tcx", addr, 4, tcx_save, tcx_load, s);
qemu_register_reset(tcx_reset, s);
tcx_reset(s);
dpy_resize(s->ds, width, height);