Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.h@6:478f81e79d9b, 2019-05-07 (annotated)
- Committer:
- Kern_EL17KJTF
- Date:
- Tue May 07 15:19:56 2019 +0000
- Revision:
- 6:478f81e79d9b
- Parent:
- 5:5667c4ec3d7e
- Child:
- 7:ffbc921c20f7
Due to L6312W error not allowing compiling, making the game in one file for now. - Options redone.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Kern_EL17KJTF | 1:7a0917df015a | 1 | #ifndef MAIN_H |
Kern_EL17KJTF | 1:7a0917df015a | 2 | #define MAIN_H |
Kern_EL17KJTF | 1:7a0917df015a | 3 | |
Kern_EL17KJTF | 1:7a0917df015a | 4 | // include the different header files |
Kern_EL17KJTF | 1:7a0917df015a | 5 | #include "mbed.h" |
Kern_EL17KJTF | 1:7a0917df015a | 6 | #include "N5110.h" |
Kern_EL17KJTF | 1:7a0917df015a | 7 | #include "Gamepad.h" |
Kern_EL17KJTF | 1:7a0917df015a | 8 | |
Kern_EL17KJTF | 6:478f81e79d9b | 9 | // main menu ------------------------ |
Kern_EL17KJTF | 2:6baf849b0270 | 10 | void init(); |
Kern_EL17KJTF | 1:7a0917df015a | 11 | void print_menu(); |
Kern_EL17KJTF | 1:7a0917df015a | 12 | void welcome(); |
Kern_EL17KJTF | 2:6baf849b0270 | 13 | void arrow_location(); |
Kern_EL17KJTF | 2:6baf849b0270 | 14 | void arrow_select(); |
Kern_EL17KJTF | 1:7a0917df015a | 15 | |
Kern_EL17KJTF | 2:6baf849b0270 | 16 | int menu_arrow[7][7] = { // Arrow pointer used in main menu |
Kern_EL17KJTF | 2:6baf849b0270 | 17 | {0,0,0,0,0,0,0,}, |
Kern_EL17KJTF | 2:6baf849b0270 | 18 | {0,0,0,0,1,0,0,}, |
Kern_EL17KJTF | 2:6baf849b0270 | 19 | {0,0,0,0,1,1,0,}, |
Kern_EL17KJTF | 2:6baf849b0270 | 20 | {1,1,1,1,1,1,1,}, |
Kern_EL17KJTF | 2:6baf849b0270 | 21 | {0,0,0,0,1,1,0,}, |
Kern_EL17KJTF | 2:6baf849b0270 | 22 | {0,0,0,0,1,0,0,}, |
Kern_EL17KJTF | 2:6baf849b0270 | 23 | {0,0,0,0,0,0,0,}, |
Kern_EL17KJTF | 2:6baf849b0270 | 24 | }; |
Kern_EL17KJTF | 2:6baf849b0270 | 25 | |
Kern_EL17KJTF | 2:6baf849b0270 | 26 | int menu_dk_face[36][34] = { // donkey kong face for menu |
Kern_EL17KJTF | 1:7a0917df015a | 27 | { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 28 | { 0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 29 | { 0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 30 | { 0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1,1,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 31 | { 0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,1,1,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 32 | { 0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 33 | { 0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,1,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 34 | { 0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,1,1,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 35 | { 0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 36 | { 0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 37 | { 0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 38 | { 0,0,0,1,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,1,1,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 39 | { 0,0,0,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 40 | { 0,1,1,0,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,1,0,1,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 41 | { 0,1,0,0,0,1,0,1,0,0,0,1,1,0,0,0,0,0,0,0,1,1,0,0,0,0,1,0,1,0,0,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 42 | { 0,1,0,0,0,1,0,0,1,0,0,1,0,1,1,1,0,1,1,1,0,1,0,0,0,1,0,0,1,0,0,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 43 | { 0,1,0,1,0,1,0,0,1,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,1,0,1,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 44 | { 0,1,0,1,0,1,0,0,1,0,1,0,0,1,1,0,1,0,1,1,0,0,1,0,0,1,0,0,1,0,1,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 45 | { 0,1,0,1,1,1,1,0,1,0,1,0,0,1,1,0,1,0,1,1,0,0,1,0,0,1,0,1,1,1,1,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 46 | { 0,1,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 47 | { 0,0,1,0,0,1,1,1,0,0,0,1,1,1,1,1,0,1,1,1,1,1,0,0,0,0,1,1,1,0,0,1,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 48 | { 0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 49 | { 0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 50 | { 0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 51 | { 0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 52 | { 0,1,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 53 | { 0,1,0,0,0,0,1,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,1,0,0,0,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 54 | { 0,1,0,0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,1,0,0,0,0,0,1,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 55 | { 0,0,1,0,0,0,0,0,1,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0,1,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 56 | { 0,0,1,1,1,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,1,1,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 57 | { 0,0,0,0,1,1,0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,1,0,0,0,0,1,1,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 58 | { 0,0,0,0,0,1,1,0,0,0,0,1,1,1,0,0,1,0,0,1,0,1,1,0,0,0,0,1,1,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 59 | { 0,0,0,0,0,0,1,1,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 60 | { 0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 61 | { 0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 62 | { 0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0 }, |
Kern_EL17KJTF | 1:7a0917df015a | 63 | }; |
Kern_EL17KJTF | 1:7a0917df015a | 64 | |
Kern_EL17KJTF | 6:478f81e79d9b | 65 | // Game Engine ---------------------- |
Kern_EL17KJTF | 6:478f81e79d9b | 66 | void game_engine_run(); |
Kern_EL17KJTF | 6:478f81e79d9b | 67 | // Donkey ----- |
Kern_EL17KJTF | 6:478f81e79d9b | 68 | void donkeykong_x_movement(); |
Kern_EL17KJTF | 5:5667c4ec3d7e | 69 | |
Kern_EL17KJTF | 5:5667c4ec3d7e | 70 | int game_dk_walking_right_1[16][16] = { |
Kern_EL17KJTF | 5:5667c4ec3d7e | 71 | {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 72 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 73 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 74 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 75 | {1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 76 | {1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 77 | {1,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 78 | {1,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 79 | {1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 80 | {1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 81 | {1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 82 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 83 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 84 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 85 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 86 | {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 87 | }; |
Kern_EL17KJTF | 5:5667c4ec3d7e | 88 | |
Kern_EL17KJTF | 5:5667c4ec3d7e | 89 | int game_dk_walking_left_1[16][16] = { |
Kern_EL17KJTF | 5:5667c4ec3d7e | 90 | {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 91 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 92 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 93 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 94 | {1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 95 | {1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 96 | {1,0,0,1,1,1,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 97 | {1,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 98 | {1,0,0,1,1,1,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 99 | {1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 100 | {1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 101 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 102 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 103 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 104 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 105 | {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 106 | }; |
Kern_EL17KJTF | 5:5667c4ec3d7e | 107 | |
Kern_EL17KJTF | 5:5667c4ec3d7e | 108 | int game_dk_stationary[16][16] = { |
Kern_EL17KJTF | 5:5667c4ec3d7e | 109 | {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 110 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 111 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 112 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 113 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 114 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 115 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 116 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 117 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 118 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 119 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 120 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 121 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 122 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 123 | {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 124 | {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,}, |
Kern_EL17KJTF | 5:5667c4ec3d7e | 125 | }; |
Kern_EL17KJTF | 6:478f81e79d9b | 126 | // Barrel ----- |
Kern_EL17KJTF | 6:478f81e79d9b | 127 | // Banana ----- |
Kern_EL17KJTF | 6:478f81e79d9b | 128 | // Controls ------------------------- |
Kern_EL17KJTF | 6:478f81e79d9b | 129 | void controls_run(); |
Kern_EL17KJTF | 6:478f81e79d9b | 130 | // Instructions --------------------- |
Kern_EL17KJTF | 6:478f81e79d9b | 131 | void instructions_run(); |
Kern_EL17KJTF | 6:478f81e79d9b | 132 | // Options -------------------------- |
Kern_EL17KJTF | 6:478f81e79d9b | 133 | |
Kern_EL17KJTF | 6:478f81e79d9b | 134 | class Options |
Kern_EL17KJTF | 6:478f81e79d9b | 135 | { |
Kern_EL17KJTF | 6:478f81e79d9b | 136 | |
Kern_EL17KJTF | 6:478f81e79d9b | 137 | public: |
Kern_EL17KJTF | 6:478f81e79d9b | 138 | |
Kern_EL17KJTF | 6:478f81e79d9b | 139 | Options(); |
Kern_EL17KJTF | 6:478f81e79d9b | 140 | |
Kern_EL17KJTF | 6:478f81e79d9b | 141 | ~Options(); |
Kern_EL17KJTF | 6:478f81e79d9b | 142 | |
Kern_EL17KJTF | 6:478f81e79d9b | 143 | void options_run(Gamepad &pad, N5110 &lcd); |
Kern_EL17KJTF | 6:478f81e79d9b | 144 | void options_brightness(Gamepad &pad, N5110 &lcd); |
Kern_EL17KJTF | 6:478f81e79d9b | 145 | void options_contrast(Gamepad &pad, N5110 &lcd); |
Kern_EL17KJTF | 6:478f81e79d9b | 146 | void options_volume(Gamepad &pad, N5110 &lcd); |
Kern_EL17KJTF | 6:478f81e79d9b | 147 | |
Kern_EL17KJTF | 6:478f81e79d9b | 148 | |
Kern_EL17KJTF | 6:478f81e79d9b | 149 | }; |
Kern_EL17KJTF | 6:478f81e79d9b | 150 | |
Kern_EL17KJTF | 6:478f81e79d9b | 151 | // High Scores----------------------- |
Kern_EL17KJTF | 6:478f81e79d9b | 152 | void high_scores_run(); |
Kern_EL17KJTF | 6:478f81e79d9b | 153 | |
Kern_EL17KJTF | 1:7a0917df015a | 154 | #endif |