#include "riscos.h"

class Wimp : public Module
{
private:
  void SlotSize (void);
  void ReadSysInfo (void);

  unsigned int current_slot;
  unsigned int next_slot;

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

  Wimp (void) : Module ()
  {
    module_name = "WindowManager";
    version_major = 3;
    version_minor = 68;
    swi_chunk_begin = 0x400c0;
    swi_chunk_end = 0x400ff;
    Initialise ();
  }
  virtual ~Wimp () {}

  void Initialise (void);

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