Revision e14da0af

b/hw/vmport.c
43 43
    void *opaque[VMPORT_ENTRIES];
44 44
} VMPortState;
45 45

  
46
static VMPortState port_state;
46
static VMPortState *port_state;
47 47

  
48 48
void vmport_register(unsigned char command, IOPortReadFunc *func, void *opaque)
49 49
{
50 50
    if (command >= VMPORT_ENTRIES)
51 51
        return;
52 52

  
53
    port_state.func[command] = func;
54
    port_state.opaque[command] = opaque;
53
    port_state->func[command] = func;
54
    port_state->opaque[command] = opaque;
55 55
}
56 56

  
57 57
static uint32_t vmport_ioport_read(void *opaque, uint32_t addr)
......
125 125
{
126 126
    VMPortState *s = DO_UPCAST(VMPortState, dev, dev);
127 127

  
128
    register_ioport_read(0x5658, 1, 4, vmport_ioport_read, &s);
129
    register_ioport_write(0x5658, 1, 4, vmport_ioport_write, &s);
128
    register_ioport_read(0x5658, 1, 4, vmport_ioport_read, s);
129
    register_ioport_write(0x5658, 1, 4, vmport_ioport_write, s);
130 130
    isa_init_ioport(dev, 0x5658);
131
    port_state = s;
131 132
    /* Register some generic port commands */
132 133
    vmport_register(VMPORT_CMD_GETVERSION, vmport_cmd_get_version, NULL);
133 134
    vmport_register(VMPORT_CMD_GETRAMSIZE, vmport_cmd_ram_size, NULL);

Also available in: Unified diff