Este documento descreve a C API em andamento para escrever chips personalizados para o simulador Wokwi.
Primeiro, certifique-se de incluir wokwi-api.h. Cada método externo que você declara deve ser encapsulado com a macro EXPORT (por exemplo, void EXPORT(my_method_name) (uint32_t arg) { ... }).
O chip deve declarar um método chip_init. Este método será chamado para cada nova instância do chip. Se o chip possui algum estado interno, o chip_init deve alocar memória para o estado interno e retornar um ponteiro para esta memória.
Este ponteiro será passado no primeiro argumento para qualquer ouvinte que você declarar (por exemplo, chip_pin_change). Para chip sem nenhum estado interno, basta retornar NULL.
Aqui está um exemplo de um arquivo de chip mínimo: