#ifndef __PATCH_H__
#define __PATCH_H__


enum ESCAPE
{
  ESC_SIOV,
/*
 * These are special device escape codes required by the Basic version
 */
  ESC_E_OPEN,
  ESC_E_CLOSE,
  ESC_E_READ,
  ESC_E_WRITE,
  ESC_E_STATUS,
  ESC_E_SPECIAL,

  ESC_K_OPEN,
  ESC_K_CLOSE,
  ESC_K_READ,
  ESC_K_WRITE,
  ESC_K_STATUS,
  ESC_K_SPECIAL,
/*
 * These are Escape codes for the normal device handlers.
 * Some are never used and some are only sometimes used.
 */

  ESC_PHOPEN = 0xb0,
  ESC_PHCLOS = 0xb1,
  ESC_PHREAD = 0xb2,
  ESC_PHWRIT = 0xb3,
  ESC_PHSTAT = 0xb4,
  ESC_PHSPEC = 0xb5,
  ESC_PHINIT = 0xb6,

  ESC_HHOPEN = 0xc0,
  ESC_HHCLOS = 0xc1,
  ESC_HHREAD = 0xc2,
  ESC_HHWRIT = 0xc3,
  ESC_HHSTAT = 0xc4,
  ESC_HHSPEC = 0xc5,
  ESC_HHINIT = 0xc6,

  ESC_MONITOR = 0xd0,
  ESC_BREAK = 0xd1
};

void PatchOsA(void);
void PatchOsB(void);
void PatchOsXL(void);
void Escape (int esc_code);

#endif
