Ikenna Adrian Ozoemena 201157039
Dependencies: mbed
main.cpp@8:87a845b8575e, 2019-03-12 (annotated)
- Committer:
- ikenna1
- Date:
- Tue Mar 12 10:53:11 2019 +0000
- Revision:
- 8:87a845b8575e
- Parent:
- 4:740e14ebbc97
- Child:
- 9:241a1a7d8527
Started using RosenEngine to draw ship in main function
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ikenna1 | 0:0d446aab48a6 | 1 | /* |
ikenna1 | 0:0d446aab48a6 | 2 | ELEC2645 Embedded Systems Project |
ikenna1 | 0:0d446aab48a6 | 3 | School of Electronic & Electrical Engineering |
ikenna1 | 0:0d446aab48a6 | 4 | University of Leeds |
ikenna1 | 0:0d446aab48a6 | 5 | Name: Ikenna Adrian Ozoemena |
ikenna1 | 0:0d446aab48a6 | 6 | Username: el17aio |
ikenna1 | 0:0d446aab48a6 | 7 | Student ID Number: 201157039 |
ikenna1 | 0:0d446aab48a6 | 8 | Date: 20/02/2019 |
ikenna1 | 1:9835d6304284 | 9 | */ |
ikenna1 | 1:9835d6304284 | 10 | |
ikenna1 | 3:f9cd1a38d5c6 | 11 | //______________pre-processor directives________________________________________ |
ikenna1 | 2:66a4e5d7a7cd | 12 | #include "mbed.h" |
ikenna1 | 2:66a4e5d7a7cd | 13 | #include "Gamepad.h" |
ikenna1 | 2:66a4e5d7a7cd | 14 | #include "N5110.h" |
ikenna1 | 8:87a845b8575e | 15 | #include "RosenEngine.h" |
ikenna1 | 3:f9cd1a38d5c6 | 16 | |
ikenna1 | 3:f9cd1a38d5c6 | 17 | //_______________objects________________________________________________________ |
ikenna1 | 3:f9cd1a38d5c6 | 18 | N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); |
ikenna1 | 3:f9cd1a38d5c6 | 19 | Gamepad pad; |
ikenna1 | 3:f9cd1a38d5c6 | 20 | |
ikenna1 | 3:f9cd1a38d5c6 | 21 | //_______________prototypes_____________________________________________________ |
ikenna1 | 3:f9cd1a38d5c6 | 22 | void init(); |
ikenna1 | 3:f9cd1a38d5c6 | 23 | void welcome(); |
ikenna1 | 3:f9cd1a38d5c6 | 24 | |
ikenna1 | 3:f9cd1a38d5c6 | 25 | //_______________functions______________________________________________________ |
ikenna1 | 3:f9cd1a38d5c6 | 26 | int main() |
ikenna1 | 3:f9cd1a38d5c6 | 27 | { |
ikenna1 | 3:f9cd1a38d5c6 | 28 | init(); // initialise and then display welcome screen... |
ikenna1 | 3:f9cd1a38d5c6 | 29 | welcome(); // waiting for the user to start |
ikenna1 | 3:f9cd1a38d5c6 | 30 | |
ikenna1 | 3:f9cd1a38d5c6 | 31 | // game loop - read input, update the game state and render the display |
ikenna1 | 3:f9cd1a38d5c6 | 32 | while (1) { |
ikenna1 | 3:f9cd1a38d5c6 | 33 | |
ikenna1 | 3:f9cd1a38d5c6 | 34 | } |
ikenna1 | 3:f9cd1a38d5c6 | 35 | } |
ikenna1 | 1:9835d6304284 | 36 | |
ikenna1 | 3:f9cd1a38d5c6 | 37 | void init() |
ikenna1 | 3:f9cd1a38d5c6 | 38 | { |
ikenna1 | 3:f9cd1a38d5c6 | 39 | // need to initialise LCD and Gamepad |
ikenna1 | 3:f9cd1a38d5c6 | 40 | lcd.init(); |
ikenna1 | 3:f9cd1a38d5c6 | 41 | pad.init(); |
ikenna1 | 3:f9cd1a38d5c6 | 42 | |
ikenna1 | 3:f9cd1a38d5c6 | 43 | } |
ikenna1 | 3:f9cd1a38d5c6 | 44 | |
ikenna1 | 3:f9cd1a38d5c6 | 45 | // simple splash screen displayed on start-up |
ikenna1 | 3:f9cd1a38d5c6 | 46 | void welcome() |
ikenna1 | 3:f9cd1a38d5c6 | 47 | { |
ikenna1 | 1:9835d6304284 | 48 | |
ikenna1 | 3:f9cd1a38d5c6 | 49 | // title sprite |
ikenna1 | 3:f9cd1a38d5c6 | 50 | const int title[9][48] = { |
ikenna1 | 3:f9cd1a38d5c6 | 51 | { 1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,1,1,1,1,0,0,0,0,1,1,1,1,1,1,1,1,0,0,1,1,1,1,0,0,0,1 }, |
ikenna1 | 3:f9cd1a38d5c6 | 52 | { 1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,1 }, |
ikenna1 | 3:f9cd1a38d5c6 | 53 | { 1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,1 }, |
ikenna1 | 3:f9cd1a38d5c6 | 54 | { 1,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,1 }, |
ikenna1 | 3:f9cd1a38d5c6 | 55 | { 1,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,1,1,1,1,1,1,1,1,0,0,1,0,0,1,1,1,1,1,0,0,1,0,0,1,0,0,0,1 }, |
ikenna1 | 3:f9cd1a38d5c6 | 56 | { 1,0,0,0,0,1,1,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,1 }, |
ikenna1 | 3:f9cd1a38d5c6 | 57 | { 1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,1 }, |
ikenna1 | 3:f9cd1a38d5c6 | 58 | { 1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1 }, |
ikenna1 | 3:f9cd1a38d5c6 | 59 | { 1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,0,0,1,0,0,0,0,0,0,1 }, |
ikenna1 | 3:f9cd1a38d5c6 | 60 | }; |
ikenna1 | 3:f9cd1a38d5c6 | 61 | // draw border and title sprite |
ikenna1 | 3:f9cd1a38d5c6 | 62 | lcd.drawRect(0,0,84,48,FILL_TRANSPARENT); |
ikenna1 | 3:f9cd1a38d5c6 | 63 | lcd.drawSprite(0,0,9,48,(int *)title); |
ikenna1 | 4:740e14ebbc97 | 64 | |
ikenna1 | 4:740e14ebbc97 | 65 | // Print start |
ikenna1 | 4:740e14ebbc97 | 66 | lcd.printString(" Press Start ",2,4); |
ikenna1 | 3:f9cd1a38d5c6 | 67 | lcd.refresh(); |
ikenna1 | 3:f9cd1a38d5c6 | 68 | |
ikenna1 | 3:f9cd1a38d5c6 | 69 | } |