#include "riscos.h"

class SharedUnixLibrary : public Module
{
private:
  void RegisterUpCall (void);
  void DeRegisterUpCall (void);
  void SetValue (void);
  void Count (void);
  void Initialise (void);

public:
  char *module_name;
  int version_major;
  int version_minor;
  int swi_chunk_begin;
  int swi_chunk_end;

  SharedUnixLibrary (void) : Module ()
  {
    module_name = "SharedUnixLibrary";
    version_major = 0;
    version_minor = 3;
    swi_chunk_begin = 0x55c80;
    swi_chunk_end = 0x55cbf;
  }
  virtual ~SharedUnixLibrary () {}

  unsigned int SWIChunkBegin (void) { return swi_chunk_begin; }
  unsigned int SWIChunkEnd (void) { return swi_chunk_end; }
  bool SWI (unsigned int swinum, bool xbit);
};
