Subversion Repositories pentevo

Rev

Rev 126 | Rev 149 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. #ifndef __MAIN_H__
  2. #define __MAIN_H__
  3.  
  4. /**
  5.  * @mainpage  General program for ATMEGA128 ZX Evolution.
  6.  *
  7.  * @section history Revision history
  8.  *
  9.  * @subsection current Current version.
  10.  * - Fix Update Flag in register C (emulation Gluk clock).
  11.  * - Add modes register and save/restore it to RTC NVRAM.
  12.  * - Add support for zx (mechanical) keyboard.
  13.  * - Add support for Kempston joystick.
  14.  *
  15.  * @subsection ver_1_00 Version 1.00 - base version.
  16.  *
  17.  */
  18.  
  19. /**
  20.  * @file
  21.  * @brief Main module.
  22.  * @author http://www.nedopc.com
  23.  */
  24.  
  25. /** Common flag register. */
  26. extern volatile UBYTE flags_register;
  27. /** Direction for ps2 mouse data (0 - Receive/1 - Send). */
  28. #define FLAG_PS2MOUSE_DIRECTION 0x01
  29. /** Type of ps2 mouse (0 - classical [3bytes in packet]/1 - msoft [4bytes in packet]). */
  30. #define FLAG_PS2MOUSE_TYPE      0x02
  31. /** Ps2 mouse data for zx (0 - not ready/1 - ready). */
  32. #define FLAG_PS2MOUSE_ZX_READY  0x04
  33. /** Spi interrupt detected (0 - not received/1 - received). */
  34. #define FLAG_SPI_INT            0x08
  35.  
  36. /** Common modes register. */
  37. extern volatile UBYTE modes_register;
  38. /** VGA mode (0 - not set/1 - set). */
  39. #define MODE_VGA 0x01
  40.  
  41. /** Data buffer. */
  42. extern UBYTE dbuf[];
  43.  
  44. /** Input data */
  45. extern ULONG indata;
  46.  
  47. /**
  48.  * Writes specified length of buffer to SPI.
  49.  * @param size [in] - size of buffer.
  50.  */
  51. void put_buffer(UWORD size);
  52.  
  53.  
  54. #endif //__MAIN_H__
  55.