/* Final working dummy for serialport on QNX - no class methods, no networking */

#include "dosbox.h"
#include "programs.h"

/* Globals */
void* serialports[4] = {nullptr, nullptr, nullptr, nullptr};
bool serialMouseEmulated = false;

/* Core serial functions */
Bitu SERIAL_ProgramStart(Program** /*make*/) { return 0; }
void SERIAL_Init() {}
void SERIAL_EventHandler_PIC_Event(Bitu /*val*/) {}

void BIOS_Post_register_comports() {}
void BIOS_Post_register_comports_PNP() {}
int bios_post_comport_count() { return 0; }

void on_mouse_event_for_serial(int /*dx*/, int /*dy*/, unsigned char /*button*/) {}
void runSerial(const char* /*command*/) {}

/* Platform stubs */
int SERIAL_open(const char* /*port*/, void** /*comport*/) { return 0; }
void SERIAL_close(void* /*comport*/) {}
void SERIAL_setCommParameters(void* /*comport*/, int, char, int, int) {}
int SERIAL_sendchar(void* /*comport*/, char) { return 0; }
int SERIAL_getchar(void* /*comport*/, unsigned char*, unsigned char*, bool, unsigned long) { return 0; }

/* Global stubs for the methods called from dos.cpp and hardware (opl boards, etc.) */
bool CSerial_Putchar(uint8_t /*data*/, bool /*wait_dsr*/, bool /*wait_cts*/, Bitu /*timeout*/) { return false; }
bool CSerial_Getchar(uint8_t* /*data*/, uint8_t* /*lsr*/, bool /*wait_dsr*/, Bitu /*timeout*/) { return false; }
