17 lines
444 B
C++
Raw Normal View History

2024-05-11 21:14:14 -04:00
#include <libreborn/libreborn.h>
#include "host.h"
// Registration
static handler_t *handlers[256];
2024-06-04 18:29:13 -04:00
void _add_handler(const unsigned char id, handler_t *handler) {
2024-05-11 21:14:14 -04:00
if (handlers[id]) {
ERR("Conflicting Trampolines For ID: %i", (int) id);
}
handlers[id] = handler;
}
// Trampoline
2024-06-04 18:29:13 -04:00
uint32_t trampoline(const trampoline_writer_t writer, const uint32_t id, const unsigned char *args) {
return handlers[id](writer, args);
2024-05-11 21:14:14 -04:00
}