Classic Snake game for RETRO

Dependencies:   mbed

Committer:
Architect
Date:
Mon Jan 12 20:23:34 2015 +0000
Revision:
1:52a4c894086e
Parent:
0:5160597f3364
Removed USBDevice since it is not needed

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Architect 0:5160597f3364 1 #include "mbed.h"
Architect 0:5160597f3364 2
Architect 0:5160597f3364 3 #pragma once
Architect 0:5160597f3364 4
Architect 0:5160597f3364 5 class DisplayN18 {
Architect 0:5160597f3364 6 static const unsigned char STEP = 4;
Architect 0:5160597f3364 7
Architect 0:5160597f3364 8 DigitalOut resetPin;
Architect 0:5160597f3364 9 DigitalOut backlightPin;
Architect 0:5160597f3364 10 DigitalOut rsPin;
Architect 0:5160597f3364 11 DigitalOut csPin;
Architect 0:5160597f3364 12 SPI spi;
Architect 0:5160597f3364 13
Architect 0:5160597f3364 14 void writeCommand(unsigned char command);
Architect 0:5160597f3364 15 void writeData(unsigned char data);
Architect 0:5160597f3364 16 void writeData(const unsigned char* data, unsigned int length);
Architect 0:5160597f3364 17
Architect 0:5160597f3364 18 void reset();
Architect 0:5160597f3364 19 void initialize();
Architect 0:5160597f3364 20 void setClippingArea(unsigned char x, unsigned char y, unsigned char width, unsigned char height);
Architect 0:5160597f3364 21
Architect 0:5160597f3364 22 public:
Architect 0:5160597f3364 23 DisplayN18();
Architect 0:5160597f3364 24
Architect 0:5160597f3364 25 /**White*/
Architect 0:5160597f3364 26 static const uint16_t White;
Architect 0:5160597f3364 27
Architect 0:5160597f3364 28 /**Silver*/
Architect 0:5160597f3364 29 static const uint16_t Silver;
Architect 0:5160597f3364 30
Architect 0:5160597f3364 31 /**Gray*/
Architect 0:5160597f3364 32 static const uint16_t Gray;
Architect 0:5160597f3364 33
Architect 0:5160597f3364 34 /**Black*/
Architect 0:5160597f3364 35 static const uint16_t Black;
Architect 0:5160597f3364 36
Architect 0:5160597f3364 37 /**Red*/
Architect 0:5160597f3364 38 static const uint16_t Red;
Architect 0:5160597f3364 39
Architect 0:5160597f3364 40 /**Maroon*/
Architect 0:5160597f3364 41 static const uint16_t Maroon;
Architect 0:5160597f3364 42
Architect 0:5160597f3364 43 /**Yellow*/
Architect 0:5160597f3364 44 static const uint16_t Yellow;
Architect 0:5160597f3364 45
Architect 0:5160597f3364 46 /**Olive*/
Architect 0:5160597f3364 47 static const uint16_t Olive;
Architect 0:5160597f3364 48
Architect 0:5160597f3364 49 /**Lime*/
Architect 0:5160597f3364 50 static const uint16_t Lime;
Architect 0:5160597f3364 51
Architect 0:5160597f3364 52 /**Green*/
Architect 0:5160597f3364 53 static const uint16_t Green;
Architect 0:5160597f3364 54
Architect 0:5160597f3364 55 /**Aqua*/
Architect 0:5160597f3364 56 static const uint16_t Aqua;
Architect 0:5160597f3364 57
Architect 0:5160597f3364 58 /**Teal*/
Architect 0:5160597f3364 59 static const uint16_t Teal;
Architect 0:5160597f3364 60
Architect 0:5160597f3364 61 /**Blue*/
Architect 0:5160597f3364 62 static const uint16_t Blue;
Architect 0:5160597f3364 63
Architect 0:5160597f3364 64 /**Navy*/
Architect 0:5160597f3364 65 static const uint16_t Navy;
Architect 0:5160597f3364 66
Architect 0:5160597f3364 67 /**Fuchsia*/
Architect 0:5160597f3364 68 static const uint16_t Fuchsia;
Architect 0:5160597f3364 69
Architect 0:5160597f3364 70 /**Purple*/
Architect 0:5160597f3364 71 static const uint16_t Purple;
Architect 0:5160597f3364 72
Architect 0:5160597f3364 73 static const unsigned int WIDTH = 160;
Architect 0:5160597f3364 74 static const unsigned int HEIGHT = 128;
Architect 0:5160597f3364 75 static const unsigned char CHAR_WIDTH = 5;
Architect 0:5160597f3364 76 static const unsigned char CHAR_HEIGHT = 8;
Architect 0:5160597f3364 77 static const unsigned char CHAR_SPACING = 1;
Architect 0:5160597f3364 78
Architect 0:5160597f3364 79 static unsigned short rgbToShort(unsigned char r, unsigned char g, unsigned char b);
Architect 0:5160597f3364 80
Architect 0:5160597f3364 81 void clear(unsigned short backColor = 0x0000);
Architect 0:5160597f3364 82 void draw(const unsigned short* data, int x, int y, int width, int height);
Architect 0:5160597f3364 83 void setPixel(int x, int y, unsigned short foreColor);
Architect 0:5160597f3364 84
Architect 0:5160597f3364 85 void fillRect(int x, int y, int width, int height, unsigned short foreColor);
Architect 0:5160597f3364 86 void drawRect(int x, int y, int width, int height, unsigned short foreColor);
Architect 0:5160597f3364 87
Architect 0:5160597f3364 88 void fillCircle(int x, int y, int radius, unsigned short foreColor);
Architect 0:5160597f3364 89 void drawCircle(int x, int y, int radius, unsigned short foreColor);
Architect 0:5160597f3364 90
Architect 0:5160597f3364 91 void drawLine(int x0, int y0, int x1, int y1, unsigned short foreColor);
Architect 0:5160597f3364 92
Architect 0:5160597f3364 93 void drawCharacter(int x, int y, const char character, unsigned short foreColor, unsigned short backColor, unsigned char fontSize = 1);
Architect 0:5160597f3364 94 void drawString(int x, int y, const char* str, unsigned short foreColor, unsigned short backColor, unsigned char fontSize = 1);
Architect 0:5160597f3364 95 };