// Minimal headless serial self-test -- NO jlInit (no video/graphics), so it // runs even where the graphics HAL can't (e.g. AROS on the Amiga). Opens the // DEFAULT port at 9600 8N1, sends a banner (TX heartbeat), then echoes every // received byte forever. A host serial peer verifies banner (TX) + echo (RX). #include int main(void) { jlSerialConfigT cfg; static const char banner[] = "JLSERTEST-READY\r\n"; cfg.baud = 9600u; cfg.dataBits = 8u; cfg.stopBits = 1u; cfg.parity = JL_SERIAL_PARITY_NONE; cfg.flow = JL_SERIAL_FLOW_NONE; cfg.unit = 0u; if (!jlSerialOpen(JL_SERIAL_DEFAULT, &cfg)) { return 1; } jlSerialWrite((const uint8_t *)banner, (uint16_t)(sizeof(banner) - 1u)); for (;;) { uint8_t buf[64]; uint16_t n; jlSerialPoll(); n = jlSerialRead(buf, (uint16_t)sizeof(buf)); if (n > 0u) { jlSerialWrite(buf, n); } } /* not reached */ }