browser

write-dispatcher.c

write-dispatcher.c
calendarsave
static inline void write(xyw_word addr, xyw_byte val)
{
    if (addr >= DEVICE_AREA_START)
    {
        xyw_byte dev_num = get_device(addr);
        if (dev_num >= XYW_TOTAL_DEVICES || !xyw_devices[dev_num].write)
        {
            *error = XYW_ERROR_DEVICE_UNAVAILABLE;
            return;
        }
        xyw_byte dev_addr = get_device_address(addr);
        xyw_devices[dev_num].write(get_device_data(addr), dev_addr, val, error);
        return;
    }
    xyw_memory[addr] = val;
}