diff --git a/.clangd b/.clangd
index d2f432e..e7cb1cf 100644
--- a/.clangd
+++ b/.clangd
@@ -5,10 +5,5 @@ CompileFlags:
- "-I/opt/devkitpro/devkitARM/include"
- "-I/opt/devkitpro/devkitARM/arm-none-eabi/include"
- "-I/opt/devkitpro/devkitARM/arm-none-eabi/include"
- - "-I/home/gruvw/SynologyDrive/Programmation/C/nds-game/labs/lab-5/Timers/precompiled"
- - "-I/home/gruvw/SynologyDrive/Programmation/C/nds-game/labs/lab-7/build"
- - "-I/home/gruvw/SynologyDrive/Programmation/C/nds-game/midterm/midterm-2017/precompiled"
- - "-I/home/gruvw/SynologyDrive/Programmation/C/nds-game/midterm/midterm-2017/source"
- - "-I/home/gruvw/SynologyDrive/Programmation/C/nds-game/midterm/midterm-2022/build"
- - "-I/home/gruvw/SynologyDrive/Programmation/C/nds-game/midterm/midterm-2023/build"
+ - "-I/home/gruvw/SynologyDrive/Programmation/C/epfl-nds-game/build/"
- "-DARM9"
diff --git a/.gitignore b/.gitignore
index f70ebeb..ff7a361 100644
--- a/.gitignore
+++ b/.gitignore
@@ -58,4 +58,4 @@ dkms.conf
*.arm9
*.elf
*.nds
-*/**/build
+build/*
diff --git a/labs/lab-10/Piano/.root b/.root
similarity index 100%
rename from labs/lab-10/Piano/.root
rename to .root
diff --git a/project/tic-tac-tile/Makefile b/Makefile
similarity index 100%
rename from project/tic-tac-tile/Makefile
rename to Makefile
diff --git a/README.md b/README.md
index f2a5866..c7a9ba3 100644
--- a/README.md
+++ b/README.md
@@ -1,10 +1,269 @@
-# NDS Game
+# Tic-Tac-Tile NDS Game Project
-EPFL EE-310 BA5 NDS repository
+EPFL BA5 EE-310 NDS project
+Lucas Jung (324724)
-See the following parts:
+This game is a [Tic-Tac-Toe](https://en.wikipedia.org/wiki/Tic-tac-toe) clone on the [NDS](https://en.wikipedia.org/wiki/Nintendo_DS).
-- [**Tic-Tac-Tile Project**](https://github.com/gruvw/epfl-nds-game/tree/main/project/tic-tac-tile)
-- [Labs](https://github.com/gruvw/epfl-nds-game/tree/main/labs)
-- [Course Summary](https://github.com/gruvw/epfl-nds-game/tree/main/notes)
-- [Midterms](https://github.com/gruvw/epfl-nds-game/tree/main/midterm)
+**Name**: the name Tic-Tac-Tile is a modification of the original Tic-Tac-Toe game name. It is a reference to the word "TacTile", denoting the bottom tactile screen of the NDS. Additionally, the last word "Tile" is a reference to the tile mode of the graphical engines of the NDS. The last layer of meaning behind the name is the sound of a clock "tic tac" as there is some kind of a time pressure aspect to the game.
+
+## Showcase
+
+Here are a few pictures of the Tic-Tac-Tile game:
+
+
+
+## Instructions
+
+Instructions to play Tic-Tac-Tile :)
+
+### Installation
+
+To install the game, you will need to obtain the `tic-tac-tile.nds` game file.
+
+Use one of the following method:
+
+- Download it online from the GitHub releases: [`tic-tac-tile.nds`](https://)
+- Build it from source: clone this repository and run `make build` in the same directory as this README (requires [`devkitpro-pacman`](https://apt.devkitpro.org/install-devkitpro-pacman)). The game file `tic-tac-tile.nds` will be generated in that directory.
+
+Place the `tic-tac-tile.nds` file inside the micro SD card of an [R4 cartridge](https://en.wikipedia.org/wiki/R4_cartridge).
+
+### Game
+
+Once the game boots up, you'll be welcomed by a nice background music and the settings menu.
+
+#### Settings
+
+It features 3 **game modes**:
+
+* Single player mode, against bot/AI
+* Two player mode, single NDS
+* Two player mode, two NDS over Wi-Fi
+
+Select among the 3 **speeds** to adjust the game's difficulty:
+
+* Slow (green)
+* Medium (orange)
+* Fast (red)
+
+#### Play
+
+1. Select the settings that you want by using the bottom touch screen. (see below for [Wi-Fi Two Player Mode Setup](#wi-fi-two-player-mode-setup))
+2. Press on the `START` button to launch a game.
+ * In Wi-Fi two player mode, the first player to press `START` will go first and starts the game for both players.
+3. Select the square where you want to place your piece using the `LEFT`, `RIGHT`, `UP`, `DOWN` arrow buttons.
+4. Press on the `A` button to confirm your choice and place your piece. Be carefull about the progress bar, you need to play before you run out of time to win!
+5. Wait for the other side to play.
+ * In single player mode, the bot will play instantly after your turn.
+ * In (local) two player mode, you need to hand out the Nintendo DS to the other player so they can play on the same device.
+ * In Wi-Fi two player mode, simply wait for your opponent to play on their Nintendo DS.
+6. Carry on till you reach the Game Over screen. Alternatively you can also press the `START` button at any moment to put an end to the current game and go directly to the Game Over screen.
+ * If one of the side won, their 3 winning pieces will be highlighted on the board. Additionally, the winning side will be crowned on the bottom screen.
+ * A clock will be displayed on the bottom screen in case they won because the other side ran out of time.
+ * No information will be displayed on the bottom screen if the game resulted in a draw or if it was interrupted. In that case, you will simply see the Game Over screen and the final state of the board.
+7. You can start a new game by pressing the `START` button to go back to the settings selection menu.
+
+Have fun !
+
+#### Wi-Fi Two Player Mode Setup
+
+In order to play in Two Player Mode over Wi-Fi, each player playing on their own NDS, you need to complete the following setup first:
+
+1. Take a smartphone and disable your Wi-Fi and cellular data (as you will create a public Access Point).
+2. Go into your phone settings a configure your Access Point (AP) network sharing.
+3. Setup the SSID (name of your internet sharing AP) to be `SEM-NDS`.
+4. Instead of putting a password, select `None` in the AP configuration security settings to disable password authentification, essentially making a public network.
+5. You are good to go :)
+
+NDS setup:
+
+1. Start the game on both NDS.
+2. Click on the "Two Player Wi-Fi" game mode. Keep the NDS very close to the AP.
+3. You will see the Wi-Fi icon show up while trying to connect to the AP:
+ * If the connection is successful, the "Two Player Wi-Fi" mode will now be selected.
+ * Otherwise (fails to connect to AP) it will stop trying to connect after a few seconds, hide the Wi-Fi icon and leave you in your current game mode.
+4. Once the "Two Player Wi-Fi" mode is selected (successfully connected to AP), the search icon will indicate that your NDS is ready to pair with another NDS:
+5. When two NDS are looking to connect together, they will find each other automatically and pair. The paired/success icon will be displayed on the two NDS once the connection is fully established:
+6. Each player can chose their own speed difficulty independently. You can now start a game!
+7. At the end of the game, each player needs to press the `START` button to go back to the main menu. The search process will start again (back to point 4). It allows to change opponent between games if another NDS is also searching (more than 2 NDS connected on AP). Otherwise just wait a few seconds to connect back to your opponent.
+
+**Note 1**: on the main menu, you can restart the pairing process by pressing the `SELECT` button (e.g. if you want to pair to someone else).
+
+**Note 2**: you can play with more than 2 NDS on the same Wi-Fi network! You can have multiple games running simultaneously (e.g. with 4 NDS).
+
+##### Troubleshoot
+
+You should not expect many issues with the game, as it went through extended testing before release.
+
+However, if you happen to run into an issue, there is a good chance that you will find the solution below:
+
+* **Problem 1** - You are stuck in a game. Simply press the `START` button once to bring up the Game Over screen, and then a second time to get back to the main menu.
+* **Problem 2** - Wi-Fi connection is momentary interrupted: this can take the form of longer time in search mode trying to pair to your opponent or a move played during a game that is not reflected on the other NDS during a game. This is normal and can happen, make sure to keep the phone AP very close to the NDS and wait for the messages to arrive.
+* **Problem 3** - If one or more NDS is blocked in search mode and cannot find the other NDS to connect to:
+ 1. First, try to press the `SELECT` button on all affected NDS to reset the connection process and see if it helps.
+ 2. If that did not work, it means the Wi-Fi connection is permanently lost (see Problem 4 below).
+* **Problem 4** - Wi-Fi connection is permanently lost: this can take the form of NDS blocked in search mode (even after pressing the `SELECT` button) or not being able to select the "Two Player Wi-Fi" mode. You can simply shutdown all the NDS and the smartphone Wi-Fi Access Point, and then restart the Wi-Fi setup (full systems reboot). Everything should be working normally after that.
+
+**Note**: there are no security features built into the Tic-Tac-Tile game. Games can be rigged by hackers on the same (public) local network.
+
+## Development
+
+This project was less about creating a great game to play than it was about controlling peripherals and embedded programming.
+I chose a simple game but utilized a lot of peripherals and NDS functionalities.
+The focus was on **code quality**, writing a good **documentation**, and **Wi-Fi communication reliability**.
+
+### Presentation
+
+#### NDS Features Checklist
+
+ARM Processors:
+
+* ARM9 to control the two screens, the buttons (Left, Right, Up, Down, A, Start, Select), send IPC messages to ARM7 to control sound and Wi-Fi.
+* ARM7 for audio, touchscreen and Wi-Fi.
+
+Timers / Interrupts:
+
+* Timer 0: variable speed, game time progress bar.
+* Timer 1: FREQ_64(60), game state FSM update.
+* Timer 2: TIMER_FREQ_64(10), button debounce, Wi-Fi spam prevention.
+
+Graphics:
+
+* Main display: Mode 5 with backgrounds 2 and 3 (ext. rotoscale), used to display the game pieces, and the board background + begin menu.
+* Sub display: Mode 5 with backgrounds 0 (tiled mode) and 2 (ext. rotoscale), used to display the settings selection + progress bar, and the game over screen.
+
+Keypad:
+
+* Controlling the top game board actions (interrupts):
+ * Left, Right, Up, Down = Move selected cell
+ * A = Place piece on selected cell
+ * Start = Start, Terminate, Restart game
+ * Select = Reinitiate NDS pairing (Wi-Fi)
+
+Touchscreen:
+
+* Select the game settings in the game menu, 6 different touch areas used, select game difficulty (speed) and game mode.
+* Reading touchscreen by polling.
+
+Sound:
+
+* There is a background music (MOD format) in the menu.
+* Another background music (MOD format) is playing during a game. It will speed up depending on the selected game difficulty.
+* Playing 3 sound effects (WAV format): when selecting a setting in the menu, when placing a piece on the board, and at the end of the game.
+
+Sprites:
+
+* 7 sprites in the project: 4 sprites are used to display the outcome of the game on the Game Over screen: (1) crown for the winner, each side (2) has their sprite, (1) clock to indicate losing because of timer; 3 sprites indicate the status of the NDS connection/pairing (Wi-Fi).
+
+Wi-Fi:
+
+* Wi-Fi connection with AP is used to communicate between two NDS and play two player games.
+* Designed and implemented P2P-BOP protocol to pair two NDS.
+* Designed and implemented Message Queue and ACK system to avoid packet loss.
+* Added simultaneous message (START) action recovery mechanism.
+
+#### NDS improvements
+
+* Implemented a bot/AI for single player mode that plays perfectly: using a minimax algorithm to find the best move + hard coded every first move response as it was to slow (~2 seconds) to compute.
+* Added button debounce procedure (using a timer) to avoid double trigger of NDS physical buttons.
+* Modified WiFi_minilib: implemented Wi-Fi AP connection timeout (do not stuck the game if can’t connect to AP, can still play other game modes even after connection failure).
+* If both players press START at the same time (in Wi-Fi mode) it will launch a conflict resolution process and still work as expected.
+* Wi-Fi stack implementation stands very strongly against packet loss thanks to the ACK and Message Queue system.
+
+**Note**: see source code for more details!
+
+### Project structure
+
+Here is the project structure:
+
+```
+.
+├── art
+├── audio
+├── data
+├── docs
+└── source
+ ├── controller
+ │ └── wifi
+ ├── model
+ └── view
+```
+
+* `art` - The folder with the [Aseprite](https://en.wikipedia.org/wiki/Aseprite) pixel "art" files for the game. There are 17 art files done entirely by me. Note that the colors in those files (and in `data`) might not be accurate as they are in fact redefined by the two color palettes in the game.
+* `audio` - The music and sound effect files. I did not create those myself, but I found them on sites that reference public and free to use sounds.
+* `data` - Arts export to images, later processed by [GRIT](https://www.coranac.com/man/grit/html/grit.htm).
+* `docs` - Contains the images used in this README.
+* `source` - The source code for the game. Follows a strict [MVC](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller) code architecture.
+ * `controller` - Puts together the view and model, and orchestrates the game's logic. It also contains the audio components.
+ * `wifi` - Implementation of the fully custom Wi-Fi stack and protocols (P2P-BOP and Message Queue ACK system).
+ * `model` - [Bit Field Vector](https://en.wikipedia.org/wiki/Bit_array) modelling of the Tic-Tac-Toe game. It also contains the implementation of the bot/AI used in single player mode.
+ * `view` - Contains the screen/graphics components and sprites control.
+
+**Note**: I wrote close to 2000 lines of C code for this project in the `source` folder. This does not account for debugging time, artwork, system design, testing and documentation.
+
+### Wi-Fi Connectivity Stack
+
+In order to ensure reliable communications over an unreliable and broadcast only channel I designed and implemented a new protocol: **Peer-to-Peer Broadcast Ordered Pairing (P2P-BOP) protocol**.
+
+It takes avantage and randomly chosen network IDs ordering to initiate a bidirectional connection between two devices after a discovery process.
+It is not tied to NDS and might aswell be used in other broadcast only peer-to-peer environment.
+
+Here is a simplified diagram of how it works:
+
+
+
+After a successful bidirectional pairing between two devices we are still left with the packet loss issue. To fix this problem, I implemented a packet acknowledgment (ACK) system along with a message queue.
+The device will keep sending their pending message while it was not ACKed by the other (paired) device.
+
+Here is a simplified diagram of how it works:
+
+
+
+Additionally the system will first check for the correct unique game identifier and match the sender and receiver IDs of the packet before processing it.
+That allows for more than two simultaneous players on the same AP Wi-Fi network.
+
+I also implemented a "simultaneous message action recovery mechanism" to fix the problem of two NDS sending the same message to each other at the same time and being stuck in a dead state.
+Essentially the connection leader will keep its state and inform the other NDS to reset their state when it detects a simultaneous message event (conflict resolution process).
+
+**Note**: if you want to further understand the implementation of those mechanisms, check the `source/controller/wifi/packet.c` file.
+
+### Roadmap
+
+- [X] Board model + utilities
+- [X] Main background graphics
+- [X] Connect board model to view
+- [X] Keys handling + cell selection
+- [X] Sub background settings graphics
+- [X] Settings selection touch
+- [X] Begin and game over screens
+- [X] Custom palettes generation
+- [X] AI (minimax)
+- [X] Timer + progress bar
+- [X] Game Over sprites
+- [X] Improve project structure
+- [X] Music + sound effects
+- [X] Polish code + add comments
+- [X] Fully test game
+- [X] Presentation
+- [X] Write README
+- [X] Wi-Fi packet stack + P2P-BOP design and implementation
+- [X] Wi-Fi ACK system
+- [X] Wi-Fi two player mode messages processing
+- [X] Keys debounce with timer
+- [X] Same packet simultaneous sending resolution (start game)
+- [X] Clean, comment, and polish code
+- [X] Game music speed changes with difficulty
+- [X] Fully test game
+- [X] Diagrams (Game FSM, P2P-BOP connection, ACK & queue FSM)
+- [X] Update presentation
+- [X] Go back to 16 bits network identifiers
+- [X] README full documentation + code structure + BOP protocol explain
+- [X] Last full project review (code, README, presentation, game test)
+- [X] GitHub reorganize repo (project and others)
+- [ ] GitHub release (add to README)
diff --git a/project/tic-tac-tile/art/a-palette.aseprite b/art/a-palette.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/a-palette.aseprite
rename to art/a-palette.aseprite
diff --git a/project/tic-tac-tile/art/b-background.aseprite b/art/b-background.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/b-background.aseprite
rename to art/b-background.aseprite
diff --git a/project/tic-tac-tile/art/c-cross.aseprite b/art/c-cross.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/c-cross.aseprite
rename to art/c-cross.aseprite
diff --git a/project/tic-tac-tile/art/d-circle.aseprite b/art/d-circle.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/d-circle.aseprite
rename to art/d-circle.aseprite
diff --git a/project/tic-tac-tile/art/e-select.aseprite b/art/e-select.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/e-select.aseprite
rename to art/e-select.aseprite
diff --git a/project/tic-tac-tile/art/f-sub-background.aseprite b/art/f-sub-background.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/f-sub-background.aseprite
rename to art/f-sub-background.aseprite
diff --git a/project/tic-tac-tile/art/g-sub-palette.aseprite b/art/g-sub-palette.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/g-sub-palette.aseprite
rename to art/g-sub-palette.aseprite
diff --git a/project/tic-tac-tile/art/h-begin.aseprite b/art/h-begin.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/h-begin.aseprite
rename to art/h-begin.aseprite
diff --git a/project/tic-tac-tile/art/i-sub-finished.aseprite b/art/i-sub-finished.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/i-sub-finished.aseprite
rename to art/i-sub-finished.aseprite
diff --git a/project/tic-tac-tile/art/j-cross-sprite.aseprite b/art/j-cross-sprite.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/j-cross-sprite.aseprite
rename to art/j-cross-sprite.aseprite
diff --git a/project/tic-tac-tile/art/k-circle-sprite.aseprite b/art/k-circle-sprite.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/k-circle-sprite.aseprite
rename to art/k-circle-sprite.aseprite
diff --git a/project/tic-tac-tile/art/l-timer-sprite.aseprite b/art/l-timer-sprite.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/l-timer-sprite.aseprite
rename to art/l-timer-sprite.aseprite
diff --git a/project/tic-tac-tile/art/m-crown-sprite.aseprite b/art/m-crown-sprite.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/m-crown-sprite.aseprite
rename to art/m-crown-sprite.aseprite
diff --git a/project/tic-tac-tile/art/n-sprite-palette.aseprite b/art/n-sprite-palette.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/n-sprite-palette.aseprite
rename to art/n-sprite-palette.aseprite
diff --git a/project/tic-tac-tile/art/o-search-sprite.aseprite b/art/o-search-sprite.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/o-search-sprite.aseprite
rename to art/o-search-sprite.aseprite
diff --git a/project/tic-tac-tile/art/p-connected-sprite.aseprite b/art/p-connected-sprite.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/p-connected-sprite.aseprite
rename to art/p-connected-sprite.aseprite
diff --git a/project/tic-tac-tile/art/q-wifi-sprite.aseprite b/art/q-wifi-sprite.aseprite
similarity index 100%
rename from project/tic-tac-tile/art/q-wifi-sprite.aseprite
rename to art/q-wifi-sprite.aseprite
diff --git a/project/tic-tac-tile/audio/game.mod b/audio/game.mod
similarity index 100%
rename from project/tic-tac-tile/audio/game.mod
rename to audio/game.mod
diff --git a/project/tic-tac-tile/audio/menu.mod b/audio/menu.mod
similarity index 100%
rename from project/tic-tac-tile/audio/menu.mod
rename to audio/menu.mod
diff --git a/project/tic-tac-tile/audio/over.wav b/audio/over.wav
similarity index 100%
rename from project/tic-tac-tile/audio/over.wav
rename to audio/over.wav
diff --git a/project/tic-tac-tile/audio/play.wav b/audio/play.wav
similarity index 100%
rename from project/tic-tac-tile/audio/play.wav
rename to audio/play.wav
diff --git a/project/tic-tac-tile/audio/touch.wav b/audio/touch.wav
similarity index 100%
rename from project/tic-tac-tile/audio/touch.wav
rename to audio/touch.wav
diff --git a/project/tic-tac-tile/data/a-palette.grit b/data/a-palette.grit
similarity index 100%
rename from project/tic-tac-tile/data/a-palette.grit
rename to data/a-palette.grit
diff --git a/project/tic-tac-tile/data/a-palette.png b/data/a-palette.png
similarity index 100%
rename from project/tic-tac-tile/data/a-palette.png
rename to data/a-palette.png
diff --git a/project/tic-tac-tile/data/b-background.grit b/data/b-background.grit
similarity index 100%
rename from project/tic-tac-tile/data/b-background.grit
rename to data/b-background.grit
diff --git a/project/tic-tac-tile/data/b-background.png b/data/b-background.png
similarity index 100%
rename from project/tic-tac-tile/data/b-background.png
rename to data/b-background.png
diff --git a/project/tic-tac-tile/data/c-cross.grit b/data/c-cross.grit
similarity index 100%
rename from project/tic-tac-tile/data/c-cross.grit
rename to data/c-cross.grit
diff --git a/project/tic-tac-tile/data/c-cross.png b/data/c-cross.png
similarity index 100%
rename from project/tic-tac-tile/data/c-cross.png
rename to data/c-cross.png
diff --git a/project/tic-tac-tile/data/d-circle.grit b/data/d-circle.grit
similarity index 100%
rename from project/tic-tac-tile/data/d-circle.grit
rename to data/d-circle.grit
diff --git a/project/tic-tac-tile/data/d-circle.png b/data/d-circle.png
similarity index 100%
rename from project/tic-tac-tile/data/d-circle.png
rename to data/d-circle.png
diff --git a/project/tic-tac-tile/data/e-select.grit b/data/e-select.grit
similarity index 100%
rename from project/tic-tac-tile/data/e-select.grit
rename to data/e-select.grit
diff --git a/project/tic-tac-tile/data/e-select.png b/data/e-select.png
similarity index 100%
rename from project/tic-tac-tile/data/e-select.png
rename to data/e-select.png
diff --git a/project/tic-tac-tile/data/f-sub-background.grit b/data/f-sub-background.grit
similarity index 100%
rename from project/tic-tac-tile/data/f-sub-background.grit
rename to data/f-sub-background.grit
diff --git a/project/tic-tac-tile/data/f-sub-background.png b/data/f-sub-background.png
similarity index 100%
rename from project/tic-tac-tile/data/f-sub-background.png
rename to data/f-sub-background.png
diff --git a/project/tic-tac-tile/data/g-sub-palette.grit b/data/g-sub-palette.grit
similarity index 100%
rename from project/tic-tac-tile/data/g-sub-palette.grit
rename to data/g-sub-palette.grit
diff --git a/project/tic-tac-tile/data/g-sub-palette.png b/data/g-sub-palette.png
similarity index 100%
rename from project/tic-tac-tile/data/g-sub-palette.png
rename to data/g-sub-palette.png
diff --git a/project/tic-tac-tile/data/h-begin.grit b/data/h-begin.grit
similarity index 100%
rename from project/tic-tac-tile/data/h-begin.grit
rename to data/h-begin.grit
diff --git a/project/tic-tac-tile/data/h-begin.png b/data/h-begin.png
similarity index 100%
rename from project/tic-tac-tile/data/h-begin.png
rename to data/h-begin.png
diff --git a/project/tic-tac-tile/data/i-sub-finished.grit b/data/i-sub-finished.grit
similarity index 100%
rename from project/tic-tac-tile/data/i-sub-finished.grit
rename to data/i-sub-finished.grit
diff --git a/project/tic-tac-tile/data/i-sub-finished.png b/data/i-sub-finished.png
similarity index 100%
rename from project/tic-tac-tile/data/i-sub-finished.png
rename to data/i-sub-finished.png
diff --git a/project/tic-tac-tile/data/j-cross-sprite.grit b/data/j-cross-sprite.grit
similarity index 100%
rename from project/tic-tac-tile/data/j-cross-sprite.grit
rename to data/j-cross-sprite.grit
diff --git a/project/tic-tac-tile/data/j-cross-sprite.png b/data/j-cross-sprite.png
similarity index 100%
rename from project/tic-tac-tile/data/j-cross-sprite.png
rename to data/j-cross-sprite.png
diff --git a/project/tic-tac-tile/data/k-circle-sprite.grit b/data/k-circle-sprite.grit
similarity index 100%
rename from project/tic-tac-tile/data/k-circle-sprite.grit
rename to data/k-circle-sprite.grit
diff --git a/project/tic-tac-tile/data/k-circle-sprite.png b/data/k-circle-sprite.png
similarity index 100%
rename from project/tic-tac-tile/data/k-circle-sprite.png
rename to data/k-circle-sprite.png
diff --git a/project/tic-tac-tile/data/l-timer-sprite.grit b/data/l-timer-sprite.grit
similarity index 100%
rename from project/tic-tac-tile/data/l-timer-sprite.grit
rename to data/l-timer-sprite.grit
diff --git a/project/tic-tac-tile/data/l-timer-sprite.png b/data/l-timer-sprite.png
similarity index 100%
rename from project/tic-tac-tile/data/l-timer-sprite.png
rename to data/l-timer-sprite.png
diff --git a/project/tic-tac-tile/data/m-crown-sprite.grit b/data/m-crown-sprite.grit
similarity index 100%
rename from project/tic-tac-tile/data/m-crown-sprite.grit
rename to data/m-crown-sprite.grit
diff --git a/project/tic-tac-tile/data/m-crown-sprite.png b/data/m-crown-sprite.png
similarity index 100%
rename from project/tic-tac-tile/data/m-crown-sprite.png
rename to data/m-crown-sprite.png
diff --git a/project/tic-tac-tile/data/n-sprite-palette.grit b/data/n-sprite-palette.grit
similarity index 100%
rename from project/tic-tac-tile/data/n-sprite-palette.grit
rename to data/n-sprite-palette.grit
diff --git a/project/tic-tac-tile/data/n-sprite-palette.png b/data/n-sprite-palette.png
similarity index 100%
rename from project/tic-tac-tile/data/n-sprite-palette.png
rename to data/n-sprite-palette.png
diff --git a/project/tic-tac-tile/data/o-search-sprite.grit b/data/o-search-sprite.grit
similarity index 100%
rename from project/tic-tac-tile/data/o-search-sprite.grit
rename to data/o-search-sprite.grit
diff --git a/project/tic-tac-tile/data/o-search-sprite.png b/data/o-search-sprite.png
similarity index 100%
rename from project/tic-tac-tile/data/o-search-sprite.png
rename to data/o-search-sprite.png
diff --git a/project/tic-tac-tile/data/p-connected-sprite.grit b/data/p-connected-sprite.grit
similarity index 100%
rename from project/tic-tac-tile/data/p-connected-sprite.grit
rename to data/p-connected-sprite.grit
diff --git a/project/tic-tac-tile/data/p-connected-sprite.png b/data/p-connected-sprite.png
similarity index 100%
rename from project/tic-tac-tile/data/p-connected-sprite.png
rename to data/p-connected-sprite.png
diff --git a/project/tic-tac-tile/data/q-wifi-sprite.grit b/data/q-wifi-sprite.grit
similarity index 100%
rename from project/tic-tac-tile/data/q-wifi-sprite.grit
rename to data/q-wifi-sprite.grit
diff --git a/project/tic-tac-tile/data/q-wifi-sprite.png b/data/q-wifi-sprite.png
similarity index 100%
rename from project/tic-tac-tile/data/q-wifi-sprite.png
rename to data/q-wifi-sprite.png
diff --git a/project/tic-tac-tile/docs/Message_Queue_FSM.png b/docs/Message_Queue_FSM.png
similarity index 100%
rename from project/tic-tac-tile/docs/Message_Queue_FSM.png
rename to docs/Message_Queue_FSM.png
diff --git a/project/tic-tac-tile/docs/P2P-BOP.png b/docs/P2P-BOP.png
similarity index 100%
rename from project/tic-tac-tile/docs/P2P-BOP.png
rename to docs/P2P-BOP.png
diff --git a/project/tic-tac-tile/docs/game.png b/docs/game.png
similarity index 100%
rename from project/tic-tac-tile/docs/game.png
rename to docs/game.png
diff --git a/project/tic-tac-tile/docs/menu.png b/docs/menu.png
similarity index 100%
rename from project/tic-tac-tile/docs/menu.png
rename to docs/menu.png
diff --git a/project/tic-tac-tile/docs/nds.jpg b/docs/nds.jpg
similarity index 100%
rename from project/tic-tac-tile/docs/nds.jpg
rename to docs/nds.jpg
diff --git a/project/tic-tac-tile/docs/nds.png b/docs/nds.png
similarity index 100%
rename from project/tic-tac-tile/docs/nds.png
rename to docs/nds.png
diff --git a/project/tic-tac-tile/docs/over.png b/docs/over.png
similarity index 100%
rename from project/tic-tac-tile/docs/over.png
rename to docs/over.png
diff --git a/project/tic-tac-tile/docs/paired.png b/docs/paired.png
similarity index 100%
rename from project/tic-tac-tile/docs/paired.png
rename to docs/paired.png
diff --git a/project/tic-tac-tile/docs/search.png b/docs/search.png
similarity index 100%
rename from project/tic-tac-tile/docs/search.png
rename to docs/search.png
diff --git a/project/tic-tac-tile/docs/wifi.png b/docs/wifi.png
similarity index 100%
rename from project/tic-tac-tile/docs/wifi.png
rename to docs/wifi.png
diff --git a/project/tic-tac-tile/gitlab.sh b/gitlab.sh
similarity index 100%
rename from project/tic-tac-tile/gitlab.sh
rename to gitlab.sh
diff --git a/labs/lab-10/Piano/Makefile b/labs/lab-10/Piano/Makefile
deleted file mode 100644
index 26aa89f..0000000
--- a/labs/lab-10/Piano/Makefile
+++ /dev/null
@@ -1,164 +0,0 @@
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-10/Piano/audio/DO.wav b/labs/lab-10/Piano/audio/DO.wav
deleted file mode 100644
index feb3648..0000000
Binary files a/labs/lab-10/Piano/audio/DO.wav and /dev/null differ
diff --git a/labs/lab-10/Piano/source/main.c b/labs/lab-10/Piano/source/main.c
deleted file mode 100644
index 79567ed..0000000
--- a/labs/lab-10/Piano/source/main.c
+++ /dev/null
@@ -1,184 +0,0 @@
-#include
-#include
-#include "soundbank.h"
-#include "soundbank_bin.h"
-#include
-
-//Declare the tiles to use
-unsigned char white[] ={
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00
-};
-
-unsigned char semiwhite_left[] ={
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00
-};
-
-unsigned char semiwhite_up[] ={
- 0x11,0x11,0x11,0x11,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00
-};
-
-unsigned char black[] ={
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11
-};
-
-
-int main(void) {
-
- //Enable the VRAM bank
- VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG;
- //Enable the Engine
- REG_DISPCNT = MODE_0_2D | DISPLAY_BG0_ACTIVE;
-
- //Configure BG0
- BGCTRL[0] = BG_32x32 | BG_COLOR_16 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- //Swap the LCDs
- lcdSwap();
-
- //Initialize the console in the upper screen (sub engine)
- consoleDemoInit();
-
- //Black and white colors in the palette
- BG_PALETTE[0] = ARGB16(1,31,31,31);
- BG_PALETTE[1] = ARGB16(1,0,0,0);
-
- //Copy tiles to the tile Base
- dmaCopy(white,&BG_TILE_RAM(1)[0], 32);
- dmaCopy(semiwhite_left,&BG_TILE_RAM(1)[16], 32);
- dmaCopy(semiwhite_up,&BG_TILE_RAM(1)[32], 32);
- dmaCopy(black,&BG_TILE_RAM(1)[48], 32);
-
- /********************
- * Generate the map
- ********************/
- int row, key, i;
-
- //Create white keys
- for(row = 0; row<18; row++)
- for(key = 0; key < 8; key++)
- {
- BG_MAP_RAM(0)[row*32+key*4] = 1;
- BG_MAP_RAM(0)[row*32+key*4+1] = 0;
- BG_MAP_RAM(0)[row*32+key*4+2] = 0;
- BG_MAP_RAM(0)[row*32+key*4+3] = 1 | BIT(10);
- }
- for(i = 0; i<32; i++)
- BG_MAP_RAM(0)[row*32+i] = 2;
-
- //Create the black keys
- for(row = 0; row < 10; row++)
- for(key = 0; key < 8; key ++)
- if(key != 2 && key != 6)
- {
- BG_MAP_RAM(0)[3 + row*32+key*4] = 3;
- if(key != 7)
- BG_MAP_RAM(0)[3 + row*32+key*4+1] = 3;
- }
- /******End map generation***********/
-
- //Init the sound library
- mmInitDefaultMem((mm_addr)soundbank_bin);
-
- //Load the effects
- mmLoadEffect(SFX_DO);
-
- //Declaration of the sound effect to play and set up of the structure
- mm_sound_effect sound;
- sound.id = SFX_DO;
- sound.rate = (int)(1.0f * (1<<10)); // rate
- sound.handle = 0; // 0 = allocate new handle
- sound.volume = 255; //Max volumen
- sound.panning = 128; // centered panning
-
-
- //Touch position declaration
- touchPosition touch;
-
- //Scan keys once to clean registers before main loop
- scanKeys();
-
- while(1) {
- //Scan the keys
- scanKeys();
-
- //If the touchscreen is pressed
- if(keysDown() & KEY_TOUCH)
- {
- //Read the touch-screen
- touchRead(&touch);
-
- //Sound rate set to 0
- sound.rate = 0;
-
- //Chek if the Piano keyboard is touched
- if(touch.py < 18*8)
- {
- //Solution 2
- //Identify the key and set the corresponding soun rate
- if(touch.px >= 24 && touch.px < 40 && touch.py < 80)
- sound.rate = (int)(1.059f * 1024); //DO#
- else if(touch.px >= 56 && touch.px < 72 && touch.py < 80)
- sound.rate = (int)(1.189f * 1024); //RE#
- else if(touch.px >= 120 && touch.px < 136 && touch.py < 80)
- sound.rate = (int)(1.414f * 1024); //FA#
- else if(touch.px >= 152 && touch.px < 168 && touch.py < 80)
- sound.rate = (int)(1.587f * 1024); //SOL#
- else if(touch.px >= 184 && touch.px < 200 && touch.py < 80)
- sound.rate = (int)(1.782f * 1024); //LA#
- else if(touch.px >= 248 && touch.px < 256 && touch.py < 80)
- sound.rate = (int)(2.119f * 1024); //DO2#
- else if(touch.px >= 0 && touch.px < 32)
- sound.rate = (int)(1.0f * 1024); //DO
- else if(touch.px >= 32 && touch.px < 64)
- sound.rate = (int)(1.122f * 1024); //RE
- else if(touch.px >= 64 && touch.px < 96)
- sound.rate = (int)(1.26f * 1024); //MI
- else if(touch.px >= 96 && touch.px < 128)
- sound.rate = (int)(1.335f * 1024); //FA
- else if(touch.px >= 128 && touch.px < 160)
- sound.rate = (int)(1.498f * 1024); //SOL
- else if(touch.px >= 160 && touch.px < 192)
- sound.rate = (int)(1.682f * 1024); //LA
- else if(touch.px >= 192 && touch.px < 224)
- sound.rate = (int)(1.888f * 1024); //SI
- else if(touch.px >= 224 && touch.px < 256)
- sound.rate = (int)(2.f * 1024); //DO2
-
- //Play the sound if identified
- if(sound.rate >= 0)
- mmEffectEx(&sound);
- }
- }
-
- //Wait for VBlank
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-10/Tetris5/.root b/labs/lab-10/Tetris5/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-10/Tetris5/Makefile b/labs/lab-10/Tetris5/Makefile
deleted file mode 100644
index 26aa89f..0000000
--- a/labs/lab-10/Tetris5/Makefile
+++ /dev/null
@@ -1,164 +0,0 @@
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-10/Tetris5/audio/clunk.wav b/labs/lab-10/Tetris5/audio/clunk.wav
deleted file mode 100644
index a6f13d3..0000000
Binary files a/labs/lab-10/Tetris5/audio/clunk.wav and /dev/null differ
diff --git a/labs/lab-10/Tetris5/audio/swish.wav b/labs/lab-10/Tetris5/audio/swish.wav
deleted file mode 100644
index 414e27d..0000000
Binary files a/labs/lab-10/Tetris5/audio/swish.wav and /dev/null differ
diff --git a/labs/lab-10/Tetris5/audio/tetrix.xm b/labs/lab-10/Tetris5/audio/tetrix.xm
deleted file mode 100644
index 0dc531d..0000000
Binary files a/labs/lab-10/Tetris5/audio/tetrix.xm and /dev/null differ
diff --git a/labs/lab-10/Tetris5/data/background.grit b/labs/lab-10/Tetris5/data/background.grit
deleted file mode 100644
index 7b0d0eb..0000000
--- a/labs/lab-10/Tetris5/data/background.grit
+++ /dev/null
@@ -1,6 +0,0 @@
--g
--gt
--gB8
--p
--pn253
--m
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/data/background.png b/labs/lab-10/Tetris5/data/background.png
deleted file mode 100644
index 58d2d33..0000000
Binary files a/labs/lab-10/Tetris5/data/background.png and /dev/null differ
diff --git a/labs/lab-10/Tetris5/data/controls.grit b/labs/lab-10/Tetris5/data/controls.grit
deleted file mode 100644
index f6112ae..0000000
--- a/labs/lab-10/Tetris5/data/controls.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--g
--gb
--gB8
--p
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/data/controls.png b/labs/lab-10/Tetris5/data/controls.png
deleted file mode 100644
index a5a6935..0000000
Binary files a/labs/lab-10/Tetris5/data/controls.png and /dev/null differ
diff --git a/labs/lab-10/Tetris5/source/P_Audio.c b/labs/lab-10/Tetris5/source/P_Audio.c
deleted file mode 100644
index 33393fa..0000000
--- a/labs/lab-10/Tetris5/source/P_Audio.c
+++ /dev/null
@@ -1,41 +0,0 @@
-#include "P_Audio.h"
-
-void Audio_Init()
-{
- //Init the sound library
- mmInitDefaultMem((mm_addr)soundbank_bin);
- //Load module
- mmLoad(MOD_FLATOUTLIES);
- //Load effect
- mmLoadEffect(SFX_SWISH);
- mmLoadEffect(SFX_CLUNK);
-}
-
-void Audio_PlaySoundEX( int i )
-{
- //Declare a sound effect
- mm_sound_effect sound;
- //Set the id of the sound effect with the input parameter
- sound.id = i;
- //Set the rate to the default one (1024)
- sound.rate = 1024;
- //Set the volume to the maximum (range 0...255)
- sound.volume = 255;
- //Set the panning depending on the effect (0-left....255-right)
- if(i == SFX_SWISH)
- sound.panning = 0;
- if(i == SFX_CLUNK)
- sound.panning = 255;
-
- //Play the effect using the sound structure
- mmEffectEx(&sound);
-}
-
-
-void Audio_PlayMusic()
-{
- //Start playing music in a loop
- mmStart(MOD_FLATOUTLIES, MM_PLAY_LOOP);
- //Set module volume to 512 (range 0...1024) using the function mmSetModuleVolume(...)
- mmSetModuleVolume(512);
-}
diff --git a/labs/lab-10/Tetris5/source/P_Audio.h b/labs/lab-10/Tetris5/source/P_Audio.h
deleted file mode 100644
index a0c64cb..0000000
--- a/labs/lab-10/Tetris5/source/P_Audio.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#pragma once
-
-#include
-#include
-#include "soundbank.h"
-#include "soundbank_bin.h"
-
-void Audio_Init();
-void Audio_PlaySoundEX( int i );
-void Audio_PlayMusic();
diff --git a/labs/lab-10/Tetris5/source/P_Controls.c b/labs/lab-10/Tetris5/source/P_Controls.c
deleted file mode 100644
index 6465129..0000000
--- a/labs/lab-10/Tetris5/source/P_Controls.c
+++ /dev/null
@@ -1,71 +0,0 @@
-#include "P_Controls.h"
-#include "Tetris/TetrisGameplay.h"
-
-void handleTouchPad()
-{
- // Read the touch position.
- touchPosition touch;
- touchRead(&touch);
-
- //Only if px or py are different to 0 handle the touch
- if(touch.px || touch.py)
- {
- //Rotation
- if(touch.px > 170 && touch.px < 256)
- {
- if(touch.py > 0 && touch.py < 96)
- Gameplay_handleInput(UP);
- else
- Gameplay_handleInput(DOWN);
- }
- //Lateral movement
- else if(touch.px > 85 && touch.px < 170)
- {
- if(touch.py > 0 && touch.py < 96)
- Gameplay_handleInput(LEFT);
- else
- Gameplay_handleInput(RIGHT);
-
- }
- //Block fall down
- else if(touch.px > 0 && touch.px < 85)
- {
- Gameplay_handleInput(SELECT);
- }
- }
-}
-
-
-/*
- * This function handles the input by monitoring the keys and the touchscreen
- * and invoking the function Gameplay_HandleInput(...) with the correct input
- * value
- */
-void handleInput()
-{
- //Scan the keys
- scanKeys();
-
- /* Identify the keys and map the action according to the table given in
- * the manual. Call the function Gameplay_handleInput(..) to send an action
- * to the logic of the game */
- u16 keys = keysDown();
- if(keys & KEY_A)
- Gameplay_handleInput(SELECT);
- else if(keys & KEY_LEFT)
- Gameplay_handleInput(UP);
- else if(keys & KEY_RIGHT)
- Gameplay_handleInput(DOWN);
- else if (keys & KEY_UP)
- Gameplay_handleInput(LEFT);
- else if (keys & KEY_DOWN)
- Gameplay_handleInput(RIGHT);
-
-
- //Call the touch-handling function
- handleTouchPad();
-
- //Update the game and redraw the blocks
- Gameplay_update();
- Gameplay_draw();
-}
diff --git a/labs/lab-10/Tetris5/source/P_Controls.h b/labs/lab-10/Tetris5/source/P_Controls.h
deleted file mode 100644
index 946b8a3..0000000
--- a/labs/lab-10/Tetris5/source/P_Controls.h
+++ /dev/null
@@ -1,9 +0,0 @@
-
-#include
-
-/*
- * This function handles the input by monitoring the keys and the touchscreen
- * and invoking the function GamePlay_HandleInput(...) with the correct input
- * value
- */
-void handleInput();
diff --git a/labs/lab-10/Tetris5/source/P_Graphics.c b/labs/lab-10/Tetris5/source/P_Graphics.c
deleted file mode 100644
index 6e6ced3..0000000
--- a/labs/lab-10/Tetris5/source/P_Graphics.c
+++ /dev/null
@@ -1,147 +0,0 @@
-#include "P_Graphics.h"
-
-u16* P_Graphics_mainBuffer;
-u16* P_Graphics_subBuffer;
-int P_Graphics_mainW;
-int P_Graphics_mainH;
-int P_Graphics_subW;
-int P_Graphics_subH;
-
-void P_Graphics_setup_main()
-{
-#ifdef FB0
- //Graphics (Part 1)
- //Set the mode to FB0
- REG_DISPCNT = MODE_FB0;
-
- //Set the coresponding VRAM bank
- VRAM_A_CR = VRAM_ENABLE //Enable the Bank
- | VRAM_A_LCD; //Assign it to the Main engine in FB0
-
-#endif
-
-#ifdef ROTOSCALE
- //Graphics (Part 2)
- //Enable a proper RAM memory bank for the main engine
- VRAM_A_CR = VRAM_ENABLE //Enable
- | VRAM_A_MAIN_BG; //Bank for the main engine
-
- //Configure the main engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-
-
- //Enable a proper RAM memory bank for sub engine
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
- //Configure the sub engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-#endif
-
-#ifdef TILES
- //Graphics (Part 3)
- //Enable a proper RAM memory bank for the main engine
- VRAM_A_CR = VRAM_ENABLE //Enable
- | VRAM_A_MAIN_BG; //Bank for the main engine
-
- //Configure the main engine in mode 0 (2D) and activate Backgrounds 3 and 0
- REG_DISPCNT = MODE_0_2D | DISPLAY_BG0_ACTIVE | DISPLAY_BG3_ACTIVE;
-
-
- //Enable a proper RAM memory bank for sub engine
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
- //Configure the sub engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-#endif
-}
-
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h)
-{
-
- switch(bT)
- {
- case MAIN: P_Graphics_mainBuffer = buffer;
- P_Graphics_mainW = w;
- P_Graphics_mainH = h;
- break;
- case SUB: P_Graphics_subBuffer = buffer;
- P_Graphics_subW = w;
- P_Graphics_subH = h;
- break;
- }
-}
-
-void FillScreen(enum BUFFER_TYPE t, u16 color)
-{
- int i;
- switch(t)
- {
- case MAIN:
- //Fill the whole screen (256*192) with the given color
- for(i = 0; i=0 && top <=191) //Check boundaries of top
- if(bottom >= 0 && bottom <=191) //Check boundaries of bottom
- if(left >=0 && left <= 255) //Check boundaries of left
- if(right >=0 && right <=255) //Check boundaries of right
- for(row = top; row < bottom; row++) //For rows from top to bottom
- for(col = left; col < right; col++) //And for column from left to right
- P_Graphics_mainBuffer[row*256 + col] = color; //Assign the color
-}
-
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color)
-{
- int col;
- if(bT == MAIN) //Check that we want to use the Main engine
- if(y >= 0 && y <=191) //Check the boundaries of y
- if(x >=0 && x <= 255) //Check the boundaries of x
- if(x2 >=0 && x2 <=255) //Check the boundaries of x2
- for(col = x; col < x2; col++) //For columns from x to x2
- P_Graphics_mainBuffer[y*256 + col] = color; //Assign the color
-}
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color)
-{
- int row;
- if(bT == MAIN) //Check that we want to use the Main engine
- if(y >= 0 && y <=191) //Check the boundaries of y
- if(y2 >=0 && y2 <= 191) //Check the boundaries of y2
- if(x >=0 && x <=255) //Check the boundaries of x
- for(row = y; row < y2; row++) //For row from y to y2
- P_Graphics_mainBuffer[row*256 + x] = color; //Assign the color
-}
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color)
-{
- if(bT == MAIN) //Check that we want to use the Main engine
- if(top >=0 && top <=191) //Check boundaries of top
- if(bottom >= 0 && bottom <=191) //Check boundaries of bottom
- if(left >=0 && left <= 255) //Check boundaries of left
- if(right >=0 && right <=255) //Check boundaries of right
- if(top < bottom && left < right)
- {
- //Vertical line on the left
- DrawVerticalLine(MAIN, top, bottom, left, color);
- //Verticla line on the right
- DrawVerticalLine(MAIN, top, bottom, right, color);
- //Horizontal line in top
- DrawHorizontalLine(MAIN, left, right, top, color);
- //Horizontal line on the bottom
- DrawHorizontalLine(MAIN, left, right, bottom, color);
- }
-}
-
-
diff --git a/labs/lab-10/Tetris5/source/P_Graphics.h b/labs/lab-10/Tetris5/source/P_Graphics.h
deleted file mode 100644
index a3f4eef..0000000
--- a/labs/lab-10/Tetris5/source/P_Graphics.h
+++ /dev/null
@@ -1,112 +0,0 @@
-#pragma once
-
-#include
-//#define FB0
-//#define ROTOSCALE
-#define TILES
-
-enum BUFFER_TYPE
-{
- MAIN,
- SUB,
-};
-
-//members
-extern u16* P_Graphics_mainBuffer;
-extern u16* P_Graphics_subBuffer;
-extern int P_Graphics_mainW;
-extern int P_Graphics_mainH;
-extern int P_Graphics_subW;
-extern int P_Graphics_subH;
-
-/*
- This function does not receive any input parameter. It initializes the main
- graphical engine to be used with the Framebuffer Mode 0 (FB0).
- It also enables the corresponding VRAM bank to be used.
-*/
-void P_Graphics_setup_main();
-
-
-/*
- Function that assigns the buffer (already implemented) and its size
- */
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h);
-
-
-/*
- This function fills all the screen of the given engine (MAIN or SUB)
- with the input color.
- */
-void FillScreen(enum BUFFER_TYPE t, u16 color);
-
-
-/*
- This function fills a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter specifies the buffer where we want to fill
- the rectangle. Remember that there are two graphical engines (MAIN and SUB)
- for both screens of the NDS. In this practical work we will only use the
- MAIN engine since Framebuffer Mode is only available in this engine.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to fill. It is recommended to check that these
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to fill the rectangle.
- Remember that colors are represented with 16bit words in the Nintendo DS.
-*/
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
-
-
-/*
- This function draws an horizontal line of 1 pixel width between the
- coordinates (x,y) and (x2,y) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous function.
-- int x, x2, y: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- function.
-*/
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color);
-
-
-/*
- This function draws a vertical line of 1 pixel width between the coordinates
- (x,y) and (x,y2) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int y, y2, x: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- functions.
-*/
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color);
-
-
-/*
- This function draws a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color. Note that this function is
- different to the one that fills the rectangle. This function only draws
- the rectangle (the borders). It is recommended to re-use the already
- implemented functions to draw lines.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to draw. It is recommended to check that this
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to draw the borders of the
- rectangle.
-*/
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
diff --git a/labs/lab-10/Tetris5/source/P_Initializer.c b/labs/lab-10/Tetris5/source/P_Initializer.c
deleted file mode 100644
index 3a1972c..0000000
--- a/labs/lab-10/Tetris5/source/P_Initializer.c
+++ /dev/null
@@ -1,24 +0,0 @@
-
-#include "P_Initializer.h"
-
-void P_InitNDS()
-{
- //Initialize the main engine
- P_Graphics_setup_main();
-
- //Set correctly the buffer to write
-#ifdef FB0
- P_Graphics_assignBuffer(MAIN, (u16*)VRAM_A,256,192);
-#endif
-
-#ifdef ROTOSCALE
- P_Graphics_assignBuffer(MAIN, (u16*)BG_GFX,256,192);
-#endif
-
- //Initialize the 16x16 field
- P_Map16x16_Init( 12, 16 );
-
- Audio_Init();
- Audio_PlayMusic();
-}
-
diff --git a/labs/lab-10/Tetris5/source/P_Initializer.h b/labs/lab-10/Tetris5/source/P_Initializer.h
deleted file mode 100644
index be57372..0000000
--- a/labs/lab-10/Tetris5/source/P_Initializer.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#include
-#include "P_Map16x16.h"
-#include "P_Audio.h"
-
-void P_InitNDS();
-
diff --git a/labs/lab-10/Tetris5/source/P_Map16x16.c b/labs/lab-10/Tetris5/source/P_Map16x16.c
deleted file mode 100644
index 718634e..0000000
--- a/labs/lab-10/Tetris5/source/P_Map16x16.c
+++ /dev/null
@@ -1,192 +0,0 @@
-
-#include "P_Map16x16.h"
-#include "controls.h"
-#include "background.h"
-
-u16* mapMemory;
-int MapCols;
-int MapRows;
-
-//Declare the tiles emptyTile and fullTile as explained in the manual
-u8 emptyTile[64] =
-{
- 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,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,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0
-};
-
-u8 fullTile[64] =
-{
- 255,255,255,255,255,255,255,255,
- 255,254,254,254,254,254,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,254,254,254,254,254,255,
- 255,255,255,255,255,255,255,255
-};
-
-
-void P_Map16x16_configureBG2()
-{
- //Initialize Background
- BGCTRL[2] = BG_MAP_BASE(0) | BgSize_B16_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA = 256;
- REG_BG2PC = 0;
- REG_BG2PB = 0;
- REG_BG2PD = 256;
-
- //Initialize pointer to the graphic memory
- //mapMemory = ...
- mapMemory = BG_GFX;
-}
-
-void P_Map16x16_configureBG2_Sub()
-{
- //Configure BG 2 Sub. (Do not forget the BG_BMP_BASE configuration)
- BGCTRL_SUB[2] = BG_BMP_BASE(0) | BgSize_B8_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA_SUB = 256;
- REG_BG2PC_SUB = 0;
- REG_BG2PB_SUB = 0;
- REG_BG2PD_SUB = 256;
-
-
- swiCopy(controlsPal, BG_PALETTE_SUB, controlsPalLen);
- swiCopy(controlsBitmap, BG_GFX_SUB, controlsBitmapLen);
-}
-
-void P_Map16x16_configureBG0()
-{
- /*
- * GRAPHICS III
- *
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 0 (on the top).
- *
- * This background is going to be used to draw the game field where
- * the blocks are falling.
- *
- * The function does not return anything and it does not have any input
- * arguments. Background 0 (BG0) should be configured in the tiled mode
- * as a 32x32 tile grid and using one general color palette of 256
- * components (256 colors). The pointer to the map 'mapMemory' must be
- * correctly assigned before returning from the function
- */
-
- //Configure BG 0 to represent the game field
- BGCTRL[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(25) | BG_TILE_BASE(4);
-
- //Copy the empty tile and the full tile to the corresponding RAM location
- //according to the chosen TILE_BASE. If dmaCopy is used, do not forget to
- //cast the destination pointer as a 'byte pointer'
- //Hint: Use the macro BG_TILE_RAM to get the destination address
- dmaCopy(emptyTile, (u8*)BG_TILE_RAM(4), 64);
- dmaCopy(fullTile, (u8*)BG_TILE_RAM(4) + 64, 64);
-
- //Assign components 254 and 255 as explained in the manual
- BG_PALETTE[254] = ARGB16(1,0,0,0);
- BG_PALETTE[255] = ARGB16(1,31,15,0);
-
- //Set the pointer mapMemory to the RAM location of the chosen MAP_BASE
- //Hint: use the macro BG_MAP_RAM
- mapMemory = (u16*)BG_MAP_RAM(25);
-}
-
-void P_Map16x16_configureBG3()
-{
- /*GRAPHICS III
- *
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 3.
- *
- * This background is going to be used to background wall-paper.
- *
- * In exercise 2 the Background 3 (BG3) should be configure in rotoscale
- * mode with a 8 bits of pixel depth. Do not forget to copy the palette
- * correctly.
- *
- * In exercise 5 Background 3 (BG3) should be configured in the tiled mode
- * as a 32x32 tile grid and using one general color palette of 256
- * components (256 colors).
- */
-
- //Configure BG 3 for the background image as explained before
- BGCTRL[3] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(26) | BG_TILE_BASE(0);
-
- //Copy tiles, map and palette in the memory (use swicopy or memcpy)
- swiCopy(backgroundTiles, BG_TILE_RAM(0), backgroundTilesLen);
- swiCopy(backgroundMap, BG_MAP_RAM(26), backgroundMapLen);
- swiCopy(backgroundPal, BG_PALETTE, backgroundPalLen);
-
-}
-
-void P_Map16x16_Init( int cols, int rows )
-{
- MapCols=cols;
- MapRows=rows;
-#ifdef ROTOSCALE
- //Configure BG2
- P_Map16x16_configureBG2();
- // Configure Bottom background
- P_Map16x16_configureBG2_Sub();
-#endif
-
-#ifdef TILES
- //Configure BG3 for background image
- P_Map16x16_configureBG3();
- //Configure BG0 for game
- P_Map16x16_configureBG0();
- // Configure Bottom background
- P_Map16x16_configureBG2_Sub();
-#endif
-}
-
-
- void SetMap16x16To(int index16, bool full)
- {
- //switch x and y
- int x = index16 % MapCols;
- int y = index16 / MapCols;
- //now inverse x
- y = -(y-MapRows+1);
- index16 = x * MapRows + y;
-#ifdef FB0
- u16 value = full ? RGB15(31,0,0) : RGB15(0,0,0);
- FillRectangle(MAIN,x*16, x*16+16, y*16, y*16+16,value);
-#endif
-
-#ifdef ROTOSCALE
- u16 value = full ? ARGB16(1,31,0,0) : ARGB16(1,0,0,0);
- FillRectangle(MAIN,x*16, x*16+16, y*16, y*16+16,value);
-#endif
-
-#ifdef TILES
- int value = full ? 1 : 0;
- //convert index16x16 to 32x32
- //also make it fall right->left rather than top->bottom
- //
- // 0 1 2 3 12 8 4 0
- // 4 5 6 7 => 13 9 5 1
- // 8 9 10 11 => 14 10 6 2
- // 12 13 14 15 15 11 7 3
-
- //16x16->32*32 CONVERSION
- int index32;
- index32 = index16*2;
- index32 += (index16/16)*32;
- mapMemory[index32] = value;
- mapMemory[index32+1] = value;
- mapMemory[index32+32] = value;
- mapMemory[index32+32+1] = value;
-#endif
-}
diff --git a/labs/lab-10/Tetris5/source/P_Map16x16.h b/labs/lab-10/Tetris5/source/P_Map16x16.h
deleted file mode 100644
index 9a08f15..0000000
--- a/labs/lab-10/Tetris5/source/P_Map16x16.h
+++ /dev/null
@@ -1,35 +0,0 @@
-
-#include
-#include "P_Graphics.h"
-
-extern u16* mapMemory;
-extern int MapCols;
-extern int MapRows;
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Main Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Main Engine must be configured in Rotoscale
- * mode to be used as a bitmap with a depth colour of 16 bits. This
- * background will be used as a canvas of pixels (like in the Frame Buffer
- * Mode) to display the game field in the upper screen.
- */
-void P_Map16x16_configureBG2();
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Sub Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Sub Engine must be configured in Rotoscale
- * mode with a depth of colours of 8 bits. This background will be used
- * to show an image in the bottom screen.
- */
-void P_Map16x16_configureBG2_Sub();
-
-
-void P_Map16x16_configureBG0();
-void P_Map16x16_configureBG3();
-void SetMap16x16To(int index16, bool full);
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/all-wcprops b/labs/lab-10/Tetris5/source/Tetris/.svn/all-wcprops
deleted file mode 100644
index 000add6..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/all-wcprops
+++ /dev/null
@@ -1,65 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 45
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris
-END
-TetrisShape.cs
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.cs
-END
-TetrisHUD.cs
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisHUD.cs
-END
-TetrisGameplay.h
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.h
-END
-TetrisGrid.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.cpp
-END
-TetrisShape.h
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.h
-END
-TetrisMenu.cs
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisMenu.cs
-END
-TetrisGrid.h
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.h
-END
-TetrisGameplay.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 63
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.cpp
-END
-TetrisShape.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris/TetrisShape.cpp
-END
-TetrisDefines.h
-K 25
-svn:wc:ra_dav:version-url
-V 60
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisDefines.h
-END
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/entries b/labs/lab-10/Tetris5/source/Tetris/.svn/entries
deleted file mode 100644
index d40c647..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/entries
+++ /dev/null
@@ -1,368 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tetris
-http://dstetris.googlecode.com/svn
-
-
-
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-TetrisShape.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-93bca2a5d4c7699c749d245e56bbb447
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5324
-
-TetrisHUD.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9b0079baa20c6673a42620e55ed1bd33
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4952
-
-TetrisGameplay.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-6e8205e7f2c4b0995f686b7e03aeb7e3
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-388
-
-TetrisGrid.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-b60a53fd2df6ee0eaeb539bde1c83f44
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5384
-
-TetrisShape.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-fbd520b56b403dc21c6ef073681c91d2
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-460
-
-TetrisMenu.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-46f4b010842a86cc00e87c2024e75fa5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-9881
-
-TetrisGrid.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9c8d2a85e36046170d0ef80bfcd6c163
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-647
-
-TetrisGameplay.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-e6128b8c5e3f024efb556f45ed6784a5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-3909
-
-TetrisShape.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-eeab41f6e1c30a1149806657a70de78e
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4588
-
-TetrisDefines.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-43f8a162e571e16b7dadf20c6147faba
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5579
-
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/format b/labs/lab-10/Tetris5/source/Tetris/.svn/format
deleted file mode 100644
index ec63514..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
deleted file mode 100644
index f7b8183..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
deleted file mode 100644
index 3e4217d..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- Gameplay_currentAction = actionToSend;
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //iprintf("GameOver\n");
- //bool isNewHighScore = TetrisGame.highScore.IsHighScore(playerName, playerScore) && playerScore > 0;
- //TetrisGame.soundPlayer.FireSoundFX(isNewHighScore ? SOUND_FX.Win : SOUND_FX.Lose);
- //TetrisGame.menu.setMenuState(TetrisMenu.MENU_STATE.STATE_MENUGAMEOVER, isNewHighScore );
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
- Gameplay_displayNextShape(Shape_NextType);
-}
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
deleted file mode 100644
index 2c803ad..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
+++ /dev/null
@@ -1,15 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-#include "../Platform/P_Graphics.h"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
deleted file mode 100644
index 779826c..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
+++ /dev/null
@@ -1,231 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-/*
-void Grid_paint()
-{
- //paint bg
- //FillRectangle(MAIN, Grid_Top, Grid_Bottom, Grid_Left, Grid_Right, RGB15(10,10,10) | BIT(15));
-
- //paint elems
- int l, t;
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- l = Grid_Left + (i % PLAYFIELD_COLS) * Grid_TileW;
- t = Grid_Top + (i / PLAYFIELD_COLS) * Grid_TileH;
- //Rectangle cell = new Rectangle(l, t, mTileW, mTileH);
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, cell, Color.Yellow);
- //DrawRectangle(MAIN, t, t+Grid_TileH, l, l+Grid_TileW, RGB15(10,25,10) | BIT(15));
-
- //if(Grid_Cells[i])//more fancy graphics for occupied cells
- {
- //TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, cell, Color.Yellow);
- }
- }
-
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, background, Color.Red);
-
-}*/
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
deleted file mode 100644
index 417d538..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
deleted file mode 100644
index b279247..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
+++ /dev/null
@@ -1,117 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisHud : TetrisConstants
- {
-
- public static void paintRightHud(int right, int top, int score, int nextType)
- {
- int x, y;
-
- //score
- x = right - HUD_SCORE_TEXT_OFFSET;
- y = top + MARGIN_TOP + HUD_SCORE_Y_START;
- SpecificTools.QuickDrawString("Score", x, y, TetrisGame.FontSmall, HUD_SCORE_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += HUD_SCORE_INTERLINE;
- SpecificTools.QuickDrawString("" + score, x, y, TetrisGame.FontSmall, HUD_SCORE_NUM_COLOR, SpecificTools.Align.Right);
-
- //next shape
- displayNextShape(right, top, nextType);
-
- //top scores
- displayTopScores(right, top);
-
- }
-
-
- public static void displayNextShape(int startX, int startY, int nextType)
- {
- int tmpX, tmpY, offset;
- int i = 0;
- int x = startX - HUD_NEXT_TEXT_OFFSET;
- int y = startY + MARGIN_TOP + HUD_NEXT_WORD_Y_START;
-
- SpecificTools.QuickDrawString("Next", x, y, TetrisGame.FontSmall, HUD_NEXT_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- x = startX - HUD_NEXT_SHAPE_X_START;
- y = startY + MARGIN_TOP + HUD_NEXT_SHAPE_Y_START;
- tmpX = x;
- tmpY = y;
- offset = (nextType * SHAPE_TABLE_TYPE_OFFSET) + START_ORIENTATION * SHAPE_TABLE_ELEMS_PER_ROW;
- do
- {
- TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, new Rectangle(tmpX, tmpY, HUD_NEXT_SHAPE_CELL_SIZE, HUD_NEXT_SHAPE_CELL_SIZE), HUD_NEXT_SHAPE_COLOR);
- switch (SHAPE_TABLE[offset + i])
- {
- case C_LEFT:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_RIGHT:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_UP:
- tmpX = x;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_DOWN:
- tmpX = x;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_DOWN:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_DOWN:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_UP:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_UP:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT * 2:
- tmpX = x - (HUD_NEXT_SHAPE_CELL_OFFSET * 2);//i am cheating here and moving to the left for better hud display (anchor is on right)
- tmpY = y;
- break;
- default:
- //need to manage
- break;
- }
- i++;
- } while (i < MAX_ELEMS);
- }
-
- public static void displayTopScores(int x, int y)
- {
-
- x -= HUD_TOP_SCORES_TEXT_OFFSET;
- y += MARGIN_TOP + HUD_TOP_SCORES_Y_START;
-
- //paint title
- SpecificTools.QuickDrawString("TopScore", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_TITLE_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += 30;
-
- for (int i = 0; i < TetrisGame.highScore.CurrentTopScores.Count; i++, y += 24)
- {
- String name = TetrisGame.highScore.CurrentTopScores.PlayerName[i];
- int score = TetrisGame.highScore.CurrentTopScores.Score[i];
- if(score > 0)
- SpecificTools.QuickDrawString((i + 1) + ". " + name + ": " + score, x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
- else
- SpecificTools.QuickDrawString("No Score yet", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
-
- }
- }
- }
-}
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
deleted file mode 100644
index 3cffb77..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
+++ /dev/null
@@ -1,242 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisMenu
- {
-
- public enum MENU_STATE
- {
- STATE_MENUOFF,
- STATE_MENUSTART,
- STATE_MENURESUME,
- STATE_MENUGAMEOVER,
- STATE_ENTERNAME,
- }
-
- private MENU_STATE status;
- private int currentSelected;
- private int currentAvailableOptions;
- private int currentLateralSelected;
- private int currentLateralAvailableOptions;
- private bool allowcycle;
- private String[] currentOptions;
- private byte[] player;
- private Color bkgColor;
- private Color wordColor;
- private Color wordColorSelected;
- private bool isHighScore;
-
- public TetrisMenu()
- {
- player = new byte[3];
- bkgColor = new Color(192, 192, 192, 216);
- wordColor = Color.Black;
- wordColorSelected = Color.Green;
- setMenuState(MENU_STATE.STATE_MENUSTART);
- }
-
- public void setMenuState(MENU_STATE state, bool highScore)
- {
- setMenuState(state);
- isHighScore = highScore;//MUST be called after set state because set state sets it to default
- }
-
- public void setMenuState( MENU_STATE state )
- {
- isHighScore = false;
- status = state;
- currentSelected = 0; //always reset this
- currentLateralSelected = 0;
- currentLateralAvailableOptions = 0;//default
- allowcycle = false;//default
- switch (status)
- {
- case MENU_STATE.STATE_MENURESUME:
- currentOptions = MENU_RESUME_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUGAMEOVER:
- currentOptions = MENU_RESTART_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUSTART:
- currentOptions = MENU_START_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_ENTERNAME:
- currentOptions = EMPTY_STRINGS;
- currentAvailableOptions = 26;//alphabet!
- allowcycle = true;
- currentLateralAvailableOptions = 4; //three letters + ok
- for (int i = 0; i < player.Length; i++)
- player[i] = 0;
- break;
- }
- }
-
- public bool IsMenuOff()
- {
- return status == MENU_STATE.STATE_MENUOFF;
- }
-
- public void update_menu(Platform.Input.ACTION a)
- {
- switch (a)
- {
- case Platform.Input.ACTION.RIGHT:
- if (currentLateralSelected < currentLateralAvailableOptions)
- currentLateralSelected++;
- break;
- case Platform.Input.ACTION.LEFT:
- if (currentLateralSelected > 0)
- currentLateralSelected--;
- break;
- case Platform.Input.ACTION.DOWN:
- if (currentSelected < currentAvailableOptions - 1)
- currentSelected++;
- else if (allowcycle)
- currentSelected = 0;
- break;
- case Platform.Input.ACTION.UP:
- if (currentSelected > 0)
- currentSelected--;
- else if (allowcycle)
- currentSelected = currentAvailableOptions-1;
- break;
- case Platform.Input.ACTION.SELECT:
-
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
-
- if (currentOptions.Length == 0)
- {
- if (currentLateralSelected == 3)
- {
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < 3; i++)
- {
- builder.Append(((char)('A' + player[i])));
- }
- TetrisGame.SetPlayerName(builder.ToString());
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else
- {
- update_menu(Platform.Input.ACTION.DOWN);//considering enter on leters is down
- return;
- }
- }
- else if (currentOptions[currentSelected] == commandStart)
- {
- setMenuState(MENU_STATE.STATE_ENTERNAME);
- }
- else if (currentOptions[currentSelected] == commandResume)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else if (currentOptions[currentSelected] == commandQuit)
- {
- TetrisGame.ExitGame();
- }
- else if (currentOptions[currentSelected] == commandRestart)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- TetrisGame.RestartGame();
- }
- break;
- }
-
- //specific for player name menu
- if (status == MENU_STATE.STATE_ENTERNAME && currentLateralSelected < 3)
- {
- if(a==XNATetris.Platform.Input.ACTION.DOWN || a == XNATetris.Platform.Input.ACTION.UP)
- {
- player[currentLateralSelected] = (byte)currentSelected;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- }
- else if (a == XNATetris.Platform.Input.ACTION.LEFT || a == XNATetris.Platform.Input.ACTION.RIGHT)
- currentSelected = player[currentLateralSelected];
- }
- }
-
-
- public void paint()
- {
- int w, h;
- if (status != MENU_STATE.STATE_MENUOFF)
- {
- w = TetrisGame.graphics.PreferredBackBufferWidth;
- h = TetrisGame.graphics.PreferredBackBufferHeight;
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(0, 0, w, h), bkgColor);
- SpecificTools.QuickDrawString("XNA Tetris by Chris FERRARIO @ chris-ferrario.com", 20, 20, TetrisGame.FontSmall, Color.Blue, SpecificTools.Align.Left, true, Color.White);
- paintMenuStrings(currentOptions, w, h);
- paintSpecific(w,h);
- }
- }
-
- private void paintMenuStrings(String[] options, int screenW, int screenH)
- {
- screenH /= options.Length + 1;
- int y = screenH;
- for (int i = 0; i < options.Length; i++, y += screenH)
- {
- SpecificTools.QuickDrawString(options[i], screenW / 2, y, TetrisGame.FontBig, i == currentSelected ? wordColorSelected : wordColor, SpecificTools.Align.Center, true, Color.White);
- }
- }
-
- private void paintSpecific(int screenW, int screenH)
- {
- if(status == MENU_STATE.STATE_MENUGAMEOVER)
- {
- String message = isHighScore ? "Congratulations you have reached a high score!" : "Sorry you have lost without achieving a high score";
- SpecificTools.QuickDrawString(message, screenW / 2, 80, TetrisGame.FontSmall, Color.Red, SpecificTools.Align.Center, true, Color.White);
- }
- else if (status == MENU_STATE.STATE_ENTERNAME)
- {
- int interspace = 40;
- int x = screenW / 2;
- int y = 120;
- SpecificTools.QuickDrawString("Enter your desired name:", x, y, TetrisGame.FontSmall, Color.Black, SpecificTools.Align.Center, true, Color.White);
-
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(x - 100, y + 60, 120, 50), Color.White);
- x -= 2 * interspace;
- y += 60;
-
-
- for (int i = 0; i < 3; i++, x+=interspace)
- {
- SpecificTools.QuickDrawString(((char)('A' + player[i])).ToString(), x, y, TetrisGame.FontBig, i == currentLateralSelected ? Color.Red: Color.Blue, SpecificTools.Align.Center);
- }
- SpecificTools.QuickDrawString("Confirm", x, y + 14, TetrisGame.FontSmall, currentLateralSelected == 3 ? Color.Red : Color.Blue, SpecificTools.Align.Left, true, Color.White);
- }
- }
-
-
- //Menu Tables
- private static String commandStart = "Start Game";
- private static String commandResume = "Resume Game";
- private static String commandRestart = "Restart Game";
- private static String commandQuit = "Quit Game";
- private String[] MENU_START_STRINGS =
- {
- commandStart,
- commandQuit,
- };
- private String[] MENU_RESUME_STRINGS =
- {
- commandResume,
- commandQuit,
- };
- private String[] MENU_RESTART_STRINGS =
- {
- commandRestart,
- commandQuit,
- };
- private String[] EMPTY_STRINGS = {};
- }
-}
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
deleted file mode 100644
index 54701c5..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
+++ /dev/null
@@ -1,175 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- Audio_PlaySound( eSFX_CLUNK );
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
deleted file mode 100644
index dd53a2d..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
+++ /dev/null
@@ -1,170 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace XNATetris
-{
- class TetrisShape : TetrisConstants
- {
- public bool isGameOver = false;
- public bool isInited = false;
-
- private int mOrient;
- private int mType;
- private int mNextType;
- public int getNextType() { return mNextType; }
- private int mState;
- private int[] mElems;
-
- private Random mRand;
- private TetrisGrid mGrid;
-
-
- public TetrisShape(TetrisGrid g)
- {
- mGrid = g;
- mRand = new Random();
- mElems = new int[MAX_ELEMS];
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- }
-
- public bool spawn()
- {
- isGameOver = false;
- for (int i = 0; i < mElems.Length; i++)
- {
- mElems[i] = DONT_CHECK_CELL;
- }
- mType = mNextType;
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- mElems[ELEM_BASE] = START_CELL;
- mOrient = START_ORIENTATION;
- mState = STATE_USER;
- return alignFromOrientation(mOrient);
- }
-
- public void update(int currentAction)
- {
- if (mState == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (rotateShape(ROT_LEFT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (rotateShape(ROT_RIGHT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- mState = STATE_FALLING;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
- break;
- }
- }
- }
- }
-
- public bool IsFalling()
- {
- return mState == STATE_FALLING;
- }
-
- //true when need to recheck playfield
- public bool addGravity()
- {
- if (isInited)
- {
- //gravity
- bool falling = shiftCells(C_DOWN);
- if (!falling)
- {
- mState = STATE_LOCKED;
- isInited = false;
- return true;
- }
- }
- else
- {
- isInited = spawn();
-
- if (!isInited)//this means no room to init = game over
- {
- isGameOver = true;
- }
- }
- return false;
- }
-
- private bool rotateShape(int rotation)
- {
- int orient = mOrient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = alignFromOrientation(orient);
- if (hasRotated)
- mOrient = orient;
-
- return hasRotated;
- }
-
-
- private bool alignFromOrientation(int orientation)
- {
- int[] newElemPos = (int[])mElems.Clone();
- int typeOffset = (mType * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- newElemPos[ELEM_1] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- newElemPos[ELEM_2] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- newElemPos[ELEM_3] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return tryToMove(newElemPos);
- }
-
-
- private bool shiftCells(int cellscrool)
- {
- int[] tmpElems = (int[])mElems.Clone();
- for (int i = 0; i < mElems.Length; i++)
- {
- if (mElems[i] != DONT_CHECK_CELL)
- tmpElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (mGrid.getRow(mElems[ELEM_BASE]) != mGrid.getRow(tmpElems[ELEM_BASE]))
- return false;
-
- return tryToMove(tmpElems);
- }
-
- private bool tryToMove(int[] newElemPos)
- {
- bool hasMoved = mGrid.tryToMoveCells(mElems, newElemPos);
- if (hasMoved)
- mElems = newElemPos;
- return hasMoved;
- }
-
- }
-}
diff --git a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisShape.h.svn-base b/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
deleted file mode 100644
index cf678ad..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tetris/TetrisDefines.h b/labs/lab-10/Tetris5/source/Tetris/TetrisDefines.h
deleted file mode 100644
index f7b8183..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/TetrisDefines.h
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tetris/TetrisGameplay.cpp b/labs/lab-10/Tetris5/source/Tetris/TetrisGameplay.cpp
deleted file mode 100644
index cf676db..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/TetrisGameplay.cpp
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- {
- Gameplay_currentAction = actionToSend;
- swiDelay(2000000);
- }
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //Game Over!
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
-// Gameplay_displayNextShape(Shape_NextType);
-}
diff --git a/labs/lab-10/Tetris5/source/Tetris/TetrisGameplay.h b/labs/lab-10/Tetris5/source/Tetris/TetrisGameplay.h
deleted file mode 100644
index 8345c72..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/TetrisGameplay.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
diff --git a/labs/lab-10/Tetris5/source/Tetris/TetrisGrid.cpp b/labs/lab-10/Tetris5/source/Tetris/TetrisGrid.cpp
deleted file mode 100644
index a65be38..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/TetrisGrid.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
diff --git a/labs/lab-10/Tetris5/source/Tetris/TetrisGrid.h b/labs/lab-10/Tetris5/source/Tetris/TetrisGrid.h
deleted file mode 100644
index 417d538..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/TetrisGrid.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tetris/TetrisShape.cpp b/labs/lab-10/Tetris5/source/Tetris/TetrisShape.cpp
deleted file mode 100644
index ec850ff..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/TetrisShape.cpp
+++ /dev/null
@@ -1,173 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-#include "../P_Audio.h"
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_isGameOver = false;
- Shape_isInited = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- Audio_PlaySoundEX( SFX_SWISH);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- Audio_PlaySoundEX( SFX_SWISH);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- Audio_PlaySoundEX( SFX_CLUNK);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
diff --git a/labs/lab-10/Tetris5/source/Tetris/TetrisShape.h b/labs/lab-10/Tetris5/source/Tetris/TetrisShape.h
deleted file mode 100644
index cf678ad..0000000
--- a/labs/lab-10/Tetris5/source/Tetris/TetrisShape.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tools/.svn/all-wcprops b/labs/lab-10/Tetris5/source/Tools/.svn/all-wcprops
deleted file mode 100644
index a6e3218..0000000
--- a/labs/lab-10/Tetris5/source/Tools/.svn/all-wcprops
+++ /dev/null
@@ -1,17 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 43
-/svn/!svn/ver/2/trunk/dstetris/source/Tools
-END
-DrawTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 55
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/DrawTools.h
-END
-ArrayTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 56
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/ArrayTools.h
-END
diff --git a/labs/lab-10/Tetris5/source/Tools/.svn/entries b/labs/lab-10/Tetris5/source/Tools/.svn/entries
deleted file mode 100644
index 2b30dfc..0000000
--- a/labs/lab-10/Tetris5/source/Tools/.svn/entries
+++ /dev/null
@@ -1,96 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tools
-http://dstetris.googlecode.com/svn
-
-
-
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-DrawTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-8ec827749fae42a9b2ca3aafba7d3477
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-288
-
-ArrayTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-73a5b8792e77a495b434fe3e1cf2d634
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1003
-
diff --git a/labs/lab-10/Tetris5/source/Tools/.svn/format b/labs/lab-10/Tetris5/source/Tools/.svn/format
deleted file mode 100644
index ec63514..0000000
--- a/labs/lab-10/Tetris5/source/Tools/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-10/Tetris5/source/Tools/.svn/text-base/ArrayTools.h.svn-base b/labs/lab-10/Tetris5/source/Tools/.svn/text-base/ArrayTools.h.svn-base
deleted file mode 100644
index 905d065..0000000
--- a/labs/lab-10/Tetris5/source/Tools/.svn/text-base/ArrayTools.h.svn-base
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tools/.svn/text-base/DrawTools.h.svn-base b/labs/lab-10/Tetris5/source/Tools/.svn/text-base/DrawTools.h.svn-base
deleted file mode 100644
index 61263cf..0000000
--- a/labs/lab-10/Tetris5/source/Tools/.svn/text-base/DrawTools.h.svn-base
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/Tools/ArrayTools.h b/labs/lab-10/Tetris5/source/Tools/ArrayTools.h
deleted file mode 100644
index b67d8fd..0000000
--- a/labs/lab-10/Tetris5/source/Tools/ArrayTools.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
diff --git a/labs/lab-10/Tetris5/source/Tools/DrawTools.h b/labs/lab-10/Tetris5/source/Tools/DrawTools.h
deleted file mode 100644
index 61263cf..0000000
--- a/labs/lab-10/Tetris5/source/Tools/DrawTools.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-10/Tetris5/source/main.c b/labs/lab-10/Tetris5/source/main.c
deleted file mode 100644
index 615759d..0000000
--- a/labs/lab-10/Tetris5/source/main.c
+++ /dev/null
@@ -1,19 +0,0 @@
-#include
-#include "P_Controls.h"
-#include "P_Initializer.h"
-
-//---------------------------------------------------------------------------------
-int main(void) {
-//---------------------------------------------------------------------------------
-
- P_InitNDS();
-
- srand( clock() );
- Gameplay_Load();
- while( true ) {
- handleInput();
- swiWaitForVBlank();
- }
-
- return 0;
-}
diff --git a/labs/lab-10/simon2/.root b/labs/lab-10/simon2/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-10/simon2/Makefile b/labs/lab-10/simon2/Makefile
deleted file mode 100644
index 26aa89f..0000000
--- a/labs/lab-10/simon2/Makefile
+++ /dev/null
@@ -1,164 +0,0 @@
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-10/simon2/audio/laser.wav b/labs/lab-10/simon2/audio/laser.wav
deleted file mode 100644
index 2ecf822..0000000
Binary files a/labs/lab-10/simon2/audio/laser.wav and /dev/null differ
diff --git a/labs/lab-10/simon2/audio/music.xm b/labs/lab-10/simon2/audio/music.xm
deleted file mode 100644
index ddd5c43..0000000
Binary files a/labs/lab-10/simon2/audio/music.xm and /dev/null differ
diff --git a/labs/lab-10/simon2/audio/result.wav b/labs/lab-10/simon2/audio/result.wav
deleted file mode 100644
index 1546a5d..0000000
Binary files a/labs/lab-10/simon2/audio/result.wav and /dev/null differ
diff --git a/labs/lab-10/simon2/data/numbers.grit b/labs/lab-10/simon2/data/numbers.grit
deleted file mode 100644
index 98afd29..0000000
--- a/labs/lab-10/simon2/data/numbers.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--gt
--gB8
--p
--pn2
diff --git a/labs/lab-10/simon2/data/numbers.png b/labs/lab-10/simon2/data/numbers.png
deleted file mode 100644
index 1e3724d..0000000
Binary files a/labs/lab-10/simon2/data/numbers.png and /dev/null differ
diff --git a/labs/lab-10/simon2/data/quarter.grit b/labs/lab-10/simon2/data/quarter.grit
deleted file mode 100644
index fde04ce..0000000
--- a/labs/lab-10/simon2/data/quarter.grit
+++ /dev/null
@@ -1,6 +0,0 @@
--g
--gt
--gB4
--p
--pn16
--m
\ No newline at end of file
diff --git a/labs/lab-10/simon2/data/quarter.png b/labs/lab-10/simon2/data/quarter.png
deleted file mode 100644
index c9df7b5..0000000
Binary files a/labs/lab-10/simon2/data/quarter.png and /dev/null differ
diff --git a/labs/lab-10/simon2/source/chrono_display.c b/labs/lab-10/simon2/source/chrono_display.c
deleted file mode 100644
index 3a848b0..0000000
--- a/labs/lab-10/simon2/source/chrono_display.c
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * chrono_display.c
- *
- * Created on: Mar 21, 2011
- * Author: nds
- */
-
-#include "chrono_display.h"
-
-void printDigit(u16* map, int number, int x, int y)
-{
- int i,j;
- if(number < 10)
- for(i = 0; i<8;i++)
- for(j = 0; j<4; j++)
- if(number >= 0)
- map[(i + y)*32+j+x] = (u16)(i*4+j)+32*number;
- else
- map[(i + y)*32+j+x] = 32;
- if(number == 10)
- for(i = 0; i<8;i++)
- for(j = 0; j<2; j++)
- map[(i + y)*32+j+x] = (u16)(i*4+j)+32*10+2;
- if(number==11)
- for(i = 0; i<8;i++)
- for(j = 0; j<2; j++)
- map[(i + y)*32+j+x] = (u16)(i*4+j)+32*10;
-}
-
-void updateChronoDisp(u16* map,int min, int sec, int msec)
-{
- int x = 0, y = 0;
- int number;
-
- /*****MINUTES******/
- number = min;
- if(min > 59) min = number = -1;
- //First digit
- x = 0; y = 8;
- if(min>=0) number = min/10;
- printDigit(map, number, x,y);
- //Second digit
- x = 4; y = 8;
- if(min>=0) number = min %10;
- printDigit(map, number, x,y);
-
- /*****POINTS******/
- x = 8; y = 8;
- number = 10;
- printDigit(map, number, x,y);
-
- /*****SECONDS******/
- number = sec;
- if(sec > 59) sec = number = -1;
- //First digit
- x = 10; y = 8;
- if(sec>=0) number = sec / 10;
- printDigit(map, number, x,y);
- //Second digit
- x = 14; y = 8;
- if(sec>=0) number = sec % 10;
- printDigit(map, number, x,y);
-
- /*****POINT MSEC******/
- x = 18; y = 8;
- number = 11;
- printDigit(map, number, x,y);
-
- /*****M.SECONDS******/
- number = msec;
- if(msec > 999) msec = number = -1;
- //First digit
- x = 20; y = 8;
- if(msec>=0) number = msec / 100;
- printDigit(map, number, x,y);
-
- //Second digit
- x = 24; y = 8;
- if(msec>=0) number = (msec % 100) / 10;
- printDigit(map, number, x,y);
-
- //Third digit
- x = 28; y = 8;
- if(msec>=0) number = (msec % 10) % 10;
- printDigit(map, number, x,y);
-}
-
-void updateChronoDisp_Main(int min, int sec, int msec)
-{
- updateChronoDisp(BG_MAP_RAM(0), min,sec,msec);
-}
-
-void updateChronoDisp_Sub(int min, int sec, int msec)
-{
- updateChronoDisp(BG_MAP_RAM_SUB(0), min,sec,msec);
-}
-
-void initChronoDisp_Main()
-{
- VRAM_A_CR = VRAM_ENABLE
- | VRAM_A_MAIN_BG;
- REG_DISPCNT = MODE_0_2D | DISPLAY_BG0_ACTIVE;
- BGCTRL[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- swiCopy(numbersTiles, BG_TILE_RAM(1), numbersTilesLen);
- swiCopy(numbersPal, BG_PALETTE, numbersPalLen);
- BG_PALETTE[0] = ARGB16(1,0,31,31);
- BG_PALETTE[1] = ARGB16(1,0,0,0);
- memset(BG_MAP_RAM(0), 32,32*32*2);
- updateChronoDisp_Main(-1,-1,-1);
-}
-
-void initChronoDisp_Sub()
-{
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
-
- REG_DISPCNT_SUB = MODE_0_2D | DISPLAY_BG0_ACTIVE;
- BGCTRL_SUB[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- swiCopy(numbersTiles, BG_TILE_RAM_SUB(1), numbersTilesLen);
- swiCopy(numbersPal, BG_PALETTE_SUB, numbersPalLen);
- BG_PALETTE_SUB[0] = ARGB16(1,31,31,0);
- BG_PALETTE_SUB[1] = ARGB16(1,0,0,0);
- memset(BG_MAP_RAM_SUB(0), 32,32*32*2);
- updateChronoDisp_Sub(-1,-1,-1);
-}
-
-void changeColorDisp_Main(uint16 c)
-{
- BG_PALETTE[0] = c;
-}
-
-void changeColorDisp_Sub(uint16 c)
-{
- BG_PALETTE_SUB[0] = c;
-}
diff --git a/labs/lab-10/simon2/source/chrono_display.h b/labs/lab-10/simon2/source/chrono_display.h
deleted file mode 100644
index 8890b8d..0000000
--- a/labs/lab-10/simon2/source/chrono_display.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * chrono_display.h
- *
- * Created on:
- * Author: nds
- */
-
-#include
-#include "numbers.h"
-#include "string.h"
-
-/*
- * Initializers of the display. This function should be called
- * whenever the display needs to be initialized to be used in the
- * upper screen (Main) or the bottom screen (Sub)
- *
- * Warning! Do not use the display in the bottom screen in combination
- * with the console. It will not work properly
- */
-void initChronoDisp_Main();
-void initChronoDisp_Sub();
-
-/*
- * Functions to update the value of the display showed in the upper screen
- * (Main) or the one shown in the bottom screen (Sub). These functions receive
- * three integer as input representing minutes, seconds and milliseconds
- * respectively.
- *
- * Warning: Do not call any of these functions if the previous initialization
- * has not been performed.
- */
-void updateChronoDisp_Main(int min, int sec, int msec);
-void updateChronoDisp_Sub(int min, int sec, int msec);
-
-/*
- * Functions to change the color of the upper display (Main) or the bottom
- * display (Sub). These functions receive a 16 bits integer as input that
- * represent a valid color. Some valid colors are declared at the beginning
- * of this file. New colors can be created with the macro ARGB16(..).
- *
- * Warning: Do not use these functions if the coresponding display has not
- * initialized
- */
-void changeColorDisp_Main(uint16 c);
-void changeColorDisp_Sub(uint16 c);
diff --git a/labs/lab-10/simon2/source/main.c b/labs/lab-10/simon2/source/main.c
deleted file mode 100644
index b8f3dc4..0000000
--- a/labs/lab-10/simon2/source/main.c
+++ /dev/null
@@ -1,232 +0,0 @@
-#include
-#include
-#include "quarter.h"
-#include "math.h"
-#include "chrono_display.h"
-
-#include
-#include "soundbank.h"
-#include "soundbank_bin.h"
-
-//Define to use paletes easily
-#define PALETTE(x) (x << 12)
-
-//Buttons of the simon game
-typedef enum{RED,YELLOW,BLUE,GREEN,NONE}button;
-
-//Active button
-button active_button = NONE;
-
-//Time variables (for the chronometer)
-int min = 0, sec = 0, msec = 0;
-
-//Timer 2 ISR (chronometer)
-void TIMER2_ISR()
-{
- msec = (msec + 1) % 1000;
- if(!msec)
- {
- sec = (sec + 1) % 60;
- if(!sec)
- min++;
- }
-}
-
-//Timer0 ISR (blinking effect of the buttons)
-void TIMER0_ISR()
-{
- //It is necessary to wait until the screen is refreshed...
- swiWaitForVBlank();
-
- //Switching between light and dark color
- switch(active_button)
- {
- case RED: BG_PALETTE_SUB[17] ^= 0x0B;break;
- case GREEN: BG_PALETTE_SUB[1] ^= (0x0B << 5);break;
- case BLUE: BG_PALETTE_SUB[49] ^= (0x0B << 10) | (0x5<<5);break;
- case YELLOW: BG_PALETTE_SUB[33] ^= 0x0B | (0xB<<5);break;
- default:
- BG_PALETTE_SUB[1] = ARGB16(1,0,20,0);
- BG_PALETTE_SUB[17] = ARGB16(1,20,0,0);
- BG_PALETTE_SUB[33] = ARGB16(1,20,20,0);
- BG_PALETTE_SUB[49] = ARGB16(1,0,0,20);
- break;
- }
-}
-
-//Update the chronometer every VBlank
-void VBLANK_ISR()
-{
- updateChronoDisp_Main(min,sec,msec);
-}
-
-//-----------------------------------------------------------------------------
-int main(void) {
-//-----------------------------------------------------------------------------
- //SOUND
- //Init the sound library
- mmInitDefaultMem((mm_addr)soundbank_bin);
- //Load module
- mmLoad(MOD_MUSIC);
- //Load effect
- mmLoadEffect(SFX_LASER);
- mmLoadEffect(SFX_RESULT);
-
-
- //GRAPHICS
- //Enable the VRAM bank
- VRAM_C_CR = VRAM_ENABLE | VRAM_C_SUB_BG;
- //Enable the Engine
- REG_DISPCNT_SUB = MODE_0_2D | DISPLAY_BG0_ACTIVE;
- //Configure BG0
- BGCTRL_SUB[0] = BG_32x32 | BG_COLOR_16 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- //Copy the tiles to the tile base
- swiCopy(quarterTiles, BG_TILE_RAM_SUB(1), quarterTilesLen/2);
-
- //Copy the 4 16-colors palettes (4 times the same palette)
- swiCopy(quarterPal, &BG_PALETTE_SUB[0], quarterPalLen/2);
- swiCopy(quarterPal, &BG_PALETTE_SUB[16], quarterPalLen/2);
- swiCopy(quarterPal, &BG_PALETTE_SUB[32], quarterPalLen/2);
- swiCopy(quarterPal, &BG_PALETTE_SUB[48], quarterPalLen/2);
-
- //Fill all the BG0 with the white tile (tile corresponding to the 12th position
- //of the map, the upper right corner of the original image)
- int i;
- for(i=0; i<32*24; i++)
- BG_MAP_RAM_SUB(0)[i] = quarterMap[11];
-
- //Create the map of the BG0
- int row, column, tile = 0;
- for(row = 0; row < 12; row++)
- for(column = 0; column <12; column++)
- {
- //Upper left quarter
- BG_MAP_RAM_SUB(0)[4 + row*32 + 11 - column]
- = quarterMap[tile] | (1<<10) | PALETTE(0);
- //Upper right quarter
- BG_MAP_RAM_SUB(0)[4 + row*32 + 12 + column]
- = quarterMap[tile] | PALETTE(1);
- //Bottom left quarter
- BG_MAP_RAM_SUB(0)[4 + (23-row)*32 + 11 - column]
- = quarterMap[tile] | (1<<10) | (1<<11) | PALETTE(2);
- //Bottom right quarter
- BG_MAP_RAM_SUB(0)[4 + (23-row)*32 + 12 + column]
- = quarterMap[tile] | (1<<11) | PALETTE(3);
- tile++;
- }
-
- //Change the default colors of the quarters
- BG_PALETTE_SUB[1] = ARGB16(1,0,20,0); //Upper left (green)
- BG_PALETTE_SUB[17] = ARGB16(1,20,0,0); //Upper right (red)
- BG_PALETTE_SUB[33] = ARGB16(1,20,20,0); //Bottom left (yellow)
- BG_PALETTE_SUB[49] = ARGB16(1,0,0,20); //Bottom rigth (Blue)
-
- //Enable Interrupt for the timers and Vblank and set the handlers
- irqSet(IRQ_TIMER0, &TIMER0_ISR);
- irqEnable(IRQ_TIMER0);
- irqSet(IRQ_TIMER2, &TIMER2_ISR);
- irqEnable(IRQ_TIMER2);
- irqSet(IRQ_VBLANK, &VBLANK_ISR);
- irqEnable(IRQ_VBLANK);
-
- //Configure the timers
- TIMER0_DATA = TIMER_FREQ_1024(8);
- TIMER0_CR = TIMER_DIV_1024 | TIMER_IRQ_REQ | TIMER_ENABLE;
- TIMER2_DATA = TIMER_FREQ_256(1000);
- TIMER2_CR = TIMER_DIV_256 | TIMER_IRQ_REQ;
-
- //Initialize the chrono display
- initChronoDisp_Main();
- changeColorDisp_Main(ARGB16(1,31,31,0));
- updateChronoDisp_Main(0,0,0);
-
- int x, y, radius;
- int hits = -1;
- int last;
- active_button = last = NONE;
-
- while(1) {
-
- //Scan the keys
- scanKeys();
-
- //If start is pressed, the game starts
- if(keysDown() & KEY_START)
- {
- /*MUSIC STARTS*/
- mmStart(MOD_MUSIC,MM_PLAY_LOOP);
- //Init the randomizer
- srand(TIMER0_DATA);
- //Random button starts
- active_button = rand() % 4;
- //Enable Timers
- TIMER0_CR |= TIMER_ENABLE;
- TIMER2_CR |= TIMER_ENABLE;
- //10 times will be hitted
- hits = 9;
- //Initialize the time variables for the chronometer
- min = sec = msec = 0;
- }
-
- //Declare a touchPosition variable
- touchPosition touch;
- //Poll the touch-screen
- touchRead(&touch);
- //If the touch received is different to (0,0)
- if(touch.px || touch.py)
- {
- //Calculates x and y with respect to the center of the game
- x = touch.px-127;
- y = touch.py-95;
- //Calculate the radius (distance to the center)
- radius = sqrt(x*x + y*y);
-
- int temp_butt = active_button;
- //Check if any of the buttons has been touched
- if(x>=3 && y <=-3 && radius >=19 && radius <96) //RED touched
- if(active_button == RED) active_button = NONE;
- if(x>=3 && y >=3 && radius >=19 && radius <96) //BLUE touched
- if(active_button == BLUE) active_button = NONE;
- if(x<=-3 && y <=-3 && radius >=19 && radius <96) //GREEN touched
- if(active_button == GREEN) active_button = NONE;
- if(x<=-3 && y >=3 && radius >=19 && radius <96) //YELLO touched
- if(active_button ==YELLOW) active_button = NONE;
-
- /*EFFECT TOUCHED*/
- if(temp_butt != active_button) mmEffect(SFX_LASER);
- }
-
-
- if(active_button == NONE)
- {
- //End of the game (Stop Time Timer)
- if(hits == 0)
- {
- hits--;
- TIMER2_CR &= ~TIMER_ENABLE;
- last = active_button;
- /*MUSIC STOPS*/
- mmStop();
- /*EFFECT RESULT*/
- mmEffect(SFX_RESULT);
- }
- else if(hits > 0)
- //Look for another random button different to the last one
- {
- int temp = rand() % 4;
- if(temp != last)
- {
- hits--;
- last = active_button = temp;
- }
- }
- //Reset the colors to the dark ones
- BG_PALETTE_SUB[1] = ARGB16(1,0,20,0);
- BG_PALETTE_SUB[17] = ARGB16(1,20,0,0);
- BG_PALETTE_SUB[33] = ARGB16(1,20,20,0);
- BG_PALETTE_SUB[49] = ARGB16(1,0,0,20);
- }
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-11/.root b/labs/lab-11/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-11/PianoPlayer/Makefile b/labs/lab-11/PianoPlayer/Makefile
deleted file mode 100644
index 2b097ea..0000000
--- a/labs/lab-11/PianoPlayer/Makefile
+++ /dev/null
@@ -1,160 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lfat -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
\ No newline at end of file
diff --git a/labs/lab-11/PianoPlayer/audio/DO.wav b/labs/lab-11/PianoPlayer/audio/DO.wav
deleted file mode 100644
index feb3648..0000000
Binary files a/labs/lab-11/PianoPlayer/audio/DO.wav and /dev/null differ
diff --git a/labs/lab-11/PianoPlayer/source/main.c b/labs/lab-11/PianoPlayer/source/main.c
deleted file mode 100644
index a63193a..0000000
--- a/labs/lab-11/PianoPlayer/source/main.c
+++ /dev/null
@@ -1,289 +0,0 @@
-#include
-#include
-#include "soundbank.h"
-#include "soundbank_bin.h"
-#include
-#include
-#include
-#include
-#include
-
-//Declare the tiles to use
-unsigned char white[] ={
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00
-};
-
-unsigned char semiwhite_left[] ={
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00,
- 0x01,0x00,0x00,0x00
-};
-
-unsigned char semiwhite_up[] ={
- 0x11,0x11,0x11,0x11,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00
-};
-
-unsigned char black[] ={
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11,
- 0x11,0x11,0x11,0x11
-};
-
-mm_sound_effect sound;
-FILE* input = NULL;
-DIR* di;
-struct dirent* entry;
-struct stat st;
-
-void playNote()
-{
- char note[16];
- int duration;
-
- //Disable Timer
- TIMER0_CR &= ~(TIMER_ENABLE);
-
- //Read if there is an open file
- if(input)
- {
- //Read note and duration
- if(fscanf(input,"%s %i", note, &duration) != EOF)
- {
- //Look for the playback rate (note)
- sound.rate = 0;
- if(strcmp(note,"DO#")==0) sound.rate = (int)(1.059f * 1024); //DO#
- else if(strcmp(note,"RE#")==0) sound.rate = (int)(1.189f * 1024); //RE#
- else if(strcmp(note,"FA#")==0) sound.rate = (int)(1.414f * 1024); //FA#
- else if(strcmp(note,"SOL#")==0) sound.rate = (int)(1.587f * 1024); //SOL#
- else if(strcmp(note,"LA#")==0) sound.rate = (int)(1.782f * 1024); //LA#
- else if(strcmp(note,"DO2#")==0) sound.rate = (int)(2.119f * 1024); //DO2#
- else if(strcmp(note,"DO")==0) sound.rate = (int)(1.0f * 1024); //DO
- else if(strcmp(note,"RE")==0) sound.rate = (int)(1.122f * 1024); //RE
- else if(strcmp(note,"MI")==0) sound.rate = (int)(1.26f * 1024); //MI
- else if(strcmp(note,"FA")==0) sound.rate = (int)(1.335f * 1024); //FA
- else if(strcmp(note,"SOL")==0) sound.rate = (int)(1.498f * 1024); //SOL
- else if(strcmp(note,"LA")==0) sound.rate = (int)(1.682f * 1024); //LA
- else if(strcmp(note,"SI")==0) sound.rate = (int)(1.888f * 1024); //SI
- else if(strcmp(note,"DO2")==0) sound.rate = (int)(2.f * 1024); //DO2
-
- //Play the note
- if(sound.rate) mmEffectEx(&sound);
-
- //If duration>0 set the next timer event
- if(duration)
- TIMER0_DATA = TIMER_FREQ_1024(duration);
- //Enable timer again
- TIMER0_CR |= TIMER_ENABLE;
- }
- }
-}
-
-
-int main(void) {
-
- //Enable the VRAM bank
- VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG;
- //Enable the Engine
- REG_DISPCNT = MODE_0_2D | DISPLAY_BG0_ACTIVE;
-
- //Configure BG0
- BGCTRL[0] = BG_32x32 | BG_COLOR_16 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- //Swap the LCDs
- lcdSwap();
-
- //Initialize the console in the upper screen (sub engine)
- consoleDemoInit();
-
- //Black and white colors in the palette
- BG_PALETTE[0] = ARGB16(1,31,31,31);
- BG_PALETTE[1] = ARGB16(1,0,0,0);
-
- //Copy tiles to the tile Base
- dmaCopy(white,&BG_TILE_RAM(1)[0], 32);
- dmaCopy(semiwhite_left,&BG_TILE_RAM(1)[16], 32);
- dmaCopy(semiwhite_up,&BG_TILE_RAM(1)[32], 32);
- dmaCopy(black,&BG_TILE_RAM(1)[48], 32);
-
- /********************
- * Generate the map
- ********************/
- int row, key, i;
-
- //Create white keys
- for(row = 0; row<18; row++)
- for(key = 0; key < 8; key++)
- {
- BG_MAP_RAM(0)[row*32+key*4] = 1;
- BG_MAP_RAM(0)[row*32+key*4+1] = 0;
- BG_MAP_RAM(0)[row*32+key*4+2] = 0;
- BG_MAP_RAM(0)[row*32+key*4+3] = 1 | BIT(10);
- }
- for(i = 0; i<32; i++)
- BG_MAP_RAM(0)[row*32+i] = 2;
-
- //Create the black keys
- for(row = 0; row < 10; row++)
- for(key = 0; key < 8; key ++)
- if(key != 2 && key != 6)
- {
- BG_MAP_RAM(0)[3 + row*32+key*4] = 3;
- if(key != 7)
- BG_MAP_RAM(0)[3 + row*32+key*4+1] = 3;
- }
- /******End map generation***********/
-
- //Init the sound library
- mmInitDefaultMem((mm_addr)soundbank_bin);
-
- //Init Fat Library and open the directory "/melodies"
- fatInitDefault();
- di = opendir("/melodies/");
- printf("Press RIGHT to start listing the music folder");
-
- //TIMER and interrupts configuration
- TIMER0_CR = TIMER_DIV_1024 | TIMER_IRQ_REQ;
- irqSet(IRQ_TIMER0, &playNote);
- irqEnable(IRQ_TIMER0);
-
- //Load the effects
- mmLoadEffect(SFX_DO);
-
- //Declaration of the sound effect to play and set up of the structure
- sound.id = SFX_DO;
- sound.rate = (int)(1.0f * (1<<10)); // rate
- sound.handle = 0; // 0 = allocate new handle
- sound.volume = 255; //Max volumen
- sound.panning = 128; // centered panning
-
-
- //Touch position declaration
- touchPosition touch;
-
- //Scan keys once to clean registers before main loop
- scanKeys();
-
- while(1) {
- //Scan the keys
- scanKeys();
- u32 keys = keysDown();
- //If the touchscreen is pressed
- if(keys & KEY_TOUCH)
- {
- //Read the touch-screen
- touchRead(&touch);
-
- //Sound rate set to 0
- sound.rate = 0;
-
- //Chek if the Piano keyboard is touched
- if(touch.py < 18*8)
- {
- //Solution 2
- //Identify the key and set the corresponding soun rate
- if(touch.px >= 24 && touch.px < 40 && touch.py < 80)
- sound.rate = (int)(1.059f * 1024); //DO#
- else if(touch.px >= 56 && touch.px < 72 && touch.py < 80)
- sound.rate = (int)(1.189f * 1024); //RE#
- else if(touch.px >= 120 && touch.px < 136 && touch.py < 80)
- sound.rate = (int)(1.414f * 1024); //FA#
- else if(touch.px >= 152 && touch.px < 168 && touch.py < 80)
- sound.rate = (int)(1.587f * 1024); //SOL#
- else if(touch.px >= 184 && touch.px < 200 && touch.py < 80)
- sound.rate = (int)(1.782f * 1024); //LA#
- else if(touch.px >= 248 && touch.px < 256 && touch.py < 80)
- sound.rate = (int)(2.119f * 1024); //DO2#
- else if(touch.px >= 0 && touch.px < 32)
- sound.rate = (int)(1.0f * 1024); //DO
- else if(touch.px >= 32 && touch.px < 64)
- sound.rate = (int)(1.122f * 1024); //RE
- else if(touch.px >= 64 && touch.px < 96)
- sound.rate = (int)(1.26f * 1024); //MI
- else if(touch.px >= 96 && touch.px < 128)
- sound.rate = (int)(1.335f * 1024); //FA
- else if(touch.px >= 128 && touch.px < 160)
- sound.rate = (int)(1.498f * 1024); //SOL
- else if(touch.px >= 160 && touch.px < 192)
- sound.rate = (int)(1.682f * 1024); //LA
- else if(touch.px >= 192 && touch.px < 224)
- sound.rate = (int)(1.888f * 1024); //SI
- else if(touch.px >= 224 && touch.px < 256)
- sound.rate = (int)(2.f * 1024); //DO2
-
- //Play the sound if identified
- if(sound.rate >= 0)
- mmEffectEx(&sound);
- }
- }
-
- if(keys & KEY_A)
- {
- //Start the playback
- playNote();
- }
-
- if(keys & KEY_RIGHT)
- {
- //Disable timer
- TIMER0_CR &= ~(TIMER_ENABLE);
-
- //Close file (if opened)
- if(input)
- fclose(input);
-
- //check if there is next entry, if not reopen the directory
- if((entry = readdir(di))== NULL)
- {
- //Close and reopen the directory
- closedir(di);
- di = opendir("/melodies/");
- entry = readdir(di);
- }
-
- //Retrieve the next entry (if any) different to "." or ".."
- while(entry != NULL && !(strcmp(entry->d_name, ".") && strcmp(entry->d_name, "..")))
- entry = readdir(di);
-
- //If valid entry (not empty folder) open file and print title
- if(entry != NULL)
- {
- char str[256];
- strcpy(str,"");
- strcat(str, "/melodies/");
- strcat(str,entry->d_name);
- input = fopen(str, "r");
- consoleClear();
- printf("SONG : %s\n", entry->d_name);
- }
- else //Empty folder
- printf("Empty folder \n");
- }
-
- //Wait for VBlank
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-11/Tetris6/Makefile b/labs/lab-11/Tetris6/Makefile
deleted file mode 100644
index a122420..0000000
--- a/labs/lab-11/Tetris6/Makefile
+++ /dev/null
@@ -1,160 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lfat -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/audio/FlatOutLies.mod b/labs/lab-11/Tetris6/audio/FlatOutLies.mod
deleted file mode 100644
index 7b06f97..0000000
Binary files a/labs/lab-11/Tetris6/audio/FlatOutLies.mod and /dev/null differ
diff --git a/labs/lab-11/Tetris6/audio/clunk.wav b/labs/lab-11/Tetris6/audio/clunk.wav
deleted file mode 100644
index a6f13d3..0000000
Binary files a/labs/lab-11/Tetris6/audio/clunk.wav and /dev/null differ
diff --git a/labs/lab-11/Tetris6/audio/swish.wav b/labs/lab-11/Tetris6/audio/swish.wav
deleted file mode 100644
index 414e27d..0000000
Binary files a/labs/lab-11/Tetris6/audio/swish.wav and /dev/null differ
diff --git a/labs/lab-11/Tetris6/data/background.grit b/labs/lab-11/Tetris6/data/background.grit
deleted file mode 100644
index 7b0d0eb..0000000
--- a/labs/lab-11/Tetris6/data/background.grit
+++ /dev/null
@@ -1,6 +0,0 @@
--g
--gt
--gB8
--p
--pn253
--m
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/data/background.png b/labs/lab-11/Tetris6/data/background.png
deleted file mode 100644
index 58d2d33..0000000
Binary files a/labs/lab-11/Tetris6/data/background.png and /dev/null differ
diff --git a/labs/lab-11/Tetris6/data/controls.grit b/labs/lab-11/Tetris6/data/controls.grit
deleted file mode 100644
index f6112ae..0000000
--- a/labs/lab-11/Tetris6/data/controls.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--g
--gb
--gB8
--p
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/data/controls.png b/labs/lab-11/Tetris6/data/controls.png
deleted file mode 100644
index c800bcb..0000000
Binary files a/labs/lab-11/Tetris6/data/controls.png and /dev/null differ
diff --git a/labs/lab-11/Tetris6/data/numbers.grit b/labs/lab-11/Tetris6/data/numbers.grit
deleted file mode 100644
index 2e980c4..0000000
--- a/labs/lab-11/Tetris6/data/numbers.grit
+++ /dev/null
@@ -1,7 +0,0 @@
--g
--gt
--gB4
--gTFFFFFF
--p
--p16
--m
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/data/numbers.png b/labs/lab-11/Tetris6/data/numbers.png
deleted file mode 100644
index d174954..0000000
Binary files a/labs/lab-11/Tetris6/data/numbers.png and /dev/null differ
diff --git a/labs/lab-11/Tetris6/source/P_Audio.c b/labs/lab-11/Tetris6/source/P_Audio.c
deleted file mode 100644
index 22d122b..0000000
--- a/labs/lab-11/Tetris6/source/P_Audio.c
+++ /dev/null
@@ -1,46 +0,0 @@
-#include "P_Audio.h"
-
-void Audio_Init()
-{
- //Init the sound library
- mmInitDefaultMem((mm_addr)soundbank_bin);
- //Load module
- mmLoad(MOD_FLATOUTLIES);
- //Load effect
- mmLoadEffect(SFX_SWISH);
- mmLoadEffect(SFX_CLUNK);
-}
-
-void Audio_PlaySoundEX( int i )
-{
- //Declare a sound effect
- mm_sound_effect sound;
- //Set the id of the sound effect with the input parameter
- sound.id = i;
- //Set the rate to the default one (1024)
- sound.rate = 1024;
- //Set the volume to the maximum (range 0...255)
- sound.volume = 255;
- //Set the panning depending on the effect (0-left....255-right)
- if(i == SFX_SWISH)
- sound.panning = 0;
- if(i == SFX_CLUNK)
- sound.panning = 255;
-
- //Play the effect using the sound structure
- mmEffectEx(&sound);
-}
-
-void Audio_PlaySound( int sound )
-{
- //Play the effect
- mmEffect(sound);
-}
-
-void Audio_PlayMusic()
-{
- //Start playing music in a loop
- mmStart(MOD_FLATOUTLIES, MM_PLAY_LOOP);
- //Set module volume to 512 (range 0...1024) using the function mmSetVolume(...)
- mmSetModuleVolume(512);
-}
diff --git a/labs/lab-11/Tetris6/source/P_Audio.h b/labs/lab-11/Tetris6/source/P_Audio.h
deleted file mode 100644
index 480a109..0000000
--- a/labs/lab-11/Tetris6/source/P_Audio.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#pragma once
-
-#include
-#include
-#include "soundbank.h"
-#include "soundbank_bin.h"
-
-void Audio_Init();
-void Audio_PlaySoundEX( int i );
-void Audio_PlaySound( int sound );
-void Audio_PlayMusic();
diff --git a/labs/lab-11/Tetris6/source/P_Controls.c b/labs/lab-11/Tetris6/source/P_Controls.c
deleted file mode 100644
index 6465129..0000000
--- a/labs/lab-11/Tetris6/source/P_Controls.c
+++ /dev/null
@@ -1,71 +0,0 @@
-#include "P_Controls.h"
-#include "Tetris/TetrisGameplay.h"
-
-void handleTouchPad()
-{
- // Read the touch position.
- touchPosition touch;
- touchRead(&touch);
-
- //Only if px or py are different to 0 handle the touch
- if(touch.px || touch.py)
- {
- //Rotation
- if(touch.px > 170 && touch.px < 256)
- {
- if(touch.py > 0 && touch.py < 96)
- Gameplay_handleInput(UP);
- else
- Gameplay_handleInput(DOWN);
- }
- //Lateral movement
- else if(touch.px > 85 && touch.px < 170)
- {
- if(touch.py > 0 && touch.py < 96)
- Gameplay_handleInput(LEFT);
- else
- Gameplay_handleInput(RIGHT);
-
- }
- //Block fall down
- else if(touch.px > 0 && touch.px < 85)
- {
- Gameplay_handleInput(SELECT);
- }
- }
-}
-
-
-/*
- * This function handles the input by monitoring the keys and the touchscreen
- * and invoking the function Gameplay_HandleInput(...) with the correct input
- * value
- */
-void handleInput()
-{
- //Scan the keys
- scanKeys();
-
- /* Identify the keys and map the action according to the table given in
- * the manual. Call the function Gameplay_handleInput(..) to send an action
- * to the logic of the game */
- u16 keys = keysDown();
- if(keys & KEY_A)
- Gameplay_handleInput(SELECT);
- else if(keys & KEY_LEFT)
- Gameplay_handleInput(UP);
- else if(keys & KEY_RIGHT)
- Gameplay_handleInput(DOWN);
- else if (keys & KEY_UP)
- Gameplay_handleInput(LEFT);
- else if (keys & KEY_DOWN)
- Gameplay_handleInput(RIGHT);
-
-
- //Call the touch-handling function
- handleTouchPad();
-
- //Update the game and redraw the blocks
- Gameplay_update();
- Gameplay_draw();
-}
diff --git a/labs/lab-11/Tetris6/source/P_Controls.h b/labs/lab-11/Tetris6/source/P_Controls.h
deleted file mode 100644
index 946b8a3..0000000
--- a/labs/lab-11/Tetris6/source/P_Controls.h
+++ /dev/null
@@ -1,9 +0,0 @@
-
-#include
-
-/*
- * This function handles the input by monitoring the keys and the touchscreen
- * and invoking the function GamePlay_HandleInput(...) with the correct input
- * value
- */
-void handleInput();
diff --git a/labs/lab-11/Tetris6/source/P_Graphics.c b/labs/lab-11/Tetris6/source/P_Graphics.c
deleted file mode 100644
index a8e34a1..0000000
--- a/labs/lab-11/Tetris6/source/P_Graphics.c
+++ /dev/null
@@ -1,147 +0,0 @@
-#include "P_Graphics.h"
-
-u16* P_Graphics_mainBuffer;
-u16* P_Graphics_subBuffer;
-int P_Graphics_mainW;
-int P_Graphics_mainH;
-int P_Graphics_subW;
-int P_Graphics_subH;
-
-void P_Graphics_setup_main()
-{
-#ifdef FB0
- //Graphics (Part 1)
- //Set the mode to FB0
- REG_DISPCNT = MODE_FB0;
-
- //Set the coresponding VRAM bank
- VRAM_A_CR = VRAM_ENABLE //Enable the Bank
- | VRAM_A_LCD; //Assign it to the Main engine in FB0
-
-#endif
-
-#ifdef ROTOSCALE
- //Graphics (Part 2)
- //Enable a proper RAM memory bank for the main engine
- VRAM_A_CR = VRAM_ENABLE //Enable
- | VRAM_A_MAIN_BG; //Bank for the main engine
-
- //Configure the main engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-
-
- //Enable a proper RAM memory bank for sub engine
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
- //Configure the sub engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-#endif
-
-#ifdef TILES
- //Graphics (Part 3)
- //Enable a proper RAM memory bank for the main engine
- VRAM_A_CR = VRAM_ENABLE //Enable
- | VRAM_A_MAIN_BG; //Bank for the main engine
-
- //Configure the main engine in mode 0 (2D) and activate Backgrounds 3 and 0
- REG_DISPCNT = MODE_0_2D | DISPLAY_BG0_ACTIVE | DISPLAY_BG3_ACTIVE;
-
-
- //Enable a proper RAM memory bank for sub engine
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
- //Configure the sub engine in mode 5 (2D) and activate Backgrounds 2 and 0
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE | DISPLAY_BG0_ACTIVE;
-#endif
-}
-
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h)
-{
-
- switch(bT)
- {
- case MAIN: P_Graphics_mainBuffer = buffer;
- P_Graphics_mainW = w;
- P_Graphics_mainH = h;
- break;
- case SUB: P_Graphics_subBuffer = buffer;
- P_Graphics_subW = w;
- P_Graphics_subH = h;
- break;
- }
-}
-
-void FillScreen(enum BUFFER_TYPE t, u16 color)
-{
- int i;
- switch(t)
- {
- case MAIN:
- //Fill the whole screen (256*192) with the given color
- for(i = 0; i=0 && top <=191) //Check boundaries of top
- if(bottom >= 0 && bottom <=191) //Check boundaries of bottom
- if(left >=0 && left <= 255) //Check boundaries of left
- if(right >=0 && right <=255) //Check boundaries of right
- for(row = top; row < bottom; row++) //For rows from top to bottom
- for(col = left; col < right; col++) //And for column from left to right
- P_Graphics_mainBuffer[row*256 + col] = color; //Assign the color
-}
-
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color)
-{
- int col;
- if(bT == MAIN) //Check that we want to use the Main engine
- if(y >= 0 && y <=191) //Check the boundaries of y
- if(x >=0 && x <= 255) //Check the boundaries of x
- if(x2 >=0 && x2 <=255) //Check the boundaries of x2
- for(col = x; col < x2; col++) //For columns from x to x2
- P_Graphics_mainBuffer[y*256 + col] = color; //Assign the color
-}
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color)
-{
- int row;
- if(bT == MAIN) //Check that we want to use the Main engine
- if(y >= 0 && y <=191) //Check the boundaries of y
- if(y2 >=0 && y2 <= 191) //Check the boundaries of y2
- if(x >=0 && x <=255) //Check the boundaries of x
- for(row = y; row < y2; row++) //For row from y to y2
- P_Graphics_mainBuffer[row*256 + x] = color; //Assign the color
-}
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color)
-{
- if(bT == MAIN) //Check that we want to use the Main engine
- if(top >=0 && top <=191) //Check boundaries of top
- if(bottom >= 0 && bottom <=191) //Check boundaries of bottom
- if(left >=0 && left <= 255) //Check boundaries of left
- if(right >=0 && right <=255) //Check boundaries of right
- if(top < bottom && left < right)
- {
- //Vertical line on the left
- DrawVerticalLine(MAIN, top, bottom, left, color);
- //Verticla line on the right
- DrawVerticalLine(MAIN, top, bottom, right, color);
- //Horizontal line in top
- DrawHorizontalLine(MAIN, left, right, top, color);
- //Horizontal line on the bottom
- DrawHorizontalLine(MAIN, left, right, bottom, color);
- }
-}
-
-
diff --git a/labs/lab-11/Tetris6/source/P_Graphics.h b/labs/lab-11/Tetris6/source/P_Graphics.h
deleted file mode 100644
index 4228c8f..0000000
--- a/labs/lab-11/Tetris6/source/P_Graphics.h
+++ /dev/null
@@ -1,112 +0,0 @@
-#pragma once
-
-#include
-//#define FB0
-//#define ROTOSCALE
-#define TILES
-
-enum BUFFER_TYPE
-{
- MAIN,
- SUB,
-};
-
-//members
-extern u16* P_Graphics_mainBuffer;
-extern u16* P_Graphics_subBuffer;
-extern int P_Graphics_mainW;
-extern int P_Graphics_mainH;
-extern int P_Graphics_subW;
-extern int P_Graphics_subH;
-
-/*
- This function does not receive any input parameter. It initializes the main
- graphical engine to be used with the Framebuffer Mode 0 (FB0).
- It also enables the corresponding VRAM bank to be used.
-*/
-void P_Graphics_setup_main();
-
-
-/*
- Function that assigns the buffer (already implemented) and its size
- */
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h);
-
-
-/*
- This function fills all the screen of the given engine (MAIN or SUB)
- with the input color.
- */
-void FillScreen(enum BUFFER_TYPE t, u16 color);
-
-
-/*
- This function fills a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter specifies the buffer where we want to fill
- the rectangle. Remember that there are two graphical engines (MAIN and SUB)
- for both screens of the NDS. In this practical work we will only use the
- MAIN engine since Framebuffer Mode is only available in this engine.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to fill. It is recommended to check that these
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to fill the rectangle.
- Remember that colors are represented with 16bit words in the Nintendo DS.
-*/
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
-
-
-/*
- This function draws an horizontal line of 1 pixel width between the
- coordinates (x,y) and (x2,y) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous function.
-- int x, x2, y: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- function.
-*/
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color);
-
-
-/*
- This function draws a vertical line of 1 pixel width between the coordinates
- (x,y) and (x,y2) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int y, y2, x: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- functions.
-*/
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color);
-
-
-/*
- This function draws a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color. Note that this function is
- different to the one that fills the rectangle. This function only draws
- the rectangle (the borders). It is recommended to re-use the already
- implemented functions to draw lines.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to draw. It is recommended to check that this
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to draw the borders of the
- rectangle.
-*/
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
diff --git a/labs/lab-11/Tetris6/source/P_Initializer.c b/labs/lab-11/Tetris6/source/P_Initializer.c
deleted file mode 100644
index 3a1972c..0000000
--- a/labs/lab-11/Tetris6/source/P_Initializer.c
+++ /dev/null
@@ -1,24 +0,0 @@
-
-#include "P_Initializer.h"
-
-void P_InitNDS()
-{
- //Initialize the main engine
- P_Graphics_setup_main();
-
- //Set correctly the buffer to write
-#ifdef FB0
- P_Graphics_assignBuffer(MAIN, (u16*)VRAM_A,256,192);
-#endif
-
-#ifdef ROTOSCALE
- P_Graphics_assignBuffer(MAIN, (u16*)BG_GFX,256,192);
-#endif
-
- //Initialize the 16x16 field
- P_Map16x16_Init( 12, 16 );
-
- Audio_Init();
- Audio_PlayMusic();
-}
-
diff --git a/labs/lab-11/Tetris6/source/P_Initializer.h b/labs/lab-11/Tetris6/source/P_Initializer.h
deleted file mode 100644
index be57372..0000000
--- a/labs/lab-11/Tetris6/source/P_Initializer.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#include
-#include "P_Map16x16.h"
-#include "P_Audio.h"
-
-void P_InitNDS();
-
diff --git a/labs/lab-11/Tetris6/source/P_Map16x16.c b/labs/lab-11/Tetris6/source/P_Map16x16.c
deleted file mode 100644
index 6bd81c2..0000000
--- a/labs/lab-11/Tetris6/source/P_Map16x16.c
+++ /dev/null
@@ -1,212 +0,0 @@
-
-#include "P_Map16x16.h"
-#include "controls.h"
-#include "background.h"
-#include "numbers.h"
-
-u16* mapMemory;
-int MapCols;
-int MapRows;
-
-//Declare the tiles emptyTile and fullTile as explained in the manual
-u8 emptyTile[64] =
-{
- 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,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,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0
-};
-
-u8 fullTile[64] =
-{
- 255,255,255,255,255,255,255,255,
- 255,254,254,254,254,254,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,254,254,254,254,254,255,
- 255,255,255,255,255,255,255,255
-};
-
-
-void P_Map16x16_configureBG2()
-{
- //Initialize Background
- BGCTRL[2] = BG_MAP_BASE(0) | BgSize_B16_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA = 256;
- REG_BG2PC = 0;
- REG_BG2PB = 0;
- REG_BG2PD = 256;
-
- //Initialize pointer to the graphic memory
- //mapMemory = ...
- mapMemory = BG_GFX;
-}
-
-void P_Map16x16_configureBG0_Sub()
-{
- //Configure the Background
- BGCTRL_SUB[0] = BG_32x32 | BG_COLOR_16 | BG_MAP_BASE(24) | BG_TILE_BASE(4);
- //Copy tiles and palette
- dmaCopy(numbersTiles, BG_TILE_RAM_SUB(4), numbersTilesLen);
- dmaCopy(numbersPal, &BG_PALETTE_SUB[128], numbersPalLen);
- dmaCopy(numbersPal, &BG_PALETTE_SUB[144], numbersPalLen);
- BG_PALETTE_SUB[129] = ARGB16(1,31,0,0);
- BG_PALETTE_SUB[145] = ARGB16(1,0,31,0);
-
- //Set map to 0 (clean)
- int i = 32*32;
- while(i--)
- BG_MAP_RAM_SUB(24)[i] = 0;
-}
-
-void P_Map16x16_configureBG2_Sub()
-{
- //Configure BG 2 Sub. (Do not forget the BG_BMP_BASE configuration)
- BGCTRL_SUB[2] = BG_BMP_BASE(0) | BgSize_B8_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA_SUB = 256;
- REG_BG2PC_SUB = 0;
- REG_BG2PB_SUB = 0;
- REG_BG2PD_SUB = 256;
-
-
- swiCopy(controlsPal, BG_PALETTE_SUB, controlsPalLen);
- swiCopy(controlsBitmap, BG_GFX_SUB, controlsBitmapLen);
-}
-
-void P_Map16x16_configureBG0()
-{
- /*
- * GRAPHICS III
- *
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 0 (on the top).
- *
- * This background is going to be used to draw the game field where
- * the blocks are falling.
- *
- * The function does not return anything and it does not have any input
- * arguments. Background 0 (BG0) should be configured in the tiled mode
- * as a 32x32 tile grid and using one general color palette of 256
- * components (256 colors). The pointer to the map 'mapMemory' must be
- * correctly assigned before returning from the function
- */
-
- //Configure BG 0 to represent the game field
- BGCTRL[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(25) | BG_TILE_BASE(4);
-
- //Copy the empty tile and the full tile to the corresponding RAM location
- //according to the chosen TILE_BASE. If dmaCopy is used, do not forget to
- //cast the destination pointer as a 'byte pointer'
- //Hint: Use the macro BG_TILE_RAM to get the destination address
- dmaCopy(emptyTile, (u8*)BG_TILE_RAM(4), 64);
- dmaCopy(fullTile, (u8*)BG_TILE_RAM(4) + 64, 64);
-
- //Assign components 254 and 255 as explained in the manual
- BG_PALETTE[254] = ARGB16(1,0,0,0);
- BG_PALETTE[255] = ARGB16(1,31,15,0);
-
- //Set the pointer mapMemory to the RAM location of the chosen MAP_BASE
- //Hint: use the macro BG_MAP_RAM
- mapMemory = (u16*)BG_MAP_RAM(25);
-}
-
-void P_Map16x16_configureBG3()
-{
- /*GRAPHICS III
- *
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 3.
- *
- * This background is going to be used to background wall-paper.
- *
- * In exercise 2 the Background 3 (BG3) should be configure in rotoscale
- * mode with a 8 bits of pixel depth. Do not forget to copy the palette
- * correctly.
- *
- * In exercise 5 Background 3 (BG3) should be configured in the tiled mode
- * as a 32x32 tile grid and using one general color palette of 256
- * components (256 colors).
- */
-
- //Configure BG 3 for the background image as explained before
- BGCTRL[3] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(26) | BG_TILE_BASE(0);
-
- //Copy tiles, map and palette in the memory (use swicopy or memcpy)
- swiCopy(backgroundTiles, BG_TILE_RAM(0), backgroundTilesLen);
- swiCopy(backgroundMap, BG_MAP_RAM(26), backgroundMapLen);
- swiCopy(backgroundPal, BG_PALETTE, backgroundPalLen);
-
-}
-
-void P_Map16x16_Init( int cols, int rows )
-{
- MapCols=cols;
- MapRows=rows;
-#ifdef ROTOSCALE
- //Configure BG2
- P_Map16x16_configureBG2();
- // Configure Bottom background
- P_Map16x16_configureBG2_Sub();
-#endif
-
-#ifdef TILES
- //Configure BG3 for background image
- P_Map16x16_configureBG3();
- //Configure BG0 for game
- P_Map16x16_configureBG0();
- // Configure Bottom background
- P_Map16x16_configureBG2_Sub();
- // Configure BG0 in the sub engine
- P_Map16x16_configureBG0_Sub();
-#endif
-}
-
-
- void SetMap16x16To(int index16, bool full)
- {
- //switch x and y
- int x = index16 % MapCols;
- int y = index16 / MapCols;
- //now inverse x
- y = -(y-MapRows+1);
- index16 = x * MapRows + y;
-#ifdef FB0
- u16 value = full ? RGB15(31,0,0) : RGB15(0,0,0);
- FillRectangle(MAIN,x*16, x*16+16, y*16, y*16+16,value);
-#endif
-
-#ifdef ROTOSCALE
- u16 value = full ? ARGB16(1,31,0,0) : ARGB16(1,0,0,0);
- FillRectangle(MAIN,x*16, x*16+16, y*16, y*16+16,value);
-#endif
-
-#ifdef TILES
- int value = full ? 1 : 0;
- //convert index16x16 to 32x32
- //also make it fall right->left rather than top->bottom
- //
- // 0 1 2 3 12 8 4 0
- // 4 5 6 7 => 13 9 5 1
- // 8 9 10 11 => 14 10 6 2
- // 12 13 14 15 15 11 7 3
-
- //16x16->32*32 CONVERSION
- int index32;
- index32 = index16*2;
- index32 += (index16/16)*32;
- mapMemory[index32] = value;
- mapMemory[index32+1] = value;
- mapMemory[index32+32] = value;
- mapMemory[index32+32+1] = value;
-#endif
-}
diff --git a/labs/lab-11/Tetris6/source/P_Map16x16.h b/labs/lab-11/Tetris6/source/P_Map16x16.h
deleted file mode 100644
index 9a08f15..0000000
--- a/labs/lab-11/Tetris6/source/P_Map16x16.h
+++ /dev/null
@@ -1,35 +0,0 @@
-
-#include
-#include "P_Graphics.h"
-
-extern u16* mapMemory;
-extern int MapCols;
-extern int MapRows;
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Main Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Main Engine must be configured in Rotoscale
- * mode to be used as a bitmap with a depth colour of 16 bits. This
- * background will be used as a canvas of pixels (like in the Frame Buffer
- * Mode) to display the game field in the upper screen.
- */
-void P_Map16x16_configureBG2();
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Sub Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Sub Engine must be configured in Rotoscale
- * mode with a depth of colours of 8 bits. This background will be used
- * to show an image in the bottom screen.
- */
-void P_Map16x16_configureBG2_Sub();
-
-
-void P_Map16x16_configureBG0();
-void P_Map16x16_configureBG3();
-void SetMap16x16To(int index16, bool full);
diff --git a/labs/lab-11/Tetris6/source/P_Score.c b/labs/lab-11/Tetris6/source/P_Score.c
deleted file mode 100644
index 3ee8fdc..0000000
--- a/labs/lab-11/Tetris6/source/P_Score.c
+++ /dev/null
@@ -1,118 +0,0 @@
-
-#include "P_Score.h"
-#include "numbers.h"
-#include
-#include
-
-int score = 0, max_score = 0;
-
-void updateScore(int rows)
-{
- /*
- * Depending on the lines increase the score
- * 1 point - one single line
- * 4 points - 2 lines
- * 8 points - 3 lines
- * 10 points - 4 lines
- */
- switch(rows)
- {
- case 1: score+=1; break;
- case 2: score+=4; break;
- case 3: score+=8; break;
- case 4: score+=15; break;
- }
-
- //Display the score
- displayScore();
-
- //Update highest score
- if(score > max_score)
- {
- max_score = score;
- writeMaxScore();
- displayMaxScore();
- }
-}
-
-
-/*
- * This function displays the score counter on the right of the
- * screen (looking sidewise) using the palette 9 (green color preloaded)
- *
- * The map (24) is modified accordingly to the points stored in the
- * variable store
- */
-
-void displayScore()
-{
- int j,i, number;
- //i, digit to display
- for(i = 5; i>0; i--)
- {
- //calculate the power of i-1 in j
- j = i-1; number = 1;
- while(j--)number = number*10;
- //Obtain the number to render
- number = score / number;
- number = number % 10;
- //Render the number
- BG_MAP_RAM_SUB(24)[1+(23-i)*32] = numbersMap[(10 - number)*2] | TILE_PALETTE(9);
- BG_MAP_RAM_SUB(24)[1+(23-i)*32+1] = numbersMap[(10 - number)*2+1] | TILE_PALETTE(9);
- }
-}
-
-
-/*
- * This function reads the highest score obtained in previous games and
- * stored in a text file called /Tetrisrecord.txt. The read value is assigned
- * to the variable max_score
- */
-void readMaxScore()
-{
- //Open the file in read mode
- FILE* file = fopen("/Tetrisrecord.txt","r");
- if(file != NULL)
- {
- //Read the value and put it into the variable max_score
- fscanf(file,"%i\n",&max_score);
- // close the file
- fclose(file);
- }
-}
-
-/*
- * This function writes the value of the variable max_score
- * into the text file /tetrisrecord
- */
-void writeMaxScore()
-{
- //Open the file in write mode to overwrite
- FILE* file = fopen("/Tetrisrecord.txt","w+");
- if(file != NULL)
- {
- //Print the value in the file
- fprintf(file,"%i\n",max_score);
- //Close the file
- fclose(file);
- }
-}
-
-/*
- * This function displays the highest score obtained in previous games
- * on the left part of bottom the screen (looking sideways). It uses the
- * palette 8 (with red color preloaded)
- */
-void displayMaxScore()
-{
- int i, j, number;
- for(i = 5; i>0; i--)
- {
- j = i-1; number = 1;
- while(j--)number = number*10;
- number = max_score / number;
- number = number % 10;
- BG_MAP_RAM_SUB(24)[1+(6-i)*32] = numbersMap[(10 - number)*2] | TILE_PALETTE(8);
- BG_MAP_RAM_SUB(24)[1+(6-i)*32+1] = numbersMap[(10 - number)*2+1] | TILE_PALETTE(8);
- }
-}
diff --git a/labs/lab-11/Tetris6/source/P_Score.h b/labs/lab-11/Tetris6/source/P_Score.h
deleted file mode 100644
index cde0c21..0000000
--- a/labs/lab-11/Tetris6/source/P_Score.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#include
-
-void updateScore(int rows);
-void displayScore();
-void readMaxScore();
-void writeMaxScore();
-void displayMaxScore();
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/all-wcprops b/labs/lab-11/Tetris6/source/Tetris/.svn/all-wcprops
deleted file mode 100644
index 000add6..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/all-wcprops
+++ /dev/null
@@ -1,65 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 45
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris
-END
-TetrisShape.cs
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.cs
-END
-TetrisHUD.cs
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisHUD.cs
-END
-TetrisGameplay.h
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.h
-END
-TetrisGrid.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.cpp
-END
-TetrisShape.h
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.h
-END
-TetrisMenu.cs
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisMenu.cs
-END
-TetrisGrid.h
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.h
-END
-TetrisGameplay.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 63
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.cpp
-END
-TetrisShape.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris/TetrisShape.cpp
-END
-TetrisDefines.h
-K 25
-svn:wc:ra_dav:version-url
-V 60
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisDefines.h
-END
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/entries b/labs/lab-11/Tetris6/source/Tetris/.svn/entries
deleted file mode 100644
index d40c647..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/entries
+++ /dev/null
@@ -1,368 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tetris
-http://dstetris.googlecode.com/svn
-
-
-
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-TetrisShape.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-93bca2a5d4c7699c749d245e56bbb447
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5324
-
-TetrisHUD.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9b0079baa20c6673a42620e55ed1bd33
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4952
-
-TetrisGameplay.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-6e8205e7f2c4b0995f686b7e03aeb7e3
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-388
-
-TetrisGrid.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-b60a53fd2df6ee0eaeb539bde1c83f44
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5384
-
-TetrisShape.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-fbd520b56b403dc21c6ef073681c91d2
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-460
-
-TetrisMenu.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-46f4b010842a86cc00e87c2024e75fa5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-9881
-
-TetrisGrid.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9c8d2a85e36046170d0ef80bfcd6c163
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-647
-
-TetrisGameplay.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-e6128b8c5e3f024efb556f45ed6784a5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-3909
-
-TetrisShape.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-eeab41f6e1c30a1149806657a70de78e
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4588
-
-TetrisDefines.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-43f8a162e571e16b7dadf20c6147faba
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5579
-
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/format b/labs/lab-11/Tetris6/source/Tetris/.svn/format
deleted file mode 100644
index ec63514..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
deleted file mode 100644
index f7b8183..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
deleted file mode 100644
index 3e4217d..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- Gameplay_currentAction = actionToSend;
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //iprintf("GameOver\n");
- //bool isNewHighScore = TetrisGame.highScore.IsHighScore(playerName, playerScore) && playerScore > 0;
- //TetrisGame.soundPlayer.FireSoundFX(isNewHighScore ? SOUND_FX.Win : SOUND_FX.Lose);
- //TetrisGame.menu.setMenuState(TetrisMenu.MENU_STATE.STATE_MENUGAMEOVER, isNewHighScore );
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
- Gameplay_displayNextShape(Shape_NextType);
-}
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
deleted file mode 100644
index 2c803ad..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
+++ /dev/null
@@ -1,15 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-#include "../Platform/P_Graphics.h"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
deleted file mode 100644
index 779826c..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
+++ /dev/null
@@ -1,231 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-/*
-void Grid_paint()
-{
- //paint bg
- //FillRectangle(MAIN, Grid_Top, Grid_Bottom, Grid_Left, Grid_Right, RGB15(10,10,10) | BIT(15));
-
- //paint elems
- int l, t;
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- l = Grid_Left + (i % PLAYFIELD_COLS) * Grid_TileW;
- t = Grid_Top + (i / PLAYFIELD_COLS) * Grid_TileH;
- //Rectangle cell = new Rectangle(l, t, mTileW, mTileH);
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, cell, Color.Yellow);
- //DrawRectangle(MAIN, t, t+Grid_TileH, l, l+Grid_TileW, RGB15(10,25,10) | BIT(15));
-
- //if(Grid_Cells[i])//more fancy graphics for occupied cells
- {
- //TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, cell, Color.Yellow);
- }
- }
-
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, background, Color.Red);
-
-}*/
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
deleted file mode 100644
index 417d538..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
deleted file mode 100644
index b279247..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
+++ /dev/null
@@ -1,117 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisHud : TetrisConstants
- {
-
- public static void paintRightHud(int right, int top, int score, int nextType)
- {
- int x, y;
-
- //score
- x = right - HUD_SCORE_TEXT_OFFSET;
- y = top + MARGIN_TOP + HUD_SCORE_Y_START;
- SpecificTools.QuickDrawString("Score", x, y, TetrisGame.FontSmall, HUD_SCORE_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += HUD_SCORE_INTERLINE;
- SpecificTools.QuickDrawString("" + score, x, y, TetrisGame.FontSmall, HUD_SCORE_NUM_COLOR, SpecificTools.Align.Right);
-
- //next shape
- displayNextShape(right, top, nextType);
-
- //top scores
- displayTopScores(right, top);
-
- }
-
-
- public static void displayNextShape(int startX, int startY, int nextType)
- {
- int tmpX, tmpY, offset;
- int i = 0;
- int x = startX - HUD_NEXT_TEXT_OFFSET;
- int y = startY + MARGIN_TOP + HUD_NEXT_WORD_Y_START;
-
- SpecificTools.QuickDrawString("Next", x, y, TetrisGame.FontSmall, HUD_NEXT_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- x = startX - HUD_NEXT_SHAPE_X_START;
- y = startY + MARGIN_TOP + HUD_NEXT_SHAPE_Y_START;
- tmpX = x;
- tmpY = y;
- offset = (nextType * SHAPE_TABLE_TYPE_OFFSET) + START_ORIENTATION * SHAPE_TABLE_ELEMS_PER_ROW;
- do
- {
- TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, new Rectangle(tmpX, tmpY, HUD_NEXT_SHAPE_CELL_SIZE, HUD_NEXT_SHAPE_CELL_SIZE), HUD_NEXT_SHAPE_COLOR);
- switch (SHAPE_TABLE[offset + i])
- {
- case C_LEFT:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_RIGHT:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_UP:
- tmpX = x;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_DOWN:
- tmpX = x;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_DOWN:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_DOWN:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_UP:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_UP:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT * 2:
- tmpX = x - (HUD_NEXT_SHAPE_CELL_OFFSET * 2);//i am cheating here and moving to the left for better hud display (anchor is on right)
- tmpY = y;
- break;
- default:
- //need to manage
- break;
- }
- i++;
- } while (i < MAX_ELEMS);
- }
-
- public static void displayTopScores(int x, int y)
- {
-
- x -= HUD_TOP_SCORES_TEXT_OFFSET;
- y += MARGIN_TOP + HUD_TOP_SCORES_Y_START;
-
- //paint title
- SpecificTools.QuickDrawString("TopScore", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_TITLE_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += 30;
-
- for (int i = 0; i < TetrisGame.highScore.CurrentTopScores.Count; i++, y += 24)
- {
- String name = TetrisGame.highScore.CurrentTopScores.PlayerName[i];
- int score = TetrisGame.highScore.CurrentTopScores.Score[i];
- if(score > 0)
- SpecificTools.QuickDrawString((i + 1) + ". " + name + ": " + score, x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
- else
- SpecificTools.QuickDrawString("No Score yet", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
-
- }
- }
- }
-}
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
deleted file mode 100644
index 3cffb77..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
+++ /dev/null
@@ -1,242 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisMenu
- {
-
- public enum MENU_STATE
- {
- STATE_MENUOFF,
- STATE_MENUSTART,
- STATE_MENURESUME,
- STATE_MENUGAMEOVER,
- STATE_ENTERNAME,
- }
-
- private MENU_STATE status;
- private int currentSelected;
- private int currentAvailableOptions;
- private int currentLateralSelected;
- private int currentLateralAvailableOptions;
- private bool allowcycle;
- private String[] currentOptions;
- private byte[] player;
- private Color bkgColor;
- private Color wordColor;
- private Color wordColorSelected;
- private bool isHighScore;
-
- public TetrisMenu()
- {
- player = new byte[3];
- bkgColor = new Color(192, 192, 192, 216);
- wordColor = Color.Black;
- wordColorSelected = Color.Green;
- setMenuState(MENU_STATE.STATE_MENUSTART);
- }
-
- public void setMenuState(MENU_STATE state, bool highScore)
- {
- setMenuState(state);
- isHighScore = highScore;//MUST be called after set state because set state sets it to default
- }
-
- public void setMenuState( MENU_STATE state )
- {
- isHighScore = false;
- status = state;
- currentSelected = 0; //always reset this
- currentLateralSelected = 0;
- currentLateralAvailableOptions = 0;//default
- allowcycle = false;//default
- switch (status)
- {
- case MENU_STATE.STATE_MENURESUME:
- currentOptions = MENU_RESUME_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUGAMEOVER:
- currentOptions = MENU_RESTART_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUSTART:
- currentOptions = MENU_START_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_ENTERNAME:
- currentOptions = EMPTY_STRINGS;
- currentAvailableOptions = 26;//alphabet!
- allowcycle = true;
- currentLateralAvailableOptions = 4; //three letters + ok
- for (int i = 0; i < player.Length; i++)
- player[i] = 0;
- break;
- }
- }
-
- public bool IsMenuOff()
- {
- return status == MENU_STATE.STATE_MENUOFF;
- }
-
- public void update_menu(Platform.Input.ACTION a)
- {
- switch (a)
- {
- case Platform.Input.ACTION.RIGHT:
- if (currentLateralSelected < currentLateralAvailableOptions)
- currentLateralSelected++;
- break;
- case Platform.Input.ACTION.LEFT:
- if (currentLateralSelected > 0)
- currentLateralSelected--;
- break;
- case Platform.Input.ACTION.DOWN:
- if (currentSelected < currentAvailableOptions - 1)
- currentSelected++;
- else if (allowcycle)
- currentSelected = 0;
- break;
- case Platform.Input.ACTION.UP:
- if (currentSelected > 0)
- currentSelected--;
- else if (allowcycle)
- currentSelected = currentAvailableOptions-1;
- break;
- case Platform.Input.ACTION.SELECT:
-
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
-
- if (currentOptions.Length == 0)
- {
- if (currentLateralSelected == 3)
- {
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < 3; i++)
- {
- builder.Append(((char)('A' + player[i])));
- }
- TetrisGame.SetPlayerName(builder.ToString());
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else
- {
- update_menu(Platform.Input.ACTION.DOWN);//considering enter on leters is down
- return;
- }
- }
- else if (currentOptions[currentSelected] == commandStart)
- {
- setMenuState(MENU_STATE.STATE_ENTERNAME);
- }
- else if (currentOptions[currentSelected] == commandResume)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else if (currentOptions[currentSelected] == commandQuit)
- {
- TetrisGame.ExitGame();
- }
- else if (currentOptions[currentSelected] == commandRestart)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- TetrisGame.RestartGame();
- }
- break;
- }
-
- //specific for player name menu
- if (status == MENU_STATE.STATE_ENTERNAME && currentLateralSelected < 3)
- {
- if(a==XNATetris.Platform.Input.ACTION.DOWN || a == XNATetris.Platform.Input.ACTION.UP)
- {
- player[currentLateralSelected] = (byte)currentSelected;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- }
- else if (a == XNATetris.Platform.Input.ACTION.LEFT || a == XNATetris.Platform.Input.ACTION.RIGHT)
- currentSelected = player[currentLateralSelected];
- }
- }
-
-
- public void paint()
- {
- int w, h;
- if (status != MENU_STATE.STATE_MENUOFF)
- {
- w = TetrisGame.graphics.PreferredBackBufferWidth;
- h = TetrisGame.graphics.PreferredBackBufferHeight;
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(0, 0, w, h), bkgColor);
- SpecificTools.QuickDrawString("XNA Tetris by Chris FERRARIO @ chris-ferrario.com", 20, 20, TetrisGame.FontSmall, Color.Blue, SpecificTools.Align.Left, true, Color.White);
- paintMenuStrings(currentOptions, w, h);
- paintSpecific(w,h);
- }
- }
-
- private void paintMenuStrings(String[] options, int screenW, int screenH)
- {
- screenH /= options.Length + 1;
- int y = screenH;
- for (int i = 0; i < options.Length; i++, y += screenH)
- {
- SpecificTools.QuickDrawString(options[i], screenW / 2, y, TetrisGame.FontBig, i == currentSelected ? wordColorSelected : wordColor, SpecificTools.Align.Center, true, Color.White);
- }
- }
-
- private void paintSpecific(int screenW, int screenH)
- {
- if(status == MENU_STATE.STATE_MENUGAMEOVER)
- {
- String message = isHighScore ? "Congratulations you have reached a high score!" : "Sorry you have lost without achieving a high score";
- SpecificTools.QuickDrawString(message, screenW / 2, 80, TetrisGame.FontSmall, Color.Red, SpecificTools.Align.Center, true, Color.White);
- }
- else if (status == MENU_STATE.STATE_ENTERNAME)
- {
- int interspace = 40;
- int x = screenW / 2;
- int y = 120;
- SpecificTools.QuickDrawString("Enter your desired name:", x, y, TetrisGame.FontSmall, Color.Black, SpecificTools.Align.Center, true, Color.White);
-
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(x - 100, y + 60, 120, 50), Color.White);
- x -= 2 * interspace;
- y += 60;
-
-
- for (int i = 0; i < 3; i++, x+=interspace)
- {
- SpecificTools.QuickDrawString(((char)('A' + player[i])).ToString(), x, y, TetrisGame.FontBig, i == currentLateralSelected ? Color.Red: Color.Blue, SpecificTools.Align.Center);
- }
- SpecificTools.QuickDrawString("Confirm", x, y + 14, TetrisGame.FontSmall, currentLateralSelected == 3 ? Color.Red : Color.Blue, SpecificTools.Align.Left, true, Color.White);
- }
- }
-
-
- //Menu Tables
- private static String commandStart = "Start Game";
- private static String commandResume = "Resume Game";
- private static String commandRestart = "Restart Game";
- private static String commandQuit = "Quit Game";
- private String[] MENU_START_STRINGS =
- {
- commandStart,
- commandQuit,
- };
- private String[] MENU_RESUME_STRINGS =
- {
- commandResume,
- commandQuit,
- };
- private String[] MENU_RESTART_STRINGS =
- {
- commandRestart,
- commandQuit,
- };
- private String[] EMPTY_STRINGS = {};
- }
-}
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
deleted file mode 100644
index 54701c5..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
+++ /dev/null
@@ -1,175 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- Audio_PlaySound( eSFX_CLUNK );
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
deleted file mode 100644
index dd53a2d..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
+++ /dev/null
@@ -1,170 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace XNATetris
-{
- class TetrisShape : TetrisConstants
- {
- public bool isGameOver = false;
- public bool isInited = false;
-
- private int mOrient;
- private int mType;
- private int mNextType;
- public int getNextType() { return mNextType; }
- private int mState;
- private int[] mElems;
-
- private Random mRand;
- private TetrisGrid mGrid;
-
-
- public TetrisShape(TetrisGrid g)
- {
- mGrid = g;
- mRand = new Random();
- mElems = new int[MAX_ELEMS];
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- }
-
- public bool spawn()
- {
- isGameOver = false;
- for (int i = 0; i < mElems.Length; i++)
- {
- mElems[i] = DONT_CHECK_CELL;
- }
- mType = mNextType;
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- mElems[ELEM_BASE] = START_CELL;
- mOrient = START_ORIENTATION;
- mState = STATE_USER;
- return alignFromOrientation(mOrient);
- }
-
- public void update(int currentAction)
- {
- if (mState == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (rotateShape(ROT_LEFT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (rotateShape(ROT_RIGHT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- mState = STATE_FALLING;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
- break;
- }
- }
- }
- }
-
- public bool IsFalling()
- {
- return mState == STATE_FALLING;
- }
-
- //true when need to recheck playfield
- public bool addGravity()
- {
- if (isInited)
- {
- //gravity
- bool falling = shiftCells(C_DOWN);
- if (!falling)
- {
- mState = STATE_LOCKED;
- isInited = false;
- return true;
- }
- }
- else
- {
- isInited = spawn();
-
- if (!isInited)//this means no room to init = game over
- {
- isGameOver = true;
- }
- }
- return false;
- }
-
- private bool rotateShape(int rotation)
- {
- int orient = mOrient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = alignFromOrientation(orient);
- if (hasRotated)
- mOrient = orient;
-
- return hasRotated;
- }
-
-
- private bool alignFromOrientation(int orientation)
- {
- int[] newElemPos = (int[])mElems.Clone();
- int typeOffset = (mType * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- newElemPos[ELEM_1] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- newElemPos[ELEM_2] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- newElemPos[ELEM_3] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return tryToMove(newElemPos);
- }
-
-
- private bool shiftCells(int cellscrool)
- {
- int[] tmpElems = (int[])mElems.Clone();
- for (int i = 0; i < mElems.Length; i++)
- {
- if (mElems[i] != DONT_CHECK_CELL)
- tmpElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (mGrid.getRow(mElems[ELEM_BASE]) != mGrid.getRow(tmpElems[ELEM_BASE]))
- return false;
-
- return tryToMove(tmpElems);
- }
-
- private bool tryToMove(int[] newElemPos)
- {
- bool hasMoved = mGrid.tryToMoveCells(mElems, newElemPos);
- if (hasMoved)
- mElems = newElemPos;
- return hasMoved;
- }
-
- }
-}
diff --git a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisShape.h.svn-base b/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
deleted file mode 100644
index cf678ad..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tetris/TetrisDefines.h b/labs/lab-11/Tetris6/source/Tetris/TetrisDefines.h
deleted file mode 100644
index f7b8183..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/TetrisDefines.h
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tetris/TetrisGameplay.cpp b/labs/lab-11/Tetris6/source/Tetris/TetrisGameplay.cpp
deleted file mode 100644
index a66339b..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/TetrisGameplay.cpp
+++ /dev/null
@@ -1,164 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-#include "../P_Score.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- {
- Gameplay_currentAction = actionToSend;
- swiDelay(2000000);
- }
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //Game Over!
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- updateScore(points);
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
-// Gameplay_displayNextShape(Shape_NextType);
-}
diff --git a/labs/lab-11/Tetris6/source/Tetris/TetrisGameplay.h b/labs/lab-11/Tetris6/source/Tetris/TetrisGameplay.h
deleted file mode 100644
index 8345c72..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/TetrisGameplay.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
diff --git a/labs/lab-11/Tetris6/source/Tetris/TetrisGrid.cpp b/labs/lab-11/Tetris6/source/Tetris/TetrisGrid.cpp
deleted file mode 100644
index a65be38..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/TetrisGrid.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
diff --git a/labs/lab-11/Tetris6/source/Tetris/TetrisGrid.h b/labs/lab-11/Tetris6/source/Tetris/TetrisGrid.h
deleted file mode 100644
index 417d538..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/TetrisGrid.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tetris/TetrisShape.cpp b/labs/lab-11/Tetris6/source/Tetris/TetrisShape.cpp
deleted file mode 100644
index ec850ff..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/TetrisShape.cpp
+++ /dev/null
@@ -1,173 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-#include "../P_Audio.h"
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_isGameOver = false;
- Shape_isInited = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- Audio_PlaySoundEX( SFX_SWISH);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- Audio_PlaySoundEX( SFX_SWISH);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- Audio_PlaySoundEX( SFX_CLUNK);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
diff --git a/labs/lab-11/Tetris6/source/Tetris/TetrisShape.h b/labs/lab-11/Tetris6/source/Tetris/TetrisShape.h
deleted file mode 100644
index cf678ad..0000000
--- a/labs/lab-11/Tetris6/source/Tetris/TetrisShape.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tools/.svn/all-wcprops b/labs/lab-11/Tetris6/source/Tools/.svn/all-wcprops
deleted file mode 100644
index a6e3218..0000000
--- a/labs/lab-11/Tetris6/source/Tools/.svn/all-wcprops
+++ /dev/null
@@ -1,17 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 43
-/svn/!svn/ver/2/trunk/dstetris/source/Tools
-END
-DrawTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 55
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/DrawTools.h
-END
-ArrayTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 56
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/ArrayTools.h
-END
diff --git a/labs/lab-11/Tetris6/source/Tools/.svn/entries b/labs/lab-11/Tetris6/source/Tools/.svn/entries
deleted file mode 100644
index 2b30dfc..0000000
--- a/labs/lab-11/Tetris6/source/Tools/.svn/entries
+++ /dev/null
@@ -1,96 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tools
-http://dstetris.googlecode.com/svn
-
-
-
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-DrawTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-8ec827749fae42a9b2ca3aafba7d3477
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-288
-
-ArrayTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-73a5b8792e77a495b434fe3e1cf2d634
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1003
-
diff --git a/labs/lab-11/Tetris6/source/Tools/.svn/format b/labs/lab-11/Tetris6/source/Tools/.svn/format
deleted file mode 100644
index ec63514..0000000
--- a/labs/lab-11/Tetris6/source/Tools/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-11/Tetris6/source/Tools/.svn/text-base/ArrayTools.h.svn-base b/labs/lab-11/Tetris6/source/Tools/.svn/text-base/ArrayTools.h.svn-base
deleted file mode 100644
index 905d065..0000000
--- a/labs/lab-11/Tetris6/source/Tools/.svn/text-base/ArrayTools.h.svn-base
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tools/.svn/text-base/DrawTools.h.svn-base b/labs/lab-11/Tetris6/source/Tools/.svn/text-base/DrawTools.h.svn-base
deleted file mode 100644
index 61263cf..0000000
--- a/labs/lab-11/Tetris6/source/Tools/.svn/text-base/DrawTools.h.svn-base
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/Tools/ArrayTools.h b/labs/lab-11/Tetris6/source/Tools/ArrayTools.h
deleted file mode 100644
index b67d8fd..0000000
--- a/labs/lab-11/Tetris6/source/Tools/ArrayTools.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
diff --git a/labs/lab-11/Tetris6/source/Tools/DrawTools.h b/labs/lab-11/Tetris6/source/Tools/DrawTools.h
deleted file mode 100644
index 61263cf..0000000
--- a/labs/lab-11/Tetris6/source/Tools/DrawTools.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-11/Tetris6/source/main.c b/labs/lab-11/Tetris6/source/main.c
deleted file mode 100644
index 5fe880e..0000000
--- a/labs/lab-11/Tetris6/source/main.c
+++ /dev/null
@@ -1,26 +0,0 @@
-#include
-#include "P_Controls.h"
-#include "P_Initializer.h"
-#include "P_Score.h"
-#include
-
-//---------------------------------------------------------------------------------
-int main(void) {
-//---------------------------------------------------------------------------------
-
- fatInitDefault();
- P_InitNDS();
-
- srand( clock() );
- Gameplay_Load();
- readMaxScore();
- displayScore();
- displayMaxScore();
-
- while( true ) {
- handleInput();
- swiWaitForVBlank();
- }
-
- return 0;
-}
diff --git a/labs/lab-11/dirList/Makefile b/labs/lab-11/dirList/Makefile
deleted file mode 100644
index 49ac27e..0000000
--- a/labs/lab-11/dirList/Makefile
+++ /dev/null
@@ -1,136 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-# MAXMOD_SOUNDBANK contains a directory of music and sound effect files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA := data
-INCLUDES := include
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project (order is important)
-#---------------------------------------------------------------------------------
-LIBS := -lfat -lnds9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-icons = $(wildcard *.bmp)
-
-ifneq (,$(findstring $(TARGET).bmp,$(icons)))
- export GAME_ICON := $(CURDIR)/$(TARGET).bmp
-else
- ifneq (,$(findstring icon.bmp,$(icons)))
- export GAME_ICON := $(CURDIR)/icon.bmp
- endif
-endif
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @make --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9
-
-#---------------------------------------------------------------------------------
-else
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- $(bin2o)
-
--include $(DEPSDIR)/*.d
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-11/dirList/source/main.c b/labs/lab-11/dirList/source/main.c
deleted file mode 100644
index 26e99aa..0000000
--- a/labs/lab-11/dirList/source/main.c
+++ /dev/null
@@ -1,72 +0,0 @@
-#include
-#include
-
-#include
-#include
-#include
-#include "string.h"
-
-FILE* file;
-
-//LIst the directories and subdirectories recursively
-void listDirectory(char* name, int depth)
-{
- //Structures
- DIR* di;
- struct dirent *pent;
- struct stat st;
- //Open directory
- di = opendir(name);
- //temp depth
- int d = depth;
-
- //List the items of the directory into the file
- while((pent=readdir(di))!=NULL)
- {
- char* temp_str_check = malloc(1024);
- d = depth;
- while(d--) fprintf(file," ");
- strcpy(temp_str_check, name);
- strcat(temp_str_check, pent->d_name);
- stat(temp_str_check, &st);
-
- fprintf(file, "%s: %s\n", (S_ISDIR(st.st_mode ) ? "DIR" : "FILE"), pent->d_name);
- if(S_ISDIR(st.st_mode) && strcmp(pent->d_name,".") && strcmp(pent->d_name, ".."))
- {
- char* temp_str = malloc(1024);
- strcpy(temp_str,name);
- strcat(temp_str,pent->d_name);
- strcat(temp_str,"/");
- listDirectory(temp_str, depth+1);
- free(temp_str);
- }
- free(temp_str_check);
- }
-
- //Close opened structures
- closedir(di);
-}
-
-
-int main(void) {
- //Initialization
- fatInitDefault();
-
- consoleDemoInit();
-
- //Open file "/List.txt" in write mode (create it if not existing)
- file = fopen("/List.txt", "w+");
-
- printf("starting...");
-
- //List the directory
- listDirectory("/", 0);
-
- //Close the file
- fclose(file);
- printf("finished");
-
- while(1) {
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-12/.root b/labs/lab-12/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-12/Makefile b/labs/lab-12/Makefile
deleted file mode 100644
index 48f170e..0000000
--- a/labs/lab-12/Makefile
+++ /dev/null
@@ -1,166 +0,0 @@
-.PHONY: build run
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -ldswifi9 -lnds9 -lmm9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-build:
- make clean
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-12/source/WiFi_minilib.c b/labs/lab-12/source/WiFi_minilib.c
deleted file mode 100644
index 031840c..0000000
--- a/labs/lab-12/source/WiFi_minilib.c
+++ /dev/null
@@ -1,191 +0,0 @@
-#include "WiFi_minilib.h"
-#include
-
-// Socket port
-#define LOCAL_PORT 8888
-#define OUT_PORT 8888
-
-// Socket i/o configuration
-struct sockaddr_in sa_out, sa_in;
-int socket_id;
-
-// Flags indicating whether the WiFi or the
-// socket has been initialized
-
-bool socket_opened = false;
-bool WiFi_initialized = false;
-
-int initWiFi() {
- // If WiFi already initialized return 0 (error)
- if (WiFi_initialized == true) {
- return 0;
- }
-
- // Access point information structure
- Wifi_AccessPoint ap;
-
- // Indicates if the access point has been found
- int found = 0, count = 0, i = 0;
-
- // Initialize --WI-FI by default (without WFC)
- Wifi_InitDefault(false);
-
- // Set scan mode to find APs
- Wifi_ScanMode();
-
- // While the AP is not available, loop
- while (found == 0) {
- // Get visible APs and check their SSID with our predefined one
- count = Wifi_GetNumAP();
- for (i = 0; (i < count) && (found == 0); i++) {
- Wifi_GetAPData(i, &ap);
- if (strcmp(SSID, ap.ssid) == 0) {
- found = 1; // our predefined AP has been found
- }
- }
- }
-
- // Use DHCP to get an IP on the network and connect to the AP
- Wifi_SetIP(0, 0, 0, 0, 0);
- Wifi_ConnectAP(&ap, WEPMODE_NONE, 0, 0);
-
- // WiFi Status
- int status = ASSOCSTATUS_DISCONNECTED;
- // Try to connect while not connected and not error
- while ((status != ASSOCSTATUS_ASSOCIATED) && (status != ASSOCSTATUS_CANNOTCONNECT)) {
- // Check status
- status = Wifi_AssocStatus();
-
- // Wait for a while
- swiWaitForVBlank();
- }
-
- // Return 1 if the connection succeeded
- WiFi_initialized = (status == ASSOCSTATUS_ASSOCIATED);
- return WiFi_initialized;
-}
-
-int openSocket() {
- // If socket already opened return 0 (error)
- if (socket_opened == true) {
- return 0;
- }
-
- socket_id = socket(AF_INET, SOCK_DGRAM, 0); // UDP socket
-
- // -----------Configure receiving side---------------------//
-
- sa_in.sin_family = AF_INET; // type of address (Inet)
- sa_in.sin_port = htons(LOCAL_PORT); // set input port
- sa_in.sin_addr.s_addr = 0x00000000; // receive data from any address
- // Bind the socket
- if (bind(socket_id, (struct sockaddr *) &sa_in, sizeof(sa_in)) < 0) {
- return 0; // error binding the socket
- }
-
- // -----------Configure sending side-----------------------//
-
- sa_out.sin_family = AF_INET; // type of address (Inet)
- sa_out.sin_port = htons(OUT_PORT); // set output port (same as input)
-
- // Retrieve network parameters to obtain the broadcast address
- struct in_addr gateway, snmask, dns1, dns2;
- Wifi_GetIPInfo(&gateway, &snmask, &dns1, &dns2);
- unsigned long ip = Wifi_GetIP();
- unsigned long mask = snmask.s_addr;
-
- // Calculate broadcast address
- unsigned long broadcast_addr = ip | ~mask;
-
- // Destination address (broadcast)
- sa_out.sin_addr.s_addr = broadcast_addr;
-
- // Set socket to be non-blocking
- char nonblock = 1;
- ioctl(socket_id, FIONBIO, &nonblock);
-
- // Return successful flag
- socket_opened = 1;
- return socket_opened;
-}
-
-void closeSocket() {
- // If socket not opened, nothing to do
- if (socket_opened == false) {
- return;
- }
-
- // Shutdown and close the socket in both directions
- shutdown(socket_id, SHUT_RDWR);
- closesocket(socket_id);
-
- memset(&sa_in, 0, sizeof(sa_in));
- memset(&sa_out, 0, sizeof(sa_out));
- socket_id = 0;
-
- socket_opened = false;
-}
-
-void disconnectFromWiFi() {
- // If Wi-Fi not connected, nothing to do
- if (WiFi_initialized == false) {
- return;
- }
-
- // Disconnect from the access point
- Wifi_DisconnectAP();
- WiFi_initialized = false;
-}
-
-int sendData(char * data_buff, int bytes) {
- // If no socket is opened return (error)
- if (socket_opened == false) {
- return -1;
- }
-
- // Send the data
- sendto(
- socket_id, // socket id
- data_buff, // buffer of data
- bytes, // bytes to send
- 0, // flags (none)
- (struct sockaddr *) &sa_out, // output side of the socket
- sizeof(sa_out) // size of the structure
- );
-
- // Return always true
- return 1;
-}
-
-int receiveData(char * data_buff, int bytes) {
- int received_bytes = 0;
- int info_size = sizeof(sa_in);
-
- // If no socket is opened, return (error)
- if (socket_opened == false) {
- printf("no socket\n");
- return -1;
- }
-
- // Try to receive the data
- received_bytes = recvfrom(
- socket_id, // socket id
- data_buff, // buffer where to put the data
- bytes, // bytes to receive (at most)
- ~MSG_PEEK, // returned data is marked as read
- (struct sockaddr *) &sa_in, // sender information
- &info_size // sender info size
- );
-
- // Discard data sent by ourselves
- if (sa_in.sin_addr.s_addr == Wifi_GetIP()) {
- return 0;
- }
-
- if (received_bytes > 0) {
- printf("recieved a total of %d bytes\n", received_bytes);
- }
-
- // Return the amount of received bytes
- return received_bytes;
-}
diff --git a/labs/lab-12/source/WiFi_minilib.h b/labs/lab-12/source/WiFi_minilib.h
deleted file mode 100644
index 270a63c..0000000
--- a/labs/lab-12/source/WiFi_minilib.h
+++ /dev/null
@@ -1,30 +0,0 @@
-#ifndef WIFI_MINILIB_H
-#define WIFI_MINILIB_H
-
-#include
-#include
-#include
-#include
-#include
-
-#define SSID "SEM-NDS"
-
-// WiFi initialization
-int initWiFi();
-
-// Socket initialization
-int openSocket();
-
-// Receive data trough the socket
-int receiveData(char * data_buff, int bytes);
-
-// Send data through the socket
-int sendData(char * data_buff, int bytes);
-
-// Close the Socket
-void closeSocket();
-
-// Disconnect the WiFi
-void disconnectFromWiFi();
-
-#endif
diff --git a/labs/lab-12/source/main.c b/labs/lab-12/source/main.c
deleted file mode 100644
index bd525b7..0000000
--- a/labs/lab-12/source/main.c
+++ /dev/null
@@ -1,131 +0,0 @@
-#include
-#include
-#include "WiFi_minilib.h"
-#include "dswifi9.h"
-#include "nds/interrupts.h"
-
-#define MSG 4
-#define GAME_ID ((char) 0b110)
-
-typedef enum Messages_e {
- A, //0x00
- B, //0x01
- X, //0x02
- Y //0x03
-}Message;
-
-void sendMessage()
-{
- char msg[MSG] = { GAME_ID };
-
- //Poll the keypad
- scanKeys();
- unsigned short keys = keysDown();
-
- //Print and send a message if key pressed
- switch(keys)
- {
- case KEY_A:
- printf("You pressed A\n");
- msg[MSG - 1] = (char)A;
- sendData(msg, MSG);
- break;
- case KEY_B:
- printf("You pressed B\n");
- msg[MSG - 1] = (char)B;
- sendData(msg, MSG);
- break;
- case KEY_X:
- printf("You pressed X\n");
- msg[MSG - 1] = (char)X;
- sendData(msg, MSG);
- break;
- case KEY_Y:
- printf("You pressed Y\n");
- msg[MSG - 1] = (char)Y;
- sendData(msg, MSG);
- break;
- }
-}
-
-void receiveMessage()
-{
- char msg[MSG];
-
- //Listen for messages from others
- if(receiveData(msg, MSG) == MSG)
- {
- if (msg[0] != GAME_ID) {
- printf("WRONG GAME_ID\n");
- }
-
- //If received, decode the key and print
- switch(msg[MSG - 1])
- {
- case A:
- printf("Other pressed A\n");
- break;
- case B:
- printf("Other pressed B\n");
- break;
- case X:
- printf("Other pressed X\n");
- break;
- case Y:
- printf("Other pressed Y\n");
- break;
- }
- }
-}
-
-int main(void) {
-
- consoleDemoInit();
-
- //Initialize WiFi
- if(initWiFi())
- printf("WiFi OK!\n");
- else
- printf("Error WiFi\n");
-
- //Open Socket
- if(openSocket())
- printf("Socket OK!\n");
- else
- printf("Error Socket\n");
-
- // disconnectFromWiFi();
- // swiWaitForVBlank();
- // closeSocket();
- // swiWaitForVBlank();
-
- // if (Wifi_CheckInit()) {
- // printf("Still init!\n");
- // } else {
- // printf("not init");
- // }
-
- // swiWaitForVBlank();
-
- //Initialize WiFi
- // if(initWiFi())
- // printf("WiFi OK!\n");
- // else
- // printf("Error WiFi\n");
-
- // //Open Socket
- // if(openSocket())
- // printf("Socket OK!\n");
- // else
- // printf("Error Socket\n");
-
- while(1)
- {
- //Send a message if key is pressed
- sendMessage();
- //Receive message of someone else that pressed a key
- receiveMessage();
-
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-2/.root b/labs/lab-2/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-2/Makefile b/labs/lab-2/Makefile
deleted file mode 100644
index 2993c94..0000000
--- a/labs/lab-2/Makefile
+++ /dev/null
@@ -1,162 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) # soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
- xdg-open $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-2/source/main.c b/labs/lab-2/source/main.c
deleted file mode 100644
index 5b0f759..0000000
--- a/labs/lab-2/source/main.c
+++ /dev/null
@@ -1,89 +0,0 @@
-#include
-#include
-
-/* Exercise 4 */
-
-int factorial_iter(int n) {
- int res = 1;
-
- for (int i = n; i >= 2; i--) {
- res *= i;
- }
-
- return res;
-}
-
-int factorial_rec(int n) {
- if (n <= 1) {
- return 1;
- }
-
- return n * factorial_rec(n - 1);
-}
-
-/* Exercise 5 */
-
-int gcd(int a, int b) {
- int rem = a % b;
-
- if (!rem) {
- return b;
- }
-
- return gcd(b, rem);
-}
-
-/* MAIN */
-
-int main(void) {
- consoleDemoInit();
-
- /* Exercise 1 */
-
- printf("\nHello this is me Mario\n");
-
- /* Exercise 2 */
-
- int array[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
-
- int min = array[0]; // error if array is empty as there is no min/max
- int max = array[0];
- int sum = 0;
- int length = sizeof(array) / sizeof(*array);
-
- for (size_t i = 0; i < length; i++) {
- min = array[i] < min ? array[i] : min;
- max = array[i] > max ? array[i] : max;
- sum += array[i];
- }
-
- int average = sum / length;
-
- printf("\nMin: %d, Max: %d, Average: %d\n\n", min, max, average);
-
- /* Exercise 3 */
-
- const int SIZE = 3;
- int matrix[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
-
- for (size_t i = 0; i < SIZE; i++) {
- for (size_t j = 0; j < SIZE; j++) {
- printf("%d ", matrix[i * SIZE + j]);
- }
- printf("\n\n");
- }
-
- /* Exercise 4 */
-
- const int NB = 4;
- printf("Factorial of %d: iter %d, rec %d\n", NB, factorial_iter(NB), factorial_rec(NB));
-
- /* Exercise 5 */
-
- const int A = 20, B = 15;
- printf("\nGCD of %d & %d: %d", A, B, gcd(A, B));
-
- while (1) {
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-3/.root b/labs/lab-3/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-3/Makefile b/labs/lab-3/Makefile
deleted file mode 100644
index 965c427..0000000
--- a/labs/lab-3/Makefile
+++ /dev/null
@@ -1,137 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-# MAXMOD_SOUNDBANK contains a directory of music and sound effect files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA := data
-INCLUDES := include
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project (order is important)
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-icons = $(wildcard *.bmp)
-
-ifneq (,$(findstring $(TARGET).bmp,$(icons)))
- export GAME_ICON := $(CURDIR)/$(TARGET).bmp
-else
- ifneq (,$(findstring icon.bmp,$(icons)))
- export GAME_ICON := $(CURDIR)/icon.bmp
- endif
-endif
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
- # xdg-open $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9
-
-#---------------------------------------------------------------------------------
-else
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- $(bin2o)
-
--include $(DEPSDIR)/*.d
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-3/launch.json b/labs/lab-3/launch.json
deleted file mode 100644
index 55166a4..0000000
--- a/labs/lab-3/launch.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "version": "0.2.0",
- "configurations": [
- {
- "type": "cppdbg",
- "request": "launch",
- "name": "Launch NDS debug",
- "MIMode": "gdb",
- "miDebuggerPath": "gdb-multiarch",
- "cwd": "${workspaceFolder}",
- "program": "${workspaceFolderBasename}.elf",
- "targetArchitecture": "arm",
- "setupCommands": [
- { "text": "target remote :1800" }
- ]
- }
- ]
-}
diff --git a/labs/lab-3/source/main.c b/labs/lab-3/source/main.c
deleted file mode 100644
index a2c2f51..0000000
--- a/labs/lab-3/source/main.c
+++ /dev/null
@@ -1,162 +0,0 @@
-#include
-#include
-
-#include "matrix.h"
-
-#define SIDE_SIZE 54
-#define LENGTH SIDE_SIZE * SIDE_SIZE
-
-int main(void) {
- consoleDemoInit();
-
- // Exercise 2
- printf("Exercise 2\n");
-
- // Matrix with 9 components preinitialized
- int myMatrix[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
-
- // Print the matrix
- printMatrix(myMatrix, 3, 3);
-
- // Exercise 3
- printf("Exercise 3\n");
-
- //'Empty' (or not initialized) matrix with 9 components
- int result[9];
-
- // Initialize it as the identity matrix and print it
- identity(result, 3);
- printMatrix(result, 3, 3);
-
- // Exercise 4
- printf("Exercise 4\n");
-
- // Print the summation of the components of the matrix (should be 3)
- printf("The sum is %i \n", sumMatrix(result, 3, 3));
-
- // Exercise 5
- printf("Exercise 5\n");
-
- // Vector declaration (10 components)
- int vector[] = {10, 11, 12, 3, 5, 7, -5, 4, -3, 6};
-
- const size_t size = sizeof(vector) / sizeof(*vector);
- for (size_t i = 0; i < size; i++) {
- for (size_t j = 0; j < size - i - 1; j++) {
- if (vector[j] > vector[j + 1]) {
- int old = vector[j];
- vector[j] = vector[j + 1];
- vector[j + 1] = old;
- }
- }
- }
-
- // Print the sorted Vector
- printMatrix(vector, 1, 10);
-
- // Exercise 6
- printf("Exercise 6\n");
-
- // Multiply my matrix (declared in exercise 2) by itself and put the
- // result in the matrix declared in exercise 3
- multMatrices(myMatrix, myMatrix, 3, 3, result);
-
- // Print the result and the summation
- printMatrix(result, 3, 3);
- printf("The sum is %i \n", sumMatrix(result, 3, 3));
-
- // Exercise 7
- /* // Declare 3 matrices with a 54 rows and 54 columns */
- /* int result2[LENGTH], mat1[LENGTH], mat2[LENGTH]; */
-
- /* // Initialize mat1 and mat2 as the identity */
- /* identity(mat2, SIDE_SIZE); */
- /* identity(mat1, SIDE_SIZE); */
-
- /* // Multiply the two matrices and print the result and the corresponding summation */
- /* multMatrices(mat1, mat2, SIDE_SIZE, SIDE_SIZE, result2); */
- /* printMatrix(result2, SIDE_SIZE, SIDE_SIZE); */
- /* printf("The sum is %i \n", sumMatrix(result2, SIDE_SIZE, SIDE_SIZE)); */
-
- // Exercise 8
- // Allocate space in dynamic memory for 3 54x54 matrices
- int * m1 = malloc(sizeof(int) * LENGTH);
- int * m2 = malloc(sizeof(int) * LENGTH);
- int * result3 = malloc(sizeof(int) * LENGTH);
-
- // Initialize 2 of them as the identity matrix
- identity(m1, SIDE_SIZE);
- identity(m2, SIDE_SIZE);
-
- // Multiply the two matrices and print the result and the corresponding summation
- multMatrices(m1, m2, SIDE_SIZE, SIDE_SIZE, result3);
- printMatrix(result3, SIDE_SIZE, SIDE_SIZE);
- printf("The sum is %i \n", sumMatrix(result3, SIDE_SIZE, SIDE_SIZE));
-
- // Release the memory
- free(m1);
- free(m2);
- free(result3);
-
- // Exercise 9
- printf("Exercise 9\n");
- // TO COMPLETE:
- // Allocate memory for two matrices and initialize them as follows
- // m3 = [ 1 2 2 Columns x 3 rows
- // 3 4
- // 5 6 ]
- //
- // m4 = [ 1 2 3 3 Columns x 2 rows
- // 4 5 6 ]
- //
- // Pay attention in allocating memory for the structures and for the
- // corresponding arrays
- //
- tMatrix * m3 = malloc(sizeof(*m3));
- m3->rows = 3;
- m3->cols = 2;
- m3->mat = malloc((size_t) m3->rows * m3->cols * sizeof(*m3->mat));
-
- tMatrix * m4 = malloc(sizeof(*m4));
- m4->rows = 2;
- m4->cols = 3;
- m4->mat = malloc((size_t) m4->rows * m4->cols * sizeof(*m4->mat));
-
- // Initialization
- for (size_t i = 0; i < 6; i++) {
- m3->mat[i] = m4->mat[i] = (int) i + 1;
- }
-
- // Multiplication of the 2 matrices
- tMatrix * result4 = multMatrices2(m3, m4);
- printMatrix(result4->mat, result4->rows, result4->cols);
- printf("The sum is %i \n", sumMatrix(result4->mat, result4->rows, result4->cols));
-
- free(m3->mat);
- free(m3);
- free(m4->mat);
- free(m4);
-
- // Exercise 10
- printf("Exercise 10\n");
-
- int diagonal_value;
-
- // TO COMPLETE: After implementing sumDiagonal(...) call this procedure using
- // result4 as input parameter and diagonal_value as output parameter
- // sumDiagonal(....)
-
- sumDiagonal(result4, &diagonal_value);
-
- printf("The sum of the diagonal is %i\n", diagonal_value);
-
- // TO COMPLETE: Release properly the memory corresponding to the mmatrix
- // result4. Do not forget the memory of the arrays
-
- free(result4->mat);
- free(result4);
-
- while (1) {
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-3/source/matrix.c b/labs/lab-3/source/matrix.c
deleted file mode 100644
index d7f38d9..0000000
--- a/labs/lab-3/source/matrix.c
+++ /dev/null
@@ -1,76 +0,0 @@
-#include "matrix.h"
-
-#include
-#include
-#include
-
-void printMatrix(int * const matrix, const int rows, const int columns) {
- for (size_t r = 0; r < rows; r++) {
- for (size_t c = 0; c < columns; c++) {
- printf("%d ", matrix[r * columns + c]);
- }
- printf("\n\n");
- }
-}
-
-void identity(int * const mat, const int columns) {
- for (size_t c = 0; c < (size_t) columns * columns; c++) {
- mat[c] = c / columns == c % columns;
- }
-}
-
-int sumMatrix(int * const mat, const int rows, const int columns) {
- int sum = 0;
-
- for (size_t r = 0; r < rows; r++) {
- for (size_t c = 0; c < columns; c++) {
- sum += mat[r * columns + c];
- }
- }
-
- return sum;
-}
-
-void multMatrices(
- int * const mat1,
- int * const mat2,
- const int rows,
- const int columns,
- int * const result
-) {
- for (size_t r = 0; r < rows; r++) {
- for (size_t c = 0; c < columns; c++) {
- int sum = 0;
- for (size_t k = 0; k < columns; k++) {
- sum += mat1[r * rows + k] * mat2[k * columns + c];
- }
- result[r * columns + c] = sum;
- }
- }
-}
-
-tMatrix * multMatrices2(tMatrix * m1, tMatrix * m2) {
- tMatrix * res = malloc(sizeof(*res));
- res->rows = m1->rows;
- res->cols = m2->cols;
- res->mat = malloc((size_t) (res->rows * res->cols) * sizeof(*res->mat));
-
- for (size_t r = 0; r < res->rows; r++) {
- for (size_t c = 0; c < res->cols; c++) {
- int sum = 0;
- for (size_t k = 0; k < m1->cols; k++) {
- sum += m1->mat[r * m1->cols + k] * m2->mat[k * m2->cols + c];
- }
- res->mat[r * res->cols + c] = sum;
- }
- }
-
- return res;
-}
-
-void sumDiagonal(const tMatrix * m1, int * sum) {
- *sum = 0;
- for (size_t c = 0; c < m1->cols; c++) {
- *sum += m1->mat[c * m1->cols + c];
- }
-}
diff --git a/labs/lab-3/source/matrix.h b/labs/lab-3/source/matrix.h
deleted file mode 100644
index b1a9218..0000000
--- a/labs/lab-3/source/matrix.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * matrix.h
- *
- * Created on: Feb 21, 2011
- * Author: admin
- */
-
-#ifndef MATRIX_H_
-#define MATRIX_H_
-
-#include "stdio.h"
-#include "stdlib.h"
-
-/*
- * The following type is a simple structure to represent a matrix.
- * The fields of the structure are:
- * *mat: Pointer to the array of integers
- * rows: Number of rows in the matrix
- * cols: Number of columns in the matrix
- */
-typedef struct {
- int * mat;
- int rows;
- int cols;
-} tMatrix;
-
-/*
- * Print the matrix that receives as parameter in a proper way.
- * It receives three parameteres:
- * mat[]: an array of integer that represents the matrix
- * rows, columns: number of rows and columns of the matrix
- */
-void printMatrix(int mat[], int rows, int columns);
-
-/*
- * Function that initializes a square matrix as an identity matrix
- * (matrix with a diagonal of '1' and the rest component set to 0).
- * This function receives two parameters:
- * mat[]: An array of integer that represents the matrix
- * columns: number of columns of the matrix (equals to the number
- * of rows)
- */
-void identity(int mat[], int columns);
-
-/*
- * This function return an integer that is equal to the summation
- * of all the components of the matrix
- */
-int sumMatrix(int mat[], int rows, int columns);
-
-/*
- * This function multiplies two square matrices (same number of
- * rows and columns). The result is stored in the 5th parameter
- * which is an array of integer representing the resulting matrix
- */
-void multMatrices(int mat1[], int mat2[], int rows, int columns, int result[]);
-
-/*
- * This function multiply two matrices represented by the data structure
- * tMatrix. This function receives two pointers to the matrices to be multiplied
- * and returns a pointer to a structure that stores the result.
- *
- * ATTENTION: This function must allocate memory for the structure properly.
- * This memory has to be released by the programmer in a proper way.
- */
-
-tMatrix * multMatrices2(tMatrix * m1, tMatrix * m2);
-
-/*
- * Declare a procedure that takes 3 parameters:
- * input: a tMatrix structure
- * output: the value of the summation of all the diagonal components
- * of the matrix
- */
-
-void sumDiagonal(const tMatrix * m1, int * sum);
-
-#endif /* MATRIX_H_ */
diff --git a/labs/lab-3/source/opt/P_Graphics.c b/labs/lab-3/source/opt/P_Graphics.c
deleted file mode 100644
index 2a3b2fa..0000000
--- a/labs/lab-3/source/opt/P_Graphics.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * P_Graphics.c
- *
- * Created on: Sept 10, 2021
- * Author: admin
- */
-
-#include "P_Graphics.h"
-
-u16 * P_Graphics_mainBuffer;
-u16 * P_Graphics_subBuffer;
-int P_Graphics_mainW;
-int P_Graphics_mainH;
-int P_Graphics_subW;
-int P_Graphics_subH;
-
-void P_Graphics_setup_main() {
-#ifdef FB0
- // Graphics (Part 1)
- // Set the mode to FB0
- REG_DISPCNT = MODE_FB0;
-
- // Set the corresponding VRAM bank
- VRAM_A_CR = VRAM_ENABLE // Enable the Bank
- | VRAM_A_LCD; // Assign it to the Main engine in FB0
-
-#endif
-}
-
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16 * buffer, int w, int h) {
- switch (bT) {
- case MAIN:
- P_Graphics_mainBuffer = buffer;
- P_Graphics_mainW = w;
- P_Graphics_mainH = h;
- break;
- case SUB:
- P_Graphics_subBuffer = buffer;
- P_Graphics_subW = w;
- P_Graphics_subH = h;
- break;
- }
-}
diff --git a/labs/lab-3/source/opt/P_Graphics.h b/labs/lab-3/source/opt/P_Graphics.h
deleted file mode 100644
index be257a6..0000000
--- a/labs/lab-3/source/opt/P_Graphics.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * P_Graphics.h
- *
- * Created on: Sept 10, 2021
- * Author: admin
- */
-
-#ifndef PGRAPHICS_H_
-#define PGRAPHICS_H_
-
-#pragma once
-
-#include
-#define FB0
-
-enum BUFFER_TYPE {
- MAIN,
- SUB,
-};
-
-// members
-extern u16 * P_Graphics_mainBuffer;
-extern u16 * P_Graphics_subBuffer;
-extern int P_Graphics_mainW;
-extern int P_Graphics_mainH;
-extern int P_Graphics_subW;
-extern int P_Graphics_subH;
-
-/*
- This function does not receive any input parameter. It initializes the main
- graphical engine to be used with the Framebuffer Mode 0 (FB0).
- It also enables the corresponding VRAM bank to be used.
-*/
-void P_Graphics_setup_main();
-
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16 * buffer, int w, int h);
-#endif
diff --git a/labs/lab-3/source/opt/fractal.c b/labs/lab-3/source/opt/fractal.c
deleted file mode 100644
index 127bf56..0000000
--- a/labs/lab-3/source/opt/fractal.c
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * fractal.c
- *
- * Created on: Sept 10, 2021
- * Author: admin
- */
-
-#include "fractal.h"
-
-#include "P_Graphics.h"
-
-/*
- * Fixed point division
- */
-int FixedDiv(int x, int y) {
- return ((x) / (y)) << shift;
-}
-
-/*
- * Fixed point multiplication test
- * Iterate over a MAXCOUNT maximum to show performance difference between
- * FP and Fixed Point numbers
- */
-void FixedMultiplicationTest(long x, long y) {
- int counter = 0;
- int temp = 0;
- printf("\nFixed");
- while (counter < MAXCOUNT) {
- temp = FixedMult(x, y);
- counter++;
- }
- printf("%d", temp);
-}
-
-/*
- * Floating point multiplication test
- */
-void FloatMultiplicationTest(float x, float y) {
- int counter = 0;
- float temp = 0;
- printf("\nFloat");
- while (counter < MAXCOUNT) {
- temp = x * y;
-
- counter++;
- }
- printf("%f", temp);
-}
-
-/*
- * Fixed point fractal calculation
- * To adapt the fractal to the NDS screen, keep ci and cj scale to
- * i: x*0.01 - 1.75
- * j: y*0.01 - 1.0
- * Also keep the bias to center the figure in the screen
- *
- * This function calculates the convergence of the Mandelbrot set using fixed point multplication
- * and prints in black and white colors
- */
-void FixedFractal() {
- // Main variable definition. Here you can control the variable size to test your experiments
- int32_t ci, cj, zi, zj, t_zi, fxycenter, fxxcenter, xoff, yoff, fxradious, fxptwo;
-
- // Auxiliary variables for iterating
- int count, x, y;
-
- // Color definition for printing the screen
- u16 black = RGB15(0, 0, 0);
- u16 white = RGB15(31, 31, 31);
-
- // Screen index. Required to prevent over operations to be performed in runtime
- int g_index = 0;
-
- // Counters to compare the convergents with non-convergent points
- int over, no = 0;
-
- // Fixed point initializations and definitions for the offsets
- fxycenter = FloatToFixed(CENTER_Y);
- fxxcenter = FloatToFixed(CENTER_X);
- xoff = FloatToFixed(OFF_X);
- yoff = FloatToFixed(OFF_Y);
- fxradious = FloatToFixed(radious);
- fxptwo = FloatToFixed(2.0);
-
- // Iterate over the screen pixels (192*256 pixels
- for (y = 0; y <= MAXY; y++) {
- for (x = 0; x <= MAXX; x++) {
- // Define fractal offset
- // ci = X axis offset == x*xcenter - xoffset
- // cj = Y axis offset == y*ycenter - yoffset
-
- zi = 0;
- zj = 0;
- count = 0;
-
- // Calculate convergence of the fractal
-
- /*
- * The array that represents the screen pixels is linear. Thus, X,Y coordinates must be
- represented as a single one (y*(MAXX+1))+x
- * if Converges choose one color. Instead of calling any function, is more efficient to
- assign the color to the corresponding pixel in every iteration.
- {
- P_Graphics_mainBuffer[g_index] = white;
- over++;
- }
- else choose another one
- {
- P_Graphics_mainBuffer[g_index] = black;
- no++;
- }
-
- g_index++;
- */
- }
- }
- printf("\nConverged: %d ---- Overflow: %d \n", over, no);
-}
-
-/*
- * This function calculates the convergence of the Mandelbrot set using floating point multplication
- * and prints in black and white colors
- */
-void FloatFractal() {
- float ci, cj, zi, zj, t_zi;
- int count, x, y;
- int g_index = 0;
- u16 black = RGB15(0, 0, 0);
- u16 white = RGB15(31, 31, 31);
-
- for (y = 0; y <= MAXY; y++) {
- for (x = 0; x <= MAXX; x++) {
- ci = ((x) *0.01 - 1.75);
- cj = ((y) *0.01 - 1.0);
-
- zi = (0.0);
- zj = (0.0);
- count = 0;
-
- // Calculate convergence of the fractal
-
- /*
- * The array that represents the screen pixels is linear. Thus, X,Y coordinates must be
- represented as a single one (y*(MAXX+1))+x if Converges choose one color
- {
- P_Graphics_mainBuffer[g_index] = white;
- over++;
- }
- else choose another one
- {
- P_Graphics_mainBuffer[g_index] = black;
- no++;
- }
-
- g_index++;
- */
- }
- }
-}
diff --git a/labs/lab-3/source/opt/fractal.h b/labs/lab-3/source/opt/fractal.h
deleted file mode 100644
index ab874ae..0000000
--- a/labs/lab-3/source/opt/fractal.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * fractal.h
- *
- * Created on: Sept 10, 2021
- * Author: admin
- */
-
-#ifndef FRACTAL_H_
-#define FRACTAL_H_
-
-#include "P_Graphics.h"
-#include "stdio.h"
-#include "stdlib.h"
-
-// Decimal units
-#define shift 20
-#define radious 4
-
-#define MAXX 255
-#define MAXY 191
-
-#define CENTER_X 0.01
-#define CENTER_Y 0.01
-#define OFF_X 1.75
-#define OFF_Y 1.0
-
-#define MAXCOUNT 8000000
-#define FRACTAL_LIMIT 800
-
-// Define fp to fixed conversion
-// Integers
-#define FixedToLong(i) ((i) >> shift)
-#define LongToFixed(i) ((i) << shift)
-
-// Fixed operations
-#define FixedMult(i, j) ((int32_t) ((int64_t) (i) * (int64_t) (j) >> shift))
-
-// Floats
-#define FixedToFloat(i) ((i) / (float) (1 << shift))
-#define FloatToFixed(i) ((i) * (float) (1 << shift))
-
-// short FixedMult(short x, short y);
-int FixedDiv(int x, int y);
-
-void FixedMultiplicationTest(long x, long y);
-void FloatMultiplicationTest(float x, float y);
-void FixedFractal();
-void FloatFractal();
-
-#endif
diff --git a/labs/lab-3/source/opt/main.c b/labs/lab-3/source/opt/main.c
deleted file mode 100755
index 1a6836a..0000000
--- a/labs/lab-3/source/opt/main.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Template Nintendo DS
- * Sept 2021
- */
-
-#include
-#include
-#include
-
-#include "P_Graphics.h"
-#include "fractal.h"
-
-int main(void) {
- consoleDemoInit();
-
- // Initialize main screen
- P_Graphics_setup_main();
- P_Graphics_assignBuffer(MAIN, (u16 *) VRAM_A, 256, 192);
-
- // Exercise 1 Test FxP conversions and operations
-
- // Exercise 1.5 FxP multiplication
-
- // Exercise 1.6 16b variables
-
- // Exercise 2
- double start_time, end_time, exec_time;
-
- start_time = time(0);
- FixedFractal();
- end_time = time(0);
- exec_time = (end_time - start_time);
- printf("\n Fixed Fractal calculation time (s): %f seconds", exec_time);
-
- start_time = time(0);
- FixedFractal();
- end_time = time(0);
- exec_time = (end_time - start_time);
- printf("\n Fixed Fractal calculation time (s): %f seconds", exec_time);
- while (1)
- swiWaitForVBlank();
-}
diff --git a/labs/lab-4/.root b/labs/lab-4/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-4/Makefile b/labs/lab-4/Makefile
deleted file mode 100755
index dba0fe6..0000000
--- a/labs/lab-4/Makefile
+++ /dev/null
@@ -1,137 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-# MAXMOD_SOUNDBANK contains a directory of music and sound effect files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA := data
-INCLUDES := include
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project (order is important)
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-icons = $(wildcard *.bmp)
-
-ifneq (,$(findstring $(TARGET).bmp,$(icons)))
- export GAME_ICON := $(CURDIR)/$(TARGET).bmp
-else
- ifneq (,$(findstring icon.bmp,$(icons)))
- export GAME_ICON := $(CURDIR)/icon.bmp
- endif
-endif
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @make --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
- xdg-open $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9
-
-#---------------------------------------------------------------------------------
-else
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- $(bin2o)
-
--include $(DEPSDIR)/*.d
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-4/launch.json b/labs/lab-4/launch.json
deleted file mode 100644
index 55166a4..0000000
--- a/labs/lab-4/launch.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "version": "0.2.0",
- "configurations": [
- {
- "type": "cppdbg",
- "request": "launch",
- "name": "Launch NDS debug",
- "MIMode": "gdb",
- "miDebuggerPath": "gdb-multiarch",
- "cwd": "${workspaceFolder}",
- "program": "${workspaceFolderBasename}.elf",
- "targetArchitecture": "arm",
- "setupCommands": [
- { "text": "target remote :1800" }
- ]
- }
- ]
-}
diff --git a/labs/lab-4/source/FIRfilter.s b/labs/lab-4/source/FIRfilter.s
deleted file mode 100644
index d5cfc90..0000000
--- a/labs/lab-4/source/FIRfilter.s
+++ /dev/null
@@ -1,122 +0,0 @@
-
-@------------------------------------------------------------------------------
-@-------------------------------------FIRfilter--------------------------------
-@void FIRfilter(int *x, int n, int *coef, int m, int *y){
-@ int i=0;
-@ int j=0;
-@ for (i=0;i>12;
-@ }
-@
-@ for (i=m;i>12;
-@ }
-@}
-@------------------------------------------------------------------------------
-
-.ARM
-
-.ALIGN
-
-.GLOBL FIRfilter
-
-.TYPE FIRfilter,function @ Not always required but useful for .map files
-.text
-FIRfilter:
-
- stmdb sp!, {r4 - r11, lr} @ instruction to push an entire specified set of
- @ register onto the stack in one instruction
-
- ldr r4, [sp, #36] @ load 'y' (5th parameter) in r4
- mov r5, #0 @ r5 = i = 0
-
-@-----------------------filtering-first-m-inputs-optional--------------------------------
-
-.FirstLabelForI: @ for (i...)
- cmp r5, r3 @ i < m ?
- bge .EndFirstLabelForI
- mov r6, #0 @ r6 = j = 0
- mov r11, #0 @ r11 = temporary result
- add r7, r5, #1 @ r7 = i+1
-
-.FirstLabelForJ: @ for (j...)
- cmp r6, r7 @ j < i+1 ?
- bge .EndFirstLabelForJ
- sub r8, r5, r6 @ r8 = i-j
-
- push {r6, r8}
- mov r8, r8, lsl #1 @ using short values ((i-j) * 2 bytes)
- ldrsh r9, [r0, r8] @ r9 = x[i-j]
- mov r6, r6, lsl #1 @ using short values (j * 2 bytes)
- ldrsh r10, [r2, r6] @ r10 = coef[j]
- pop {r6, r8}
-
- MLA r11, r9, r10, r11 @ r11 = x[i-j] * Coef[j] + output[i]
-
- add r6, r6, #1 @ j++
-
- b .FirstLabelForJ
-
-.EndFirstLabelForJ:
- mov r11,r11, asr #12 @ shifting the result 12 bits right to obtain
- @ the correct fixed point representation
-
- mov r5, r5, lsl #1 @ using short values (i * 2 bytes)
- strh r11, [r4, r5] @ y[i] = r11
- mov r5, r5, lsr #1 @ resetting the i index
-
- add r5, r5, #1 @ i++
- b .FirstLabelForI
-
-.EndFirstLabelForI:
-
-@--------------------------filtering-the-remaining-inputs-------------------------------
-
-.SecondLabelForI: @ for (i...)
- cmp r5, r1 @ i < n ?
- bge .EndSecondLabelForI
- mov r6, #0 @ r6 = j = 0
- mov r11, #0 @ r11 = temporary result
-
-.SecondLabelForJ: @ for (j...)
- cmp r6, r3 @ j < m ?
- bge .EndSecondLabelForJ
- sub r8, r5, r6 @ r8 = i-j
-
- push {r6, r8}
- mov r8, r8, lsl #1 @ using short values ((i-j) * 2 bytes)
- ldrsh r9, [r0, r8] @ r9 = x[i-j]
- mov r6, r6, lsl #1 @ using short values (j * 2 bytes)
- ldrsh r10, [r2, r6] @ r10 = coef[j]
- pop {r6, r8}
-
- MLA r11, r9, r10, r11 @ r11 = x[i-j] * Coef[j] + output[i]
-
- add r6, r6, #1 @ j++
-
- b .SecondLabelForJ
-
-.EndSecondLabelForJ:
- mov r11,r11, asr #12 @ shifting the result 12 bits right to obtain
- @ the correct fixed point representation
-
- mov r5, r5, lsl #1 @ using short values (i * 2 bytes)
- strh r11, [r4, r5] @ y[i] = r11
- mov r5, r5, lsr #1 @ resetting the i index
-
- add r5, r5, #1 @ i++
- b .SecondLabelForI
-
-.EndSecondLabelForI:
- ldmia sp!, {r4 - r11, lr} @ instruction to restore the previous saved registers
- bx lr @ jump to the return address
-.end
-
-
-
diff --git a/labs/lab-4/source/addition.s b/labs/lab-4/source/addition.s
deleted file mode 100755
index 116d2eb..0000000
--- a/labs/lab-4/source/addition.s
+++ /dev/null
@@ -1,25 +0,0 @@
-
-@------------------------------------------------------------------------------
-@--------------------------------------Sum-------------------------------------
-@------------------------------------------------------------------------------
-
-.ARM
-
-.ALIGN
-
-.GLOBL Sum
-
-.TYPE Sum,function @ Not always required but useful for .map files
-
-Sum:
-
- stmdb sp!, {r4 - r11, lr} @ instruction to push an entire specified set of
- @ register onto the stack in one instruction
-
-
- add r0, r1 @ r0=r0 + r1; r0 is used also for the return value
-
-
-
- ldmia sp!, {r4 - r11, lr} @ instruction to restore the previous saved registers
- bx lr @ jump to the return address
diff --git a/labs/lab-4/source/isqrt.s b/labs/lab-4/source/isqrt.s
deleted file mode 100755
index 94ebbb3..0000000
--- a/labs/lab-4/source/isqrt.s
+++ /dev/null
@@ -1,48 +0,0 @@
-
-@------------------------------------------------------------------------------
-@-------------------------------------isqrt------------------------------------
-@------------------------------------------------------------------------------
-
-.ARM
-
-.ALIGN
-
-.GLOBL iSqrt
-
-.TYPE iSqrt,function @ Not always required but useful for .map files
-.text
-iSqrt:
-
- push {r4 - r6, lr} @ instruction to push an entire specified set of
- @ register onto the stack in one instruction
- @ sub sp, sp, #0xC
-
-
- mov r4, #1 @ Put 0x1 in r4
- lsl r4, r4, #16 @ The maximum possible value for the sqrt(n) when n
- @ is a 32 bit integer number is below 2^16
-
- cmp r0, #0 @ Compare input number with 0
- movles r0, #0 @ If input is less or equal to 0 return 0 as result
- ble .negative_end
- mov r5, #0 @ r5 will store the temporary result
- b .loop_end
-
-.loop_init:
- add r5, r5, r4 @ Add r4 to the temporary result
- mul r6, r5, r5 @ Compute the squared value of the temporary result
- cmp r0, r6
- sublt r5, r5, r4 @ If the squared value is bigger than the input, undo
- @ the additino
-.loop_end:
- lsrs r4, r4, #1 @ r4 is right sifted (divided by 2)
- bne .loop_init @ if r4 contains 0 the final result remains in r5
-
- mov r0, r5 @ copy the result to r0 to be returned
-
-.negative_end:
- @ add sp, sp, #0xC
- pop {r4 - r6, lr} @ instruction to restore the previous saved registers
- bx lr @ jump to the return address
-
-.end
diff --git a/labs/lab-4/source/main.c b/labs/lab-4/source/main.c
deleted file mode 100755
index 0c645a4..0000000
--- a/labs/lab-4/source/main.c
+++ /dev/null
@@ -1,166 +0,0 @@
-/*---------------------------------------------------------------------------------
-
- Basic template code for starting a DS app
-
----------------------------------------------------------------------------------*/
-#include
-#include
-#include
-
-extern int Sum(int a, int b);
-extern int SumArray(int *array, int length);
-extern int MultMatrix(int *Mat1,int *Mat2, int MatrixLength,int *MatR);
-extern int iSqrt(int n);
-extern int sum6(int a, int b, int c, int d, int e, int f);
-extern int sumMatrix6(int *Mat);
-extern void FIRfilter(short *x, int n, short *coef, int m, short *y);
-
-//---------------------------------------------------------------------------------
-int main(void) {
-//---------------------------------------------------------------------------------
-
- consoleDemoInit();
-
- printf("\n inline assembly example \n");
-
- int a=6;
- int b=4;
- int c=0;
- asm volatile("add %0, %1, %2" :
- "=r" (c) :
- "r" (a),"r" (b)
- );
-
- printf("\n %d + %d = %d \n", a, b, c);
-
- //Exercise 1
-
- printf("\n Exercise 1 \n");
- a=(-25);
- b=5;
- c=2;
- int d=0;
-
- asm volatile("mul r4, %1, %2\n\t"
- "add %0, r4, %3\n\t"
- "mov r4, #0\n\t"
- "cmp %0, r4 \n\t"
- "bge .else_label\n\t"
- "sub %0, r4, %0\n\t"
- ".else_label:\n\t"
- : "=r" (d)
- : "r" (b), "r" (c), "r" (a)
- : "r4");
- printf("\n abs( %d + %d * %d ) = %d \n", a, b, c, d);
-
-
- //Exercise with steps
-
- printf("\n Exercise with steps \n");
- a=60;
- b=40;
- c= Sum(a,b);
- printf("\n %d + %d = %d \n", a, b, c);
-
-
- //Exercise 2
-
- printf("\n Exercise 2\n");
- int length=10;
- int array1[10]={0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
- c= SumArray(array1,length);
- printf("\n SumArry = %d \n", c);
-
-
- //exercise 3
-
- printf("\n Exercise 3 \n");
- int Mat1[9]={1,2,3,4,5,6,7,8,9};
- int MatR[9];
- MultMatrix(Mat1 , Mat1, 3, MatR);
- printf("\n MatR = \n\n"
- "\t%d\t%d\t%d\n\n"
- "\t%d\t%d\t%d\n\n"
- "\t%d\t%d\t%d\n\n",
- MatR[0], MatR[1], MatR[2], MatR[3], MatR[4], MatR[5], MatR[6], MatR[7], MatR[8]);
-
-
- //exercise 4
-
- printf("\n Exercise 4 \n");
- a = sum6(1,2,3,4,5,6);
- printf("\n 1 + 2 + 3 + 4 + 5 + 6 = %i\n", a);
-
- //exercise 5
-
- printf("\n Exercise 5 \n");
- int Mat6[36];
- int i;
- for(i=1;i<37;i++) Mat6[i-1]=i;
- a = sumMatrix6(Mat6);
- printf("\n sumMatrix6 = %d \n", a);
-
-
- //Exercise 6
-
- printf("\n Exercise 6 \n");
- a = 0;
- printf("\nCalculating 500000 normal Sqrt\n\n");
- for(i=0;i<500000;i++)
- {
- if(i % 25000 == 0) printf(">");
- a += floor(sqrt((double)i));
- }
- printf("\n\nFinished! Result = %i\n", a);
- a=0;
- printf("\nCalculating 500000 handwritten Sqrt\n\n");
- for(i=0;i<500000;i++)
- {
- if(i % 25000 == 0) printf(">");
- a += iSqrt(i);
- }
- printf("\n\nFinished! Result = %i\n", a);
-
- //Exercise 7
-
- printf("\n Exercise 7 \n");
- a = 3;
- b = 2;
- c = -3;
- asm volatile("mlas %0, %1, %2, %3\n\t"
- "mov r1, #0\n\t"
- "sublt %0, r1, %0\n\t"
- : "=r" (d)
- : "r" (b), "r" (c), "r" (a)
- );
- printf("\n abs( %d + %d * %d ) = %d \n", a, b, c, d);
-
- //Exercise 9
- // The fixed point representation of the filter coefficients
- // and of the input was chosen as follow:
- // 3 bits for the integer part, 12 for the decimal and one for the sign.
- // The assembler code that will be implemented has to consider this fixed
- // point representation in order to have the correct output
-
- printf("\n Exercise 9 \n\n");
- short input[50]={ 1840, 2701, 3085, 3296, 119, 3194, 2323,
- 311, 1030, 546, 2312, 2215, 282, 4048,
- 1028, 1292, 1231, 172, 2162, 1048, 1674,
- 3881, 3765, 496, 2424, 1473, 2946, 2144,
- 1068, 2019, 3505, 2967, 815, 644, 1517,
- 3531, 2804, 2597, 578, 324, 3588, 1722,
- 1997, 1885, 2112, 1114, 948, 3684, 3722,
- 2472};
- short output[50];
- short coef[11]={ -235, -246, -272, -310, -343, 3738, -343,-310, -272, -246, -235};
-
- FIRfilter(input, 50, coef, 11, output);
-
- for (i=0;i<10;i++){
- printf("%5d %5d %5d %5d %5d\n", output[5*i], output[5*i+1], output[5*i+2], output[5*i+3], output[5*i+4] );
- }
-
- while(1) {
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-4/source/multiplication.s b/labs/lab-4/source/multiplication.s
deleted file mode 100755
index f9dfffa..0000000
--- a/labs/lab-4/source/multiplication.s
+++ /dev/null
@@ -1,84 +0,0 @@
-@------------------------------------------------------------------------------
-@--------------------------------------MultMatrix------------------------------
-@------------------------------------------------------------------------------
-@int MultMatrix(int *Mat1,int *Mat2, int MatrixLength,int *MatR){
-@ int r,c,i;
-@ for(r=0; r r7 = mat1[r*MatrixLength+i]
-
- mul r10, r6, r2
- add r10, r10, r5 @ r10 = i * MatrixLength + c
-
- ldr r8, [r1, r10, lsl #2] @ r8 = r1[r10] -> r8 = mat2[i*MatrixLength+c]
-
- mul r10, r7 ,r8 @ r10=r7*r8 = mat1[r*MatrixLength+i] * mat2[i*MatrixLength+c]
- add r11, r11, r10 @ r11 = r11 + r10 (accumulating)
-
- add r6, r6, #1 @ i++
- b .LabelForI
-
-.EndLabelForI:
-
- mul r10, r4, r2
- add r10, r10, r5 @ r10 = r*MatrixLength + c
- str r11, [r3, r10, lsl #2] @ MatR[r*MatrixLength + c] = r11
-
- add r5, r5, #1 @ c++
- b .LabelForC
-
-.EndLabelForC:
-
- add r4, r4, #1 @ r++
- b .LabelForR
-
-.EndLabelForR:
-
- ldmia sp!, {r4 - r11, lr} @ instruction to restore the previous saved registers
- bx lr @ jump to the return address
diff --git a/labs/lab-4/source/sumMatrix6.s b/labs/lab-4/source/sumMatrix6.s
deleted file mode 100755
index c74f605..0000000
--- a/labs/lab-4/source/sumMatrix6.s
+++ /dev/null
@@ -1,78 +0,0 @@
-
-@------------------------------------------------------------------------------
-@-------------------------------------sum6-------------------------------------
-@------------------------------------------------------------------------------
-
-.ARM
-
-.ALIGN
-
-.GLOBL sum6
-
-.TYPE sum6,function @ Not always required but useful for .map files
-.text
-sum6:
- push {r4, r5, lr} @ Save r4, r5 and lr
- ldr r4, [sp, #12] @ load 'e' (5th parameter) in r4
- ldr r5, [sp, #16] @ load 'f' (6th parameter) in r5
- add r0, r0, r1 @ a + b
- add r0, r0, r2 @ a + b + c
- add r0, r0, r3 @ a + b + c + d
- add r0, r0, r4 @ a + b + c + d + e
- add r0, r0, r5 @ a + b + c + d + e + f
- pop {r4, r5, lr} @ Restore r4, r5 and lr
- bx lr @ return
-
-
-
-
-@------------------------------------------------------------------------------
-@-------------------------------------sumMatrix6--------------------------------
-@------------------------------------------------------------------------------
-
-.ALIGN
-
-.GLOBL sumMatrix6
-
-.TYPE sumMatrix6,function @ Not always required but useful for .map files
-sumMatrix6:
- stmdb sp!, {r4 - r11, lr} @ instruction to push an entire specified set of
- @ register onto the stack in one instructionmv r4, r0
- mov r4, r0 @ r4 = Mat
- mov r5, #0 @ r5 = index of the element
- mov r6, #0 @ r6 = i (row counter)
- mov r10, #0 @ accmulated result
-
-.LabelForI: @ for (i...)
- cmp r6, #6 @ i < 6 ?
- bge .EndLabelForI
-
- ldr r0,[r4, r5, lsl #2] @ r0 = r4[r5] -> r0 = mat1[index]
- add r5, r5, #1 @ incrementing the index
- ldr r1,[r4, r5, lsl #2] @ r1 = r4[r5] -> r1 = mat1[index]
- add r5, r5, #1 @ incrementing the index
- ldr r2,[r4, r5, lsl #2] @ r2 = r4[r5] -> r2 = mat1[index]
- add r5, r5, #1 @ incrementing the index
- ldr r3,[r4, r5, lsl #2] @ r3 = r4[r5] -> r3 = mat1[index]
- add r5, r5, #1 @ incrementing the index
- ldr r7,[r4, r5, lsl #2] @ r7 = r4[r5] -> r7 = mat1[index]
- sub sp, sp, #8
- str r7, [sp] @ storing the 5th parameter "mat1[index]" to the stack
- add r5, r5, #1 @ incrementing the index
- ldr r7,[r4, r5, lsl #2] @ r7 = r4[r5] -> r7 = mat1[index]
- str r7, [sp, #4] @ storing the 6th parameter "mat1[index]" to the stack
- add r5, r5, #1 @ incrementing the index
- bl sum6 @ Calling Sum6 function
- pop {r7} @ Rearranging the stack pointer
- pop {r7} @ Rearranging the stack pointer
- add r10, r10, r0 @ acccumulating the result
- add r6, r6, #1 @ incrementing i (row counter)
-
- b .LabelForI
-
-.EndLabelForI:
- mov r0, r10 @ moving the final result to R0
- ldmia sp!, {r4 - r11, lr} @ instruction to restore the previous saved registers
- bx lr @ return
-.end
-
diff --git a/labs/lab-4/source/summation.s b/labs/lab-4/source/summation.s
deleted file mode 100755
index 7fe956e..0000000
--- a/labs/lab-4/source/summation.s
+++ /dev/null
@@ -1,34 +0,0 @@
-@------------------------------------------------------------------------------
-@--------------------------------------SumArray--------------------------------
-@------------------------------------------------------------------------------
-
-.ARM
-
-.ALIGN
-
-.GLOBL SumArray
-
-.TYPE SumArray,function @ Not always required but useful for .map files
-
-SumArray:
-
- stmdb sp!, {r4 - r11, lr} @ instruction to push an entire specified set of
- @ register onto the stack in one instruction
-
- mov r2, #0 @ int i=0
- mov r3, #0 @ int tempoary register to store the summation
-
-.LabelFor:
- cmp r2, r1 @ i r4 = Array[i]
- add r3, r3, r4 @ r3 = r3 + Array[i]
- add r2, r2, #1 @ i++
-
- b .LabelFor
-
-.EndLabelFor:
- mov r0, r3 @ storing the result in r0
-
- ldmia sp!, {r4 - r11, lr} @ instruction to restore the previous saved registers
- bx lr @ jump to the return address
diff --git a/labs/lab-5/Time_challenge/.root b/labs/lab-5/Time_challenge/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-5/Time_challenge/Makefile b/labs/lab-5/Time_challenge/Makefile
deleted file mode 100644
index 6cdeb87..0000000
--- a/labs/lab-5/Time_challenge/Makefile
+++ /dev/null
@@ -1,161 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-5/Time_challenge/precompiled/numbers.h b/labs/lab-5/Time_challenge/precompiled/numbers.h
deleted file mode 100644
index b8c9d98..0000000
--- a/labs/lab-5/Time_challenge/precompiled/numbers.h
+++ /dev/null
@@ -1,28 +0,0 @@
-
-//{{BLOCK(numbers)
-
-//======================================================================
-//
-// numbers, 32x704@8,
-// + palette 2 entries, not compressed
-// + 352 tiles not compressed
-// Total size: 4 + 22528 = 22532
-//
-// Time-stamp: 2011-03-24, 14:13:08
-// Exported by Cearn's GBA Image Transmogrifier, v0.8.3
-// ( http://www.coranac.com/projects/#grit )
-//
-//======================================================================
-
-#ifndef GRIT_NUMBERS_H
-#define GRIT_NUMBERS_H
-
-#define numbersTilesLen 22528
-extern const unsigned int numbersTiles[5632];
-
-#define numbersPalLen 4
-extern const unsigned short numbersPal[2];
-
-#endif // GRIT_NUMBERS_H
-
-//}}BLOCK(numbers)
diff --git a/labs/lab-5/Time_challenge/precompiled/numbers.s b/labs/lab-5/Time_challenge/precompiled/numbers.s
deleted file mode 100644
index 2aba502..0000000
--- a/labs/lab-5/Time_challenge/precompiled/numbers.s
+++ /dev/null
@@ -1,819 +0,0 @@
-
-@{{BLOCK(numbers)
-
-@=======================================================================
-@
-@ numbers, 32x704@8,
-@ + palette 2 entries, not compressed
-@ + 352 tiles not compressed
-@ Total size: 4 + 22528 = 22532
-@
-@ Time-stamp: 2011-03-24, 14:13:08
-@ Exported by Cearn's GBA Image Transmogrifier, v0.8.3
-@ ( http://www.coranac.com/projects/#grit )
-@
-@=======================================================================
-
- .section .rodata
- .align 2
- .global numbersTiles @ 22528 unsigned chars
-numbersTiles:
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x0000FFFF,0xFF000000,0x00FFFFFF,0xFFFF0000,0x00FFFFFF,0xFFFF0000,0x0000FFFF,0xFF000000
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
-
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x000000FF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFF0000,0x00FFFFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x000000FF,0xFFFFFF00,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x000000FF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFF0000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x000000FF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x000000FF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFF0000,0x00000000,0xFF000000
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x000000FF,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFF0000,0x00FFFFFF,0xFF000000
- .word 0x00FFFFFF,0xFF000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFF00,0x0000FFFF,0xFFFFFF00
- .word 0x000000FF,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0x00000000,0x000000FF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x000000FF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFF000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFF0000,0x00000000,0xFF000000
- .word 0x00000000,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x000000FF,0xFFFF0000
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x000000FF,0x00000000,0x0000FFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x0000FFFF,0xFF000000,0x00FFFFFF,0xFF000000,0x00FFFFFF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x000000FF,0xFFFFFF00,0x000000FF,0xFFFFFF00,0x0000FFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x000000FF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .section .rodata
- .align 2
- .global numbersPal @ 4 unsigned chars
-numbersPal:
- .hword 0x0000,0x0010
-
-@}}BLOCK(numbers)
diff --git a/labs/lab-5/Time_challenge/precompiled/soundbank.bin b/labs/lab-5/Time_challenge/precompiled/soundbank.bin
deleted file mode 100644
index 2ab07f8..0000000
Binary files a/labs/lab-5/Time_challenge/precompiled/soundbank.bin and /dev/null differ
diff --git a/labs/lab-5/Time_challenge/precompiled/soundbank.h b/labs/lab-5/Time_challenge/precompiled/soundbank.h
deleted file mode 100644
index 9ec8bd1..0000000
--- a/labs/lab-5/Time_challenge/precompiled/soundbank.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#define SFX_LASER 0
-#define MSL_NSONGS 0
-#define MSL_NSAMPS 1
-#define MSL_BANKSIZE 1
diff --git a/labs/lab-5/Time_challenge/precompiled/soundbank_bin.h b/labs/lab-5/Time_challenge/precompiled/soundbank_bin.h
deleted file mode 100644
index fa1a896..0000000
--- a/labs/lab-5/Time_challenge/precompiled/soundbank_bin.h
+++ /dev/null
@@ -1,3 +0,0 @@
-extern const u8 soundbank_bin_end[];
-extern const u8 soundbank_bin[];
-extern const u32 soundbank_bin_size;
diff --git a/labs/lab-5/Time_challenge/source/chrono_display.h b/labs/lab-5/Time_challenge/source/chrono_display.h
deleted file mode 100755
index d9f5485..0000000
--- a/labs/lab-5/Time_challenge/source/chrono_display.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * chrono_display.h
- *
- * Created on:
- * Author: nds
- */
-
-#include
-#include "numbers.h"
-#include "string.h"
-
-/************************
- * Macros for the colors
- ***********************/
-#define RED ARGB16(1,31,0,0)
-#define GREEN ARGB16(1,0,31,0)
-#define BLUE ARGB16(1,0,0,31)
-#define YELLOW ARGB16(1,31,31,0)
-#define LIGHT_BLUE ARGB16(1,0,31,31)
-#define WHITE ARGB16(1,31,31,31)
-#define BLACK ARGB16(1,0,0,0)
-
-
-/*
- * Initializers of the display. This function should be called
- * whenever the display needs to be initialized to be used in the
- * upper screen (Main) or the bottom screen (Sub)
- *
- * Warning! Do not use the display in the bottom screen in combination
- * with the console. It will not work properly
- */
-void initChronoDisp_Main();
-void initChronoDisp_Sub();
-
-/*
- * Functions to update the value of the display showed in the upper screen
- * (Main) or the one shown in the bottom screen (Sub). These functions receive
- * three integer as input representing minutes, seconds and milliseconds
- * respectively.
- *
- * Warning: Do not call any of these functions if the previous initialization
- * has not been performed.
- */
-void updateChronoDisp_Main(int min, int sec, int msec);
-void updateChronoDisp_Sub(int min, int sec, int msec);
-
-/*
- * Functions to change the color of the upper display (Main) or the bottom
- * display (Sub). These functions receive a 16 bits integer as input that
- * represent a valid color. Some valid colors are declared at the beginning
- * of this file. New colors can be created with the macro ARGB16(..).
- *
- * Warning: Do not use these functions if the coresponding display has not
- * initialized
- */
-void changeColorDisp_Main(uint16 c);
-void changeColorDisp_Sub(uint16 c);
diff --git a/labs/lab-5/Time_challenge/source/game.h b/labs/lab-5/Time_challenge/source/game.h
deleted file mode 100755
index 145b658..0000000
--- a/labs/lab-5/Time_challenge/source/game.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * game.h
- *
- * Created on: Mar 22, 2011
- * Author: nds
- */
-
-#ifndef GAME_H_
-#define GAME_H_
-
-#include
-#include "soundbank.h"
-#include "soundbank_bin.h"
-#include
-#include "chrono_display.h"
-
-mm_sound_effect sound;
-
-void gameInit();
-void playSoundEffect();
-
-
-#endif /* GAME_H_ */
diff --git a/labs/lab-5/Time_challenge/source/main.c b/labs/lab-5/Time_challenge/source/main.c
deleted file mode 100755
index 3da19b8..0000000
--- a/labs/lab-5/Time_challenge/source/main.c
+++ /dev/null
@@ -1,241 +0,0 @@
-
-#include
-#include
-#include "chrono_display.h"
-#include "game.h"
-#include
-
-//Random ticks to wait to play the sound and start the game
-int rand_ticks;
-
-//Game state variable
-int gameState = 0;
-
-/*
- * TIMER0 Interrupt Handler:
- * TIMER0 is the responsible of counting down the random time between
- * the Start button is pressed and the chronometers starts to count with
- * the sound effect. This time is indicated by the variable rand_ticks that
- * store the remaining ticks to play the sound and start the chronometers.
- *
- * This handler decreases by one the variable rand_ticks each time it is
- * called. When rand_ticks reaches the value 0, TIMER2 should be disabled
- * and the function that start the chronometers (startChronometers)
- * must be called.
- */
-void ISR_Timer0()
-{
- if(--rand_ticks == 0)
- {
- irqDisable(IRQ_TIMER0);
- startChronometers();
- }
-}
-
-
-/*
- * Variables that store the minutes, seconds and milliseconds coresponding
- * to player 1
- */
-int min = 0, sec = 0, msec = 0;
-/*
- * TIER1 handler.
- * This handler is called each 1 ms. It updates the value of the variables
- * 'min', 'sec' and 'msec'.
- */
-void ISR_Timer1()
-{
- if(msec == 999)
- {
- msec = 0;
- if(sec == 59)
- {
- sec = 0;
- min = (min + 1) % 59;
- }
- else
- sec++;
- }
- else
- msec++;
-}
-
-
-/*
- * Variables that store the minutes, seconds and milliseconds coresponding
- * to player 2
- */
-int min2 = 0, sec2 = 0, msec2 = 0;
-/*
- * TIMER2 Interrupt Handler
- * This handler is called every 1 ms and updates msec2, sec2 and min2.
- */
-void ISR_Timer2()
-{
- if(msec2 == 999)
- {
- msec2 = 0;
- if(sec2 == 59)
- {
- sec2 = 0;
- min2 = (min2 + 1) % 59;
- }
- else
- sec2++;
- }
- else
- msec2++;
-}
-
-/*
- * Keys interrupt handler
- */
-void ISR_Keys()
-{
- u16 keys = ~(REG_KEYINPUT);
-
- //START KEY = Restart the game
- if(keys & KEY_START)
- {
- //Stop (disable) TIMERS 1 and 2
- irqDisable(IRQ_TIMER1);
- irqDisable(IRQ_TIMER2);
-
- //Set the displays to 0 and yellow
- min = sec = msec = 0;
- min2 = sec2 = msec2 = 0;
- changeColorDisp_Main(YELLOW);
- changeColorDisp_Sub(YELLOW);
- //Change the state of the game
- gameState = 1;
- //Set the time to wait until the alarm fires
- rand_ticks = 20 + (rand() % 40);
- //Start TIMER0 to count the random time
- irqEnable(IRQ_TIMER0);
- }
-
- //KEY A = Player 1 pressed
- if(keys & KEY_A)
- {
- //Stop player 2 TIME1
- irqDisable(IRQ_TIMER1);
-
- /*
- * If game state is 1, player 1 pressed the key before expected,
- * both player loose. The active timers should be stopped and the
- * displays should turn its color to red. The game state returns to 0
- */
- if(gameState == 1)
- {
- gameState = 0;
- irqDisable(IRQ_TIMER0);
- changeColorDisp_Main(RED);
- changeColorDisp_Sub(RED);
- }
-
-
- /*
- * If game state is 2 then player 1 pressed first and wins. Its
- * display should turn to color green and player 2 display should
- * turn to color red. Player 1's timer should be stopped. The game
- * state returns to 0
- */
- if(gameState == 2)
- {
- gameState = 0;
- changeColorDisp_Main(GREEN);
- changeColorDisp_Sub(RED);
- }
- }
-
- //KEY LEFT = Player 2 pressed
- if(keys & KEY_LEFT)
- {
- /*
- * The actions to be taken are the same than in previous piece of
- * code corresponding to player 1 but this time player 2 is the
- * one that has pressed first.
- */
- irqDisable(IRQ_TIMER2);
- if(gameState == 1)
- {
- gameState = 0;
- irqDisable(IRQ_TIMER0);
- changeColorDisp_Main(RED);
- changeColorDisp_Sub(RED);
- }
-
- if(gameState == 2)
- {
- gameState = 0;
- changeColorDisp_Main(RED);
- changeColorDisp_Sub(GREEN);
- }
- }
-}
-
-/*
- * Interrupt handler for VBlank.
- * The chronometer displays must be updated correctly
- */
-void ISR_VBlank()
-{
- updateChronoDisp_Main(min, sec, msec);
- updateChronoDisp_Sub(min2, sec2, msec2);
-}
-
-
-void startChronometers()
-{
- //Only if game state is 1
- if(gameState == 1)
- {
- //Game state turns to 2
- gameState = 2;
-
- //Players' timers (TIMER0 and TIMER1) are activated
- irqEnable(IRQ_TIMER1);
- irqEnable(IRQ_TIMER2);
-
- //Sound effect is played
- playSoundEffect();
- }
-}
-
-//---------------
-int main(void) {
-//---------------
- /*
- * Game initialization
- */
- gameInit();
-
- /*
- * Timers initialization
- */
- TIMER0_CR = TIMER_DIV_1024 | TIMER_IRQ_REQ | TIMER_ENABLE;
- TIMER0_DATA = TIMER_FREQ_1024(10);
- TIMER1_CR = TIMER_DIV_1024 | TIMER_IRQ_REQ | TIMER_ENABLE;
- TIMER1_DATA = TIMER_FREQ_1024(1000);
- TIMER2_CR = TIMER_DIV_1024 | TIMER_IRQ_REQ | TIMER_ENABLE;
- TIMER2_DATA = TIMER_FREQ_1024(1000);
-
- /*
- * Irq Handlers set up
- */
- irqSet(IRQ_TIMER0, &ISR_Timer0);
- irqSet(IRQ_TIMER1, &ISR_Timer1);
- irqSet(IRQ_TIMER2, &ISR_Timer2);
- irqSet(IRQ_VBLANK, &ISR_VBlank);
- irqSet(IRQ_KEYS,&ISR_Keys);
-
- /*
- * Initial Irq Enable (VBlank and keys)
- */
- irqEnable(IRQ_VBLANK);
- irqEnable(IRQ_KEYS);
-
- while(1) {
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-5/Timers/.root b/labs/lab-5/Timers/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-5/Timers/Makefile b/labs/lab-5/Timers/Makefile
deleted file mode 100644
index 5ef90fd..0000000
--- a/labs/lab-5/Timers/Makefile
+++ /dev/null
@@ -1,165 +0,0 @@
-#---------------------------------------------------------------------------------
-.PHONY: build run
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-build:
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: $(BUILD)
- xdg-open $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-5/Timers/precompiled/numbers.h b/labs/lab-5/Timers/precompiled/numbers.h
deleted file mode 100644
index 3b6d389..0000000
--- a/labs/lab-5/Timers/precompiled/numbers.h
+++ /dev/null
@@ -1,28 +0,0 @@
-
-//{{BLOCK(numbers)
-
-//======================================================================
-//
-// numbers, 32x704@8,
-// + palette 2 entries, not compressed
-// + 352 tiles not compressed
-// Total size: 4 + 22528 = 22532
-//
-// Time-stamp: 2011-03-24, 14:08:16
-// Exported by Cearn's GBA Image Transmogrifier, v0.8.3
-// ( http://www.coranac.com/projects/#grit )
-//
-//======================================================================
-
-#ifndef GRIT_NUMBERS_H
-#define GRIT_NUMBERS_H
-
-#define numbersTilesLen 22528
-extern const unsigned int numbersTiles[5632];
-
-#define numbersPalLen 4
-extern const unsigned short numbersPal[2];
-
-#endif // GRIT_NUMBERS_H
-
-//}}BLOCK(numbers)
diff --git a/labs/lab-5/Timers/precompiled/numbers.s b/labs/lab-5/Timers/precompiled/numbers.s
deleted file mode 100644
index 73286e7..0000000
--- a/labs/lab-5/Timers/precompiled/numbers.s
+++ /dev/null
@@ -1,819 +0,0 @@
-
-@{{BLOCK(numbers)
-
-@=======================================================================
-@
-@ numbers, 32x704@8,
-@ + palette 2 entries, not compressed
-@ + 352 tiles not compressed
-@ Total size: 4 + 22528 = 22532
-@
-@ Time-stamp: 2011-03-24, 14:08:16
-@ Exported by Cearn's GBA Image Transmogrifier, v0.8.3
-@ ( http://www.coranac.com/projects/#grit )
-@
-@=======================================================================
-
- .section .rodata
- .align 2
- .global numbersTiles @ 22528 unsigned chars
-numbersTiles:
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x0000FFFF,0xFF000000,0x00FFFFFF,0xFFFF0000,0x00FFFFFF,0xFFFF0000,0x0000FFFF,0xFF000000
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
-
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x000000FF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFF0000,0x00FFFFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x000000FF,0xFFFFFF00,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x000000FF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFF0000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x000000FF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x000000FF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFF0000,0x00000000,0xFF000000
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x000000FF,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFF0000,0x00FFFFFF,0xFF000000
- .word 0x00FFFFFF,0xFF000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFF00,0x0000FFFF,0xFFFFFF00
- .word 0x000000FF,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0x00000000,0x000000FF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x000000FF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFF000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFF0000,0x00000000,0xFF000000
- .word 0x00000000,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x000000FF,0xFFFF0000
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x000000FF,0x00000000,0x0000FFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x0000FFFF,0xFF000000,0x00FFFFFF,0xFF000000,0x00FFFFFF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x000000FF,0xFFFFFF00,0x000000FF,0xFFFFFF00,0x0000FFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x000000FF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .section .rodata
- .align 2
- .global numbersPal @ 4 unsigned chars
-numbersPal:
- .hword 0x0000,0x0010
-
-@}}BLOCK(numbers)
diff --git a/labs/lab-5/Timers/precompiled/soundbank_bin.h b/labs/lab-5/Timers/precompiled/soundbank_bin.h
deleted file mode 100644
index fa1a896..0000000
--- a/labs/lab-5/Timers/precompiled/soundbank_bin.h
+++ /dev/null
@@ -1,3 +0,0 @@
-extern const u8 soundbank_bin_end[];
-extern const u8 soundbank_bin[];
-extern const u32 soundbank_bin_size;
diff --git a/labs/lab-5/Timers/source/chrono_display.h b/labs/lab-5/Timers/source/chrono_display.h
deleted file mode 100755
index d9f5485..0000000
--- a/labs/lab-5/Timers/source/chrono_display.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * chrono_display.h
- *
- * Created on:
- * Author: nds
- */
-
-#include
-#include "numbers.h"
-#include "string.h"
-
-/************************
- * Macros for the colors
- ***********************/
-#define RED ARGB16(1,31,0,0)
-#define GREEN ARGB16(1,0,31,0)
-#define BLUE ARGB16(1,0,0,31)
-#define YELLOW ARGB16(1,31,31,0)
-#define LIGHT_BLUE ARGB16(1,0,31,31)
-#define WHITE ARGB16(1,31,31,31)
-#define BLACK ARGB16(1,0,0,0)
-
-
-/*
- * Initializers of the display. This function should be called
- * whenever the display needs to be initialized to be used in the
- * upper screen (Main) or the bottom screen (Sub)
- *
- * Warning! Do not use the display in the bottom screen in combination
- * with the console. It will not work properly
- */
-void initChronoDisp_Main();
-void initChronoDisp_Sub();
-
-/*
- * Functions to update the value of the display showed in the upper screen
- * (Main) or the one shown in the bottom screen (Sub). These functions receive
- * three integer as input representing minutes, seconds and milliseconds
- * respectively.
- *
- * Warning: Do not call any of these functions if the previous initialization
- * has not been performed.
- */
-void updateChronoDisp_Main(int min, int sec, int msec);
-void updateChronoDisp_Sub(int min, int sec, int msec);
-
-/*
- * Functions to change the color of the upper display (Main) or the bottom
- * display (Sub). These functions receive a 16 bits integer as input that
- * represent a valid color. Some valid colors are declared at the beginning
- * of this file. New colors can be created with the macro ARGB16(..).
- *
- * Warning: Do not use these functions if the coresponding display has not
- * initialized
- */
-void changeColorDisp_Main(uint16 c);
-void changeColorDisp_Sub(uint16 c);
diff --git a/labs/lab-5/Timers/source/isqrt.s b/labs/lab-5/Timers/source/isqrt.s
deleted file mode 100755
index 50b4600..0000000
--- a/labs/lab-5/Timers/source/isqrt.s
+++ /dev/null
@@ -1,61 +0,0 @@
-
-@------------------------------------------------------------------------------
-@-------------------------------------isqrt------------------------------------
-@------------------------------------------------------------------------------
-
-.ARM
-
-.ALIGN
-
-.GLOBL iSqrt
-
-.TYPE iSqrt,function @ Not always required but useful for .map files
-.text
-iSqrt:
-
- push {r4 - r6, lr} @ instruction to push an entire specified set of
- @ register onto the stack in one instruction
- @ sub sp, sp, #0xC
-
-
- mov r4, #1 @ Put 0x1 in r4
- lsl r4, r4, #16 @ The maximum possible value for the sqrt(n) when n
- @ is a 32 bit integer number is below 2^16
-
- cmp r0, #0 @ Compare input number with 0
- movles r0, #0 @ If input is less or equal to 0 return 0 as result
- ble .negative_end
- mov r5, #0 @ r5 will store the temporary result
- b .loop_end
-
-.loop_init:
- add r5, r5, r4 @ Add r4 to the temporary result
- mul r6, r5, r5 @ Compute the squared value of the temporary result
- cmp r0, r6
- sublt r5, r5, r4 @ If the squared value is bigger than the input, undo
- @ the additino
-.loop_end:
- lsrs r4, r4, #1 @ r4 is right sifted (divided by 2)
- bne .loop_init @ if r4 contains 0 the final result remains in r5
-
-
-
-@Additional Exercise (Return the rounded sqrt)
- add r4, r5, #1
- mul r6, r4, r4 @ r6 stores the square of the (candidate result + 1)
- mul r4, r5, r5 @ r4 stores the square of the candidate result
- sub r4, r0, r4 @ absolute difference with the real input
- sub r6, r6, r0 @ absolute difference with the real input
- cmp r4, r6 @Compare differences
- addgt r5, r5, #1 @If the upper diffference is smaller then return
- @ (candidate +1) that is closer to the real sqrt
-@End of Additional Exercise
-
- mov r0, r5 @ copy the result to r0 to be returned
-
-.negative_end:
- @ add sp, sp, #0xC
- pop {r4 - r6, lr} @ instruction to restore the previous saved registers
- bx lr @ jump to the return address
-
-.end
diff --git a/labs/lab-5/Timers/source/main.c b/labs/lab-5/Timers/source/main.c
deleted file mode 100755
index 42cc5e6..0000000
--- a/labs/lab-5/Timers/source/main.c
+++ /dev/null
@@ -1,135 +0,0 @@
-
-#include
-#include
-#include
-
-#include "chrono_display.h"
-
-extern int iSqrt(int n);
-
-// Exercises 1, 2, 3, 4
-int min, sec, msec;
-
-// Exercise 2
-// void ISR_TIMER0() {
-// msec = (msec + 1) % 1000;
-// updateChronoDisp_Main(min, sec, msec);
-// }
-
-// Exercise 2
-// void ISR_TIMER1() {
-// sec = (sec + 1) % 60;
-// if (sec == 0)
-// min++;
-// }
-
-// Exercise 3
-// void ISR_TIMER0() {
-// msec = (msec + 1) % 1000;
-// if (msec == 0) {
-// sec = (sec + 1) % 60;
-// if (sec == 0)
-// min++;
-// }
-// updateChronoDisp_Main(min, sec, msec);
-// }
-
-// Exercise 4
-// void ISR_VBlank() {
-// updateChronoDisp_Main(min, sec, msec);
-// }
-
-// Exercise 5
-// int color = 0;
-// void ISR_TIMER1() {
-// switch (color) {
-// case 0:
-// changeColorDisp_Main(RED);
-// break;
-// case 1:
-// changeColorDisp_Main(GREEN);
-// break;
-// case 2:
-// changeColorDisp_Main(BLUE);
-// break;
-// case 3:
-// changeColorDisp_Main(YELLOW);
-// break;
-// }
-// color = (color + 1) % 4;
-// }
-
-// Exercise 6
-// void ISR_KEYS() {
-// printf("\nTime = %i:%i.%i\n", min, sec, msec);
-// }
-
-int main(void) {
- consoleDemoInit();
- // Exercise 1
-
- // u16 start, end;
- // int result;
-
- // Lowest resolution (minimum frequency)
- // TIMER0_CR = TIMER_ENABLE | TIMER_DIV_1;
- // TIMER_DATA(0) = 0;
-
- // start = TIMER_DATA(0);
- // result = floor(sqrt((double) start));
- // end = TIMER_DATA(0);
- // printf("\nIt took %i cycles\n", end - start);
-
- // start = TIMER_DATA(0);
- // result = iSqrt(start);
- // end = TIMER_DATA(0);
- // printf("\nIt took %i cycles\n", end - start);
-
- // Exercise 2
- // initChronoDisp_Main();
- // irqInit();
- // min = sec = msec = 0;
- // TIMER_DATA(0) = TIMER_FREQ_1024(1000);
- // TIMER0_CR = TIMER_ENABLE | TIMER_DIV_1024 | TIMER_IRQ_REQ;
- // TIMER_DATA(1) = TIMER_FREQ_1024(1);
- // TIMER1_CR = TIMER_ENABLE | TIMER_DIV_1024 | TIMER_IRQ_REQ;
- // irqSet(IRQ_TIMER0, &ISR_TIMER0);
- // irqSet(IRQ_TIMER1, &ISR_TIMER1);
- // irqEnable(IRQ_TIMER0);
- // irqEnable(IRQ_TIMER1);
-
- // Exercise 3 (Comment exercise 1 and 2)
-
- // initChronoDisp_Main();
- // changeColorDisp_Main(RED);
- // irqInit();
- // min = sec = msec = 0;
- // TIMER_DATA(0) = TIMER_FREQ_1024(1000);
- // TIMER0_CR = TIMER_ENABLE | TIMER_DIV_1024 | TIMER_IRQ_REQ;
- // irqSet(IRQ_TIMER0, &ISR_TIMER0);
- // irqEnable(IRQ_TIMER0);
-
- // Exercise 4
-
- // irqInit();
- // irqSet(IRQ_VBLANK, &ISR_VBlank);
- // irqEnable(IRQ_VBLANK);
-
- // Exercise 5
-
- // initChronoDisp_Main();
- // TIMER_DATA(1) = (TIMER_FREQ_1024(1));
- // TIMER1_CR = TIMER_ENABLE | TIMER_DIV_1024 | TIMER_IRQ_REQ;
- // irqSet(IRQ_TIMER1, &ISR_TIMER1);
- // irqEnable(IRQ_TIMER1);
-
- // Exercise 6
-
- // REG_KEYCNT = (1 << 14) | KEY_A;
- // irqSet(IRQ_KEYS, &ISR_KEYS);
- // irqEnable(IRQ_KEYS);
-
- while (1) {
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-6/Graphics_1/.root b/labs/lab-6/Graphics_1/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-6/Graphics_1/Makefile b/labs/lab-6/Graphics_1/Makefile
deleted file mode 100755
index f074665..0000000
--- a/labs/lab-6/Graphics_1/Makefile
+++ /dev/null
@@ -1,162 +0,0 @@
-#---------------------------------------------------------------------------------
-.PHONY: build clean run
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-# PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-build:
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- xdg-open $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d)
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-# precompiled:
-# @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-# soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- # @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-6/Graphics_1/source/P_Graphics.c b/labs/lab-6/Graphics_1/source/P_Graphics.c
deleted file mode 100755
index fa777b7..0000000
--- a/labs/lab-6/Graphics_1/source/P_Graphics.c
+++ /dev/null
@@ -1,112 +0,0 @@
-#include "P_Graphics.h"
-
-u16 * P_Graphics_mainBuffer;
-u16 * P_Graphics_subBuffer;
-int P_Graphics_mainW;
-int P_Graphics_mainH;
-int P_Graphics_subW;
-int P_Graphics_subH;
-
-void P_Graphics_setup_main() {
-#ifdef FB0
- // Graphics (Part 1)
- // Set the mode to FB0
- REG_DISPCNT = MODE_FB0;
-
- // Set the coresponding VRAM bank
- // Enable the Bank, Assign it to the Main engine in FB0
- VRAM_A_CR = VRAM_ENABLE | VRAM_A_LCD;
-#endif
-
-#ifdef ROTOSCALE
-// Graphics (Part 2)
-#endif
-
-#ifdef TILES
-// Graphics (Part 3)
-#endif
-}
-
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16 * buffer, int w, int h) {
- switch (bT) {
- case MAIN:
- P_Graphics_mainBuffer = buffer;
- P_Graphics_mainW = w;
- P_Graphics_mainH = h;
- break;
- case SUB:
- P_Graphics_subBuffer = buffer;
- P_Graphics_subW = w;
- P_Graphics_subH = h;
- break;
- }
-}
-
-void FillScreen(enum BUFFER_TYPE t, u16 color) {
- switch (t) {
- case MAIN:
- // Fill the whole screen (256*192) with the given color
- for (int i = 0; i < P_Graphics_mainH * P_Graphics_mainW; i++) {
- P_Graphics_mainBuffer[i] = color;
- }
- break;
- case SUB:
-
- break;
- default:
- return;
- break;
- }
-}
-
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color) {
- if (bT == MAIN) { // Check that we want to use the Main engine
- if (top >= 0 && top <= 191) // Check boundaries of top
- if (bottom >= 0 && bottom <= 191) // Check boundaries of bottom
- if (left >= 0 && left <= 255) // Check boundaries of left
- if (right >= 0 && right <= 255) // Check boundaries of right
- // For rows from top to bottom
- for (int row = top; row < bottom; row++) {
- // And for column from left to right
- for (int col = left; col < right; col++)
- P_Graphics_mainBuffer[row * 256 + col] = color; // Assign the color
- }
- }
-}
-
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color) {
- int col;
- if (bT == MAIN) // Check that we want to use the Main engine
- if (y >= 0 && y <= 191) // Check the boundaries of y
- if (x >= 0 && x <= 255) // Check the boundaries of x
- if (x2 >= 0 && x2 <= 255) // Check the boundaries of x2
- for (col = x; col < x2; col++) // For columns from x to x2
- P_Graphics_mainBuffer[y * 256 + col] = color; // Assign the color
-}
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color) {
- int row;
- if (bT == MAIN) // Check that we want to use the Main engine
- if (y >= 0 && y <= 191) // Check the boundaries of y
- if (y2 >= 0 && y2 <= 191) // Check the boundaries of y2
- if (x >= 0 && x <= 255) // Check the boundaries of x
- for (row = y; row < y2; row++) // For row from y to y2
- P_Graphics_mainBuffer[row * 256 + x] = color; // Assign the color
-}
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color) {
- if (bT == MAIN) // Check that we want to use the Main engine
- if (top >= 0 && top <= 191) // Check boundaries of top
- if (bottom >= 0 && bottom <= 191) // Check boundaries of bottom
- if (left >= 0 && left <= 255) // Check boundaries of left
- if (right >= 0 && right <= 255) // Check boundaries of right
- if (top < bottom && left < right) {
- // Vertical line on the left
- DrawVerticalLine(MAIN, top, bottom, left, color);
- // Verticla line on the right
- DrawVerticalLine(MAIN, top, bottom, right, color);
- // Horizontal line in top
- DrawHorizontalLine(MAIN, left, right, top, color);
- // Horizontal line on the bottom
- DrawHorizontalLine(MAIN, left, right, bottom, color);
- }
-}
diff --git a/labs/lab-6/Graphics_1/source/P_Graphics.h b/labs/lab-6/Graphics_1/source/P_Graphics.h
deleted file mode 100755
index 0772f42..0000000
--- a/labs/lab-6/Graphics_1/source/P_Graphics.h
+++ /dev/null
@@ -1,110 +0,0 @@
-#pragma once
-
-#include
-#define FB0
-
-enum BUFFER_TYPE
-{
- MAIN,
- SUB,
-};
-
-//members
-extern u16* P_Graphics_mainBuffer;
-extern u16* P_Graphics_subBuffer;
-extern int P_Graphics_mainW;
-extern int P_Graphics_mainH;
-extern int P_Graphics_subW;
-extern int P_Graphics_subH;
-
-/*
- This function does not receive any input parameter. It initializes the main
- graphical engine to be used with the Framebuffer Mode 0 (FB0).
- It also enables the corresponding VRAM bank to be used.
-*/
-void P_Graphics_setup_main();
-
-
-/*
- Function that assigns the buffer (already implemented) and its size
- */
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h);
-
-
-/*
- This function fills all the screen of the given engine (MAIN or SUB)
- with the input color.
- */
-void FillScreen(enum BUFFER_TYPE t, u16 color);
-
-
-/*
- This function fills a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter specifies the buffer where we want to fill
- the rectangle. Remember that there are two graphical engines (MAIN and SUB)
- for both screens of the NDS. In this practical work we will only use the
- MAIN engine since Framebuffer Mode is only available in this engine.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to fill. It is recommended to check that these
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to fill the rectangle.
- Remember that colors are represented with 16bit words in the Nintendo DS.
-*/
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
-
-
-/*
- This function draws an horizontal line of 1 pixel width between the
- coordinates (x,y) and (x2,y) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous function.
-- int x, x2, y: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- function.
-*/
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color);
-
-
-/*
- This function draws a vertical line of 1 pixel width between the coordinates
- (x,y) and (x,y2) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int y, y2, x: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- functions.
-*/
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color);
-
-
-/*
- This function draws a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color. Note that this function is
- different to the one that fills the rectangle. This function only draws
- the rectangle (the borders). It is recommended to re-use the already
- implemented functions to draw lines.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to draw. It is recommended to check that this
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to draw the borders of the
- rectangle.
-*/
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
diff --git a/labs/lab-6/Graphics_1/source/additional.c b/labs/lab-6/Graphics_1/source/additional.c
deleted file mode 100644
index a4e924f..0000000
--- a/labs/lab-6/Graphics_1/source/additional.c
+++ /dev/null
@@ -1,101 +0,0 @@
-#include
-#include
-/*
- * Function that receives a basic color (RED, GREEN, BLUE)
- * and makes a degradation in the screen (from the upper part to the bottom)
- * If the color received is not a basic one the screen is filled with black
- */
-void degradateColor(s16 * buffer, s16 color) {
- // Three components of the color (by default BLACK)
- int r = 0, g = 0, b = 0;
-
- // This variable will point to the component that will change from 31 to 0
- int * c;
-
- // Let's identify from which color we degrate
- switch (color) {
- case RGB15(31, 0, 0): // RED
- c = &r;
- break;
- case RGB15(0, 31, 0): // GREEN
- c = &g;
- break;
- case RGB15(0, 0, 31): // BLUE
- c = &b;
- break;
- default: // Not a basic color
- c = NULL;
- break;
- }
-
- // If it is one of the basic colors, start from it
- if (c)
- *c = 31;
-
- // There are 32 levels of color and 192 rows. 6 rows for each level
- int row, pixel;
- for (row = 0; row < 192; row += 6) {
- // Fill 6 rows
- for (pixel = 0; pixel < 256 * 6; pixel++)
- buffer[row * 256 + pixel] = RGB15(r, g, b);
-
- if (c)
- *c = *c - 1; // Only decrement level if we started from a basic color
- }
-}
-
-/*
- * This function receives the pointer to the buffer and shifts one row up
- * The last row is 'replicated' and the first one is lost.
- */
-void shiftUp(s16 * buffer) {
- int row, col;
- for (row = 0; row < 191; row++)
- for (col = 0; col < 256; col++)
- buffer[row * 256 + col] = buffer[(row + 1) * 256 + col];
-}
-
-/*
- * This function transforms all the colors on the buffer into gray
- * with a given intensity
- */
-void grayScale(s16 * buffer) {
- u16 color, r_comp, g_comp, b_comp, mean, row, col;
- for (row = 0; row < 192; row++)
- for (col = 0; col < 256; col++) {
- color = buffer[row * 256 + col]; // Value of the pixel in (row,col)
- r_comp = color & 0x001F; // Red Component
- g_comp = (color >> 5) & 0x01F; // Green Component
- b_comp = (color >> 10) & 0x01F; // Blue Component
- mean = 3 * r_comp / 10; // 3/10 of RED
- mean += 6 * g_comp / 10; // 6/10 of GREEN
- mean += 1 * b_comp / 10; // 1/10 of BLUE
- buffer[row * 256 + col] = RGB15(mean, mean, mean); // New gray value
- }
-}
-
-//---------------------------------------------------------------------------------
-int main1(void) {
- //---------------------------------------------------------------------------------
-
- // Configure engine and RAM Bank (let's use a different one)
- REG_DISPCNT = MODE_FB1;
- VRAM_B_CR = VRAM_ENABLE | VRAM_B_LCD;
-
- // Pointer to the buffer
- s16 * buff = (s16 *) VRAM_B;
-
- // Let's degradate from GREEN
- degradateColor(buff, RGB15(0, 31, 0));
-
- // Let's shift 60 lines
- int i = 0;
- for (i = 0; i < 60; i++)
- shiftUp(buff);
-
- // Let's apply GrayScale
- grayScale(buff);
-
- while (true)
- swiWaitForVBlank();
-}
diff --git a/labs/lab-6/Graphics_1/source/main.c b/labs/lab-6/Graphics_1/source/main.c
deleted file mode 100755
index 3c3ed31..0000000
--- a/labs/lab-6/Graphics_1/source/main.c
+++ /dev/null
@@ -1,18 +0,0 @@
-#include
-
-#include "P_Graphics.h"
-
-int main(void) {
- P_Graphics_setup_main();
- P_Graphics_assignBuffer(MAIN, (u16 *) VRAM_A, 256, 192);
-
- FillScreen(MAIN, RGB15(0, 31, 0));
- FillRectangle(MAIN, 1, 100, 1, 100, RGB15(31, 0, 0));
- DrawHorizontalLine(MAIN, 30, 200, 120, RGB15(0, 0, 0));
- DrawVerticalLine(MAIN, 40, 180, 220, RGB15(0, 0, 15));
- DrawRectangle(MAIN, 30, 120, 110, 200, RGB15(31,31,0));
-
- while (1) {
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-6/Tetris/.root b/labs/lab-6/Tetris/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-6/Tetris/Makefile b/labs/lab-6/Tetris/Makefile
deleted file mode 100755
index 4cca239..0000000
--- a/labs/lab-6/Tetris/Makefile
+++ /dev/null
@@ -1,161 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/labs/lab-6/Tetris/audio/clunk.wav b/labs/lab-6/Tetris/audio/clunk.wav
deleted file mode 100755
index c505e8e..0000000
Binary files a/labs/lab-6/Tetris/audio/clunk.wav and /dev/null differ
diff --git a/labs/lab-6/Tetris/audio/swish.wav b/labs/lab-6/Tetris/audio/swish.wav
deleted file mode 100755
index 414e27d..0000000
Binary files a/labs/lab-6/Tetris/audio/swish.wav and /dev/null differ
diff --git a/labs/lab-6/Tetris/audio/tetrix.xm b/labs/lab-6/Tetris/audio/tetrix.xm
deleted file mode 100755
index 0dc531d..0000000
Binary files a/labs/lab-6/Tetris/audio/tetrix.xm and /dev/null differ
diff --git a/labs/lab-6/Tetris/source/P_Audio.c b/labs/lab-6/Tetris/source/P_Audio.c
deleted file mode 100755
index b432b62..0000000
--- a/labs/lab-6/Tetris/source/P_Audio.c
+++ /dev/null
@@ -1,21 +0,0 @@
-#include "P_Audio.h"
-
-void Audio_Init()
-{
-
-}
-
-void Audio_PlaySoundEX( int i )
-{
-
-}
-
-void Audio_PlaySound( int sound )
-{
-
-}
-
-void Audio_PlayMusic()
-{
-
-}
diff --git a/labs/lab-6/Tetris/source/P_Audio.h b/labs/lab-6/Tetris/source/P_Audio.h
deleted file mode 100755
index 9e03d5c..0000000
--- a/labs/lab-6/Tetris/source/P_Audio.h
+++ /dev/null
@@ -1,9 +0,0 @@
-#pragma once
-
-#include
-#include
-
-void Audio_Init();
-void Audio_PlaySoundEX( int i );
-void Audio_PlaySound( int sound );
-void Audio_PlayMusic();
diff --git a/labs/lab-6/Tetris/source/P_Controls.c b/labs/lab-6/Tetris/source/P_Controls.c
deleted file mode 100755
index 850b4c3..0000000
--- a/labs/lab-6/Tetris/source/P_Controls.c
+++ /dev/null
@@ -1,7 +0,0 @@
-
-#include "P_Controls.h"
-
-void handleInput()
-{
-
-}
diff --git a/labs/lab-6/Tetris/source/P_Controls.h b/labs/lab-6/Tetris/source/P_Controls.h
deleted file mode 100755
index 9df3ea7..0000000
--- a/labs/lab-6/Tetris/source/P_Controls.h
+++ /dev/null
@@ -1,5 +0,0 @@
-
-#include
-
-
-void handleInput();
diff --git a/labs/lab-6/Tetris/source/P_Graphics.c b/labs/lab-6/Tetris/source/P_Graphics.c
deleted file mode 100755
index bcb4062..0000000
--- a/labs/lab-6/Tetris/source/P_Graphics.c
+++ /dev/null
@@ -1,111 +0,0 @@
-#include "P_Graphics.h"
-
-u16 * P_Graphics_mainBuffer;
-u16 * P_Graphics_subBuffer;
-int P_Graphics_mainW;
-int P_Graphics_mainH;
-int P_Graphics_subW;
-int P_Graphics_subH;
-
-void P_Graphics_setup_main() {
-#ifdef FB0
- //Graphics (Part 1)
- //Set the mode to FB0
- REG_DISPCNT = MODE_FB0;
-
- //Set the coresponding VRAM bank
- VRAM_A_CR = VRAM_ENABLE //Enable the Bank
- | VRAM_A_LCD; //Assign it to the Main engine in FB0
-
-#endif
-
-#ifdef ROTOSCALE
- //Graphics (Part 2)
-#endif
-
-#ifdef TILES
- //Graphics (Part 3)
-#endif
-}
-
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16 * buffer, int w, int h) {
- switch (bT) {
- case MAIN:
- P_Graphics_mainBuffer = buffer;
- P_Graphics_mainW = w;
- P_Graphics_mainH = h;
- break;
- case SUB:
- P_Graphics_subBuffer = buffer;
- P_Graphics_subW = w;
- P_Graphics_subH = h;
- break;
- }
-}
-
-void FillScreen(enum BUFFER_TYPE t, u16 color) {
- int i;
- switch (t) {
- case MAIN:
- //Fill the whole screen (256*192) with the given color
- for (i = 0; i < P_Graphics_mainH * P_Graphics_mainW; i++)
- P_Graphics_mainBuffer[i] = color;
- break;
- case SUB:
-
- break;
- default:
- return;
- break;
- }
-}
-
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color) {
- int row, col;
- if (bT == MAIN) //Check that we want to use the Main engine
- if (top >= 0 && top <= 191) //Check boundaries of top
- if (bottom >= 0 && bottom <= 191) //Check boundaries of bottom
- if (left >= 0 && left <= 255) //Check boundaries of left
- if (right >= 0 && right <= 255) //Check boundaries of right
- for (row = top; row < bottom; row++) //For rows from top to bottom
- for (col = left; col < right;
- col++) //And for column from left to right
- P_Graphics_mainBuffer[row * 256 + col] = color; //Assign the color
-}
-
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color) {
- int col;
- if (bT == MAIN) //Check that we want to use the Main engine
- if (y >= 0 && y <= 191) //Check the boundaries of y
- if (x >= 0 && x <= 255) //Check the boundaries of x
- if (x2 >= 0 && x2 <= 255) //Check the boundaries of x2
- for (col = x; col < x2; col++) //For columns from x to x2
- P_Graphics_mainBuffer[y * 256 + col] = color; //Assign the color
-}
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color) {
- int row;
- if (bT == MAIN) //Check that we want to use the Main engine
- if (y >= 0 && y <= 191) //Check the boundaries of y
- if (y2 >= 0 && y2 <= 191) //Check the boundaries of y2
- if (x >= 0 && x <= 255) //Check the boundaries of x
- for (row = y; row < y2; row++) //For row from y to y2
- P_Graphics_mainBuffer[row * 256 + x] = color; //Assign the color
-}
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color) {
- if (bT == MAIN) //Check that we want to use the Main engine
- if (top >= 0 && top <= 191) //Check boundaries of top
- if (bottom >= 0 && bottom <= 191) //Check boundaries of bottom
- if (left >= 0 && left <= 255) //Check boundaries of left
- if (right >= 0 && right <= 255) //Check boundaries of right
- if (top < bottom && left < right) {
- //Vertical line on the left
- DrawVerticalLine(MAIN, top, bottom, left, color);
- //Verticla line on the right
- DrawVerticalLine(MAIN, top, bottom, right, color);
- //Horizontal line in top
- DrawHorizontalLine(MAIN, left, right, top, color);
- //Horizontal line on the bottom
- DrawHorizontalLine(MAIN, left, right, bottom, color);
- }
-}
diff --git a/labs/lab-6/Tetris/source/P_Graphics.h b/labs/lab-6/Tetris/source/P_Graphics.h
deleted file mode 100755
index 0772f42..0000000
--- a/labs/lab-6/Tetris/source/P_Graphics.h
+++ /dev/null
@@ -1,110 +0,0 @@
-#pragma once
-
-#include
-#define FB0
-
-enum BUFFER_TYPE
-{
- MAIN,
- SUB,
-};
-
-//members
-extern u16* P_Graphics_mainBuffer;
-extern u16* P_Graphics_subBuffer;
-extern int P_Graphics_mainW;
-extern int P_Graphics_mainH;
-extern int P_Graphics_subW;
-extern int P_Graphics_subH;
-
-/*
- This function does not receive any input parameter. It initializes the main
- graphical engine to be used with the Framebuffer Mode 0 (FB0).
- It also enables the corresponding VRAM bank to be used.
-*/
-void P_Graphics_setup_main();
-
-
-/*
- Function that assigns the buffer (already implemented) and its size
- */
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h);
-
-
-/*
- This function fills all the screen of the given engine (MAIN or SUB)
- with the input color.
- */
-void FillScreen(enum BUFFER_TYPE t, u16 color);
-
-
-/*
- This function fills a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter specifies the buffer where we want to fill
- the rectangle. Remember that there are two graphical engines (MAIN and SUB)
- for both screens of the NDS. In this practical work we will only use the
- MAIN engine since Framebuffer Mode is only available in this engine.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to fill. It is recommended to check that these
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to fill the rectangle.
- Remember that colors are represented with 16bit words in the Nintendo DS.
-*/
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
-
-
-/*
- This function draws an horizontal line of 1 pixel width between the
- coordinates (x,y) and (x2,y) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous function.
-- int x, x2, y: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- function.
-*/
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color);
-
-
-/*
- This function draws a vertical line of 1 pixel width between the coordinates
- (x,y) and (x,y2) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int y, y2, x: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- functions.
-*/
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color);
-
-
-/*
- This function draws a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color. Note that this function is
- different to the one that fills the rectangle. This function only draws
- the rectangle (the borders). It is recommended to re-use the already
- implemented functions to draw lines.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to draw. It is recommended to check that this
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to draw the borders of the
- rectangle.
-*/
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
diff --git a/labs/lab-6/Tetris/source/P_Initializer.c b/labs/lab-6/Tetris/source/P_Initializer.c
deleted file mode 100755
index 3a1972c..0000000
--- a/labs/lab-6/Tetris/source/P_Initializer.c
+++ /dev/null
@@ -1,24 +0,0 @@
-
-#include "P_Initializer.h"
-
-void P_InitNDS()
-{
- //Initialize the main engine
- P_Graphics_setup_main();
-
- //Set correctly the buffer to write
-#ifdef FB0
- P_Graphics_assignBuffer(MAIN, (u16*)VRAM_A,256,192);
-#endif
-
-#ifdef ROTOSCALE
- P_Graphics_assignBuffer(MAIN, (u16*)BG_GFX,256,192);
-#endif
-
- //Initialize the 16x16 field
- P_Map16x16_Init( 12, 16 );
-
- Audio_Init();
- Audio_PlayMusic();
-}
-
diff --git a/labs/lab-6/Tetris/source/P_Initializer.h b/labs/lab-6/Tetris/source/P_Initializer.h
deleted file mode 100755
index be57372..0000000
--- a/labs/lab-6/Tetris/source/P_Initializer.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#include
-#include "P_Map16x16.h"
-#include "P_Audio.h"
-
-void P_InitNDS();
-
diff --git a/labs/lab-6/Tetris/source/P_Map16x16.c b/labs/lab-6/Tetris/source/P_Map16x16.c
deleted file mode 100755
index 51bcf44..0000000
--- a/labs/lab-6/Tetris/source/P_Map16x16.c
+++ /dev/null
@@ -1,46 +0,0 @@
-#include "P_Map16x16.h"
-
-u16* mapMemory;
-int MapCols;
-int MapRows;
-
-void P_Map16x16_configureBG2()
-{
-
-}
-
-void P_Map16x16_configureBG2_Sub()
-{
-
-}
-
-void P_Map16x16_configureBG0()
-{
-
-}
-
-void P_Map16x16_configureBG3()
-{
-
-}
-
-void P_Map16x16_Init( int cols, int rows )
-{
- MapCols=cols;
- MapRows=rows;
-}
-
-
- void SetMap16x16To(int index16, bool full)
- {
- //switch x and y
- int x = index16 % MapCols;
- int y = index16 / MapCols;
- //now inverse x
- y = -(y-MapRows+1);
- index16 = x * MapRows + y;
-#ifdef FB0
- u16 value = full ? RGB15(31,0,0) : RGB15(0,0,0);
- FillRectangle(MAIN,x*16, x*16+16, y*16, y*16+16,value);
-#endif
-}
diff --git a/labs/lab-6/Tetris/source/P_Map16x16.h b/labs/lab-6/Tetris/source/P_Map16x16.h
deleted file mode 100755
index f223a8b..0000000
--- a/labs/lab-6/Tetris/source/P_Map16x16.h
+++ /dev/null
@@ -1,13 +0,0 @@
-
-#include
-#include "P_Graphics.h"
-
-extern u16* mapMemory;
-extern int MapCols;
-extern int MapRows;
-
-void P_Map16x16_configureBG2();
-void P_Map16x16_configureBG2_Sub();
-void P_Map16x16_configureBG0();
-void P_Map16x16_configureBG3();
-void SetMap16x16To(int index16, bool full);
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/all-wcprops b/labs/lab-6/Tetris/source/Tetris/.svn/all-wcprops
deleted file mode 100755
index 000add6..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/all-wcprops
+++ /dev/null
@@ -1,65 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 45
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris
-END
-TetrisShape.cs
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.cs
-END
-TetrisHUD.cs
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisHUD.cs
-END
-TetrisGameplay.h
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.h
-END
-TetrisGrid.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.cpp
-END
-TetrisShape.h
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.h
-END
-TetrisMenu.cs
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisMenu.cs
-END
-TetrisGrid.h
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.h
-END
-TetrisGameplay.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 63
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.cpp
-END
-TetrisShape.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris/TetrisShape.cpp
-END
-TetrisDefines.h
-K 25
-svn:wc:ra_dav:version-url
-V 60
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisDefines.h
-END
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/entries b/labs/lab-6/Tetris/source/Tetris/.svn/entries
deleted file mode 100755
index d40c647..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/entries
+++ /dev/null
@@ -1,368 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tetris
-http://dstetris.googlecode.com/svn
-
-
-
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-TetrisShape.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-93bca2a5d4c7699c749d245e56bbb447
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5324
-
-TetrisHUD.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9b0079baa20c6673a42620e55ed1bd33
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4952
-
-TetrisGameplay.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-6e8205e7f2c4b0995f686b7e03aeb7e3
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-388
-
-TetrisGrid.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-b60a53fd2df6ee0eaeb539bde1c83f44
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5384
-
-TetrisShape.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-fbd520b56b403dc21c6ef073681c91d2
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-460
-
-TetrisMenu.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-46f4b010842a86cc00e87c2024e75fa5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-9881
-
-TetrisGrid.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9c8d2a85e36046170d0ef80bfcd6c163
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-647
-
-TetrisGameplay.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-e6128b8c5e3f024efb556f45ed6784a5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-3909
-
-TetrisShape.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-eeab41f6e1c30a1149806657a70de78e
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4588
-
-TetrisDefines.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-43f8a162e571e16b7dadf20c6147faba
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5579
-
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/format b/labs/lab-6/Tetris/source/Tetris/.svn/format
deleted file mode 100755
index ec63514..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
deleted file mode 100755
index f7b8183..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
deleted file mode 100755
index 3e4217d..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- Gameplay_currentAction = actionToSend;
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //iprintf("GameOver\n");
- //bool isNewHighScore = TetrisGame.highScore.IsHighScore(playerName, playerScore) && playerScore > 0;
- //TetrisGame.soundPlayer.FireSoundFX(isNewHighScore ? SOUND_FX.Win : SOUND_FX.Lose);
- //TetrisGame.menu.setMenuState(TetrisMenu.MENU_STATE.STATE_MENUGAMEOVER, isNewHighScore );
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
- Gameplay_displayNextShape(Shape_NextType);
-}
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
deleted file mode 100755
index 2c803ad..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
+++ /dev/null
@@ -1,15 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-#include "../Platform/P_Graphics.h"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
deleted file mode 100755
index 779826c..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
+++ /dev/null
@@ -1,231 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-/*
-void Grid_paint()
-{
- //paint bg
- //FillRectangle(MAIN, Grid_Top, Grid_Bottom, Grid_Left, Grid_Right, RGB15(10,10,10) | BIT(15));
-
- //paint elems
- int l, t;
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- l = Grid_Left + (i % PLAYFIELD_COLS) * Grid_TileW;
- t = Grid_Top + (i / PLAYFIELD_COLS) * Grid_TileH;
- //Rectangle cell = new Rectangle(l, t, mTileW, mTileH);
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, cell, Color.Yellow);
- //DrawRectangle(MAIN, t, t+Grid_TileH, l, l+Grid_TileW, RGB15(10,25,10) | BIT(15));
-
- //if(Grid_Cells[i])//more fancy graphics for occupied cells
- {
- //TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, cell, Color.Yellow);
- }
- }
-
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, background, Color.Red);
-
-}*/
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
deleted file mode 100755
index 417d538..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
deleted file mode 100755
index b279247..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
+++ /dev/null
@@ -1,117 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisHud : TetrisConstants
- {
-
- public static void paintRightHud(int right, int top, int score, int nextType)
- {
- int x, y;
-
- //score
- x = right - HUD_SCORE_TEXT_OFFSET;
- y = top + MARGIN_TOP + HUD_SCORE_Y_START;
- SpecificTools.QuickDrawString("Score", x, y, TetrisGame.FontSmall, HUD_SCORE_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += HUD_SCORE_INTERLINE;
- SpecificTools.QuickDrawString("" + score, x, y, TetrisGame.FontSmall, HUD_SCORE_NUM_COLOR, SpecificTools.Align.Right);
-
- //next shape
- displayNextShape(right, top, nextType);
-
- //top scores
- displayTopScores(right, top);
-
- }
-
-
- public static void displayNextShape(int startX, int startY, int nextType)
- {
- int tmpX, tmpY, offset;
- int i = 0;
- int x = startX - HUD_NEXT_TEXT_OFFSET;
- int y = startY + MARGIN_TOP + HUD_NEXT_WORD_Y_START;
-
- SpecificTools.QuickDrawString("Next", x, y, TetrisGame.FontSmall, HUD_NEXT_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- x = startX - HUD_NEXT_SHAPE_X_START;
- y = startY + MARGIN_TOP + HUD_NEXT_SHAPE_Y_START;
- tmpX = x;
- tmpY = y;
- offset = (nextType * SHAPE_TABLE_TYPE_OFFSET) + START_ORIENTATION * SHAPE_TABLE_ELEMS_PER_ROW;
- do
- {
- TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, new Rectangle(tmpX, tmpY, HUD_NEXT_SHAPE_CELL_SIZE, HUD_NEXT_SHAPE_CELL_SIZE), HUD_NEXT_SHAPE_COLOR);
- switch (SHAPE_TABLE[offset + i])
- {
- case C_LEFT:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_RIGHT:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_UP:
- tmpX = x;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_DOWN:
- tmpX = x;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_DOWN:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_DOWN:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_UP:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_UP:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT * 2:
- tmpX = x - (HUD_NEXT_SHAPE_CELL_OFFSET * 2);//i am cheating here and moving to the left for better hud display (anchor is on right)
- tmpY = y;
- break;
- default:
- //need to manage
- break;
- }
- i++;
- } while (i < MAX_ELEMS);
- }
-
- public static void displayTopScores(int x, int y)
- {
-
- x -= HUD_TOP_SCORES_TEXT_OFFSET;
- y += MARGIN_TOP + HUD_TOP_SCORES_Y_START;
-
- //paint title
- SpecificTools.QuickDrawString("TopScore", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_TITLE_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += 30;
-
- for (int i = 0; i < TetrisGame.highScore.CurrentTopScores.Count; i++, y += 24)
- {
- String name = TetrisGame.highScore.CurrentTopScores.PlayerName[i];
- int score = TetrisGame.highScore.CurrentTopScores.Score[i];
- if(score > 0)
- SpecificTools.QuickDrawString((i + 1) + ". " + name + ": " + score, x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
- else
- SpecificTools.QuickDrawString("No Score yet", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
-
- }
- }
- }
-}
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
deleted file mode 100755
index 3cffb77..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
+++ /dev/null
@@ -1,242 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisMenu
- {
-
- public enum MENU_STATE
- {
- STATE_MENUOFF,
- STATE_MENUSTART,
- STATE_MENURESUME,
- STATE_MENUGAMEOVER,
- STATE_ENTERNAME,
- }
-
- private MENU_STATE status;
- private int currentSelected;
- private int currentAvailableOptions;
- private int currentLateralSelected;
- private int currentLateralAvailableOptions;
- private bool allowcycle;
- private String[] currentOptions;
- private byte[] player;
- private Color bkgColor;
- private Color wordColor;
- private Color wordColorSelected;
- private bool isHighScore;
-
- public TetrisMenu()
- {
- player = new byte[3];
- bkgColor = new Color(192, 192, 192, 216);
- wordColor = Color.Black;
- wordColorSelected = Color.Green;
- setMenuState(MENU_STATE.STATE_MENUSTART);
- }
-
- public void setMenuState(MENU_STATE state, bool highScore)
- {
- setMenuState(state);
- isHighScore = highScore;//MUST be called after set state because set state sets it to default
- }
-
- public void setMenuState( MENU_STATE state )
- {
- isHighScore = false;
- status = state;
- currentSelected = 0; //always reset this
- currentLateralSelected = 0;
- currentLateralAvailableOptions = 0;//default
- allowcycle = false;//default
- switch (status)
- {
- case MENU_STATE.STATE_MENURESUME:
- currentOptions = MENU_RESUME_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUGAMEOVER:
- currentOptions = MENU_RESTART_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUSTART:
- currentOptions = MENU_START_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_ENTERNAME:
- currentOptions = EMPTY_STRINGS;
- currentAvailableOptions = 26;//alphabet!
- allowcycle = true;
- currentLateralAvailableOptions = 4; //three letters + ok
- for (int i = 0; i < player.Length; i++)
- player[i] = 0;
- break;
- }
- }
-
- public bool IsMenuOff()
- {
- return status == MENU_STATE.STATE_MENUOFF;
- }
-
- public void update_menu(Platform.Input.ACTION a)
- {
- switch (a)
- {
- case Platform.Input.ACTION.RIGHT:
- if (currentLateralSelected < currentLateralAvailableOptions)
- currentLateralSelected++;
- break;
- case Platform.Input.ACTION.LEFT:
- if (currentLateralSelected > 0)
- currentLateralSelected--;
- break;
- case Platform.Input.ACTION.DOWN:
- if (currentSelected < currentAvailableOptions - 1)
- currentSelected++;
- else if (allowcycle)
- currentSelected = 0;
- break;
- case Platform.Input.ACTION.UP:
- if (currentSelected > 0)
- currentSelected--;
- else if (allowcycle)
- currentSelected = currentAvailableOptions-1;
- break;
- case Platform.Input.ACTION.SELECT:
-
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
-
- if (currentOptions.Length == 0)
- {
- if (currentLateralSelected == 3)
- {
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < 3; i++)
- {
- builder.Append(((char)('A' + player[i])));
- }
- TetrisGame.SetPlayerName(builder.ToString());
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else
- {
- update_menu(Platform.Input.ACTION.DOWN);//considering enter on leters is down
- return;
- }
- }
- else if (currentOptions[currentSelected] == commandStart)
- {
- setMenuState(MENU_STATE.STATE_ENTERNAME);
- }
- else if (currentOptions[currentSelected] == commandResume)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else if (currentOptions[currentSelected] == commandQuit)
- {
- TetrisGame.ExitGame();
- }
- else if (currentOptions[currentSelected] == commandRestart)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- TetrisGame.RestartGame();
- }
- break;
- }
-
- //specific for player name menu
- if (status == MENU_STATE.STATE_ENTERNAME && currentLateralSelected < 3)
- {
- if(a==XNATetris.Platform.Input.ACTION.DOWN || a == XNATetris.Platform.Input.ACTION.UP)
- {
- player[currentLateralSelected] = (byte)currentSelected;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- }
- else if (a == XNATetris.Platform.Input.ACTION.LEFT || a == XNATetris.Platform.Input.ACTION.RIGHT)
- currentSelected = player[currentLateralSelected];
- }
- }
-
-
- public void paint()
- {
- int w, h;
- if (status != MENU_STATE.STATE_MENUOFF)
- {
- w = TetrisGame.graphics.PreferredBackBufferWidth;
- h = TetrisGame.graphics.PreferredBackBufferHeight;
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(0, 0, w, h), bkgColor);
- SpecificTools.QuickDrawString("XNA Tetris by Chris FERRARIO @ chris-ferrario.com", 20, 20, TetrisGame.FontSmall, Color.Blue, SpecificTools.Align.Left, true, Color.White);
- paintMenuStrings(currentOptions, w, h);
- paintSpecific(w,h);
- }
- }
-
- private void paintMenuStrings(String[] options, int screenW, int screenH)
- {
- screenH /= options.Length + 1;
- int y = screenH;
- for (int i = 0; i < options.Length; i++, y += screenH)
- {
- SpecificTools.QuickDrawString(options[i], screenW / 2, y, TetrisGame.FontBig, i == currentSelected ? wordColorSelected : wordColor, SpecificTools.Align.Center, true, Color.White);
- }
- }
-
- private void paintSpecific(int screenW, int screenH)
- {
- if(status == MENU_STATE.STATE_MENUGAMEOVER)
- {
- String message = isHighScore ? "Congratulations you have reached a high score!" : "Sorry you have lost without achieving a high score";
- SpecificTools.QuickDrawString(message, screenW / 2, 80, TetrisGame.FontSmall, Color.Red, SpecificTools.Align.Center, true, Color.White);
- }
- else if (status == MENU_STATE.STATE_ENTERNAME)
- {
- int interspace = 40;
- int x = screenW / 2;
- int y = 120;
- SpecificTools.QuickDrawString("Enter your desired name:", x, y, TetrisGame.FontSmall, Color.Black, SpecificTools.Align.Center, true, Color.White);
-
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(x - 100, y + 60, 120, 50), Color.White);
- x -= 2 * interspace;
- y += 60;
-
-
- for (int i = 0; i < 3; i++, x+=interspace)
- {
- SpecificTools.QuickDrawString(((char)('A' + player[i])).ToString(), x, y, TetrisGame.FontBig, i == currentLateralSelected ? Color.Red: Color.Blue, SpecificTools.Align.Center);
- }
- SpecificTools.QuickDrawString("Confirm", x, y + 14, TetrisGame.FontSmall, currentLateralSelected == 3 ? Color.Red : Color.Blue, SpecificTools.Align.Left, true, Color.White);
- }
- }
-
-
- //Menu Tables
- private static String commandStart = "Start Game";
- private static String commandResume = "Resume Game";
- private static String commandRestart = "Restart Game";
- private static String commandQuit = "Quit Game";
- private String[] MENU_START_STRINGS =
- {
- commandStart,
- commandQuit,
- };
- private String[] MENU_RESUME_STRINGS =
- {
- commandResume,
- commandQuit,
- };
- private String[] MENU_RESTART_STRINGS =
- {
- commandRestart,
- commandQuit,
- };
- private String[] EMPTY_STRINGS = {};
- }
-}
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
deleted file mode 100755
index 54701c5..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
+++ /dev/null
@@ -1,175 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- Audio_PlaySound( eSFX_CLUNK );
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
deleted file mode 100755
index dd53a2d..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
+++ /dev/null
@@ -1,170 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace XNATetris
-{
- class TetrisShape : TetrisConstants
- {
- public bool isGameOver = false;
- public bool isInited = false;
-
- private int mOrient;
- private int mType;
- private int mNextType;
- public int getNextType() { return mNextType; }
- private int mState;
- private int[] mElems;
-
- private Random mRand;
- private TetrisGrid mGrid;
-
-
- public TetrisShape(TetrisGrid g)
- {
- mGrid = g;
- mRand = new Random();
- mElems = new int[MAX_ELEMS];
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- }
-
- public bool spawn()
- {
- isGameOver = false;
- for (int i = 0; i < mElems.Length; i++)
- {
- mElems[i] = DONT_CHECK_CELL;
- }
- mType = mNextType;
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- mElems[ELEM_BASE] = START_CELL;
- mOrient = START_ORIENTATION;
- mState = STATE_USER;
- return alignFromOrientation(mOrient);
- }
-
- public void update(int currentAction)
- {
- if (mState == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (rotateShape(ROT_LEFT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (rotateShape(ROT_RIGHT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- mState = STATE_FALLING;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
- break;
- }
- }
- }
- }
-
- public bool IsFalling()
- {
- return mState == STATE_FALLING;
- }
-
- //true when need to recheck playfield
- public bool addGravity()
- {
- if (isInited)
- {
- //gravity
- bool falling = shiftCells(C_DOWN);
- if (!falling)
- {
- mState = STATE_LOCKED;
- isInited = false;
- return true;
- }
- }
- else
- {
- isInited = spawn();
-
- if (!isInited)//this means no room to init = game over
- {
- isGameOver = true;
- }
- }
- return false;
- }
-
- private bool rotateShape(int rotation)
- {
- int orient = mOrient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = alignFromOrientation(orient);
- if (hasRotated)
- mOrient = orient;
-
- return hasRotated;
- }
-
-
- private bool alignFromOrientation(int orientation)
- {
- int[] newElemPos = (int[])mElems.Clone();
- int typeOffset = (mType * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- newElemPos[ELEM_1] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- newElemPos[ELEM_2] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- newElemPos[ELEM_3] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return tryToMove(newElemPos);
- }
-
-
- private bool shiftCells(int cellscrool)
- {
- int[] tmpElems = (int[])mElems.Clone();
- for (int i = 0; i < mElems.Length; i++)
- {
- if (mElems[i] != DONT_CHECK_CELL)
- tmpElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (mGrid.getRow(mElems[ELEM_BASE]) != mGrid.getRow(tmpElems[ELEM_BASE]))
- return false;
-
- return tryToMove(tmpElems);
- }
-
- private bool tryToMove(int[] newElemPos)
- {
- bool hasMoved = mGrid.tryToMoveCells(mElems, newElemPos);
- if (hasMoved)
- mElems = newElemPos;
- return hasMoved;
- }
-
- }
-}
diff --git a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisShape.h.svn-base b/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
deleted file mode 100755
index cf678ad..0000000
--- a/labs/lab-6/Tetris/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tetris/TetrisDefines.h b/labs/lab-6/Tetris/source/Tetris/TetrisDefines.h
deleted file mode 100755
index f7b8183..0000000
--- a/labs/lab-6/Tetris/source/Tetris/TetrisDefines.h
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tetris/TetrisGameplay.cpp b/labs/lab-6/Tetris/source/Tetris/TetrisGameplay.cpp
deleted file mode 100755
index cf676db..0000000
--- a/labs/lab-6/Tetris/source/Tetris/TetrisGameplay.cpp
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- {
- Gameplay_currentAction = actionToSend;
- swiDelay(2000000);
- }
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //Game Over!
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
-// Gameplay_displayNextShape(Shape_NextType);
-}
diff --git a/labs/lab-6/Tetris/source/Tetris/TetrisGameplay.h b/labs/lab-6/Tetris/source/Tetris/TetrisGameplay.h
deleted file mode 100755
index 8345c72..0000000
--- a/labs/lab-6/Tetris/source/Tetris/TetrisGameplay.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
diff --git a/labs/lab-6/Tetris/source/Tetris/TetrisGrid.cpp b/labs/lab-6/Tetris/source/Tetris/TetrisGrid.cpp
deleted file mode 100755
index a65be38..0000000
--- a/labs/lab-6/Tetris/source/Tetris/TetrisGrid.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
diff --git a/labs/lab-6/Tetris/source/Tetris/TetrisGrid.h b/labs/lab-6/Tetris/source/Tetris/TetrisGrid.h
deleted file mode 100755
index 417d538..0000000
--- a/labs/lab-6/Tetris/source/Tetris/TetrisGrid.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tetris/TetrisShape.cpp b/labs/lab-6/Tetris/source/Tetris/TetrisShape.cpp
deleted file mode 100755
index d37b6bd..0000000
--- a/labs/lab-6/Tetris/source/Tetris/TetrisShape.cpp
+++ /dev/null
@@ -1,174 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_isGameOver = false;
- Shape_isInited = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
diff --git a/labs/lab-6/Tetris/source/Tetris/TetrisShape.h b/labs/lab-6/Tetris/source/Tetris/TetrisShape.h
deleted file mode 100755
index cf678ad..0000000
--- a/labs/lab-6/Tetris/source/Tetris/TetrisShape.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tools/.svn/all-wcprops b/labs/lab-6/Tetris/source/Tools/.svn/all-wcprops
deleted file mode 100755
index a6e3218..0000000
--- a/labs/lab-6/Tetris/source/Tools/.svn/all-wcprops
+++ /dev/null
@@ -1,17 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 43
-/svn/!svn/ver/2/trunk/dstetris/source/Tools
-END
-DrawTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 55
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/DrawTools.h
-END
-ArrayTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 56
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/ArrayTools.h
-END
diff --git a/labs/lab-6/Tetris/source/Tools/.svn/entries b/labs/lab-6/Tetris/source/Tools/.svn/entries
deleted file mode 100755
index 2b30dfc..0000000
--- a/labs/lab-6/Tetris/source/Tools/.svn/entries
+++ /dev/null
@@ -1,96 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tools
-http://dstetris.googlecode.com/svn
-
-
-
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-DrawTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-8ec827749fae42a9b2ca3aafba7d3477
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-288
-
-ArrayTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-73a5b8792e77a495b434fe3e1cf2d634
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1003
-
diff --git a/labs/lab-6/Tetris/source/Tools/.svn/format b/labs/lab-6/Tetris/source/Tools/.svn/format
deleted file mode 100755
index ec63514..0000000
--- a/labs/lab-6/Tetris/source/Tools/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-6/Tetris/source/Tools/.svn/text-base/ArrayTools.h.svn-base b/labs/lab-6/Tetris/source/Tools/.svn/text-base/ArrayTools.h.svn-base
deleted file mode 100755
index 905d065..0000000
--- a/labs/lab-6/Tetris/source/Tools/.svn/text-base/ArrayTools.h.svn-base
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tools/.svn/text-base/DrawTools.h.svn-base b/labs/lab-6/Tetris/source/Tools/.svn/text-base/DrawTools.h.svn-base
deleted file mode 100755
index 61263cf..0000000
--- a/labs/lab-6/Tetris/source/Tools/.svn/text-base/DrawTools.h.svn-base
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/Tools/ArrayTools.h b/labs/lab-6/Tetris/source/Tools/ArrayTools.h
deleted file mode 100755
index b67d8fd..0000000
--- a/labs/lab-6/Tetris/source/Tools/ArrayTools.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
diff --git a/labs/lab-6/Tetris/source/Tools/DrawTools.h b/labs/lab-6/Tetris/source/Tools/DrawTools.h
deleted file mode 100755
index 61263cf..0000000
--- a/labs/lab-6/Tetris/source/Tools/DrawTools.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-6/Tetris/source/main.c b/labs/lab-6/Tetris/source/main.c
deleted file mode 100755
index ef6655b..0000000
--- a/labs/lab-6/Tetris/source/main.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/*---------------------------------------------------------------------------------
-
- $Id: main.c,v 1.5 2007/10/23 00:46:29 wntrmute Exp $
-
- Simple console print demo
- -- dovoto
-
----------------------------------------------------------------------------------*/
-#include
-#include
-#include
-#include
-#include
-#include "Tetris/TetrisDefines.h"
-#include "Tetris/TetrisGameplay.h"
-#include "P_Audio.h"
-#include "P_Controls.h"
-#include "P_Graphics.h"
-#include "P_Initializer.h"
-#include "P_Map16x16.h"
-
-//---------------------------------------------------------------------------------
-int main(void) {
-//---------------------------------------------------------------------------------
-
- P_InitNDS();
-
- srand( clock() );
- Gameplay_Load();
- int loops = 0;
- while( true ) {
- handleInput();
- Gameplay_update();
- Gameplay_draw();
- swiWaitForVBlank();
- loops++;
- }
-
- return 0;
-}
diff --git a/labs/lab-7/.root b/labs/lab-7/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-7/Helicopter/Makefile b/labs/lab-7/Helicopter/Makefile
deleted file mode 100644
index 1e6d978..0000000
--- a/labs/lab-7/Helicopter/Makefile
+++ /dev/null
@@ -1,162 +0,0 @@
-#---------------------------------------------------------------------------------
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-# PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-build: FORCE
- make clean
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d)
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-# precompiled:
-# @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-# soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- # @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
-
-FORCE: ;
diff --git a/labs/lab-7/Helicopter/Makefile_alt b/labs/lab-7/Helicopter/Makefile_alt
deleted file mode 100644
index aa00ad3..0000000
--- a/labs/lab-7/Helicopter/Makefile_alt
+++ /dev/null
@@ -1,161 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
\ No newline at end of file
diff --git a/labs/lab-7/Helicopter/data/helicopter.grit b/labs/lab-7/Helicopter/data/helicopter.grit
deleted file mode 100644
index ead2afa..0000000
--- a/labs/lab-7/Helicopter/data/helicopter.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--g
--gb
--gB8
--p
diff --git a/labs/lab-7/Helicopter/data/helicopter.png b/labs/lab-7/Helicopter/data/helicopter.png
deleted file mode 100644
index a0d8ee9..0000000
Binary files a/labs/lab-7/Helicopter/data/helicopter.png and /dev/null differ
diff --git a/labs/lab-7/Helicopter/source/main.c b/labs/lab-7/Helicopter/source/main.c
deleted file mode 100644
index 7360abc..0000000
--- a/labs/lab-7/Helicopter/source/main.c
+++ /dev/null
@@ -1,105 +0,0 @@
-/*---------------------------------------------------------------------------------
-
- Basic template code for starting a DS app
-
----------------------------------------------------------------------------------*/
-#include
-#include
-#include
-
-#include "helicopter.h"
-
-// Choose which solution to use
-// SOLUTION_COPY_MEM: Use only VRAM_A - Copy part of the image to BG_GFX in each timer interrupt
-// SOLUTION_MOVE_MAP_BASE: Use both VRAM_A, VRAM_B - Copy whole image once and move the MAP_BASE in each timer interrupt
-// NOTE: Observe that the results of part2 (scaling image up/down) are not exactly the same for both solutions! Why this happens?
-#define SOLUTION_COPY_MEM // comment this out to enable Solution 2
-#ifndef SOLUTION_COPY_MEM
- #define SOLUTION_MOVE_MAP_BASE
-#endif
-
-//This variable tells us which image to render (0,1 or 2)
-int image = 0;
-
-//Timer0 ISR for changing the image every 100 ms
-void Timer0ISR() {
- //Change image and copy it to the engin memory
- image = (image + 1) % 3;
-#ifdef SOLUTION_COPY_MEM
- int offset = image * 256 * 192 / 4;
- memcpy(BG_GFX, &helicopterBitmap[offset], 256 * 192);
-#elif defined(SOLUTION_MOVE_MAP_BASE)
- // Change background base to start the map from different location
- BGCTRL[2] = BG_MAP_BASE(image * 3) | BgSize_B8_256x256;
-#endif
-}
-
-//Our increasing / decreasing factor and a flag
-int increasing = 0;
-float factor = 1.0;
-
-//Timer1 ISR to change the scale of the affine transform matrix
-void Timer1ISR() {
- //Increase/decrease the factor by 0.1
- if (increasing)
- factor = factor + 0.1;
- else
- factor = factor - 0.1;
-
- //Check and update the flag if necessary
- if (factor <= 0.2)
- increasing = 1;
- if (factor >= 1)
- increasing = 0;
-
- //Change the Affine Transformation Matrix
- bgTransform[2]->hdx = 256 / factor;
- bgTransform[2]->vdy = 256 / factor;
- bgTransform[2]->hdy = 0;
- bgTransform[2]->vdx = 0;
-}
-
-//---------------------------------------------------------------------------------
-int main(void) {
- //---------------------------------------------------------------------------------
-
- //Engine and background configuration
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE;
- VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG;
-#ifdef SOLUTION_MOVE_MAP_BASE
- VRAM_B_CR = VRAM_ENABLE | VRAM_B_MAIN_BG;
-#endif
-
- BGCTRL[2] = BG_MAP_BASE(0) | BgSize_B8_256x256;
-
- //Transfer of the image and the palette to the engine
-#ifdef SOLUTION_COPY_MEM
- memcpy(BG_GFX, helicopterBitmap, 256 * 192);
-#elif defined(SOLUTION_MOVE_MAP_BASE)
- memcpy(BG_GFX, helicopterBitmap, helicopterBitmapLen);
-#endif
- memcpy(BG_PALETTE, helicopterPal, helicopterPalLen);
-
- //Set the matrix affine transform
- bgTransform[2]->hdx = 256;
- bgTransform[2]->vdy = 256;
- bgTransform[2]->hdy = 0;
- bgTransform[2]->vdx = 0;
-
- //Interrupt initialization, enabling and handlers setup
- irqInit();
- irqEnable(IRQ_VBLANK);
- irqSet(IRQ_TIMER0, &Timer0ISR);
- TIMER_DATA(0) = TIMER_FREQ_1024(10);
- TIMER0_CR = TIMER_ENABLE | TIMER_DIV_1024 | TIMER_IRQ_REQ;
- irqEnable(IRQ_TIMER0);
-
- irqSet(IRQ_TIMER1, &Timer1ISR);
- TIMER_DATA(1) = TIMER_FREQ_1024(20);
- TIMER1_CR = TIMER_ENABLE | TIMER_DIV_1024 | TIMER_IRQ_REQ;
- irqEnable(IRQ_TIMER1);
-
- while (1) {
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-7/Makefile b/labs/lab-7/Makefile
deleted file mode 100755
index aa00ad3..0000000
--- a/labs/lab-7/Makefile
+++ /dev/null
@@ -1,161 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) soundbank.bin
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
\ No newline at end of file
diff --git a/labs/lab-7/audio/clunk.wav b/labs/lab-7/audio/clunk.wav
deleted file mode 100755
index c505e8e..0000000
Binary files a/labs/lab-7/audio/clunk.wav and /dev/null differ
diff --git a/labs/lab-7/audio/swish.wav b/labs/lab-7/audio/swish.wav
deleted file mode 100755
index 414e27d..0000000
Binary files a/labs/lab-7/audio/swish.wav and /dev/null differ
diff --git a/labs/lab-7/audio/tetrix.xm b/labs/lab-7/audio/tetrix.xm
deleted file mode 100755
index 0dc531d..0000000
Binary files a/labs/lab-7/audio/tetrix.xm and /dev/null differ
diff --git a/labs/lab-7/data/controls.grit b/labs/lab-7/data/controls.grit
deleted file mode 100755
index f6112ae..0000000
--- a/labs/lab-7/data/controls.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--g
--gb
--gB8
--p
\ No newline at end of file
diff --git a/labs/lab-7/data/controls.png b/labs/lab-7/data/controls.png
deleted file mode 100755
index a5a6935..0000000
Binary files a/labs/lab-7/data/controls.png and /dev/null differ
diff --git a/labs/lab-7/source/P_Audio.c b/labs/lab-7/source/P_Audio.c
deleted file mode 100755
index b432b62..0000000
--- a/labs/lab-7/source/P_Audio.c
+++ /dev/null
@@ -1,21 +0,0 @@
-#include "P_Audio.h"
-
-void Audio_Init()
-{
-
-}
-
-void Audio_PlaySoundEX( int i )
-{
-
-}
-
-void Audio_PlaySound( int sound )
-{
-
-}
-
-void Audio_PlayMusic()
-{
-
-}
diff --git a/labs/lab-7/source/P_Audio.h b/labs/lab-7/source/P_Audio.h
deleted file mode 100755
index 9e03d5c..0000000
--- a/labs/lab-7/source/P_Audio.h
+++ /dev/null
@@ -1,9 +0,0 @@
-#pragma once
-
-#include
-#include
-
-void Audio_Init();
-void Audio_PlaySoundEX( int i );
-void Audio_PlaySound( int sound );
-void Audio_PlayMusic();
diff --git a/labs/lab-7/source/P_Controls.c b/labs/lab-7/source/P_Controls.c
deleted file mode 100755
index 850b4c3..0000000
--- a/labs/lab-7/source/P_Controls.c
+++ /dev/null
@@ -1,7 +0,0 @@
-
-#include "P_Controls.h"
-
-void handleInput()
-{
-
-}
diff --git a/labs/lab-7/source/P_Controls.h b/labs/lab-7/source/P_Controls.h
deleted file mode 100755
index 9df3ea7..0000000
--- a/labs/lab-7/source/P_Controls.h
+++ /dev/null
@@ -1,5 +0,0 @@
-
-#include
-
-
-void handleInput();
diff --git a/labs/lab-7/source/P_Graphics.c b/labs/lab-7/source/P_Graphics.c
deleted file mode 100755
index e947a1a..0000000
--- a/labs/lab-7/source/P_Graphics.c
+++ /dev/null
@@ -1,123 +0,0 @@
-#include "P_Graphics.h"
-
-u16 * P_Graphics_mainBuffer;
-u16 * P_Graphics_subBuffer;
-int P_Graphics_mainW;
-int P_Graphics_mainH;
-int P_Graphics_subW;
-int P_Graphics_subH;
-
-void P_Graphics_setup_main() {
-#ifdef FB0
- //Graphics (Part 1)
- //Set the mode to FB0
- REG_DISPCNT = MODE_FB0;
-
- //Set the coresponding VRAM bank
- VRAM_A_CR = VRAM_ENABLE //Enable the Bank
- | VRAM_A_LCD; //Assign it to the Main engine in FB0
-
-#endif
-
-#ifdef ROTOSCALE
- //Graphics (Part 2)
- //Enable a proper RAM memory bank for the main engine
- VRAM_A_CR = VRAM_ENABLE //Enable
- | VRAM_A_MAIN_BG; //Bank for the main engine
-
- //Configure the main engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-
- //Enable a proper RAM memory bank for sub engine
- VRAM_C_CR = VRAM_ENABLE | VRAM_C_SUB_BG;
-
- //Configure the sub engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-#endif
-
-#ifdef TILES
- //Graphics (Part 3)
-#endif
-}
-
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16 * buffer, int w, int h) {
- switch (bT) {
- case MAIN:
- P_Graphics_mainBuffer = buffer;
- P_Graphics_mainW = w;
- P_Graphics_mainH = h;
- break;
- case SUB:
- P_Graphics_subBuffer = buffer;
- P_Graphics_subW = w;
- P_Graphics_subH = h;
- break;
- }
-}
-
-void FillScreen(enum BUFFER_TYPE t, u16 color) {
- int i;
- switch (t) {
- case MAIN:
- //Fill the whole screen (256*192) with the given color
- for (i = 0; i < P_Graphics_mainH * P_Graphics_mainW; i++)
- P_Graphics_mainBuffer[i] = color;
- break;
- case SUB:
-
- break;
- default:
- return;
- break;
- }
-}
-
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color) {
- int row, col;
- if (bT == MAIN) //Check that we want to use the Main engine
- if (top >= 0 && top <= 191) //Check boundaries of top
- if (bottom >= 0 && bottom <= 191) //Check boundaries of bottom
- if (left >= 0 && left <= 255) //Check boundaries of left
- if (right >= 0 && right <= 255) //Check boundaries of right
- for (row = top; row < bottom; row++) //For rows from top to bottom
- for (col = left; col < right;
- col++) //And for column from left to right
- P_Graphics_mainBuffer[row * 256 + col] = color; //Assign the color
-}
-
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color) {
- int col;
- if (bT == MAIN) //Check that we want to use the Main engine
- if (y >= 0 && y <= 191) //Check the boundaries of y
- if (x >= 0 && x <= 255) //Check the boundaries of x
- if (x2 >= 0 && x2 <= 255) //Check the boundaries of x2
- for (col = x; col < x2; col++) //For columns from x to x2
- P_Graphics_mainBuffer[y * 256 + col] = color; //Assign the color
-}
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color) {
- int row;
- if (bT == MAIN) //Check that we want to use the Main engine
- if (y >= 0 && y <= 191) //Check the boundaries of y
- if (y2 >= 0 && y2 <= 191) //Check the boundaries of y2
- if (x >= 0 && x <= 255) //Check the boundaries of x
- for (row = y; row < y2; row++) //For row from y to y2
- P_Graphics_mainBuffer[row * 256 + x] = color; //Assign the color
-}
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color) {
- if (bT == MAIN) //Check that we want to use the Main engine
- if (top >= 0 && top <= 191) //Check boundaries of top
- if (bottom >= 0 && bottom <= 191) //Check boundaries of bottom
- if (left >= 0 && left <= 255) //Check boundaries of left
- if (right >= 0 && right <= 255) //Check boundaries of right
- if (top < bottom && left < right) {
- //Vertical line on the left
- DrawVerticalLine(MAIN, top, bottom, left, color);
- //Verticla line on the right
- DrawVerticalLine(MAIN, top, bottom, right, color);
- //Horizontal line in top
- DrawHorizontalLine(MAIN, left, right, top, color);
- //Horizontal line on the bottom
- DrawHorizontalLine(MAIN, left, right, bottom, color);
- }
-}
diff --git a/labs/lab-7/source/P_Graphics.h b/labs/lab-7/source/P_Graphics.h
deleted file mode 100755
index 618feb8..0000000
--- a/labs/lab-7/source/P_Graphics.h
+++ /dev/null
@@ -1,111 +0,0 @@
-#pragma once
-
-#include
-//#define FB0
-#define ROTOSCALE
-
-enum BUFFER_TYPE
-{
- MAIN,
- SUB,
-};
-
-//members
-extern u16* P_Graphics_mainBuffer;
-extern u16* P_Graphics_subBuffer;
-extern int P_Graphics_mainW;
-extern int P_Graphics_mainH;
-extern int P_Graphics_subW;
-extern int P_Graphics_subH;
-
-/*
- This function does not receive any input parameter. It initializes the main
- graphical engine to be used with the Framebuffer Mode 0 (FB0).
- It also enables the corresponding VRAM bank to be used.
-*/
-void P_Graphics_setup_main();
-
-
-/*
- Function that assigns the buffer (already implemented) and its size
- */
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h);
-
-
-/*
- This function fills all the screen of the given engine (MAIN or SUB)
- with the input color.
- */
-void FillScreen(enum BUFFER_TYPE t, u16 color);
-
-
-/*
- This function fills a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter specifies the buffer where we want to fill
- the rectangle. Remember that there are two graphical engines (MAIN and SUB)
- for both screens of the NDS. In this practical work we will only use the
- MAIN engine since Framebuffer Mode is only available in this engine.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to fill. It is recommended to check that these
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to fill the rectangle.
- Remember that colors are represented with 16bit words in the Nintendo DS.
-*/
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
-
-
-/*
- This function draws an horizontal line of 1 pixel width between the
- coordinates (x,y) and (x2,y) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous function.
-- int x, x2, y: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- function.
-*/
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color);
-
-
-/*
- This function draws a vertical line of 1 pixel width between the coordinates
- (x,y) and (x,y2) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int y, y2, x: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- functions.
-*/
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color);
-
-
-/*
- This function draws a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color. Note that this function is
- different to the one that fills the rectangle. This function only draws
- the rectangle (the borders). It is recommended to re-use the already
- implemented functions to draw lines.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to draw. It is recommended to check that this
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to draw the borders of the
- rectangle.
-*/
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
diff --git a/labs/lab-7/source/P_Initializer.c b/labs/lab-7/source/P_Initializer.c
deleted file mode 100755
index 5f3fe06..0000000
--- a/labs/lab-7/source/P_Initializer.c
+++ /dev/null
@@ -1,21 +0,0 @@
-#include "P_Initializer.h"
-
-void P_InitNDS() {
- //Initialize the main engine
- P_Graphics_setup_main();
-
- //Set correctly the buffer to write
-#ifdef FB0
- P_Graphics_assignBuffer(MAIN, (u16 *) VRAM_A, 256, 192);
-#endif
-
-#ifdef ROTOSCALE
- P_Graphics_assignBuffer(MAIN, (u16 *) BG_GFX, 256, 192);
-#endif
-
- //Initialize the 16x16 field
- P_Map16x16_Init(12, 16);
-
- Audio_Init();
- Audio_PlayMusic();
-}
diff --git a/labs/lab-7/source/P_Initializer.h b/labs/lab-7/source/P_Initializer.h
deleted file mode 100755
index be57372..0000000
--- a/labs/lab-7/source/P_Initializer.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#include
-#include "P_Map16x16.h"
-#include "P_Audio.h"
-
-void P_InitNDS();
-
diff --git a/labs/lab-7/source/P_Map16x16.c b/labs/lab-7/source/P_Map16x16.c
deleted file mode 100644
index 29854b5..0000000
--- a/labs/lab-7/source/P_Map16x16.c
+++ /dev/null
@@ -1,75 +0,0 @@
-
-#include "P_Map16x16.h"
-
-#include "controls.h"
-
-u16 * mapMemory;
-int MapCols;
-int MapRows;
-
-void P_Map16x16_configureBG2() {
- //Initialize Background
- BGCTRL[2] = BG_MAP_BASE(0) | BgSize_B16_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA = 256;
- REG_BG2PC = 0;
- REG_BG2PB = 0;
- REG_BG2PD = 256;
-
- //Initialize pointer to the graphic memory
- //mapMemory = ...
- mapMemory = BG_GFX;
-}
-
-void P_Map16x16_configureBG2_Sub() {
- //Configure BG 2 Sub. (Do not forget the BG_BMP_BASE configuration)
- BGCTRL_SUB[2] = BG_BMP_BASE(0) | BgSize_B8_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA_SUB = 256;
- REG_BG2PC_SUB = 0;
- REG_BG2PB_SUB = 0;
- REG_BG2PD_SUB = 256;
-
- swiCopy(controlsPal, BG_PALETTE_SUB, controlsPalLen / 2);
- swiCopy(controlsBitmap, BG_GFX_SUB, controlsBitmapLen / 2);
-}
-
-void P_Map16x16_configureBG0() {
-}
-
-void P_Map16x16_configureBG3() {
-}
-
-void P_Map16x16_Init(int cols, int rows) {
- MapCols = cols;
- MapRows = rows;
-#ifdef ROTOSCALE
- //Configure BG2
- P_Map16x16_configureBG2();
- // Configure Bottom background
- P_Map16x16_configureBG2_Sub();
-#endif
-}
-
-void SetMap16x16To(int index16, bool full) {
- //switch x and y
- int x = index16 % MapCols;
- int y = index16 / MapCols;
- //now inverse x
- y = -(y - MapRows + 1);
- index16 = x * MapRows + y;
-#ifdef FB0
- u16 value = full ? RGB15(31, 0, 0) : RGB15(0, 0, 0);
- FillRectangle(MAIN, x * 16, x * 16 + 16, y * 16, y * 16 + 16, value);
-#endif
-
-#ifdef ROTOSCALE
-
- if (full == 1)
- FillRectangle(MAIN, x * 16, x * 16 + 16, y * 16, y * 16 + 16, ARGB16(1, 31, 0, 0));
- else
- FillRectangle(MAIN, x * 16, x * 16 + 16, y * 16, y * 16 + 16, ARGB16(1, 0, 0, 0));
-#endif
-}
diff --git a/labs/lab-7/source/P_Map16x16.h b/labs/lab-7/source/P_Map16x16.h
deleted file mode 100755
index 089f260..0000000
--- a/labs/lab-7/source/P_Map16x16.h
+++ /dev/null
@@ -1,36 +0,0 @@
-
-#include
-#include "P_Graphics.h"
-
-extern u16* mapMemory;
-extern int MapCols;
-extern int MapRows;
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Main Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Main Engine must be configured in Rotoscale
- * mode to be used as a bitmap with a depth colour of 16 bits. This
- * background will be used as a canvas of pixels (like in the Frame Buffer
- * Mode) to display the game field in the upper screen.
- */
-void P_Map16x16_configureBG2();
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Sub Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Sub Engine must be configured in Rotoscale
- * mode with a depth of colours of 8 bits. This background will be used
- * to show an image in the bottom screen.
- */
-void P_Map16x16_configureBG2_Sub();
-
-void P_Map16x16_Init( int cols, int rows );
-
-void P_Map16x16_configureBG0();
-void P_Map16x16_configureBG3();
-void SetMap16x16To(int index16, bool full);
diff --git a/labs/lab-7/source/Tetris/.svn/all-wcprops b/labs/lab-7/source/Tetris/.svn/all-wcprops
deleted file mode 100755
index 000add6..0000000
--- a/labs/lab-7/source/Tetris/.svn/all-wcprops
+++ /dev/null
@@ -1,65 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 45
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris
-END
-TetrisShape.cs
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.cs
-END
-TetrisHUD.cs
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisHUD.cs
-END
-TetrisGameplay.h
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.h
-END
-TetrisGrid.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.cpp
-END
-TetrisShape.h
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.h
-END
-TetrisMenu.cs
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisMenu.cs
-END
-TetrisGrid.h
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.h
-END
-TetrisGameplay.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 63
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.cpp
-END
-TetrisShape.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris/TetrisShape.cpp
-END
-TetrisDefines.h
-K 25
-svn:wc:ra_dav:version-url
-V 60
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisDefines.h
-END
diff --git a/labs/lab-7/source/Tetris/.svn/entries b/labs/lab-7/source/Tetris/.svn/entries
deleted file mode 100755
index d40c647..0000000
--- a/labs/lab-7/source/Tetris/.svn/entries
+++ /dev/null
@@ -1,368 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tetris
-http://dstetris.googlecode.com/svn
-
-
-
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-TetrisShape.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-93bca2a5d4c7699c749d245e56bbb447
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5324
-
-TetrisHUD.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9b0079baa20c6673a42620e55ed1bd33
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4952
-
-TetrisGameplay.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-6e8205e7f2c4b0995f686b7e03aeb7e3
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-388
-
-TetrisGrid.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-b60a53fd2df6ee0eaeb539bde1c83f44
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5384
-
-TetrisShape.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-fbd520b56b403dc21c6ef073681c91d2
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-460
-
-TetrisMenu.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-46f4b010842a86cc00e87c2024e75fa5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-9881
-
-TetrisGrid.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9c8d2a85e36046170d0ef80bfcd6c163
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-647
-
-TetrisGameplay.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-e6128b8c5e3f024efb556f45ed6784a5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-3909
-
-TetrisShape.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-eeab41f6e1c30a1149806657a70de78e
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4588
-
-TetrisDefines.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-43f8a162e571e16b7dadf20c6147faba
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5579
-
diff --git a/labs/lab-7/source/Tetris/.svn/format b/labs/lab-7/source/Tetris/.svn/format
deleted file mode 100755
index ec63514..0000000
--- a/labs/lab-7/source/Tetris/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
deleted file mode 100755
index f7b8183..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
deleted file mode 100755
index 3e4217d..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- Gameplay_currentAction = actionToSend;
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //iprintf("GameOver\n");
- //bool isNewHighScore = TetrisGame.highScore.IsHighScore(playerName, playerScore) && playerScore > 0;
- //TetrisGame.soundPlayer.FireSoundFX(isNewHighScore ? SOUND_FX.Win : SOUND_FX.Lose);
- //TetrisGame.menu.setMenuState(TetrisMenu.MENU_STATE.STATE_MENUGAMEOVER, isNewHighScore );
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
- Gameplay_displayNextShape(Shape_NextType);
-}
\ No newline at end of file
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
deleted file mode 100755
index 2c803ad..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
+++ /dev/null
@@ -1,15 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-#include "../Platform/P_Graphics.h"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
\ No newline at end of file
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
deleted file mode 100755
index 779826c..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
+++ /dev/null
@@ -1,231 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-/*
-void Grid_paint()
-{
- //paint bg
- //FillRectangle(MAIN, Grid_Top, Grid_Bottom, Grid_Left, Grid_Right, RGB15(10,10,10) | BIT(15));
-
- //paint elems
- int l, t;
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- l = Grid_Left + (i % PLAYFIELD_COLS) * Grid_TileW;
- t = Grid_Top + (i / PLAYFIELD_COLS) * Grid_TileH;
- //Rectangle cell = new Rectangle(l, t, mTileW, mTileH);
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, cell, Color.Yellow);
- //DrawRectangle(MAIN, t, t+Grid_TileH, l, l+Grid_TileW, RGB15(10,25,10) | BIT(15));
-
- //if(Grid_Cells[i])//more fancy graphics for occupied cells
- {
- //TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, cell, Color.Yellow);
- }
- }
-
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, background, Color.Red);
-
-}*/
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
\ No newline at end of file
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
deleted file mode 100755
index 417d538..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
deleted file mode 100755
index b279247..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
+++ /dev/null
@@ -1,117 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisHud : TetrisConstants
- {
-
- public static void paintRightHud(int right, int top, int score, int nextType)
- {
- int x, y;
-
- //score
- x = right - HUD_SCORE_TEXT_OFFSET;
- y = top + MARGIN_TOP + HUD_SCORE_Y_START;
- SpecificTools.QuickDrawString("Score", x, y, TetrisGame.FontSmall, HUD_SCORE_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += HUD_SCORE_INTERLINE;
- SpecificTools.QuickDrawString("" + score, x, y, TetrisGame.FontSmall, HUD_SCORE_NUM_COLOR, SpecificTools.Align.Right);
-
- //next shape
- displayNextShape(right, top, nextType);
-
- //top scores
- displayTopScores(right, top);
-
- }
-
-
- public static void displayNextShape(int startX, int startY, int nextType)
- {
- int tmpX, tmpY, offset;
- int i = 0;
- int x = startX - HUD_NEXT_TEXT_OFFSET;
- int y = startY + MARGIN_TOP + HUD_NEXT_WORD_Y_START;
-
- SpecificTools.QuickDrawString("Next", x, y, TetrisGame.FontSmall, HUD_NEXT_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- x = startX - HUD_NEXT_SHAPE_X_START;
- y = startY + MARGIN_TOP + HUD_NEXT_SHAPE_Y_START;
- tmpX = x;
- tmpY = y;
- offset = (nextType * SHAPE_TABLE_TYPE_OFFSET) + START_ORIENTATION * SHAPE_TABLE_ELEMS_PER_ROW;
- do
- {
- TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, new Rectangle(tmpX, tmpY, HUD_NEXT_SHAPE_CELL_SIZE, HUD_NEXT_SHAPE_CELL_SIZE), HUD_NEXT_SHAPE_COLOR);
- switch (SHAPE_TABLE[offset + i])
- {
- case C_LEFT:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_RIGHT:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_UP:
- tmpX = x;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_DOWN:
- tmpX = x;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_DOWN:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_DOWN:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_UP:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_UP:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT * 2:
- tmpX = x - (HUD_NEXT_SHAPE_CELL_OFFSET * 2);//i am cheating here and moving to the left for better hud display (anchor is on right)
- tmpY = y;
- break;
- default:
- //need to manage
- break;
- }
- i++;
- } while (i < MAX_ELEMS);
- }
-
- public static void displayTopScores(int x, int y)
- {
-
- x -= HUD_TOP_SCORES_TEXT_OFFSET;
- y += MARGIN_TOP + HUD_TOP_SCORES_Y_START;
-
- //paint title
- SpecificTools.QuickDrawString("TopScore", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_TITLE_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += 30;
-
- for (int i = 0; i < TetrisGame.highScore.CurrentTopScores.Count; i++, y += 24)
- {
- String name = TetrisGame.highScore.CurrentTopScores.PlayerName[i];
- int score = TetrisGame.highScore.CurrentTopScores.Score[i];
- if(score > 0)
- SpecificTools.QuickDrawString((i + 1) + ". " + name + ": " + score, x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
- else
- SpecificTools.QuickDrawString("No Score yet", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
-
- }
- }
- }
-}
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
deleted file mode 100755
index 3cffb77..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
+++ /dev/null
@@ -1,242 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisMenu
- {
-
- public enum MENU_STATE
- {
- STATE_MENUOFF,
- STATE_MENUSTART,
- STATE_MENURESUME,
- STATE_MENUGAMEOVER,
- STATE_ENTERNAME,
- }
-
- private MENU_STATE status;
- private int currentSelected;
- private int currentAvailableOptions;
- private int currentLateralSelected;
- private int currentLateralAvailableOptions;
- private bool allowcycle;
- private String[] currentOptions;
- private byte[] player;
- private Color bkgColor;
- private Color wordColor;
- private Color wordColorSelected;
- private bool isHighScore;
-
- public TetrisMenu()
- {
- player = new byte[3];
- bkgColor = new Color(192, 192, 192, 216);
- wordColor = Color.Black;
- wordColorSelected = Color.Green;
- setMenuState(MENU_STATE.STATE_MENUSTART);
- }
-
- public void setMenuState(MENU_STATE state, bool highScore)
- {
- setMenuState(state);
- isHighScore = highScore;//MUST be called after set state because set state sets it to default
- }
-
- public void setMenuState( MENU_STATE state )
- {
- isHighScore = false;
- status = state;
- currentSelected = 0; //always reset this
- currentLateralSelected = 0;
- currentLateralAvailableOptions = 0;//default
- allowcycle = false;//default
- switch (status)
- {
- case MENU_STATE.STATE_MENURESUME:
- currentOptions = MENU_RESUME_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUGAMEOVER:
- currentOptions = MENU_RESTART_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUSTART:
- currentOptions = MENU_START_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_ENTERNAME:
- currentOptions = EMPTY_STRINGS;
- currentAvailableOptions = 26;//alphabet!
- allowcycle = true;
- currentLateralAvailableOptions = 4; //three letters + ok
- for (int i = 0; i < player.Length; i++)
- player[i] = 0;
- break;
- }
- }
-
- public bool IsMenuOff()
- {
- return status == MENU_STATE.STATE_MENUOFF;
- }
-
- public void update_menu(Platform.Input.ACTION a)
- {
- switch (a)
- {
- case Platform.Input.ACTION.RIGHT:
- if (currentLateralSelected < currentLateralAvailableOptions)
- currentLateralSelected++;
- break;
- case Platform.Input.ACTION.LEFT:
- if (currentLateralSelected > 0)
- currentLateralSelected--;
- break;
- case Platform.Input.ACTION.DOWN:
- if (currentSelected < currentAvailableOptions - 1)
- currentSelected++;
- else if (allowcycle)
- currentSelected = 0;
- break;
- case Platform.Input.ACTION.UP:
- if (currentSelected > 0)
- currentSelected--;
- else if (allowcycle)
- currentSelected = currentAvailableOptions-1;
- break;
- case Platform.Input.ACTION.SELECT:
-
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
-
- if (currentOptions.Length == 0)
- {
- if (currentLateralSelected == 3)
- {
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < 3; i++)
- {
- builder.Append(((char)('A' + player[i])));
- }
- TetrisGame.SetPlayerName(builder.ToString());
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else
- {
- update_menu(Platform.Input.ACTION.DOWN);//considering enter on leters is down
- return;
- }
- }
- else if (currentOptions[currentSelected] == commandStart)
- {
- setMenuState(MENU_STATE.STATE_ENTERNAME);
- }
- else if (currentOptions[currentSelected] == commandResume)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else if (currentOptions[currentSelected] == commandQuit)
- {
- TetrisGame.ExitGame();
- }
- else if (currentOptions[currentSelected] == commandRestart)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- TetrisGame.RestartGame();
- }
- break;
- }
-
- //specific for player name menu
- if (status == MENU_STATE.STATE_ENTERNAME && currentLateralSelected < 3)
- {
- if(a==XNATetris.Platform.Input.ACTION.DOWN || a == XNATetris.Platform.Input.ACTION.UP)
- {
- player[currentLateralSelected] = (byte)currentSelected;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- }
- else if (a == XNATetris.Platform.Input.ACTION.LEFT || a == XNATetris.Platform.Input.ACTION.RIGHT)
- currentSelected = player[currentLateralSelected];
- }
- }
-
-
- public void paint()
- {
- int w, h;
- if (status != MENU_STATE.STATE_MENUOFF)
- {
- w = TetrisGame.graphics.PreferredBackBufferWidth;
- h = TetrisGame.graphics.PreferredBackBufferHeight;
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(0, 0, w, h), bkgColor);
- SpecificTools.QuickDrawString("XNA Tetris by Chris FERRARIO @ chris-ferrario.com", 20, 20, TetrisGame.FontSmall, Color.Blue, SpecificTools.Align.Left, true, Color.White);
- paintMenuStrings(currentOptions, w, h);
- paintSpecific(w,h);
- }
- }
-
- private void paintMenuStrings(String[] options, int screenW, int screenH)
- {
- screenH /= options.Length + 1;
- int y = screenH;
- for (int i = 0; i < options.Length; i++, y += screenH)
- {
- SpecificTools.QuickDrawString(options[i], screenW / 2, y, TetrisGame.FontBig, i == currentSelected ? wordColorSelected : wordColor, SpecificTools.Align.Center, true, Color.White);
- }
- }
-
- private void paintSpecific(int screenW, int screenH)
- {
- if(status == MENU_STATE.STATE_MENUGAMEOVER)
- {
- String message = isHighScore ? "Congratulations you have reached a high score!" : "Sorry you have lost without achieving a high score";
- SpecificTools.QuickDrawString(message, screenW / 2, 80, TetrisGame.FontSmall, Color.Red, SpecificTools.Align.Center, true, Color.White);
- }
- else if (status == MENU_STATE.STATE_ENTERNAME)
- {
- int interspace = 40;
- int x = screenW / 2;
- int y = 120;
- SpecificTools.QuickDrawString("Enter your desired name:", x, y, TetrisGame.FontSmall, Color.Black, SpecificTools.Align.Center, true, Color.White);
-
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(x - 100, y + 60, 120, 50), Color.White);
- x -= 2 * interspace;
- y += 60;
-
-
- for (int i = 0; i < 3; i++, x+=interspace)
- {
- SpecificTools.QuickDrawString(((char)('A' + player[i])).ToString(), x, y, TetrisGame.FontBig, i == currentLateralSelected ? Color.Red: Color.Blue, SpecificTools.Align.Center);
- }
- SpecificTools.QuickDrawString("Confirm", x, y + 14, TetrisGame.FontSmall, currentLateralSelected == 3 ? Color.Red : Color.Blue, SpecificTools.Align.Left, true, Color.White);
- }
- }
-
-
- //Menu Tables
- private static String commandStart = "Start Game";
- private static String commandResume = "Resume Game";
- private static String commandRestart = "Restart Game";
- private static String commandQuit = "Quit Game";
- private String[] MENU_START_STRINGS =
- {
- commandStart,
- commandQuit,
- };
- private String[] MENU_RESUME_STRINGS =
- {
- commandResume,
- commandQuit,
- };
- private String[] MENU_RESTART_STRINGS =
- {
- commandRestart,
- commandQuit,
- };
- private String[] EMPTY_STRINGS = {};
- }
-}
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
deleted file mode 100755
index 54701c5..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
+++ /dev/null
@@ -1,175 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- Audio_PlaySound( eSFX_CLUNK );
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
deleted file mode 100755
index dd53a2d..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
+++ /dev/null
@@ -1,170 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace XNATetris
-{
- class TetrisShape : TetrisConstants
- {
- public bool isGameOver = false;
- public bool isInited = false;
-
- private int mOrient;
- private int mType;
- private int mNextType;
- public int getNextType() { return mNextType; }
- private int mState;
- private int[] mElems;
-
- private Random mRand;
- private TetrisGrid mGrid;
-
-
- public TetrisShape(TetrisGrid g)
- {
- mGrid = g;
- mRand = new Random();
- mElems = new int[MAX_ELEMS];
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- }
-
- public bool spawn()
- {
- isGameOver = false;
- for (int i = 0; i < mElems.Length; i++)
- {
- mElems[i] = DONT_CHECK_CELL;
- }
- mType = mNextType;
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- mElems[ELEM_BASE] = START_CELL;
- mOrient = START_ORIENTATION;
- mState = STATE_USER;
- return alignFromOrientation(mOrient);
- }
-
- public void update(int currentAction)
- {
- if (mState == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (rotateShape(ROT_LEFT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (rotateShape(ROT_RIGHT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- mState = STATE_FALLING;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
- break;
- }
- }
- }
- }
-
- public bool IsFalling()
- {
- return mState == STATE_FALLING;
- }
-
- //true when need to recheck playfield
- public bool addGravity()
- {
- if (isInited)
- {
- //gravity
- bool falling = shiftCells(C_DOWN);
- if (!falling)
- {
- mState = STATE_LOCKED;
- isInited = false;
- return true;
- }
- }
- else
- {
- isInited = spawn();
-
- if (!isInited)//this means no room to init = game over
- {
- isGameOver = true;
- }
- }
- return false;
- }
-
- private bool rotateShape(int rotation)
- {
- int orient = mOrient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = alignFromOrientation(orient);
- if (hasRotated)
- mOrient = orient;
-
- return hasRotated;
- }
-
-
- private bool alignFromOrientation(int orientation)
- {
- int[] newElemPos = (int[])mElems.Clone();
- int typeOffset = (mType * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- newElemPos[ELEM_1] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- newElemPos[ELEM_2] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- newElemPos[ELEM_3] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return tryToMove(newElemPos);
- }
-
-
- private bool shiftCells(int cellscrool)
- {
- int[] tmpElems = (int[])mElems.Clone();
- for (int i = 0; i < mElems.Length; i++)
- {
- if (mElems[i] != DONT_CHECK_CELL)
- tmpElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (mGrid.getRow(mElems[ELEM_BASE]) != mGrid.getRow(tmpElems[ELEM_BASE]))
- return false;
-
- return tryToMove(tmpElems);
- }
-
- private bool tryToMove(int[] newElemPos)
- {
- bool hasMoved = mGrid.tryToMoveCells(mElems, newElemPos);
- if (hasMoved)
- mElems = newElemPos;
- return hasMoved;
- }
-
- }
-}
diff --git a/labs/lab-7/source/Tetris/.svn/text-base/TetrisShape.h.svn-base b/labs/lab-7/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
deleted file mode 100755
index cf678ad..0000000
--- a/labs/lab-7/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-7/source/Tetris/TetrisDefines.h b/labs/lab-7/source/Tetris/TetrisDefines.h
deleted file mode 100755
index f7b8183..0000000
--- a/labs/lab-7/source/Tetris/TetrisDefines.h
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-7/source/Tetris/TetrisGameplay.cpp b/labs/lab-7/source/Tetris/TetrisGameplay.cpp
deleted file mode 100755
index cf676db..0000000
--- a/labs/lab-7/source/Tetris/TetrisGameplay.cpp
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- {
- Gameplay_currentAction = actionToSend;
- swiDelay(2000000);
- }
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //Game Over!
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
-// Gameplay_displayNextShape(Shape_NextType);
-}
diff --git a/labs/lab-7/source/Tetris/TetrisGameplay.h b/labs/lab-7/source/Tetris/TetrisGameplay.h
deleted file mode 100755
index 8345c72..0000000
--- a/labs/lab-7/source/Tetris/TetrisGameplay.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
diff --git a/labs/lab-7/source/Tetris/TetrisGrid.cpp b/labs/lab-7/source/Tetris/TetrisGrid.cpp
deleted file mode 100755
index a65be38..0000000
--- a/labs/lab-7/source/Tetris/TetrisGrid.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
diff --git a/labs/lab-7/source/Tetris/TetrisGrid.h b/labs/lab-7/source/Tetris/TetrisGrid.h
deleted file mode 100755
index 417d538..0000000
--- a/labs/lab-7/source/Tetris/TetrisGrid.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-7/source/Tetris/TetrisShape.cpp b/labs/lab-7/source/Tetris/TetrisShape.cpp
deleted file mode 100755
index d37b6bd..0000000
--- a/labs/lab-7/source/Tetris/TetrisShape.cpp
+++ /dev/null
@@ -1,174 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_isGameOver = false;
- Shape_isInited = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
diff --git a/labs/lab-7/source/Tetris/TetrisShape.h b/labs/lab-7/source/Tetris/TetrisShape.h
deleted file mode 100755
index cf678ad..0000000
--- a/labs/lab-7/source/Tetris/TetrisShape.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-7/source/Tools/.svn/all-wcprops b/labs/lab-7/source/Tools/.svn/all-wcprops
deleted file mode 100755
index a6e3218..0000000
--- a/labs/lab-7/source/Tools/.svn/all-wcprops
+++ /dev/null
@@ -1,17 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 43
-/svn/!svn/ver/2/trunk/dstetris/source/Tools
-END
-DrawTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 55
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/DrawTools.h
-END
-ArrayTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 56
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/ArrayTools.h
-END
diff --git a/labs/lab-7/source/Tools/.svn/entries b/labs/lab-7/source/Tools/.svn/entries
deleted file mode 100755
index 2b30dfc..0000000
--- a/labs/lab-7/source/Tools/.svn/entries
+++ /dev/null
@@ -1,96 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tools
-http://dstetris.googlecode.com/svn
-
-
-
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-DrawTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-8ec827749fae42a9b2ca3aafba7d3477
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-288
-
-ArrayTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-73a5b8792e77a495b434fe3e1cf2d634
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1003
-
diff --git a/labs/lab-7/source/Tools/.svn/format b/labs/lab-7/source/Tools/.svn/format
deleted file mode 100755
index ec63514..0000000
--- a/labs/lab-7/source/Tools/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-7/source/Tools/.svn/text-base/ArrayTools.h.svn-base b/labs/lab-7/source/Tools/.svn/text-base/ArrayTools.h.svn-base
deleted file mode 100755
index 905d065..0000000
--- a/labs/lab-7/source/Tools/.svn/text-base/ArrayTools.h.svn-base
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-7/source/Tools/.svn/text-base/DrawTools.h.svn-base b/labs/lab-7/source/Tools/.svn/text-base/DrawTools.h.svn-base
deleted file mode 100755
index 61263cf..0000000
--- a/labs/lab-7/source/Tools/.svn/text-base/DrawTools.h.svn-base
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-7/source/Tools/ArrayTools.h b/labs/lab-7/source/Tools/ArrayTools.h
deleted file mode 100755
index b67d8fd..0000000
--- a/labs/lab-7/source/Tools/ArrayTools.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
diff --git a/labs/lab-7/source/Tools/DrawTools.h b/labs/lab-7/source/Tools/DrawTools.h
deleted file mode 100755
index 61263cf..0000000
--- a/labs/lab-7/source/Tools/DrawTools.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-7/source/main.c b/labs/lab-7/source/main.c
deleted file mode 100755
index ef6655b..0000000
--- a/labs/lab-7/source/main.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/*---------------------------------------------------------------------------------
-
- $Id: main.c,v 1.5 2007/10/23 00:46:29 wntrmute Exp $
-
- Simple console print demo
- -- dovoto
-
----------------------------------------------------------------------------------*/
-#include
-#include
-#include
-#include
-#include
-#include "Tetris/TetrisDefines.h"
-#include "Tetris/TetrisGameplay.h"
-#include "P_Audio.h"
-#include "P_Controls.h"
-#include "P_Graphics.h"
-#include "P_Initializer.h"
-#include "P_Map16x16.h"
-
-//---------------------------------------------------------------------------------
-int main(void) {
-//---------------------------------------------------------------------------------
-
- P_InitNDS();
-
- srand( clock() );
- Gameplay_Load();
- int loops = 0;
- while( true ) {
- handleInput();
- Gameplay_update();
- Gameplay_draw();
- swiWaitForVBlank();
- loops++;
- }
-
- return 0;
-}
diff --git a/labs/lab-8/.root b/labs/lab-8/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-8/Makefile b/labs/lab-8/Makefile
deleted file mode 100755
index b5ece27..0000000
--- a/labs/lab-8/Makefile
+++ /dev/null
@@ -1,161 +0,0 @@
-#---------------------------------------------------------------------------------
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-# PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-build: FORCE
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d)
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-# precompiled:
-# @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-# soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- # @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
-
-FORCE: ;
diff --git a/labs/lab-8/audio/clunk.wav b/labs/lab-8/audio/clunk.wav
deleted file mode 100644
index c505e8e..0000000
Binary files a/labs/lab-8/audio/clunk.wav and /dev/null differ
diff --git a/labs/lab-8/audio/swish.wav b/labs/lab-8/audio/swish.wav
deleted file mode 100644
index 414e27d..0000000
Binary files a/labs/lab-8/audio/swish.wav and /dev/null differ
diff --git a/labs/lab-8/audio/tetrix.xm b/labs/lab-8/audio/tetrix.xm
deleted file mode 100644
index 0dc531d..0000000
Binary files a/labs/lab-8/audio/tetrix.xm and /dev/null differ
diff --git a/labs/lab-8/data/background.grit b/labs/lab-8/data/background.grit
deleted file mode 100644
index 7b0d0eb..0000000
--- a/labs/lab-8/data/background.grit
+++ /dev/null
@@ -1,6 +0,0 @@
--g
--gt
--gB8
--p
--pn253
--m
\ No newline at end of file
diff --git a/labs/lab-8/data/background.png b/labs/lab-8/data/background.png
deleted file mode 100644
index 1fc7974..0000000
Binary files a/labs/lab-8/data/background.png and /dev/null differ
diff --git a/labs/lab-8/data/controls.grit b/labs/lab-8/data/controls.grit
deleted file mode 100644
index f6112ae..0000000
--- a/labs/lab-8/data/controls.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--g
--gb
--gB8
--p
\ No newline at end of file
diff --git a/labs/lab-8/data/controls.png b/labs/lab-8/data/controls.png
deleted file mode 100644
index a5a6935..0000000
Binary files a/labs/lab-8/data/controls.png and /dev/null differ
diff --git a/labs/lab-8/source/P_Audio.c b/labs/lab-8/source/P_Audio.c
deleted file mode 100644
index b432b62..0000000
--- a/labs/lab-8/source/P_Audio.c
+++ /dev/null
@@ -1,21 +0,0 @@
-#include "P_Audio.h"
-
-void Audio_Init()
-{
-
-}
-
-void Audio_PlaySoundEX( int i )
-{
-
-}
-
-void Audio_PlaySound( int sound )
-{
-
-}
-
-void Audio_PlayMusic()
-{
-
-}
diff --git a/labs/lab-8/source/P_Audio.h b/labs/lab-8/source/P_Audio.h
deleted file mode 100644
index 9e03d5c..0000000
--- a/labs/lab-8/source/P_Audio.h
+++ /dev/null
@@ -1,9 +0,0 @@
-#pragma once
-
-#include
-#include
-
-void Audio_Init();
-void Audio_PlaySoundEX( int i );
-void Audio_PlaySound( int sound );
-void Audio_PlayMusic();
diff --git a/labs/lab-8/source/P_Controls.c b/labs/lab-8/source/P_Controls.c
deleted file mode 100644
index 850b4c3..0000000
--- a/labs/lab-8/source/P_Controls.c
+++ /dev/null
@@ -1,7 +0,0 @@
-
-#include "P_Controls.h"
-
-void handleInput()
-{
-
-}
diff --git a/labs/lab-8/source/P_Controls.h b/labs/lab-8/source/P_Controls.h
deleted file mode 100644
index 9df3ea7..0000000
--- a/labs/lab-8/source/P_Controls.h
+++ /dev/null
@@ -1,5 +0,0 @@
-
-#include
-
-
-void handleInput();
diff --git a/labs/lab-8/source/P_Graphics.c b/labs/lab-8/source/P_Graphics.c
deleted file mode 100644
index 462941e..0000000
--- a/labs/lab-8/source/P_Graphics.c
+++ /dev/null
@@ -1,148 +0,0 @@
-#include "P_Graphics.h"
-
-//members
-u16* P_Graphics_mainBuffer;
-u16* P_Graphics_subBuffer;
-int P_Graphics_mainW;
-int P_Graphics_mainH;
-int P_Graphics_subW;
-int P_Graphics_subH;
-
-void P_Graphics_setup_main()
-{
-#ifdef FB0
- //Graphics (Part 1)
- //Set the mode to FB0
- REG_DISPCNT = MODE_FB0;
-
- //Set the coresponding VRAM bank
- VRAM_A_CR = VRAM_ENABLE //Enable the Bank
- | VRAM_A_LCD; //Assign it to the Main engine in FB0
-
-#endif
-
-#ifdef ROTOSCALE
- //Graphics (Part 2)
- //Enable a proper RAM memory bank for the main engine
- VRAM_A_CR = VRAM_ENABLE //Enable
- | VRAM_A_MAIN_BG; //Bank for the main engine
-
- //Configure the main engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-
-
- //Enable a proper RAM memory bank for sub engine
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
- //Configure the sub engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-#endif
-
-#ifdef TILES
- //Graphics (Part 3)
- //Enable a proper RAM memory bank for the main engine
- VRAM_A_CR = VRAM_ENABLE //Enable
- | VRAM_A_MAIN_BG; //Bank for the main engine
-
- //Configure the main engine in mode 0 (2D) and activate Backgrounds 3 and 0
- REG_DISPCNT = MODE_0_2D | DISPLAY_BG0_ACTIVE | DISPLAY_BG3_ACTIVE;
-
-
- //Enable a proper RAM memory bank for sub engine
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
- //Configure the sub engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-#endif
-}
-
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h)
-{
-
- switch(bT)
- {
- case MAIN: P_Graphics_mainBuffer = buffer;
- P_Graphics_mainW = w;
- P_Graphics_mainH = h;
- break;
- case SUB: P_Graphics_subBuffer = buffer;
- P_Graphics_subW = w;
- P_Graphics_subH = h;
- break;
- }
-}
-
-void FillScreen(enum BUFFER_TYPE t, u16 color)
-{
- int i;
- switch(t)
- {
- case MAIN:
- //Fill the whole screen (256*192) with the given color
- for(i = 0; i=0 && top <=191) //Check boundaries of top
- if(bottom >= 0 && bottom <=191) //Check boundaries of bottom
- if(left >=0 && left <= 255) //Check boundaries of left
- if(right >=0 && right <=255) //Check boundaries of right
- for(row = top; row < bottom; row++) //For rows from top to bottom
- for(col = left; col < right; col++) //And for column from left to right
- P_Graphics_mainBuffer[row*256 + col] = color; //Assign the color
-}
-
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color)
-{
- int col;
- if(bT == MAIN) //Check that we want to use the Main engine
- if(y >= 0 && y <=191) //Check the boundaries of y
- if(x >=0 && x <= 255) //Check the boundaries of x
- if(x2 >=0 && x2 <=255) //Check the boundaries of x2
- for(col = x; col < x2; col++) //For columns from x to x2
- P_Graphics_mainBuffer[y*256 + col] = color; //Assign the color
-}
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color)
-{
- int row;
- if(bT == MAIN) //Check that we want to use the Main engine
- if(y >= 0 && y <=191) //Check the boundaries of y
- if(y2 >=0 && y2 <= 191) //Check the boundaries of y2
- if(x >=0 && x <=255) //Check the boundaries of x
- for(row = y; row < y2; row++) //For row from y to y2
- P_Graphics_mainBuffer[row*256 + x] = color; //Assign the color
-}
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color)
-{
- if(bT == MAIN) //Check that we want to use the Main engine
- if(top >=0 && top <=191) //Check boundaries of top
- if(bottom >= 0 && bottom <=191) //Check boundaries of bottom
- if(left >=0 && left <= 255) //Check boundaries of left
- if(right >=0 && right <=255) //Check boundaries of right
- if(top < bottom && left < right)
- {
- //Vertical line on the left
- DrawVerticalLine(MAIN, top, bottom, left, color);
- //Verticla line on the right
- DrawVerticalLine(MAIN, top, bottom, right, color);
- //Horizontal line in top
- DrawHorizontalLine(MAIN, left, right, top, color);
- //Horizontal line on the bottom
- DrawHorizontalLine(MAIN, left, right, bottom, color);
- }
-}
-
-
diff --git a/labs/lab-8/source/P_Graphics.h b/labs/lab-8/source/P_Graphics.h
deleted file mode 100644
index a3f4eef..0000000
--- a/labs/lab-8/source/P_Graphics.h
+++ /dev/null
@@ -1,112 +0,0 @@
-#pragma once
-
-#include
-//#define FB0
-//#define ROTOSCALE
-#define TILES
-
-enum BUFFER_TYPE
-{
- MAIN,
- SUB,
-};
-
-//members
-extern u16* P_Graphics_mainBuffer;
-extern u16* P_Graphics_subBuffer;
-extern int P_Graphics_mainW;
-extern int P_Graphics_mainH;
-extern int P_Graphics_subW;
-extern int P_Graphics_subH;
-
-/*
- This function does not receive any input parameter. It initializes the main
- graphical engine to be used with the Framebuffer Mode 0 (FB0).
- It also enables the corresponding VRAM bank to be used.
-*/
-void P_Graphics_setup_main();
-
-
-/*
- Function that assigns the buffer (already implemented) and its size
- */
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h);
-
-
-/*
- This function fills all the screen of the given engine (MAIN or SUB)
- with the input color.
- */
-void FillScreen(enum BUFFER_TYPE t, u16 color);
-
-
-/*
- This function fills a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter specifies the buffer where we want to fill
- the rectangle. Remember that there are two graphical engines (MAIN and SUB)
- for both screens of the NDS. In this practical work we will only use the
- MAIN engine since Framebuffer Mode is only available in this engine.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to fill. It is recommended to check that these
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to fill the rectangle.
- Remember that colors are represented with 16bit words in the Nintendo DS.
-*/
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
-
-
-/*
- This function draws an horizontal line of 1 pixel width between the
- coordinates (x,y) and (x2,y) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous function.
-- int x, x2, y: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- function.
-*/
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color);
-
-
-/*
- This function draws a vertical line of 1 pixel width between the coordinates
- (x,y) and (x,y2) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int y, y2, x: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- functions.
-*/
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color);
-
-
-/*
- This function draws a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color. Note that this function is
- different to the one that fills the rectangle. This function only draws
- the rectangle (the borders). It is recommended to re-use the already
- implemented functions to draw lines.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to draw. It is recommended to check that this
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to draw the borders of the
- rectangle.
-*/
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
diff --git a/labs/lab-8/source/P_Initializer.c b/labs/lab-8/source/P_Initializer.c
deleted file mode 100644
index 42fb3ec..0000000
--- a/labs/lab-8/source/P_Initializer.c
+++ /dev/null
@@ -1,23 +0,0 @@
-#include "P_Initializer.h"
-
-#include "P_Map16x16.h"
-
-void P_InitNDS() {
- //Initialize the main engine
- P_Graphics_setup_main();
-
- //Set correctly the buffer to write
-#ifdef FB0
- P_Graphics_assignBuffer(MAIN, (u16 *) VRAM_A, 256, 192);
-#endif
-
-#ifdef ROTOSCALE
- P_Graphics_assignBuffer(MAIN, (u16 *) BG_GFX, 256, 192);
-#endif
-
- //Initialize the 16x16 field
- P_Map16x16_Init(12, 16);
-
- Audio_Init();
- Audio_PlayMusic();
-}
diff --git a/labs/lab-8/source/P_Initializer.h b/labs/lab-8/source/P_Initializer.h
deleted file mode 100644
index be57372..0000000
--- a/labs/lab-8/source/P_Initializer.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#include
-#include "P_Map16x16.h"
-#include "P_Audio.h"
-
-void P_InitNDS();
-
diff --git a/labs/lab-8/source/P_Map16x16.c b/labs/lab-8/source/P_Map16x16.c
deleted file mode 100644
index 75c6376..0000000
--- a/labs/lab-8/source/P_Map16x16.c
+++ /dev/null
@@ -1,212 +0,0 @@
-#include "P_Map16x16.h"
-#include "controls.h"
-#include "background.h"
-
-u16* mapMemory;
-int MapCols;
-int MapRows;
-
-//Declare the tiles emptyTile and fullTile as explained in the manual
-u8 emptyTile[64] =
-{
- 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,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,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0
-};
-
-u8 fullTile[64] =
-{
- 255,255,255,255,255,255,255,255,
- 255,254,254,254,254,254,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,254,254,254,254,254,255,
- 255,255,255,255,255,255,255,255
-};
-
-
-void P_Map16x16_configureBG2()
-{
- //Initialize Background
- BGCTRL[2] = BG_MAP_BASE(0) | BgSize_B16_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA = 256;
- REG_BG2PC = 0;
- REG_BG2PB = 0;
- REG_BG2PD = 256;
-
- //Initialize pointer to the graphic memory
- //mapMemory = ...
- mapMemory = BG_GFX;
-}
-
-void P_Map16x16_configureBG2_Sub()
-{
- //Configure BG 2 Sub. (Do not forget the BG_BMP_BASE configuration)
- BGCTRL_SUB[2] = BG_BMP_BASE(0) | BgSize_B8_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA_SUB = 256;
- REG_BG2PC_SUB = 0;
- REG_BG2PB_SUB = 0;
- REG_BG2PD_SUB = 256;
-
-
- swiCopy(controlsPal, BG_PALETTE_SUB, controlsPalLen/2);
- swiCopy(controlsBitmap, BG_GFX_SUB, controlsBitmapLen/2);
-}
-
-void P_Map16x16_configureBG0()
-{
- /*
- * GRAPHICS III
- *
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 0 (on the top).
- *
- * This background is going to be used to draw the game field where
- * the blocks are falling.
- *
- * The function does not return anything and it does not have any input
- * arguments. Background 0 (BG0) should be configured in the tiled mode
- * as a 32x32 tile grid and using one general color palette of 256
- * components (256 colors). The pointer to the map 'mapMemory' must be
- * correctly assigned before returning from the function
- */
-
- //Configure BG 0 to represent the game field
- BGCTRL[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(25) | BG_TILE_BASE(4);
-
- //Copy the empty tile and the full tile to the corresponding RAM location
- //according to the chosen TILE_BASE. If dmaCopy is used, do not forget to
- //cast the destination pointer as a 'byte pointer'
- //Hint: Use the macro BG_TILE_RAM to get the destination address
- dmaCopy(emptyTile, (u8*)BG_TILE_RAM(4), 64);
- dmaCopy(fullTile, (u8*)BG_TILE_RAM(4) + 64, 64);
-
- //Assign components 254 and 255 as explained in the manual
- BG_PALETTE[254] = ARGB16(1,0,0,0);
- BG_PALETTE[255] = ARGB16(1,31,15,0);
-
- //Set the pointer mapMemory to the RAM location of the chosen MAP_BASE
- //Hint: use the macro BG_MAP_RAM
- mapMemory = (u16*)BG_MAP_RAM(25);
-}
-
-void P_Map16x16_configureBG3()
-{
- /*GRAPHICS III
- *
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 3.
- *
- * This background is going to be used to background wall-paper.
- *
- * In exercise 2 the Background 3 (BG3) should be configure in rotoscale
- * mode with a 8 bits of pixel depth. Do not forget to copy the palette
- * correctly.
- *
- * In exercise 5 Background 3 (BG3) should be configured in the tiled mode
- * as a 32x32 tile grid and using one general color palette of 256
- * components (256 colors).
- */
-
-// /*
-// * Solution for exercise of background as a bit map
-// */
-// //Background configuration
-// BGCTRL[3] = BG_MAP_BASE(0) | BgSize_B8_256x256;
-//
-// //AFfine Matrix
-// bgTransform[3]->xdx = 256;
-// bgTransform[3]->ydy = 256;
-// bgTransform[3]->xdy = 0;
-// bgTransform[3]->ydx = 0;
-//
-// //Copy of the palette and the bitmap
-// dmaCopy(backgroundBitmap, BG_MAP_RAM(0), backgroundBitmapLen);
-// dmaCopy(backgroundPal, BG_PALETTE, backgroundPalLen);
-
-
- /*
- * Solution for the exercise with the tiled background
- */
-
- //Configure BG 3 for the background image as explained before
- BGCTRL[3] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(26) | BG_TILE_BASE(0);
-
- //Copy tiles, map and palette in the memory (use swicopy or memcpy)
- swiCopy(backgroundTiles, BG_TILE_RAM(0), backgroundTilesLen/2);
- swiCopy(backgroundMap, BG_MAP_RAM(26), backgroundMapLen/2);
- swiCopy(backgroundPal, BG_PALETTE, backgroundPalLen/2);
-
-}
-
-void P_Map16x16_Init( int cols, int rows )
-{
- MapCols=cols;
- MapRows=rows;
-#ifdef ROTOSCALE
- //Configure BG2
- P_Map16x16_configureBG2();
- // Configure Bottom background
- P_Map16x16_configureBG2_Sub();
-#endif
-
-#ifdef TILES
- //Configure BG3 for background image
- P_Map16x16_configureBG3();
- //Configure BG0 for game
- P_Map16x16_configureBG0();
- // Configure Bottom background
- P_Map16x16_configureBG2_Sub();
-#endif
-}
-
-
- void SetMap16x16To(int index16, bool full)
- {
- //switch x and y
- int x = index16 % MapCols;
- int y = index16 / MapCols;
- //now inverse x
- y = -(y-MapRows+1);
- index16 = x * MapRows + y;
-#ifdef FB0
- u16 value = full ? RGB15(31,0,0) : RGB15(0,0,0);
- FillRectangle(MAIN,x*16, x*16+16, y*16, y*16+16,value);
-#endif
-
-#ifdef ROTOSCALE
- u16 value = full ? ARGB16(1,31,0,0) : ARGB16(1,0,0,0);
- FillRectangle(MAIN,x*16, x*16+16, y*16, y*16+16,value);
-#endif
-
-#ifdef TILES
- int value = full ? 1 : 0;
- //convert index16x16 to 32x32
- //also make it fall right->left rather than top->bottom
- //
- // 0 1 2 3 12 8 4 0
- // 4 5 6 7 => 13 9 5 1
- // 8 9 10 11 => 14 10 6 2
- // 12 13 14 15 15 11 7 3
-
- //16x16->32*32 CONVERSION
- int index32;
- index32 = index16*2;
- index32 += (index16/16)*32;
- mapMemory[index32] = value;
- mapMemory[index32+1] = value;
- mapMemory[index32+32] = value;
- mapMemory[index32+32+1] = value;
-#endif
-}
diff --git a/labs/lab-8/source/P_Map16x16.h b/labs/lab-8/source/P_Map16x16.h
deleted file mode 100644
index 2339c8b..0000000
--- a/labs/lab-8/source/P_Map16x16.h
+++ /dev/null
@@ -1,36 +0,0 @@
-
-#include
-#include "P_Graphics.h"
-
-extern u16* mapMemory;
-extern int MapCols;
-extern int MapRows;
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Main Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Main Engine must be configured in Rotoscale
- * mode to be used as a bitmap with a depth colour of 16 bits. This
- * background will be used as a canvas of pixels (like in the Frame Buffer
- * Mode) to display the game field in the upper screen.
- */
-void P_Map16x16_configureBG2();
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Sub Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Sub Engine must be configured in Rotoscale
- * mode with a depth of colours of 8 bits. This background will be used
- * to show an image in the bottom screen.
- */
-void P_Map16x16_configureBG2_Sub();
-
-
-void P_Map16x16_configureBG0();
-void P_Map16x16_configureBG3();
-void SetMap16x16To(int index16, bool full);
-void P_Map16x16_Init( int cols, int rows );
diff --git a/labs/lab-8/source/Tetris/.svn/all-wcprops b/labs/lab-8/source/Tetris/.svn/all-wcprops
deleted file mode 100644
index 000add6..0000000
--- a/labs/lab-8/source/Tetris/.svn/all-wcprops
+++ /dev/null
@@ -1,65 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 45
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris
-END
-TetrisShape.cs
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.cs
-END
-TetrisHUD.cs
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisHUD.cs
-END
-TetrisGameplay.h
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.h
-END
-TetrisGrid.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.cpp
-END
-TetrisShape.h
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.h
-END
-TetrisMenu.cs
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisMenu.cs
-END
-TetrisGrid.h
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.h
-END
-TetrisGameplay.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 63
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.cpp
-END
-TetrisShape.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris/TetrisShape.cpp
-END
-TetrisDefines.h
-K 25
-svn:wc:ra_dav:version-url
-V 60
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisDefines.h
-END
diff --git a/labs/lab-8/source/Tetris/.svn/entries b/labs/lab-8/source/Tetris/.svn/entries
deleted file mode 100644
index d40c647..0000000
--- a/labs/lab-8/source/Tetris/.svn/entries
+++ /dev/null
@@ -1,368 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tetris
-http://dstetris.googlecode.com/svn
-
-
-
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-TetrisShape.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-93bca2a5d4c7699c749d245e56bbb447
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5324
-
-TetrisHUD.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9b0079baa20c6673a42620e55ed1bd33
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4952
-
-TetrisGameplay.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-6e8205e7f2c4b0995f686b7e03aeb7e3
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-388
-
-TetrisGrid.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-b60a53fd2df6ee0eaeb539bde1c83f44
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5384
-
-TetrisShape.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-fbd520b56b403dc21c6ef073681c91d2
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-460
-
-TetrisMenu.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-46f4b010842a86cc00e87c2024e75fa5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-9881
-
-TetrisGrid.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9c8d2a85e36046170d0ef80bfcd6c163
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-647
-
-TetrisGameplay.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-e6128b8c5e3f024efb556f45ed6784a5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-3909
-
-TetrisShape.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-eeab41f6e1c30a1149806657a70de78e
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4588
-
-TetrisDefines.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-43f8a162e571e16b7dadf20c6147faba
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5579
-
diff --git a/labs/lab-8/source/Tetris/.svn/format b/labs/lab-8/source/Tetris/.svn/format
deleted file mode 100644
index ec63514..0000000
--- a/labs/lab-8/source/Tetris/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
deleted file mode 100644
index f7b8183..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
deleted file mode 100644
index 3e4217d..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- Gameplay_currentAction = actionToSend;
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //iprintf("GameOver\n");
- //bool isNewHighScore = TetrisGame.highScore.IsHighScore(playerName, playerScore) && playerScore > 0;
- //TetrisGame.soundPlayer.FireSoundFX(isNewHighScore ? SOUND_FX.Win : SOUND_FX.Lose);
- //TetrisGame.menu.setMenuState(TetrisMenu.MENU_STATE.STATE_MENUGAMEOVER, isNewHighScore );
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
- Gameplay_displayNextShape(Shape_NextType);
-}
\ No newline at end of file
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
deleted file mode 100644
index 2c803ad..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
+++ /dev/null
@@ -1,15 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-#include "../Platform/P_Graphics.h"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
\ No newline at end of file
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
deleted file mode 100644
index 779826c..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
+++ /dev/null
@@ -1,231 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-/*
-void Grid_paint()
-{
- //paint bg
- //FillRectangle(MAIN, Grid_Top, Grid_Bottom, Grid_Left, Grid_Right, RGB15(10,10,10) | BIT(15));
-
- //paint elems
- int l, t;
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- l = Grid_Left + (i % PLAYFIELD_COLS) * Grid_TileW;
- t = Grid_Top + (i / PLAYFIELD_COLS) * Grid_TileH;
- //Rectangle cell = new Rectangle(l, t, mTileW, mTileH);
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, cell, Color.Yellow);
- //DrawRectangle(MAIN, t, t+Grid_TileH, l, l+Grid_TileW, RGB15(10,25,10) | BIT(15));
-
- //if(Grid_Cells[i])//more fancy graphics for occupied cells
- {
- //TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, cell, Color.Yellow);
- }
- }
-
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, background, Color.Red);
-
-}*/
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
\ No newline at end of file
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
deleted file mode 100644
index 417d538..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
deleted file mode 100644
index b279247..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
+++ /dev/null
@@ -1,117 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisHud : TetrisConstants
- {
-
- public static void paintRightHud(int right, int top, int score, int nextType)
- {
- int x, y;
-
- //score
- x = right - HUD_SCORE_TEXT_OFFSET;
- y = top + MARGIN_TOP + HUD_SCORE_Y_START;
- SpecificTools.QuickDrawString("Score", x, y, TetrisGame.FontSmall, HUD_SCORE_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += HUD_SCORE_INTERLINE;
- SpecificTools.QuickDrawString("" + score, x, y, TetrisGame.FontSmall, HUD_SCORE_NUM_COLOR, SpecificTools.Align.Right);
-
- //next shape
- displayNextShape(right, top, nextType);
-
- //top scores
- displayTopScores(right, top);
-
- }
-
-
- public static void displayNextShape(int startX, int startY, int nextType)
- {
- int tmpX, tmpY, offset;
- int i = 0;
- int x = startX - HUD_NEXT_TEXT_OFFSET;
- int y = startY + MARGIN_TOP + HUD_NEXT_WORD_Y_START;
-
- SpecificTools.QuickDrawString("Next", x, y, TetrisGame.FontSmall, HUD_NEXT_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- x = startX - HUD_NEXT_SHAPE_X_START;
- y = startY + MARGIN_TOP + HUD_NEXT_SHAPE_Y_START;
- tmpX = x;
- tmpY = y;
- offset = (nextType * SHAPE_TABLE_TYPE_OFFSET) + START_ORIENTATION * SHAPE_TABLE_ELEMS_PER_ROW;
- do
- {
- TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, new Rectangle(tmpX, tmpY, HUD_NEXT_SHAPE_CELL_SIZE, HUD_NEXT_SHAPE_CELL_SIZE), HUD_NEXT_SHAPE_COLOR);
- switch (SHAPE_TABLE[offset + i])
- {
- case C_LEFT:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_RIGHT:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_UP:
- tmpX = x;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_DOWN:
- tmpX = x;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_DOWN:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_DOWN:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_UP:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_UP:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT * 2:
- tmpX = x - (HUD_NEXT_SHAPE_CELL_OFFSET * 2);//i am cheating here and moving to the left for better hud display (anchor is on right)
- tmpY = y;
- break;
- default:
- //need to manage
- break;
- }
- i++;
- } while (i < MAX_ELEMS);
- }
-
- public static void displayTopScores(int x, int y)
- {
-
- x -= HUD_TOP_SCORES_TEXT_OFFSET;
- y += MARGIN_TOP + HUD_TOP_SCORES_Y_START;
-
- //paint title
- SpecificTools.QuickDrawString("TopScore", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_TITLE_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += 30;
-
- for (int i = 0; i < TetrisGame.highScore.CurrentTopScores.Count; i++, y += 24)
- {
- String name = TetrisGame.highScore.CurrentTopScores.PlayerName[i];
- int score = TetrisGame.highScore.CurrentTopScores.Score[i];
- if(score > 0)
- SpecificTools.QuickDrawString((i + 1) + ". " + name + ": " + score, x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
- else
- SpecificTools.QuickDrawString("No Score yet", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
-
- }
- }
- }
-}
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
deleted file mode 100644
index 3cffb77..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
+++ /dev/null
@@ -1,242 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisMenu
- {
-
- public enum MENU_STATE
- {
- STATE_MENUOFF,
- STATE_MENUSTART,
- STATE_MENURESUME,
- STATE_MENUGAMEOVER,
- STATE_ENTERNAME,
- }
-
- private MENU_STATE status;
- private int currentSelected;
- private int currentAvailableOptions;
- private int currentLateralSelected;
- private int currentLateralAvailableOptions;
- private bool allowcycle;
- private String[] currentOptions;
- private byte[] player;
- private Color bkgColor;
- private Color wordColor;
- private Color wordColorSelected;
- private bool isHighScore;
-
- public TetrisMenu()
- {
- player = new byte[3];
- bkgColor = new Color(192, 192, 192, 216);
- wordColor = Color.Black;
- wordColorSelected = Color.Green;
- setMenuState(MENU_STATE.STATE_MENUSTART);
- }
-
- public void setMenuState(MENU_STATE state, bool highScore)
- {
- setMenuState(state);
- isHighScore = highScore;//MUST be called after set state because set state sets it to default
- }
-
- public void setMenuState( MENU_STATE state )
- {
- isHighScore = false;
- status = state;
- currentSelected = 0; //always reset this
- currentLateralSelected = 0;
- currentLateralAvailableOptions = 0;//default
- allowcycle = false;//default
- switch (status)
- {
- case MENU_STATE.STATE_MENURESUME:
- currentOptions = MENU_RESUME_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUGAMEOVER:
- currentOptions = MENU_RESTART_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUSTART:
- currentOptions = MENU_START_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_ENTERNAME:
- currentOptions = EMPTY_STRINGS;
- currentAvailableOptions = 26;//alphabet!
- allowcycle = true;
- currentLateralAvailableOptions = 4; //three letters + ok
- for (int i = 0; i < player.Length; i++)
- player[i] = 0;
- break;
- }
- }
-
- public bool IsMenuOff()
- {
- return status == MENU_STATE.STATE_MENUOFF;
- }
-
- public void update_menu(Platform.Input.ACTION a)
- {
- switch (a)
- {
- case Platform.Input.ACTION.RIGHT:
- if (currentLateralSelected < currentLateralAvailableOptions)
- currentLateralSelected++;
- break;
- case Platform.Input.ACTION.LEFT:
- if (currentLateralSelected > 0)
- currentLateralSelected--;
- break;
- case Platform.Input.ACTION.DOWN:
- if (currentSelected < currentAvailableOptions - 1)
- currentSelected++;
- else if (allowcycle)
- currentSelected = 0;
- break;
- case Platform.Input.ACTION.UP:
- if (currentSelected > 0)
- currentSelected--;
- else if (allowcycle)
- currentSelected = currentAvailableOptions-1;
- break;
- case Platform.Input.ACTION.SELECT:
-
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
-
- if (currentOptions.Length == 0)
- {
- if (currentLateralSelected == 3)
- {
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < 3; i++)
- {
- builder.Append(((char)('A' + player[i])));
- }
- TetrisGame.SetPlayerName(builder.ToString());
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else
- {
- update_menu(Platform.Input.ACTION.DOWN);//considering enter on leters is down
- return;
- }
- }
- else if (currentOptions[currentSelected] == commandStart)
- {
- setMenuState(MENU_STATE.STATE_ENTERNAME);
- }
- else if (currentOptions[currentSelected] == commandResume)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else if (currentOptions[currentSelected] == commandQuit)
- {
- TetrisGame.ExitGame();
- }
- else if (currentOptions[currentSelected] == commandRestart)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- TetrisGame.RestartGame();
- }
- break;
- }
-
- //specific for player name menu
- if (status == MENU_STATE.STATE_ENTERNAME && currentLateralSelected < 3)
- {
- if(a==XNATetris.Platform.Input.ACTION.DOWN || a == XNATetris.Platform.Input.ACTION.UP)
- {
- player[currentLateralSelected] = (byte)currentSelected;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- }
- else if (a == XNATetris.Platform.Input.ACTION.LEFT || a == XNATetris.Platform.Input.ACTION.RIGHT)
- currentSelected = player[currentLateralSelected];
- }
- }
-
-
- public void paint()
- {
- int w, h;
- if (status != MENU_STATE.STATE_MENUOFF)
- {
- w = TetrisGame.graphics.PreferredBackBufferWidth;
- h = TetrisGame.graphics.PreferredBackBufferHeight;
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(0, 0, w, h), bkgColor);
- SpecificTools.QuickDrawString("XNA Tetris by Chris FERRARIO @ chris-ferrario.com", 20, 20, TetrisGame.FontSmall, Color.Blue, SpecificTools.Align.Left, true, Color.White);
- paintMenuStrings(currentOptions, w, h);
- paintSpecific(w,h);
- }
- }
-
- private void paintMenuStrings(String[] options, int screenW, int screenH)
- {
- screenH /= options.Length + 1;
- int y = screenH;
- for (int i = 0; i < options.Length; i++, y += screenH)
- {
- SpecificTools.QuickDrawString(options[i], screenW / 2, y, TetrisGame.FontBig, i == currentSelected ? wordColorSelected : wordColor, SpecificTools.Align.Center, true, Color.White);
- }
- }
-
- private void paintSpecific(int screenW, int screenH)
- {
- if(status == MENU_STATE.STATE_MENUGAMEOVER)
- {
- String message = isHighScore ? "Congratulations you have reached a high score!" : "Sorry you have lost without achieving a high score";
- SpecificTools.QuickDrawString(message, screenW / 2, 80, TetrisGame.FontSmall, Color.Red, SpecificTools.Align.Center, true, Color.White);
- }
- else if (status == MENU_STATE.STATE_ENTERNAME)
- {
- int interspace = 40;
- int x = screenW / 2;
- int y = 120;
- SpecificTools.QuickDrawString("Enter your desired name:", x, y, TetrisGame.FontSmall, Color.Black, SpecificTools.Align.Center, true, Color.White);
-
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(x - 100, y + 60, 120, 50), Color.White);
- x -= 2 * interspace;
- y += 60;
-
-
- for (int i = 0; i < 3; i++, x+=interspace)
- {
- SpecificTools.QuickDrawString(((char)('A' + player[i])).ToString(), x, y, TetrisGame.FontBig, i == currentLateralSelected ? Color.Red: Color.Blue, SpecificTools.Align.Center);
- }
- SpecificTools.QuickDrawString("Confirm", x, y + 14, TetrisGame.FontSmall, currentLateralSelected == 3 ? Color.Red : Color.Blue, SpecificTools.Align.Left, true, Color.White);
- }
- }
-
-
- //Menu Tables
- private static String commandStart = "Start Game";
- private static String commandResume = "Resume Game";
- private static String commandRestart = "Restart Game";
- private static String commandQuit = "Quit Game";
- private String[] MENU_START_STRINGS =
- {
- commandStart,
- commandQuit,
- };
- private String[] MENU_RESUME_STRINGS =
- {
- commandResume,
- commandQuit,
- };
- private String[] MENU_RESTART_STRINGS =
- {
- commandRestart,
- commandQuit,
- };
- private String[] EMPTY_STRINGS = {};
- }
-}
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
deleted file mode 100644
index 54701c5..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
+++ /dev/null
@@ -1,175 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- Audio_PlaySound( eSFX_CLUNK );
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
deleted file mode 100644
index dd53a2d..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
+++ /dev/null
@@ -1,170 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace XNATetris
-{
- class TetrisShape : TetrisConstants
- {
- public bool isGameOver = false;
- public bool isInited = false;
-
- private int mOrient;
- private int mType;
- private int mNextType;
- public int getNextType() { return mNextType; }
- private int mState;
- private int[] mElems;
-
- private Random mRand;
- private TetrisGrid mGrid;
-
-
- public TetrisShape(TetrisGrid g)
- {
- mGrid = g;
- mRand = new Random();
- mElems = new int[MAX_ELEMS];
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- }
-
- public bool spawn()
- {
- isGameOver = false;
- for (int i = 0; i < mElems.Length; i++)
- {
- mElems[i] = DONT_CHECK_CELL;
- }
- mType = mNextType;
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- mElems[ELEM_BASE] = START_CELL;
- mOrient = START_ORIENTATION;
- mState = STATE_USER;
- return alignFromOrientation(mOrient);
- }
-
- public void update(int currentAction)
- {
- if (mState == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (rotateShape(ROT_LEFT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (rotateShape(ROT_RIGHT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- mState = STATE_FALLING;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
- break;
- }
- }
- }
- }
-
- public bool IsFalling()
- {
- return mState == STATE_FALLING;
- }
-
- //true when need to recheck playfield
- public bool addGravity()
- {
- if (isInited)
- {
- //gravity
- bool falling = shiftCells(C_DOWN);
- if (!falling)
- {
- mState = STATE_LOCKED;
- isInited = false;
- return true;
- }
- }
- else
- {
- isInited = spawn();
-
- if (!isInited)//this means no room to init = game over
- {
- isGameOver = true;
- }
- }
- return false;
- }
-
- private bool rotateShape(int rotation)
- {
- int orient = mOrient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = alignFromOrientation(orient);
- if (hasRotated)
- mOrient = orient;
-
- return hasRotated;
- }
-
-
- private bool alignFromOrientation(int orientation)
- {
- int[] newElemPos = (int[])mElems.Clone();
- int typeOffset = (mType * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- newElemPos[ELEM_1] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- newElemPos[ELEM_2] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- newElemPos[ELEM_3] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return tryToMove(newElemPos);
- }
-
-
- private bool shiftCells(int cellscrool)
- {
- int[] tmpElems = (int[])mElems.Clone();
- for (int i = 0; i < mElems.Length; i++)
- {
- if (mElems[i] != DONT_CHECK_CELL)
- tmpElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (mGrid.getRow(mElems[ELEM_BASE]) != mGrid.getRow(tmpElems[ELEM_BASE]))
- return false;
-
- return tryToMove(tmpElems);
- }
-
- private bool tryToMove(int[] newElemPos)
- {
- bool hasMoved = mGrid.tryToMoveCells(mElems, newElemPos);
- if (hasMoved)
- mElems = newElemPos;
- return hasMoved;
- }
-
- }
-}
diff --git a/labs/lab-8/source/Tetris/.svn/text-base/TetrisShape.h.svn-base b/labs/lab-8/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
deleted file mode 100644
index cf678ad..0000000
--- a/labs/lab-8/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-8/source/Tetris/TetrisDefines.h b/labs/lab-8/source/Tetris/TetrisDefines.h
deleted file mode 100644
index f7b8183..0000000
--- a/labs/lab-8/source/Tetris/TetrisDefines.h
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-8/source/Tetris/TetrisGameplay.cpp b/labs/lab-8/source/Tetris/TetrisGameplay.cpp
deleted file mode 100644
index cf676db..0000000
--- a/labs/lab-8/source/Tetris/TetrisGameplay.cpp
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- {
- Gameplay_currentAction = actionToSend;
- swiDelay(2000000);
- }
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //Game Over!
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
-// Gameplay_displayNextShape(Shape_NextType);
-}
diff --git a/labs/lab-8/source/Tetris/TetrisGameplay.h b/labs/lab-8/source/Tetris/TetrisGameplay.h
deleted file mode 100644
index 8345c72..0000000
--- a/labs/lab-8/source/Tetris/TetrisGameplay.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
diff --git a/labs/lab-8/source/Tetris/TetrisGrid.cpp b/labs/lab-8/source/Tetris/TetrisGrid.cpp
deleted file mode 100644
index a65be38..0000000
--- a/labs/lab-8/source/Tetris/TetrisGrid.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
diff --git a/labs/lab-8/source/Tetris/TetrisGrid.h b/labs/lab-8/source/Tetris/TetrisGrid.h
deleted file mode 100644
index 417d538..0000000
--- a/labs/lab-8/source/Tetris/TetrisGrid.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-8/source/Tetris/TetrisShape.cpp b/labs/lab-8/source/Tetris/TetrisShape.cpp
deleted file mode 100644
index d37b6bd..0000000
--- a/labs/lab-8/source/Tetris/TetrisShape.cpp
+++ /dev/null
@@ -1,174 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_isGameOver = false;
- Shape_isInited = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
diff --git a/labs/lab-8/source/Tetris/TetrisShape.h b/labs/lab-8/source/Tetris/TetrisShape.h
deleted file mode 100644
index cf678ad..0000000
--- a/labs/lab-8/source/Tetris/TetrisShape.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-8/source/Tools/.svn/all-wcprops b/labs/lab-8/source/Tools/.svn/all-wcprops
deleted file mode 100644
index a6e3218..0000000
--- a/labs/lab-8/source/Tools/.svn/all-wcprops
+++ /dev/null
@@ -1,17 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 43
-/svn/!svn/ver/2/trunk/dstetris/source/Tools
-END
-DrawTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 55
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/DrawTools.h
-END
-ArrayTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 56
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/ArrayTools.h
-END
diff --git a/labs/lab-8/source/Tools/.svn/entries b/labs/lab-8/source/Tools/.svn/entries
deleted file mode 100644
index 2b30dfc..0000000
--- a/labs/lab-8/source/Tools/.svn/entries
+++ /dev/null
@@ -1,96 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tools
-http://dstetris.googlecode.com/svn
-
-
-
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-DrawTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-8ec827749fae42a9b2ca3aafba7d3477
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-288
-
-ArrayTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-73a5b8792e77a495b434fe3e1cf2d634
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1003
-
diff --git a/labs/lab-8/source/Tools/.svn/format b/labs/lab-8/source/Tools/.svn/format
deleted file mode 100644
index ec63514..0000000
--- a/labs/lab-8/source/Tools/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-8/source/Tools/.svn/text-base/ArrayTools.h.svn-base b/labs/lab-8/source/Tools/.svn/text-base/ArrayTools.h.svn-base
deleted file mode 100644
index 905d065..0000000
--- a/labs/lab-8/source/Tools/.svn/text-base/ArrayTools.h.svn-base
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-8/source/Tools/.svn/text-base/DrawTools.h.svn-base b/labs/lab-8/source/Tools/.svn/text-base/DrawTools.h.svn-base
deleted file mode 100644
index 61263cf..0000000
--- a/labs/lab-8/source/Tools/.svn/text-base/DrawTools.h.svn-base
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-8/source/Tools/ArrayTools.h b/labs/lab-8/source/Tools/ArrayTools.h
deleted file mode 100644
index b67d8fd..0000000
--- a/labs/lab-8/source/Tools/ArrayTools.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
diff --git a/labs/lab-8/source/Tools/DrawTools.h b/labs/lab-8/source/Tools/DrawTools.h
deleted file mode 100644
index 61263cf..0000000
--- a/labs/lab-8/source/Tools/DrawTools.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-8/source/main.c b/labs/lab-8/source/main.c
deleted file mode 100644
index 358e7c3..0000000
--- a/labs/lab-8/source/main.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/*---------------------------------------------------------------------------------
-
- $Id: main.c,v 1.5 2007/10/23 00:46:29 wntrmute Exp $
-
- Simple console print demo
- -- dovoto
-
----------------------------------------------------------------------------------*/
-#include
-#include
-#include
-#include
-#include
-#include "Tetris/TetrisDefines.h"
-#include "Tetris/TetrisGameplay.h"
-#include "P_Audio.h"
-#include "P_Controls.h"
-#include "P_Graphics.h"
-#include "P_Initializer.h"
-#include "P_Map16x16.h"
-
-//---------------------------------------------------------------------------------
-int main(void) {
-//---------------------------------------------------------------------------------
-
- P_InitNDS();
-
- srand( clock() );
- Gameplay_Load();
- int loops = 0;
- while( true ) {
- handleInput();
- Gameplay_update();
- Gameplay_draw();
- swiWaitForVBlank();
- loops++;
- }
-
- return 0;
-}
diff --git a/labs/lab-9/Controls/.root b/labs/lab-9/Controls/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-9/Controls/Makefile b/labs/lab-9/Controls/Makefile
deleted file mode 100755
index b5ece27..0000000
--- a/labs/lab-9/Controls/Makefile
+++ /dev/null
@@ -1,161 +0,0 @@
-#---------------------------------------------------------------------------------
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-# PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-build: FORCE
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d)
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-# precompiled:
-# @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-# soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- # @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
-
-FORCE: ;
diff --git a/labs/lab-9/Controls/source/main.c b/labs/lab-9/Controls/source/main.c
deleted file mode 100644
index c66ff8c..0000000
--- a/labs/lab-9/Controls/source/main.c
+++ /dev/null
@@ -1,83 +0,0 @@
-#include
-#include
-
-
-//Keys ISR
-void keysISR()
-{
- //Read the kEYINPUT register
- u16 keys = ~(REG_KEYINPUT);
-
- //Identify which key triggered the interrupt and print it in the console
- if(keys & KEY_UP)
- printf("Key UP pressed (ISR)\n");
- if(keys & KEY_DOWN)
- printf("Key DOWN pressed (ISR)\n");
- if(keys & KEY_RIGHT)
- printf("Key RIGHT pressed (ISR)\n");
- if(keys & KEY_LEFT)
- printf("Key LEFT pressed (ISR)\n");
-}
-
-//---------------------------------------------------------------------------------
-int main(void) {
-//---------------------------------------------------------------------------------
-
- //Initialize the console
- consoleDemoInit();
- scanKeys();
-
- /*************
- * Exercise 2
- *************/
- //Initialize the interrupt system
-// irqInit();
- /*Configure the keys to throw an interrupt with the keys
- UP, DOWN, LEFT or RIGHT*/
-// REG_KEYCNT = KEY_LEFT | KEY_RIGHT | KEY_DOWN | KEY_UP | 1<<14;
- //Set the ISR to the IRQ line and enable the IRQ line
-// irqSet(IRQ_KEYS, &keysISR);
-// irqEnable(IRQ_KEYS);
- //Do not forget to enable the IRQ line for the VBLANK
-// irqEnable(IRQ_VBLANK);
-
- /********************/
-
-
- //The main infinite loop
- while(1) {
- /*************
- * Exercise 1
- *************/
- //Scan the keys
- scanKeys();
- //Identify which key was pressed and print it in the console
- u16 keys = keysDown();
- if(keys & KEY_A)
- printf("Key A pressed \n");
- if(keys & KEY_B)
- printf("Key B pressed \n");
- if(keys & KEY_X)
- printf("Key X pressed \n");
- if(keys & KEY_Y)
- printf("Key Y pressed \n");
-
- /*******************/
-
-
- /*************
- * Exercise 3 (Do not forget to comment exercise 2)
- *************/
- //Declare a touchPosition variable
- touchPosition touch;
- //Read the touchscreen
- touchRead(&touch);
- //Identify a valid touched coordinates and print them
- if(touch.px | touch.py)
- printf("Touch in (%i,%i)\n", touch.px, touch.py);
-
- /**************/
-
- swiWaitForVBlank();
- }
-}
diff --git a/labs/lab-9/Tetris4/.root b/labs/lab-9/Tetris4/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-9/Tetris4/Makefile b/labs/lab-9/Tetris4/Makefile
deleted file mode 100755
index b5ece27..0000000
--- a/labs/lab-9/Tetris4/Makefile
+++ /dev/null
@@ -1,161 +0,0 @@
-#---------------------------------------------------------------------------------
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-# PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-build: FORCE
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d)
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-# precompiled:
-# @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-# soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- # @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
-
-FORCE: ;
diff --git a/labs/lab-9/Tetris4/audio/clunk.wav b/labs/lab-9/Tetris4/audio/clunk.wav
deleted file mode 100644
index c505e8e..0000000
Binary files a/labs/lab-9/Tetris4/audio/clunk.wav and /dev/null differ
diff --git a/labs/lab-9/Tetris4/audio/swish.wav b/labs/lab-9/Tetris4/audio/swish.wav
deleted file mode 100644
index 414e27d..0000000
Binary files a/labs/lab-9/Tetris4/audio/swish.wav and /dev/null differ
diff --git a/labs/lab-9/Tetris4/audio/tetrix.xm b/labs/lab-9/Tetris4/audio/tetrix.xm
deleted file mode 100644
index 0dc531d..0000000
Binary files a/labs/lab-9/Tetris4/audio/tetrix.xm and /dev/null differ
diff --git a/labs/lab-9/Tetris4/data/background.grit b/labs/lab-9/Tetris4/data/background.grit
deleted file mode 100644
index 7b0d0eb..0000000
--- a/labs/lab-9/Tetris4/data/background.grit
+++ /dev/null
@@ -1,6 +0,0 @@
--g
--gt
--gB8
--p
--pn253
--m
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/data/background.png b/labs/lab-9/Tetris4/data/background.png
deleted file mode 100644
index 58d2d33..0000000
Binary files a/labs/lab-9/Tetris4/data/background.png and /dev/null differ
diff --git a/labs/lab-9/Tetris4/data/controls.grit b/labs/lab-9/Tetris4/data/controls.grit
deleted file mode 100644
index f6112ae..0000000
--- a/labs/lab-9/Tetris4/data/controls.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--g
--gb
--gB8
--p
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/data/controls.png b/labs/lab-9/Tetris4/data/controls.png
deleted file mode 100644
index a5a6935..0000000
Binary files a/labs/lab-9/Tetris4/data/controls.png and /dev/null differ
diff --git a/labs/lab-9/Tetris4/source/P_Audio.c b/labs/lab-9/Tetris4/source/P_Audio.c
deleted file mode 100644
index b432b62..0000000
--- a/labs/lab-9/Tetris4/source/P_Audio.c
+++ /dev/null
@@ -1,21 +0,0 @@
-#include "P_Audio.h"
-
-void Audio_Init()
-{
-
-}
-
-void Audio_PlaySoundEX( int i )
-{
-
-}
-
-void Audio_PlaySound( int sound )
-{
-
-}
-
-void Audio_PlayMusic()
-{
-
-}
diff --git a/labs/lab-9/Tetris4/source/P_Audio.h b/labs/lab-9/Tetris4/source/P_Audio.h
deleted file mode 100644
index 9e03d5c..0000000
--- a/labs/lab-9/Tetris4/source/P_Audio.h
+++ /dev/null
@@ -1,9 +0,0 @@
-#pragma once
-
-#include
-#include
-
-void Audio_Init();
-void Audio_PlaySoundEX( int i );
-void Audio_PlaySound( int sound );
-void Audio_PlayMusic();
diff --git a/labs/lab-9/Tetris4/source/P_Controls.c b/labs/lab-9/Tetris4/source/P_Controls.c
deleted file mode 100644
index 6465129..0000000
--- a/labs/lab-9/Tetris4/source/P_Controls.c
+++ /dev/null
@@ -1,71 +0,0 @@
-#include "P_Controls.h"
-#include "Tetris/TetrisGameplay.h"
-
-void handleTouchPad()
-{
- // Read the touch position.
- touchPosition touch;
- touchRead(&touch);
-
- //Only if px or py are different to 0 handle the touch
- if(touch.px || touch.py)
- {
- //Rotation
- if(touch.px > 170 && touch.px < 256)
- {
- if(touch.py > 0 && touch.py < 96)
- Gameplay_handleInput(UP);
- else
- Gameplay_handleInput(DOWN);
- }
- //Lateral movement
- else if(touch.px > 85 && touch.px < 170)
- {
- if(touch.py > 0 && touch.py < 96)
- Gameplay_handleInput(LEFT);
- else
- Gameplay_handleInput(RIGHT);
-
- }
- //Block fall down
- else if(touch.px > 0 && touch.px < 85)
- {
- Gameplay_handleInput(SELECT);
- }
- }
-}
-
-
-/*
- * This function handles the input by monitoring the keys and the touchscreen
- * and invoking the function Gameplay_HandleInput(...) with the correct input
- * value
- */
-void handleInput()
-{
- //Scan the keys
- scanKeys();
-
- /* Identify the keys and map the action according to the table given in
- * the manual. Call the function Gameplay_handleInput(..) to send an action
- * to the logic of the game */
- u16 keys = keysDown();
- if(keys & KEY_A)
- Gameplay_handleInput(SELECT);
- else if(keys & KEY_LEFT)
- Gameplay_handleInput(UP);
- else if(keys & KEY_RIGHT)
- Gameplay_handleInput(DOWN);
- else if (keys & KEY_UP)
- Gameplay_handleInput(LEFT);
- else if (keys & KEY_DOWN)
- Gameplay_handleInput(RIGHT);
-
-
- //Call the touch-handling function
- handleTouchPad();
-
- //Update the game and redraw the blocks
- Gameplay_update();
- Gameplay_draw();
-}
diff --git a/labs/lab-9/Tetris4/source/P_Controls.h b/labs/lab-9/Tetris4/source/P_Controls.h
deleted file mode 100644
index 946b8a3..0000000
--- a/labs/lab-9/Tetris4/source/P_Controls.h
+++ /dev/null
@@ -1,9 +0,0 @@
-
-#include
-
-/*
- * This function handles the input by monitoring the keys and the touchscreen
- * and invoking the function GamePlay_HandleInput(...) with the correct input
- * value
- */
-void handleInput();
diff --git a/labs/lab-9/Tetris4/source/P_Graphics.c b/labs/lab-9/Tetris4/source/P_Graphics.c
deleted file mode 100644
index 462941e..0000000
--- a/labs/lab-9/Tetris4/source/P_Graphics.c
+++ /dev/null
@@ -1,148 +0,0 @@
-#include "P_Graphics.h"
-
-//members
-u16* P_Graphics_mainBuffer;
-u16* P_Graphics_subBuffer;
-int P_Graphics_mainW;
-int P_Graphics_mainH;
-int P_Graphics_subW;
-int P_Graphics_subH;
-
-void P_Graphics_setup_main()
-{
-#ifdef FB0
- //Graphics (Part 1)
- //Set the mode to FB0
- REG_DISPCNT = MODE_FB0;
-
- //Set the coresponding VRAM bank
- VRAM_A_CR = VRAM_ENABLE //Enable the Bank
- | VRAM_A_LCD; //Assign it to the Main engine in FB0
-
-#endif
-
-#ifdef ROTOSCALE
- //Graphics (Part 2)
- //Enable a proper RAM memory bank for the main engine
- VRAM_A_CR = VRAM_ENABLE //Enable
- | VRAM_A_MAIN_BG; //Bank for the main engine
-
- //Configure the main engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-
-
- //Enable a proper RAM memory bank for sub engine
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
- //Configure the sub engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-#endif
-
-#ifdef TILES
- //Graphics (Part 3)
- //Enable a proper RAM memory bank for the main engine
- VRAM_A_CR = VRAM_ENABLE //Enable
- | VRAM_A_MAIN_BG; //Bank for the main engine
-
- //Configure the main engine in mode 0 (2D) and activate Backgrounds 3 and 0
- REG_DISPCNT = MODE_0_2D | DISPLAY_BG0_ACTIVE | DISPLAY_BG3_ACTIVE;
-
-
- //Enable a proper RAM memory bank for sub engine
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
- //Configure the sub engine in mode 5 (2D) and activate Background 2
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-#endif
-}
-
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h)
-{
-
- switch(bT)
- {
- case MAIN: P_Graphics_mainBuffer = buffer;
- P_Graphics_mainW = w;
- P_Graphics_mainH = h;
- break;
- case SUB: P_Graphics_subBuffer = buffer;
- P_Graphics_subW = w;
- P_Graphics_subH = h;
- break;
- }
-}
-
-void FillScreen(enum BUFFER_TYPE t, u16 color)
-{
- int i;
- switch(t)
- {
- case MAIN:
- //Fill the whole screen (256*192) with the given color
- for(i = 0; i=0 && top <=191) //Check boundaries of top
- if(bottom >= 0 && bottom <=191) //Check boundaries of bottom
- if(left >=0 && left <= 255) //Check boundaries of left
- if(right >=0 && right <=255) //Check boundaries of right
- for(row = top; row < bottom; row++) //For rows from top to bottom
- for(col = left; col < right; col++) //And for column from left to right
- P_Graphics_mainBuffer[row*256 + col] = color; //Assign the color
-}
-
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color)
-{
- int col;
- if(bT == MAIN) //Check that we want to use the Main engine
- if(y >= 0 && y <=191) //Check the boundaries of y
- if(x >=0 && x <= 255) //Check the boundaries of x
- if(x2 >=0 && x2 <=255) //Check the boundaries of x2
- for(col = x; col < x2; col++) //For columns from x to x2
- P_Graphics_mainBuffer[y*256 + col] = color; //Assign the color
-}
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color)
-{
- int row;
- if(bT == MAIN) //Check that we want to use the Main engine
- if(y >= 0 && y <=191) //Check the boundaries of y
- if(y2 >=0 && y2 <= 191) //Check the boundaries of y2
- if(x >=0 && x <=255) //Check the boundaries of x
- for(row = y; row < y2; row++) //For row from y to y2
- P_Graphics_mainBuffer[row*256 + x] = color; //Assign the color
-}
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color)
-{
- if(bT == MAIN) //Check that we want to use the Main engine
- if(top >=0 && top <=191) //Check boundaries of top
- if(bottom >= 0 && bottom <=191) //Check boundaries of bottom
- if(left >=0 && left <= 255) //Check boundaries of left
- if(right >=0 && right <=255) //Check boundaries of right
- if(top < bottom && left < right)
- {
- //Vertical line on the left
- DrawVerticalLine(MAIN, top, bottom, left, color);
- //Verticla line on the right
- DrawVerticalLine(MAIN, top, bottom, right, color);
- //Horizontal line in top
- DrawHorizontalLine(MAIN, left, right, top, color);
- //Horizontal line on the bottom
- DrawHorizontalLine(MAIN, left, right, bottom, color);
- }
-}
-
-
diff --git a/labs/lab-9/Tetris4/source/P_Graphics.h b/labs/lab-9/Tetris4/source/P_Graphics.h
deleted file mode 100644
index a3f4eef..0000000
--- a/labs/lab-9/Tetris4/source/P_Graphics.h
+++ /dev/null
@@ -1,112 +0,0 @@
-#pragma once
-
-#include
-//#define FB0
-//#define ROTOSCALE
-#define TILES
-
-enum BUFFER_TYPE
-{
- MAIN,
- SUB,
-};
-
-//members
-extern u16* P_Graphics_mainBuffer;
-extern u16* P_Graphics_subBuffer;
-extern int P_Graphics_mainW;
-extern int P_Graphics_mainH;
-extern int P_Graphics_subW;
-extern int P_Graphics_subH;
-
-/*
- This function does not receive any input parameter. It initializes the main
- graphical engine to be used with the Framebuffer Mode 0 (FB0).
- It also enables the corresponding VRAM bank to be used.
-*/
-void P_Graphics_setup_main();
-
-
-/*
- Function that assigns the buffer (already implemented) and its size
- */
-void P_Graphics_assignBuffer(enum BUFFER_TYPE bT, u16* buffer, int w, int h);
-
-
-/*
- This function fills all the screen of the given engine (MAIN or SUB)
- with the input color.
- */
-void FillScreen(enum BUFFER_TYPE t, u16 color);
-
-
-/*
- This function fills a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter specifies the buffer where we want to fill
- the rectangle. Remember that there are two graphical engines (MAIN and SUB)
- for both screens of the NDS. In this practical work we will only use the
- MAIN engine since Framebuffer Mode is only available in this engine.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to fill. It is recommended to check that these
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to fill the rectangle.
- Remember that colors are represented with 16bit words in the Nintendo DS.
-*/
-void FillRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
-
-
-/*
- This function draws an horizontal line of 1 pixel width between the
- coordinates (x,y) and (x2,y) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous function.
-- int x, x2, y: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- function.
-*/
-void DrawHorizontalLine(enum BUFFER_TYPE bT, int x, int x2, int y, u16 color);
-
-
-/*
- This function draws a vertical line of 1 pixel width between the coordinates
- (x,y) and (x,y2) with the given color.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int y, y2, x: These parameters specify the coordinates of the line that we
- want to draw. It is recommended to check that this coordinates are correct
- (under the buffer boundaries) before starting drawing the line.
-- u16 color: This parameter is the color like explained in the previous
- functions.
-*/
-void DrawVerticalLine(enum BUFFER_TYPE bT, int y, int y2, int x, u16 color);
-
-
-/*
- This function draws a rectangle specified by the coordinates (top,left)
- and (bottom,right) with the given color. Note that this function is
- different to the one that fills the rectangle. This function only draws
- the rectangle (the borders). It is recommended to re-use the already
- implemented functions to draw lines.
-
-The input parameters are the following
-- BUFFER_TYPE bT: This parameter is the same to the one received in the
- previous functions.
-- int top, bottom, left, right: These parameters specify the coordinates of
- the rectangle that we want to draw. It is recommended to check that this
- coordinates are correct (under the buffer boundaries) before starting
- drawing the rectangle.
-- u16 color: This is the color that we will use to draw the borders of the
- rectangle.
-*/
-
-void DrawRectangle(enum BUFFER_TYPE bT, int top, int bottom, int left, int right, u16 color);
diff --git a/labs/lab-9/Tetris4/source/P_Initializer.c b/labs/lab-9/Tetris4/source/P_Initializer.c
deleted file mode 100644
index 3a1972c..0000000
--- a/labs/lab-9/Tetris4/source/P_Initializer.c
+++ /dev/null
@@ -1,24 +0,0 @@
-
-#include "P_Initializer.h"
-
-void P_InitNDS()
-{
- //Initialize the main engine
- P_Graphics_setup_main();
-
- //Set correctly the buffer to write
-#ifdef FB0
- P_Graphics_assignBuffer(MAIN, (u16*)VRAM_A,256,192);
-#endif
-
-#ifdef ROTOSCALE
- P_Graphics_assignBuffer(MAIN, (u16*)BG_GFX,256,192);
-#endif
-
- //Initialize the 16x16 field
- P_Map16x16_Init( 12, 16 );
-
- Audio_Init();
- Audio_PlayMusic();
-}
-
diff --git a/labs/lab-9/Tetris4/source/P_Initializer.h b/labs/lab-9/Tetris4/source/P_Initializer.h
deleted file mode 100644
index be57372..0000000
--- a/labs/lab-9/Tetris4/source/P_Initializer.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#include
-#include "P_Map16x16.h"
-#include "P_Audio.h"
-
-void P_InitNDS();
-
diff --git a/labs/lab-9/Tetris4/source/P_Map16x16.c b/labs/lab-9/Tetris4/source/P_Map16x16.c
deleted file mode 100644
index 718634e..0000000
--- a/labs/lab-9/Tetris4/source/P_Map16x16.c
+++ /dev/null
@@ -1,192 +0,0 @@
-
-#include "P_Map16x16.h"
-#include "controls.h"
-#include "background.h"
-
-u16* mapMemory;
-int MapCols;
-int MapRows;
-
-//Declare the tiles emptyTile and fullTile as explained in the manual
-u8 emptyTile[64] =
-{
- 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,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,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0
-};
-
-u8 fullTile[64] =
-{
- 255,255,255,255,255,255,255,255,
- 255,254,254,254,254,254,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,255,255,255,255,254,255,
- 255,254,254,254,254,254,254,255,
- 255,255,255,255,255,255,255,255
-};
-
-
-void P_Map16x16_configureBG2()
-{
- //Initialize Background
- BGCTRL[2] = BG_MAP_BASE(0) | BgSize_B16_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA = 256;
- REG_BG2PC = 0;
- REG_BG2PB = 0;
- REG_BG2PD = 256;
-
- //Initialize pointer to the graphic memory
- //mapMemory = ...
- mapMemory = BG_GFX;
-}
-
-void P_Map16x16_configureBG2_Sub()
-{
- //Configure BG 2 Sub. (Do not forget the BG_BMP_BASE configuration)
- BGCTRL_SUB[2] = BG_BMP_BASE(0) | BgSize_B8_256x256;
-
- //Affine Marix Transformation
- REG_BG2PA_SUB = 256;
- REG_BG2PC_SUB = 0;
- REG_BG2PB_SUB = 0;
- REG_BG2PD_SUB = 256;
-
-
- swiCopy(controlsPal, BG_PALETTE_SUB, controlsPalLen);
- swiCopy(controlsBitmap, BG_GFX_SUB, controlsBitmapLen);
-}
-
-void P_Map16x16_configureBG0()
-{
- /*
- * GRAPHICS III
- *
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 0 (on the top).
- *
- * This background is going to be used to draw the game field where
- * the blocks are falling.
- *
- * The function does not return anything and it does not have any input
- * arguments. Background 0 (BG0) should be configured in the tiled mode
- * as a 32x32 tile grid and using one general color palette of 256
- * components (256 colors). The pointer to the map 'mapMemory' must be
- * correctly assigned before returning from the function
- */
-
- //Configure BG 0 to represent the game field
- BGCTRL[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(25) | BG_TILE_BASE(4);
-
- //Copy the empty tile and the full tile to the corresponding RAM location
- //according to the chosen TILE_BASE. If dmaCopy is used, do not forget to
- //cast the destination pointer as a 'byte pointer'
- //Hint: Use the macro BG_TILE_RAM to get the destination address
- dmaCopy(emptyTile, (u8*)BG_TILE_RAM(4), 64);
- dmaCopy(fullTile, (u8*)BG_TILE_RAM(4) + 64, 64);
-
- //Assign components 254 and 255 as explained in the manual
- BG_PALETTE[254] = ARGB16(1,0,0,0);
- BG_PALETTE[255] = ARGB16(1,31,15,0);
-
- //Set the pointer mapMemory to the RAM location of the chosen MAP_BASE
- //Hint: use the macro BG_MAP_RAM
- mapMemory = (u16*)BG_MAP_RAM(25);
-}
-
-void P_Map16x16_configureBG3()
-{
- /*GRAPHICS III
- *
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 3.
- *
- * This background is going to be used to background wall-paper.
- *
- * In exercise 2 the Background 3 (BG3) should be configure in rotoscale
- * mode with a 8 bits of pixel depth. Do not forget to copy the palette
- * correctly.
- *
- * In exercise 5 Background 3 (BG3) should be configured in the tiled mode
- * as a 32x32 tile grid and using one general color palette of 256
- * components (256 colors).
- */
-
- //Configure BG 3 for the background image as explained before
- BGCTRL[3] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(26) | BG_TILE_BASE(0);
-
- //Copy tiles, map and palette in the memory (use swicopy or memcpy)
- swiCopy(backgroundTiles, BG_TILE_RAM(0), backgroundTilesLen);
- swiCopy(backgroundMap, BG_MAP_RAM(26), backgroundMapLen);
- swiCopy(backgroundPal, BG_PALETTE, backgroundPalLen);
-
-}
-
-void P_Map16x16_Init( int cols, int rows )
-{
- MapCols=cols;
- MapRows=rows;
-#ifdef ROTOSCALE
- //Configure BG2
- P_Map16x16_configureBG2();
- // Configure Bottom background
- P_Map16x16_configureBG2_Sub();
-#endif
-
-#ifdef TILES
- //Configure BG3 for background image
- P_Map16x16_configureBG3();
- //Configure BG0 for game
- P_Map16x16_configureBG0();
- // Configure Bottom background
- P_Map16x16_configureBG2_Sub();
-#endif
-}
-
-
- void SetMap16x16To(int index16, bool full)
- {
- //switch x and y
- int x = index16 % MapCols;
- int y = index16 / MapCols;
- //now inverse x
- y = -(y-MapRows+1);
- index16 = x * MapRows + y;
-#ifdef FB0
- u16 value = full ? RGB15(31,0,0) : RGB15(0,0,0);
- FillRectangle(MAIN,x*16, x*16+16, y*16, y*16+16,value);
-#endif
-
-#ifdef ROTOSCALE
- u16 value = full ? ARGB16(1,31,0,0) : ARGB16(1,0,0,0);
- FillRectangle(MAIN,x*16, x*16+16, y*16, y*16+16,value);
-#endif
-
-#ifdef TILES
- int value = full ? 1 : 0;
- //convert index16x16 to 32x32
- //also make it fall right->left rather than top->bottom
- //
- // 0 1 2 3 12 8 4 0
- // 4 5 6 7 => 13 9 5 1
- // 8 9 10 11 => 14 10 6 2
- // 12 13 14 15 15 11 7 3
-
- //16x16->32*32 CONVERSION
- int index32;
- index32 = index16*2;
- index32 += (index16/16)*32;
- mapMemory[index32] = value;
- mapMemory[index32+1] = value;
- mapMemory[index32+32] = value;
- mapMemory[index32+32+1] = value;
-#endif
-}
diff --git a/labs/lab-9/Tetris4/source/P_Map16x16.h b/labs/lab-9/Tetris4/source/P_Map16x16.h
deleted file mode 100644
index 9a08f15..0000000
--- a/labs/lab-9/Tetris4/source/P_Map16x16.h
+++ /dev/null
@@ -1,35 +0,0 @@
-
-#include
-#include "P_Graphics.h"
-
-extern u16* mapMemory;
-extern int MapCols;
-extern int MapRows;
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Main Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Main Engine must be configured in Rotoscale
- * mode to be used as a bitmap with a depth colour of 16 bits. This
- * background will be used as a canvas of pixels (like in the Frame Buffer
- * Mode) to display the game field in the upper screen.
- */
-void P_Map16x16_configureBG2();
-
-/*
- * This function is called in the initialization of the P_Map16x16 to
- * configure the Background 2 of the Sub Engine
- *
- * The function does not return anything and it does not have any input
- * arguments. The BG2 of the Sub Engine must be configured in Rotoscale
- * mode with a depth of colours of 8 bits. This background will be used
- * to show an image in the bottom screen.
- */
-void P_Map16x16_configureBG2_Sub();
-
-
-void P_Map16x16_configureBG0();
-void P_Map16x16_configureBG3();
-void SetMap16x16To(int index16, bool full);
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/all-wcprops b/labs/lab-9/Tetris4/source/Tetris/.svn/all-wcprops
deleted file mode 100644
index 000add6..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/all-wcprops
+++ /dev/null
@@ -1,65 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 45
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris
-END
-TetrisShape.cs
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.cs
-END
-TetrisHUD.cs
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisHUD.cs
-END
-TetrisGameplay.h
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.h
-END
-TetrisGrid.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 59
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.cpp
-END
-TetrisShape.h
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisShape.h
-END
-TetrisMenu.cs
-K 25
-svn:wc:ra_dav:version-url
-V 58
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisMenu.cs
-END
-TetrisGrid.h
-K 25
-svn:wc:ra_dav:version-url
-V 57
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGrid.h
-END
-TetrisGameplay.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 63
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisGameplay.cpp
-END
-TetrisShape.cpp
-K 25
-svn:wc:ra_dav:version-url
-V 61
-/svn/!svn/ver/10/trunk/dstetris/source/Tetris/TetrisShape.cpp
-END
-TetrisDefines.h
-K 25
-svn:wc:ra_dav:version-url
-V 60
-/svn/!svn/ver/2/trunk/dstetris/source/Tetris/TetrisDefines.h
-END
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/entries b/labs/lab-9/Tetris4/source/Tetris/.svn/entries
deleted file mode 100644
index d40c647..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/entries
+++ /dev/null
@@ -1,368 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tetris
-http://dstetris.googlecode.com/svn
-
-
-
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-TetrisShape.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-93bca2a5d4c7699c749d245e56bbb447
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5324
-
-TetrisHUD.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9b0079baa20c6673a42620e55ed1bd33
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4952
-
-TetrisGameplay.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-6e8205e7f2c4b0995f686b7e03aeb7e3
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-388
-
-TetrisGrid.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-b60a53fd2df6ee0eaeb539bde1c83f44
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5384
-
-TetrisShape.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-fbd520b56b403dc21c6ef073681c91d2
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-460
-
-TetrisMenu.cs
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-46f4b010842a86cc00e87c2024e75fa5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-9881
-
-TetrisGrid.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-9c8d2a85e36046170d0ef80bfcd6c163
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-647
-
-TetrisGameplay.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-e6128b8c5e3f024efb556f45ed6784a5
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-3909
-
-TetrisShape.cpp
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-eeab41f6e1c30a1149806657a70de78e
-2009-12-08T23:35:32.193916Z
-10
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-4588
-
-TetrisDefines.h
-file
-
-
-
-
-2010-08-26T09:37:11.675710Z
-43f8a162e571e16b7dadf20c6147faba
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-5579
-
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/format b/labs/lab-9/Tetris4/source/Tetris/.svn/format
deleted file mode 100644
index ec63514..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
deleted file mode 100644
index f7b8183..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisDefines.h.svn-base
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
deleted file mode 100644
index 3e4217d..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGameplay.cpp.svn-base
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- Gameplay_currentAction = actionToSend;
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //iprintf("GameOver\n");
- //bool isNewHighScore = TetrisGame.highScore.IsHighScore(playerName, playerScore) && playerScore > 0;
- //TetrisGame.soundPlayer.FireSoundFX(isNewHighScore ? SOUND_FX.Win : SOUND_FX.Lose);
- //TetrisGame.menu.setMenuState(TetrisMenu.MENU_STATE.STATE_MENUGAMEOVER, isNewHighScore );
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
- Gameplay_displayNextShape(Shape_NextType);
-}
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
deleted file mode 100644
index 2c803ad..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGameplay.h.svn-base
+++ /dev/null
@@ -1,15 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-#include "../Platform/P_Graphics.h"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
deleted file mode 100644
index 779826c..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGrid.cpp.svn-base
+++ /dev/null
@@ -1,231 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-/*
-void Grid_paint()
-{
- //paint bg
- //FillRectangle(MAIN, Grid_Top, Grid_Bottom, Grid_Left, Grid_Right, RGB15(10,10,10) | BIT(15));
-
- //paint elems
- int l, t;
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- l = Grid_Left + (i % PLAYFIELD_COLS) * Grid_TileW;
- t = Grid_Top + (i / PLAYFIELD_COLS) * Grid_TileH;
- //Rectangle cell = new Rectangle(l, t, mTileW, mTileH);
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, cell, Color.Yellow);
- //DrawRectangle(MAIN, t, t+Grid_TileH, l, l+Grid_TileW, RGB15(10,25,10) | BIT(15));
-
- //if(Grid_Cells[i])//more fancy graphics for occupied cells
- {
- //TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, cell, Color.Yellow);
- }
- }
-
- //TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, background, Color.Red);
-
-}*/
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
deleted file mode 100644
index 417d538..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisGrid.h.svn-base
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
deleted file mode 100644
index b279247..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisHUD.cs.svn-base
+++ /dev/null
@@ -1,117 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisHud : TetrisConstants
- {
-
- public static void paintRightHud(int right, int top, int score, int nextType)
- {
- int x, y;
-
- //score
- x = right - HUD_SCORE_TEXT_OFFSET;
- y = top + MARGIN_TOP + HUD_SCORE_Y_START;
- SpecificTools.QuickDrawString("Score", x, y, TetrisGame.FontSmall, HUD_SCORE_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += HUD_SCORE_INTERLINE;
- SpecificTools.QuickDrawString("" + score, x, y, TetrisGame.FontSmall, HUD_SCORE_NUM_COLOR, SpecificTools.Align.Right);
-
- //next shape
- displayNextShape(right, top, nextType);
-
- //top scores
- displayTopScores(right, top);
-
- }
-
-
- public static void displayNextShape(int startX, int startY, int nextType)
- {
- int tmpX, tmpY, offset;
- int i = 0;
- int x = startX - HUD_NEXT_TEXT_OFFSET;
- int y = startY + MARGIN_TOP + HUD_NEXT_WORD_Y_START;
-
- SpecificTools.QuickDrawString("Next", x, y, TetrisGame.FontSmall, HUD_NEXT_WORD_COLOR, SpecificTools.Align.Right, true, Color.Black);
- x = startX - HUD_NEXT_SHAPE_X_START;
- y = startY + MARGIN_TOP + HUD_NEXT_SHAPE_Y_START;
- tmpX = x;
- tmpY = y;
- offset = (nextType * SHAPE_TABLE_TYPE_OFFSET) + START_ORIENTATION * SHAPE_TABLE_ELEMS_PER_ROW;
- do
- {
- TetrisGame.ShapeManager.DrawRect(TetrisGame.Pixel, TetrisGame.spriteBatch, new Rectangle(tmpX, tmpY, HUD_NEXT_SHAPE_CELL_SIZE, HUD_NEXT_SHAPE_CELL_SIZE), HUD_NEXT_SHAPE_COLOR);
- switch (SHAPE_TABLE[offset + i])
- {
- case C_LEFT:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_RIGHT:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y;
- break;
- case C_UP:
- tmpX = x;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_DOWN:
- tmpX = x;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_DOWN:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_DOWN:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y + HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_LEFT + C_UP:
- tmpX = x - HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT + C_UP:
- tmpX = x + HUD_NEXT_SHAPE_CELL_OFFSET;
- tmpY = y - HUD_NEXT_SHAPE_CELL_OFFSET;
- break;
- case C_RIGHT * 2:
- tmpX = x - (HUD_NEXT_SHAPE_CELL_OFFSET * 2);//i am cheating here and moving to the left for better hud display (anchor is on right)
- tmpY = y;
- break;
- default:
- //need to manage
- break;
- }
- i++;
- } while (i < MAX_ELEMS);
- }
-
- public static void displayTopScores(int x, int y)
- {
-
- x -= HUD_TOP_SCORES_TEXT_OFFSET;
- y += MARGIN_TOP + HUD_TOP_SCORES_Y_START;
-
- //paint title
- SpecificTools.QuickDrawString("TopScore", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_TITLE_COLOR, SpecificTools.Align.Right, true, Color.Black);
- y += 30;
-
- for (int i = 0; i < TetrisGame.highScore.CurrentTopScores.Count; i++, y += 24)
- {
- String name = TetrisGame.highScore.CurrentTopScores.PlayerName[i];
- int score = TetrisGame.highScore.CurrentTopScores.Score[i];
- if(score > 0)
- SpecificTools.QuickDrawString((i + 1) + ". " + name + ": " + score, x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
- else
- SpecificTools.QuickDrawString("No Score yet", x, y, TetrisGame.FontSmall, HUD_TOP_SCORES_RANK_COLOR, SpecificTools.Align.Right);
-
- }
- }
- }
-}
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
deleted file mode 100644
index 3cffb77..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisMenu.cs.svn-base
+++ /dev/null
@@ -1,242 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Microsoft.Xna.Framework;
-using Microsoft.Xna.Framework.Graphics;
-
-namespace XNATetris
-{
- class TetrisMenu
- {
-
- public enum MENU_STATE
- {
- STATE_MENUOFF,
- STATE_MENUSTART,
- STATE_MENURESUME,
- STATE_MENUGAMEOVER,
- STATE_ENTERNAME,
- }
-
- private MENU_STATE status;
- private int currentSelected;
- private int currentAvailableOptions;
- private int currentLateralSelected;
- private int currentLateralAvailableOptions;
- private bool allowcycle;
- private String[] currentOptions;
- private byte[] player;
- private Color bkgColor;
- private Color wordColor;
- private Color wordColorSelected;
- private bool isHighScore;
-
- public TetrisMenu()
- {
- player = new byte[3];
- bkgColor = new Color(192, 192, 192, 216);
- wordColor = Color.Black;
- wordColorSelected = Color.Green;
- setMenuState(MENU_STATE.STATE_MENUSTART);
- }
-
- public void setMenuState(MENU_STATE state, bool highScore)
- {
- setMenuState(state);
- isHighScore = highScore;//MUST be called after set state because set state sets it to default
- }
-
- public void setMenuState( MENU_STATE state )
- {
- isHighScore = false;
- status = state;
- currentSelected = 0; //always reset this
- currentLateralSelected = 0;
- currentLateralAvailableOptions = 0;//default
- allowcycle = false;//default
- switch (status)
- {
- case MENU_STATE.STATE_MENURESUME:
- currentOptions = MENU_RESUME_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUGAMEOVER:
- currentOptions = MENU_RESTART_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_MENUSTART:
- currentOptions = MENU_START_STRINGS;
- currentAvailableOptions = currentOptions.Length;
- break;
- case MENU_STATE.STATE_ENTERNAME:
- currentOptions = EMPTY_STRINGS;
- currentAvailableOptions = 26;//alphabet!
- allowcycle = true;
- currentLateralAvailableOptions = 4; //three letters + ok
- for (int i = 0; i < player.Length; i++)
- player[i] = 0;
- break;
- }
- }
-
- public bool IsMenuOff()
- {
- return status == MENU_STATE.STATE_MENUOFF;
- }
-
- public void update_menu(Platform.Input.ACTION a)
- {
- switch (a)
- {
- case Platform.Input.ACTION.RIGHT:
- if (currentLateralSelected < currentLateralAvailableOptions)
- currentLateralSelected++;
- break;
- case Platform.Input.ACTION.LEFT:
- if (currentLateralSelected > 0)
- currentLateralSelected--;
- break;
- case Platform.Input.ACTION.DOWN:
- if (currentSelected < currentAvailableOptions - 1)
- currentSelected++;
- else if (allowcycle)
- currentSelected = 0;
- break;
- case Platform.Input.ACTION.UP:
- if (currentSelected > 0)
- currentSelected--;
- else if (allowcycle)
- currentSelected = currentAvailableOptions-1;
- break;
- case Platform.Input.ACTION.SELECT:
-
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
-
- if (currentOptions.Length == 0)
- {
- if (currentLateralSelected == 3)
- {
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < 3; i++)
- {
- builder.Append(((char)('A' + player[i])));
- }
- TetrisGame.SetPlayerName(builder.ToString());
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else
- {
- update_menu(Platform.Input.ACTION.DOWN);//considering enter on leters is down
- return;
- }
- }
- else if (currentOptions[currentSelected] == commandStart)
- {
- setMenuState(MENU_STATE.STATE_ENTERNAME);
- }
- else if (currentOptions[currentSelected] == commandResume)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- }
- else if (currentOptions[currentSelected] == commandQuit)
- {
- TetrisGame.ExitGame();
- }
- else if (currentOptions[currentSelected] == commandRestart)
- {
- setMenuState(MENU_STATE.STATE_MENUOFF);
- TetrisGame.RestartGame();
- }
- break;
- }
-
- //specific for player name menu
- if (status == MENU_STATE.STATE_ENTERNAME && currentLateralSelected < 3)
- {
- if(a==XNATetris.Platform.Input.ACTION.DOWN || a == XNATetris.Platform.Input.ACTION.UP)
- {
- player[currentLateralSelected] = (byte)currentSelected;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- }
- else if (a == XNATetris.Platform.Input.ACTION.LEFT || a == XNATetris.Platform.Input.ACTION.RIGHT)
- currentSelected = player[currentLateralSelected];
- }
- }
-
-
- public void paint()
- {
- int w, h;
- if (status != MENU_STATE.STATE_MENUOFF)
- {
- w = TetrisGame.graphics.PreferredBackBufferWidth;
- h = TetrisGame.graphics.PreferredBackBufferHeight;
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(0, 0, w, h), bkgColor);
- SpecificTools.QuickDrawString("XNA Tetris by Chris FERRARIO @ chris-ferrario.com", 20, 20, TetrisGame.FontSmall, Color.Blue, SpecificTools.Align.Left, true, Color.White);
- paintMenuStrings(currentOptions, w, h);
- paintSpecific(w,h);
- }
- }
-
- private void paintMenuStrings(String[] options, int screenW, int screenH)
- {
- screenH /= options.Length + 1;
- int y = screenH;
- for (int i = 0; i < options.Length; i++, y += screenH)
- {
- SpecificTools.QuickDrawString(options[i], screenW / 2, y, TetrisGame.FontBig, i == currentSelected ? wordColorSelected : wordColor, SpecificTools.Align.Center, true, Color.White);
- }
- }
-
- private void paintSpecific(int screenW, int screenH)
- {
- if(status == MENU_STATE.STATE_MENUGAMEOVER)
- {
- String message = isHighScore ? "Congratulations you have reached a high score!" : "Sorry you have lost without achieving a high score";
- SpecificTools.QuickDrawString(message, screenW / 2, 80, TetrisGame.FontSmall, Color.Red, SpecificTools.Align.Center, true, Color.White);
- }
- else if (status == MENU_STATE.STATE_ENTERNAME)
- {
- int interspace = 40;
- int x = screenW / 2;
- int y = 120;
- SpecificTools.QuickDrawString("Enter your desired name:", x, y, TetrisGame.FontSmall, Color.Black, SpecificTools.Align.Center, true, Color.White);
-
- TetrisGame.spriteBatch.Draw(TetrisGame.Pixel, new Rectangle(x - 100, y + 60, 120, 50), Color.White);
- x -= 2 * interspace;
- y += 60;
-
-
- for (int i = 0; i < 3; i++, x+=interspace)
- {
- SpecificTools.QuickDrawString(((char)('A' + player[i])).ToString(), x, y, TetrisGame.FontBig, i == currentLateralSelected ? Color.Red: Color.Blue, SpecificTools.Align.Center);
- }
- SpecificTools.QuickDrawString("Confirm", x, y + 14, TetrisGame.FontSmall, currentLateralSelected == 3 ? Color.Red : Color.Blue, SpecificTools.Align.Left, true, Color.White);
- }
- }
-
-
- //Menu Tables
- private static String commandStart = "Start Game";
- private static String commandResume = "Resume Game";
- private static String commandRestart = "Restart Game";
- private static String commandQuit = "Quit Game";
- private String[] MENU_START_STRINGS =
- {
- commandStart,
- commandQuit,
- };
- private String[] MENU_RESUME_STRINGS =
- {
- commandResume,
- commandQuit,
- };
- private String[] MENU_RESTART_STRINGS =
- {
- commandRestart,
- commandQuit,
- };
- private String[] EMPTY_STRINGS = {};
- }
-}
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
deleted file mode 100644
index 54701c5..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisShape.cpp.svn-base
+++ /dev/null
@@ -1,175 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- Audio_PlaySound( eSFX_SWISH );
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- Audio_PlaySound( eSFX_CLUNK );
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
deleted file mode 100644
index dd53a2d..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisShape.cs.svn-base
+++ /dev/null
@@ -1,170 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace XNATetris
-{
- class TetrisShape : TetrisConstants
- {
- public bool isGameOver = false;
- public bool isInited = false;
-
- private int mOrient;
- private int mType;
- private int mNextType;
- public int getNextType() { return mNextType; }
- private int mState;
- private int[] mElems;
-
- private Random mRand;
- private TetrisGrid mGrid;
-
-
- public TetrisShape(TetrisGrid g)
- {
- mGrid = g;
- mRand = new Random();
- mElems = new int[MAX_ELEMS];
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- }
-
- public bool spawn()
- {
- isGameOver = false;
- for (int i = 0; i < mElems.Length; i++)
- {
- mElems[i] = DONT_CHECK_CELL;
- }
- mType = mNextType;
- mNextType = mRand.Next(TYPE_MAX_TYPES);
- mElems[ELEM_BASE] = START_CELL;
- mOrient = START_ORIENTATION;
- mState = STATE_USER;
- return alignFromOrientation(mOrient);
- }
-
- public void update(int currentAction)
- {
- if (mState == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (rotateShape(ROT_LEFT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (rotateShape(ROT_RIGHT))
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Rotate);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- mState = STATE_FALLING;
- TetrisGame.soundPlayer.FireSoundFX(SOUND_FX.Fall);
- break;
- }
- }
- }
- }
-
- public bool IsFalling()
- {
- return mState == STATE_FALLING;
- }
-
- //true when need to recheck playfield
- public bool addGravity()
- {
- if (isInited)
- {
- //gravity
- bool falling = shiftCells(C_DOWN);
- if (!falling)
- {
- mState = STATE_LOCKED;
- isInited = false;
- return true;
- }
- }
- else
- {
- isInited = spawn();
-
- if (!isInited)//this means no room to init = game over
- {
- isGameOver = true;
- }
- }
- return false;
- }
-
- private bool rotateShape(int rotation)
- {
- int orient = mOrient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = alignFromOrientation(orient);
- if (hasRotated)
- mOrient = orient;
-
- return hasRotated;
- }
-
-
- private bool alignFromOrientation(int orientation)
- {
- int[] newElemPos = (int[])mElems.Clone();
- int typeOffset = (mType * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- newElemPos[ELEM_1] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- newElemPos[ELEM_2] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- newElemPos[ELEM_3] = newElemPos[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return tryToMove(newElemPos);
- }
-
-
- private bool shiftCells(int cellscrool)
- {
- int[] tmpElems = (int[])mElems.Clone();
- for (int i = 0; i < mElems.Length; i++)
- {
- if (mElems[i] != DONT_CHECK_CELL)
- tmpElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (mGrid.getRow(mElems[ELEM_BASE]) != mGrid.getRow(tmpElems[ELEM_BASE]))
- return false;
-
- return tryToMove(tmpElems);
- }
-
- private bool tryToMove(int[] newElemPos)
- {
- bool hasMoved = mGrid.tryToMoveCells(mElems, newElemPos);
- if (hasMoved)
- mElems = newElemPos;
- return hasMoved;
- }
-
- }
-}
diff --git a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisShape.h.svn-base b/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
deleted file mode 100644
index cf678ad..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/.svn/text-base/TetrisShape.h.svn-base
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tetris/TetrisDefines.h b/labs/lab-9/Tetris4/source/Tetris/TetrisDefines.h
deleted file mode 100644
index f7b8183..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/TetrisDefines.h
+++ /dev/null
@@ -1,206 +0,0 @@
-#pragma once
-
-//remember, hud is pixel aligned from top, bottom, left or right
-//but center is dynamic depending on screen size
-
-//constants
-
-//GAME
-//frames per second
-#define FRAME_RATE 60
-#define DIFFICULTY 3
-//delay before reupdating
-#define OUT_OF_PAUSE_DELAY (FRAME_RATE*2)
-//only first keypress counts for game actions.
-#define DISREGARD_MULTIPLE_KEYPRESSED true
-
-//game actions
-#define ACTION_NONE 0
-#define ACTION_STRAFE_LEFT 1
-#define ACTION_STRAFE_RIGHT 2
-#define ACTION_ROTATE_L 3
-#define ACTION_ROTATE_R 4
-#define ACTION_MAKE_FALL 5
-
-//HUD
-//does playfield leave space for a margin
-#define PLAYFIELD_USE_MARGINS true
-//in px
-#define MARGIN_TOP 36
-#define MARGIN_LEFT 12
-#define MARGIN_RIGHT 64
-#define MARGIN_BOTTOM 36
-//ANCHORED TO THE RIGHT!
-#define HUD_SCORE_TEXT_OFFSET 5
-#define HUD_SCORE_Y_START 40
-#define HUD_SCORE_INTERLINE 30
-//static Color HUD_SCORE_WORD_COLOR Color.White
-//static Color HUD_SCORE_NUM_COLOR Color.Yellow
-#define HUD_NEXT_WORD_Y_START (HUD_SCORE_Y_START+HUD_SCORE_INTERLINE+30)
-#define HUD_NEXT_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-#define HUD_NEXT_SHAPE_X_START 50
-#define HUD_NEXT_SHAPE_Y_START (HUD_NEXT_WORD_Y_START+50)
-#define HUD_NEXT_SHAPE_CELL_SIZE 16
-#define HUD_NEXT_SHAPE_CELL_OFFSET (HUD_NEXT_SHAPE_CELL_SIZE+3)
-//static Color HUD_NEXT_WORD_COLOR Color.White
-//static Color HUD_NEXT_SHAPE_COLOR Color.Gray
-#define HUD_TOP_SCORES_Y_START (HUD_NEXT_WORD_Y_START+100)
-#define HUD_TOP_SCORES_TEXT_OFFSET HUD_SCORE_TEXT_OFFSET
-//static Color HUD_TOP_SCORES_TITLE_COLOR Color.White
-//static Color HUD_TOP_SCORES_RANK_COLOR Color.Green
-//static Color HUD_TOP_SCORES_WORD_COLOR Color.Green
-//static Color HUD_TOP_SCORES_SCORE_COLOR Color.White
-#define HUD_TOP_SCORES_RANK_OFFSET 45
-#define HUD_TOP_SCORES_WORD_OFFSET 25
-
-
-
-//PLAYFIELD
-//grid size
-#define PLAYFIELD_COLS 12
-#define PLAYFIELD_ROWS 16
-#define PLAYFIELD_CELLNB (PLAYFIELD_ROWS * PLAYFIELD_COLS)
-
-//ticks before engine calls gravity
-#define GRAVITY_RATE (FRAME_RATE/2)
-
-//cell where new shapes apear
-#define START_CELL ((PLAYFIELD_COLS/2)-1)
-//cellscroll directions
-#define C_CENTER 0
-#define C_LEFT (-1)
-#define C_UP (-PLAYFIELD_COLS)
-#define C_RIGHT 1
-#define C_DOWN PLAYFIELD_COLS
-
-
-//SHAPES
-//a value that lets playfield skip the test of shape cells
-#define DONT_CHECK_CELL (-1000)
-
-//states
-#define STATE_USER 0
-#define STATE_LOCKED 1
-#define STATE_FALLING 2
-
-//rotations
-#define ROT_LEFT (-1)
-#define ROT_RIGHT 1
-
-//orientations
-#define OR_NORTH 0
-#define OR_EAST 1
-#define OR_SOUTH 2
-#define OR_WEST 3
-#define START_ORIENTATION OR_EAST
-
-
-//max elems
-#define ELEM_BASE 0
-#define ELEM_1 1
-#define ELEM_2 2
-#define ELEM_3 3
-#define MAX_ELEMS 4
-//shape types
-#define TYPE_LONG 0
-#define TYPE_BL 1
-#define TYPE_L 2
-#define TYPE_SQUARE 3
-#define TYPE_S 4
-#define TYPE_BS 5
-#define TYPE_T 6
-#define TYPE_MAX_TYPES 7
-
-
-enum ACTION
-{
- NONE,
- EXIT,
- LEFT,
- DOWN,
- UP,
- RIGHT,
- SELECT,
-};
-
-//TABLES
-
-//this table contains all the shape types constructs for each orientation
-#define SHAPE_TABLE_ELEMS_1 0
-#define SHAPE_TABLE_ELEMS_2 1
-#define SHAPE_TABLE_ELEMS_3 2
-#define SHAPE_TABLE_ELEMS_PER_ROW 3
-#define SHAPE_TABLE_ROWS_PER_TYPE 4
-#define SHAPE_TABLE_TYPE_OFFSET (SHAPE_TABLE_ROWS_PER_TYPE*SHAPE_TABLE_ELEMS_PER_ROW)
-int SHAPE_TABLE[] =
-{
- //TYPE LONG 0
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP*2, //I
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT*2, //---
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN*2, //I
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT*2,//---
-
- //TYPE backwards L 1
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_RIGHT,//backwards L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_DOWN,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_LEFT,//inverse L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_UP,//|--
-
- //TYPE L 2
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_UP+C_LEFT,//L
- //OR_EAST (elem1,2,3)
- C_LEFT, C_RIGHT, C_RIGHT+C_UP,//--|
- //OR_SOUTH (elem1,2,3)
- C_UP, C_DOWN, C_DOWN+C_RIGHT,//L
- //OR_WEST (elem1,2,3)
- C_LEFT, C_RIGHT, C_LEFT+C_DOWN,//|--
-
- //TYPE SQUARE 3
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_EAST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_SOUTH (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
- //OR_WEST (elem1,2,3)
- C_RIGHT, C_DOWN, C_RIGHT+C_DOWN,//O
-
- //TYPE S 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_EAST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
- //OR_SOUTH (elem1,2,3)
- C_DOWN+C_LEFT, C_DOWN, C_RIGHT,//_|-
- //OR_WEST (elem1,2,3)
- C_UP, C_RIGHT, C_RIGHT+C_DOWN,//|-i
-
- //TYPE backwardsS 4
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_EAST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_DOWN+C_RIGHT,//-|_
- //OR_WEST (elem1,2,3)
- C_UP+C_RIGHT, C_RIGHT, C_DOWN,//i-|
-
- //TYPE T 5
- //OR_NORTH (elem1,2,3, mincol, maxcol)
- C_UP, C_DOWN, C_RIGHT,//T
- //OR_EAST (elem1,2,3)
- C_LEFT, C_DOWN, C_RIGHT,//T
- //OR_SOUTH (elem1,2,3)
- C_LEFT, C_DOWN, C_UP,//T
- //OR_WEST (elem1,2,3)
- C_LEFT, C_UP, C_RIGHT,//T
-};
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tetris/TetrisGameplay.cpp b/labs/lab-9/Tetris4/source/Tetris/TetrisGameplay.cpp
deleted file mode 100644
index cf676db..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/TetrisGameplay.cpp
+++ /dev/null
@@ -1,162 +0,0 @@
-#pragma once
-
-#include "TetrisGameplay.h"
-
-//game specific
-//private TetrisShape currentShape; //current shape controllable by the user
-int Gameplay_currentAction; //current game action fired by player
-int Gameplay_playerScore;
-char* Gameplay_playerName;
-
-//members
-unsigned int Gameplay_ticks; //time stamp when next update can be called
-unsigned int Gameplay_LastGravity; //allow updates of shape independently from gravity by checking this
-
-
-/**
- * Initialize members
- */
-void Gameplay_init(void) {
- //initialize members
- Shape_isInited = false;
- Gameplay_currentAction = ACTION_NONE;
- Gameplay_ticks = 0;
- Gameplay_LastGravity = 1;
- Gameplay_playerScore = 0;
-
- Grid_init();
-}
-
-/**
- * Constructor
- */
-void Gameplay_Load(void)
-{
- //inst objs
- Grid_setBackGroundDimentions(256,192);
- Shape_init();
-
- //initialize
- Gameplay_init();
-}
-
-void Gameplay_restartGame(void)
-{
- Gameplay_init();
- Shape_isGameOver = false;
-}
-
-/**
- * Handle key presses (make sure view is focusable)
- */
-void Gameplay_handleInput(enum ACTION a)
-{
- int actionToSend = -1;
- switch (a)
- {
- case UP:
- actionToSend = ACTION_ROTATE_L;
- break;
- case DOWN:
- actionToSend = ACTION_ROTATE_R;
- break;
- case RIGHT:
- actionToSend = ACTION_STRAFE_RIGHT;
- break;
- case LEFT:
- actionToSend = ACTION_STRAFE_LEFT;
- break;
- case SELECT:
- actionToSend = ACTION_MAKE_FALL;
- break;
- default:
- break;
- }
-
- if (actionToSend != -1)
- {
- Gameplay_currentAction = actionToSend;
- swiDelay(2000000);
- }
-}
-
-
-/**
- * Update user actions
- * Update engine actions (gravity and line check)
- */
-void Gameplay_update(void)
-{
- Gameplay_ticks++;
- //manage gameOver
- if(Shape_isGameOver)
- {
- //Game Over!
-
- }
- //normal state
- else
- {
- Shape_update(Gameplay_currentAction);
- Gameplay_currentAction = ACTION_NONE;//consume action
-
- if (Gameplay_ticks > Gameplay_LastGravity || Shape_IsFalling())
- {
- //GRAVITY_RATE - playerScore makes it increasingly harder!
- Gameplay_LastGravity += GRAVITY_RATE - (Gameplay_playerScore / 10);
- bool shapeIsLocked = Shape_addGravity();
-
- if(shapeIsLocked)
- {
- //update returns the number of points
- int points = Grid_update();
- if (points != 0)
- {
- //play sound
- Gameplay_playerScore += points;
- }
- }
- }
- }
- return;
-}
-
-void Gameplay_displayNextShape(int nextType)
-{
- switch(nextType)
- {
- case TYPE_LONG :
- iprintf("----");
- break;
- case TYPE_BL :
- iprintf("_| ");
- break;
- case TYPE_L :
- iprintf("L ");
- break;
- case TYPE_SQUARE :
- iprintf("O ");
- break;
- case TYPE_S :
- iprintf("S ");
- break;
- case TYPE_BS :
- iprintf("Z ");
- break;
- case TYPE_T :
- iprintf("T ");
- break;
- }
-}
-
-/**
- * Paint game
- */
-void Gameplay_draw()
-{
- //paint elements
- //Grid_paint(); //not necessary, grid is painted directly by the Map16x16 tile engine
-
- //paint HUD from top right anchordisplayNextShape
-// Gameplay_displayNextShape(Shape_NextType);
-}
diff --git a/labs/lab-9/Tetris4/source/Tetris/TetrisGameplay.h b/labs/lab-9/Tetris4/source/Tetris/TetrisGameplay.h
deleted file mode 100644
index 8345c72..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/TetrisGameplay.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "TetrisShape.h"
-#include "TetrisGameplay.cpp"
-
-void Gameplay_Load(void);
-void Gameplay_init(void);
-void Gameplay_restartGame(void);
-void Gameplay_update(void);
-void Gameplay_handleInput(enum ACTION a);
-void Gameplay_displayNextShape(int nextType);
diff --git a/labs/lab-9/Tetris4/source/Tetris/TetrisGrid.cpp b/labs/lab-9/Tetris4/source/Tetris/TetrisGrid.cpp
deleted file mode 100644
index a65be38..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/TetrisGrid.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-#pragma once
-
-#include "TetrisGrid.h"
-
-bool Grid_Cells[PLAYFIELD_CELLNB];
-int Grid_TileW;
-int Grid_TileH;
-int Grid_Left;
-int Grid_Top;
-int Grid_Right;
-int Grid_Bottom;
-
-void Grid_init(void)
-{
- int i;
- for (i = 0; i < PLAYFIELD_CELLNB; i++)
- {
- Grid_Cells[i] = false;
- SetMap16x16To(i,false);
- }
-}
-
-void Grid_setBackGroundDimentions(int w, int h)
-{
- Grid_Left = MARGIN_LEFT;
- Grid_Top = MARGIN_TOP;
- w -= Grid_Left + MARGIN_RIGHT;
- h -= Grid_Top + MARGIN_BOTTOM;
- Grid_Right = Grid_Left + w;
- Grid_Bottom = Grid_Top + h;
-
- Grid_TileW = w / PLAYFIELD_COLS;
- Grid_TileH = h / PLAYFIELD_ROWS;
-}
-
-int Grid_getColumn(int index)
-{
- if (index < 0)
- return -((abs(index) % PLAYFIELD_COLS) + 1);
- else
- return (index % PLAYFIELD_COLS);
-}
-
-int Grid_getRow(int index)
-{
- if (index < 0)
- return -((abs(index) / PLAYFIELD_COLS) + 1);
- else
- return (index / PLAYFIELD_COLS);
-}
-
-bool Grid_IsCellValid(int index)
-{
- return (index >= 0 && index < PLAYFIELD_CELLNB);
-}
-
-bool Grid_IsCellFree(int index)
-{
- if (Grid_IsCellValid(index))
- return !Grid_Cells[index];
- else
- return false;
-}
-
-bool Grid_checkForRunOff(int to[])
-{
- bool hasRunOff = true;
- int i;
- int testArray[MAX_ELEMS];
-
- Array_cloneInt(to,testArray,MAX_ELEMS);
- for (i = MAX_ELEMS - 1; i >= 0; i--)
- {
- testArray[i] -= testArray[0];
- testArray[i] += START_CELL;
- }
-
- //normalize the test array to test rowDiff
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_getRow(to[i]) - Grid_getRow(to[0]) != Grid_getRow(testArray[i]) - Grid_getRow(testArray[0]))
- {
- hasRunOff = false;
- break;
- }
- }
-
- return hasRunOff;
-}
-
-bool Grid_tryToMoveCells(int from[], int to[])
-{
-
- //test grid
- if (!Grid_checkForRunOff(to))
- return false;
-
- bool validMove = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
-
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!Array_IsInArray(to[i], from, MAX_ELEMS))
- {
- if (Grid_IsCellFree(to[i]) || cellAboveGrid)
- validMove = true;
- else
- return false;
- }
- }
-
-
- //write to grid
- if (validMove)
- {
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Grid_IsCellValid(from[i]))
- {
- Grid_Cells[from[i]] = false;
- SetMap16x16To(from[i],false);
- }
- }
- for (i = 0; i < MAX_ELEMS; i++)
- {
- bool cellAboveGrid = to[i] < 0; //can happen on init
- if (!cellAboveGrid)
- {
- Grid_Cells[to[i]] = true;
- SetMap16x16To(to[i],true);
- }
- }
- }
-
- return validMove;
-}
-
-
-void Grid_ShiftRowBy(int row, int down)
-{
- int index;
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- index = (row * PLAYFIELD_COLS) + i;
- Grid_Cells[index + down] = Grid_Cells[index];
- SetMap16x16To(index + down,Grid_Cells[index]);
- }
-
-}
-
-void Grid_SetAllRowTo(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- Grid_Cells[(row * PLAYFIELD_COLS) + i] = b;
- SetMap16x16To((row * PLAYFIELD_COLS) + i,b);
- }
-}
-
-bool Grid_CheckRowForSame(int row, bool b)
-{
- int i;
- for (i = 0; i < PLAYFIELD_COLS; i++)
- {
- if (Grid_Cells[(row * PLAYFIELD_COLS) + i] != b)
- return false;
- }
- return true;
-}
-
-void Grid_MakeGridCollapse(int row)
-{
- int r;
- for (r = row; r >= 0; r--)
- {
- if (Grid_CheckRowForSame(r, false))
- break;
- Grid_ShiftRowBy(r, C_DOWN);
- Grid_SetAllRowTo(r, false);
- }
-}
-
-int Grid_update()
-{
- int points = 0;
- int row;
- for (row = PLAYFIELD_ROWS - 1; row >= 0; row--)
- {
- if (Grid_CheckRowForSame(row, false))
- break;
- if (Grid_CheckRowForSame(row, true))
- {
- points++;
- Grid_SetAllRowTo(row, false);
- Grid_MakeGridCollapse(row - 1);
- row++;//we collapsed grid onto this row so we need to check it again by cancelling the upcomming decrement
- }
- }
- return points;
-}
diff --git a/labs/lab-9/Tetris4/source/Tetris/TetrisGrid.h b/labs/lab-9/Tetris4/source/Tetris/TetrisGrid.h
deleted file mode 100644
index 417d538..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/TetrisGrid.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisGrid.cpp"
-
-void Grid_init(void);
-void Grid_Release(void);
-void Grid_setBackGroundDimentions(int w, int h);
-int Grid_getColumn(int index);
-int Grid_getRow(int index);
-bool Grid_IsCellValid(int index);
-bool Grid_IsCellFree(int index);
-bool Grid_checkForRunOff(int to[]);
-bool Grid_tryToMoveCells(int from[], int to[]);
-void Grid_paint();
-void Grid_ShiftRowBy(int row, int down);
-void Grid_SetAllRowTo(int row, bool b);
-bool Grid_CheckRowForSame(int row, bool b);
-void Grid_MakeGridCollapse(int row);
-int Grid_update();
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tetris/TetrisShape.cpp b/labs/lab-9/Tetris4/source/Tetris/TetrisShape.cpp
deleted file mode 100644
index d37b6bd..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/TetrisShape.cpp
+++ /dev/null
@@ -1,174 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisShape.h"
-#include // sound functions
-
-bool Shape_isGameOver = false;
-bool Shape_isInited = false;
-
-int Shape_Orient;
-int Shape_Type;
-int Shape_NextType;
-int Shape_State;
-int Shape_Elems[MAX_ELEMS];
-int Shape_TempElems[MAX_ELEMS];
-
-void Shape_init(void)
-{
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_isGameOver = false;
- Shape_isInited = false;
- int i;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- Shape_TempElems[i] = DONT_CHECK_CELL;
- }
-}
-
-bool Shape_tryToMove(int newElemPos[])
-{
- bool hasMoved = Grid_tryToMoveCells(Shape_Elems, newElemPos);
- if (hasMoved)
- Array_cloneInt(newElemPos,Shape_Elems,MAX_ELEMS);
-
- return hasMoved;
-}
-
-bool Shape_alignFromOrientation(int orientation)
-{
- Array_cloneInt(Shape_Elems,Shape_TempElems,MAX_ELEMS);
- int typeOffset = (Shape_Type * SHAPE_TABLE_TYPE_OFFSET);
- orientation *= SHAPE_TABLE_ELEMS_PER_ROW;
- Shape_TempElems[ELEM_1] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_1];
- Shape_TempElems[ELEM_2] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_2];
- Shape_TempElems[ELEM_3] = Shape_TempElems[ELEM_BASE] + SHAPE_TABLE[typeOffset + orientation + SHAPE_TABLE_ELEMS_3];
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-
-
-bool Shape_spawn()
-{
-
- int i;
- Shape_isGameOver = false;
- for (i = 0; i < MAX_ELEMS; i++)
- {
- Shape_Elems[i] = DONT_CHECK_CELL;
- }
- Shape_Type = Shape_NextType;
- Shape_NextType = rand() % TYPE_MAX_TYPES;
- Shape_Elems[ELEM_BASE] = START_CELL;
- Shape_Orient = START_ORIENTATION;
- Shape_State = STATE_USER;
- return Shape_alignFromOrientation(Shape_Orient);
-}
-
-bool Shape_rotateShape(int rotation)
-{
- int orient = Shape_Orient;
- orient += rotation;
- if (orient < OR_NORTH)
- orient = OR_WEST;
- else if (orient > OR_WEST)
- orient = OR_NORTH;
- bool hasRotated = Shape_alignFromOrientation(orient);
- if (hasRotated)
- Shape_Orient = orient;
-
- return hasRotated;
-}
-
-
-bool Shape_shiftCells(int cellscrool)
-{
- int i;
- Array_cloneInt(Shape_Elems, Shape_TempElems, MAX_ELEMS);
-
-
- for (i = 0; i < MAX_ELEMS; i++)
- {
- if (Shape_Elems[i] != DONT_CHECK_CELL)
- Shape_TempElems[i] += cellscrool;
- }
-
- if (cellscrool == C_LEFT || cellscrool == C_RIGHT)
- if (Grid_getRow(Shape_Elems[ELEM_BASE]) != Grid_getRow(Shape_TempElems[ELEM_BASE]))
- return false;
-
- return Shape_tryToMove(Shape_TempElems);
-}
-
-void Shape_update(int currentAction)
-{
- if (Shape_State == STATE_USER)
- {
- switch (currentAction)
- {
- case ACTION_STRAFE_LEFT:
- {
- Shape_shiftCells(C_LEFT);
- break;
- }
- case ACTION_STRAFE_RIGHT:
- {
- Shape_shiftCells(C_RIGHT);
- break;
- }
- case ACTION_ROTATE_L:
- {
- if (Shape_rotateShape(ROT_LEFT))
- ;
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_ROTATE_R:
- {
- if (Shape_rotateShape(ROT_RIGHT))
- ;
- //playGenericSound(swish_raw_bin, swish_raw_bin_size);
- break;
- }
- case ACTION_MAKE_FALL:
- {
- Shape_State = STATE_FALLING;
- //playGenericSound(clunk_raw_bin, clunk_raw_bin_size);
- break;
- }
- }
- }
-}
-
-bool Shape_IsFalling()
-{
- return Shape_State == STATE_FALLING;
-}
-
-//true when need to recheck playfield
-bool Shape_addGravity()
-{
- if (Shape_isInited)
- {
- //gravity
- bool falling = Shape_shiftCells(C_DOWN);
- if (!falling)
- {
- Shape_State = STATE_LOCKED;
- Shape_isInited = false;
- return true;
- }
- }
- else
- {
- Shape_isInited = Shape_spawn();
-
- if (!Shape_isInited)//this means no room to init = game over
- {
- Shape_isGameOver = true;
- }
- }
- return false;
-}
diff --git a/labs/lab-9/Tetris4/source/Tetris/TetrisShape.h b/labs/lab-9/Tetris4/source/Tetris/TetrisShape.h
deleted file mode 100644
index cf678ad..0000000
--- a/labs/lab-9/Tetris4/source/Tetris/TetrisShape.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include
-#include "TetrisDefines.h"
-#include "TetrisGrid.h"
-#include "../Tools/ArrayTools.h"
-#include "TetrisShape.cpp"
-
-
-void Shape_init(void);
-bool Shape_tryToMove(int newElemPos[]);
-bool Shape_alignFromOrientation(int orientation);
-bool Shape_spawn();
-bool Shape_rotateShape(int rotation);
-bool Shape_shiftCells(int cellscrool);
-void Shape_update(int currentAction);
-bool Shape_IsFalling();
-bool Shape_addGravity();
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tools/.svn/all-wcprops b/labs/lab-9/Tetris4/source/Tools/.svn/all-wcprops
deleted file mode 100644
index a6e3218..0000000
--- a/labs/lab-9/Tetris4/source/Tools/.svn/all-wcprops
+++ /dev/null
@@ -1,17 +0,0 @@
-K 25
-svn:wc:ra_dav:version-url
-V 43
-/svn/!svn/ver/2/trunk/dstetris/source/Tools
-END
-DrawTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 55
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/DrawTools.h
-END
-ArrayTools.h
-K 25
-svn:wc:ra_dav:version-url
-V 56
-/svn/!svn/ver/2/trunk/dstetris/source/Tools/ArrayTools.h
-END
diff --git a/labs/lab-9/Tetris4/source/Tools/.svn/entries b/labs/lab-9/Tetris4/source/Tools/.svn/entries
deleted file mode 100644
index 2b30dfc..0000000
--- a/labs/lab-9/Tetris4/source/Tools/.svn/entries
+++ /dev/null
@@ -1,96 +0,0 @@
-9
-
-dir
-11
-http://dstetris.googlecode.com/svn/trunk/dstetris/source/Tools
-http://dstetris.googlecode.com/svn
-
-
-
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-svn:special svn:externals svn:needs-lock
-
-
-
-
-
-
-
-
-
-
-
-b4fa9de4-d5cd-11dd-9aad-3f7dfcff7c77
-
-DrawTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-8ec827749fae42a9b2ca3aafba7d3477
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-288
-
-ArrayTools.h
-file
-
-
-
-
-2010-08-26T09:37:11.583710Z
-73a5b8792e77a495b434fe3e1cf2d634
-2008-12-29T17:40:24.623192Z
-2
-chris_ferrario@hotmail.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-1003
-
diff --git a/labs/lab-9/Tetris4/source/Tools/.svn/format b/labs/lab-9/Tetris4/source/Tools/.svn/format
deleted file mode 100644
index ec63514..0000000
--- a/labs/lab-9/Tetris4/source/Tools/.svn/format
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/labs/lab-9/Tetris4/source/Tools/.svn/text-base/ArrayTools.h.svn-base b/labs/lab-9/Tetris4/source/Tools/.svn/text-base/ArrayTools.h.svn-base
deleted file mode 100644
index 905d065..0000000
--- a/labs/lab-9/Tetris4/source/Tools/.svn/text-base/ArrayTools.h.svn-base
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tools/.svn/text-base/DrawTools.h.svn-base b/labs/lab-9/Tetris4/source/Tools/.svn/text-base/DrawTools.h.svn-base
deleted file mode 100644
index 61263cf..0000000
--- a/labs/lab-9/Tetris4/source/Tools/.svn/text-base/DrawTools.h.svn-base
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/Tools/ArrayTools.h b/labs/lab-9/Tetris4/source/Tools/ArrayTools.h
deleted file mode 100644
index b67d8fd..0000000
--- a/labs/lab-9/Tetris4/source/Tools/ArrayTools.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#pragma once
-
-void Array_print(int sourceArray[], int length)
-{
- int i;
- for(i=0;i Array[i])
- min = Array[i];
- }
- return min;
-}
-
-int Array_getMax(int Array[], int length)
-{
- int i;
- int max = Array[0];
- for (i = 1; i < length; i++)
- {
- if (max < Array[i])
- max = Array[i];
- }
- return max;
-}
-
-bool Array_IsInArray(int value, int Array[], int length)
-{
- int i;
- for (i = 0; i < length; i++)
- {
- if (value == Array[i])
- return true;
- }
- return false;
-}
diff --git a/labs/lab-9/Tetris4/source/Tools/DrawTools.h b/labs/lab-9/Tetris4/source/Tools/DrawTools.h
deleted file mode 100644
index 61263cf..0000000
--- a/labs/lab-9/Tetris4/source/Tools/DrawTools.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-void Draw_shape(int x, int y, uint16* buffer, uint16 color)
-{
- buffer += y * SCREEN_WIDTH + x;
- for(int i = 0; i < shape_height; ++i) {
- uint16* line = buffer + (SCREEN_WIDTH * i);
- for(int j = 0; j < shape_width; ++j) {
- *line++ = color;
- }
- }
-}
\ No newline at end of file
diff --git a/labs/lab-9/Tetris4/source/main.c b/labs/lab-9/Tetris4/source/main.c
deleted file mode 100644
index 615759d..0000000
--- a/labs/lab-9/Tetris4/source/main.c
+++ /dev/null
@@ -1,19 +0,0 @@
-#include
-#include "P_Controls.h"
-#include "P_Initializer.h"
-
-//---------------------------------------------------------------------------------
-int main(void) {
-//---------------------------------------------------------------------------------
-
- P_InitNDS();
-
- srand( clock() );
- Gameplay_Load();
- while( true ) {
- handleInput();
- swiWaitForVBlank();
- }
-
- return 0;
-}
diff --git a/labs/lab-9/simon/.root b/labs/lab-9/simon/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/labs/lab-9/simon/Makefile b/labs/lab-9/simon/Makefile
deleted file mode 100755
index b5ece27..0000000
--- a/labs/lab-9/simon/Makefile
+++ /dev/null
@@ -1,161 +0,0 @@
-#---------------------------------------------------------------------------------
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-# PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-build: FORCE
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d)
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-# precompiled:
-# @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-# soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- # @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
-
-FORCE: ;
diff --git a/labs/lab-9/simon/data/numbers.grit b/labs/lab-9/simon/data/numbers.grit
deleted file mode 100644
index 98afd29..0000000
--- a/labs/lab-9/simon/data/numbers.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--gt
--gB8
--p
--pn2
diff --git a/labs/lab-9/simon/data/numbers.png b/labs/lab-9/simon/data/numbers.png
deleted file mode 100644
index 1e3724d..0000000
Binary files a/labs/lab-9/simon/data/numbers.png and /dev/null differ
diff --git a/labs/lab-9/simon/data/quarter.grit b/labs/lab-9/simon/data/quarter.grit
deleted file mode 100644
index fde04ce..0000000
--- a/labs/lab-9/simon/data/quarter.grit
+++ /dev/null
@@ -1,6 +0,0 @@
--g
--gt
--gB4
--p
--pn16
--m
\ No newline at end of file
diff --git a/labs/lab-9/simon/data/quarter.png b/labs/lab-9/simon/data/quarter.png
deleted file mode 100644
index c9df7b5..0000000
Binary files a/labs/lab-9/simon/data/quarter.png and /dev/null differ
diff --git a/labs/lab-9/simon/source/chrono_display.c b/labs/lab-9/simon/source/chrono_display.c
deleted file mode 100644
index 3a848b0..0000000
--- a/labs/lab-9/simon/source/chrono_display.c
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * chrono_display.c
- *
- * Created on: Mar 21, 2011
- * Author: nds
- */
-
-#include "chrono_display.h"
-
-void printDigit(u16* map, int number, int x, int y)
-{
- int i,j;
- if(number < 10)
- for(i = 0; i<8;i++)
- for(j = 0; j<4; j++)
- if(number >= 0)
- map[(i + y)*32+j+x] = (u16)(i*4+j)+32*number;
- else
- map[(i + y)*32+j+x] = 32;
- if(number == 10)
- for(i = 0; i<8;i++)
- for(j = 0; j<2; j++)
- map[(i + y)*32+j+x] = (u16)(i*4+j)+32*10+2;
- if(number==11)
- for(i = 0; i<8;i++)
- for(j = 0; j<2; j++)
- map[(i + y)*32+j+x] = (u16)(i*4+j)+32*10;
-}
-
-void updateChronoDisp(u16* map,int min, int sec, int msec)
-{
- int x = 0, y = 0;
- int number;
-
- /*****MINUTES******/
- number = min;
- if(min > 59) min = number = -1;
- //First digit
- x = 0; y = 8;
- if(min>=0) number = min/10;
- printDigit(map, number, x,y);
- //Second digit
- x = 4; y = 8;
- if(min>=0) number = min %10;
- printDigit(map, number, x,y);
-
- /*****POINTS******/
- x = 8; y = 8;
- number = 10;
- printDigit(map, number, x,y);
-
- /*****SECONDS******/
- number = sec;
- if(sec > 59) sec = number = -1;
- //First digit
- x = 10; y = 8;
- if(sec>=0) number = sec / 10;
- printDigit(map, number, x,y);
- //Second digit
- x = 14; y = 8;
- if(sec>=0) number = sec % 10;
- printDigit(map, number, x,y);
-
- /*****POINT MSEC******/
- x = 18; y = 8;
- number = 11;
- printDigit(map, number, x,y);
-
- /*****M.SECONDS******/
- number = msec;
- if(msec > 999) msec = number = -1;
- //First digit
- x = 20; y = 8;
- if(msec>=0) number = msec / 100;
- printDigit(map, number, x,y);
-
- //Second digit
- x = 24; y = 8;
- if(msec>=0) number = (msec % 100) / 10;
- printDigit(map, number, x,y);
-
- //Third digit
- x = 28; y = 8;
- if(msec>=0) number = (msec % 10) % 10;
- printDigit(map, number, x,y);
-}
-
-void updateChronoDisp_Main(int min, int sec, int msec)
-{
- updateChronoDisp(BG_MAP_RAM(0), min,sec,msec);
-}
-
-void updateChronoDisp_Sub(int min, int sec, int msec)
-{
- updateChronoDisp(BG_MAP_RAM_SUB(0), min,sec,msec);
-}
-
-void initChronoDisp_Main()
-{
- VRAM_A_CR = VRAM_ENABLE
- | VRAM_A_MAIN_BG;
- REG_DISPCNT = MODE_0_2D | DISPLAY_BG0_ACTIVE;
- BGCTRL[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- swiCopy(numbersTiles, BG_TILE_RAM(1), numbersTilesLen);
- swiCopy(numbersPal, BG_PALETTE, numbersPalLen);
- BG_PALETTE[0] = ARGB16(1,0,31,31);
- BG_PALETTE[1] = ARGB16(1,0,0,0);
- memset(BG_MAP_RAM(0), 32,32*32*2);
- updateChronoDisp_Main(-1,-1,-1);
-}
-
-void initChronoDisp_Sub()
-{
- VRAM_C_CR = VRAM_ENABLE
- | VRAM_C_SUB_BG;
-
- REG_DISPCNT_SUB = MODE_0_2D | DISPLAY_BG0_ACTIVE;
- BGCTRL_SUB[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- swiCopy(numbersTiles, BG_TILE_RAM_SUB(1), numbersTilesLen);
- swiCopy(numbersPal, BG_PALETTE_SUB, numbersPalLen);
- BG_PALETTE_SUB[0] = ARGB16(1,31,31,0);
- BG_PALETTE_SUB[1] = ARGB16(1,0,0,0);
- memset(BG_MAP_RAM_SUB(0), 32,32*32*2);
- updateChronoDisp_Sub(-1,-1,-1);
-}
-
-void changeColorDisp_Main(uint16 c)
-{
- BG_PALETTE[0] = c;
-}
-
-void changeColorDisp_Sub(uint16 c)
-{
- BG_PALETTE_SUB[0] = c;
-}
diff --git a/labs/lab-9/simon/source/chrono_display.h b/labs/lab-9/simon/source/chrono_display.h
deleted file mode 100644
index 8890b8d..0000000
--- a/labs/lab-9/simon/source/chrono_display.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * chrono_display.h
- *
- * Created on:
- * Author: nds
- */
-
-#include
-#include "numbers.h"
-#include "string.h"
-
-/*
- * Initializers of the display. This function should be called
- * whenever the display needs to be initialized to be used in the
- * upper screen (Main) or the bottom screen (Sub)
- *
- * Warning! Do not use the display in the bottom screen in combination
- * with the console. It will not work properly
- */
-void initChronoDisp_Main();
-void initChronoDisp_Sub();
-
-/*
- * Functions to update the value of the display showed in the upper screen
- * (Main) or the one shown in the bottom screen (Sub). These functions receive
- * three integer as input representing minutes, seconds and milliseconds
- * respectively.
- *
- * Warning: Do not call any of these functions if the previous initialization
- * has not been performed.
- */
-void updateChronoDisp_Main(int min, int sec, int msec);
-void updateChronoDisp_Sub(int min, int sec, int msec);
-
-/*
- * Functions to change the color of the upper display (Main) or the bottom
- * display (Sub). These functions receive a 16 bits integer as input that
- * represent a valid color. Some valid colors are declared at the beginning
- * of this file. New colors can be created with the macro ARGB16(..).
- *
- * Warning: Do not use these functions if the coresponding display has not
- * initialized
- */
-void changeColorDisp_Main(uint16 c);
-void changeColorDisp_Sub(uint16 c);
diff --git a/labs/lab-9/simon/source/main.c b/labs/lab-9/simon/source/main.c
deleted file mode 100644
index 52cd074..0000000
--- a/labs/lab-9/simon/source/main.c
+++ /dev/null
@@ -1,221 +0,0 @@
-#include
-#include
-#include "nds/arm9/math.h"
-#include "quarter.h"
-#include "chrono_display.h"
-
-//Define to use paletes easily
-#define PALETTE(x) (x << 12)
-
-//Buttons of the simon game
-typedef enum{RED,YELLOW,BLUE,GREEN,NONE}button;
-
-//Active button
-button active_button = NONE;
-
-//Time variables (for the chronometer)
-int min = 0, sec = 0, msec = 0;
-
-//Timer 2 ISR (chronometer)
-void TIMER2_ISR()
-{
- msec = (msec + 1) % 1000;
- if(!msec)
- {
- sec = (sec + 1) % 60;
- if(!sec)
- min++;
- }
-}
-
-//Timer0 ISR (blinking effect of the buttons)
-void TIMER0_ISR()
-{
- //It is necessary to wait until the screen is refreshed...
- swiWaitForVBlank();
-
- //Switching between light and dark color
- switch(active_button)
- {
- case RED: BG_PALETTE_SUB[17] ^= 0x0B;break;
- case GREEN: BG_PALETTE_SUB[1] ^= (0x0B << 5);break;
- case BLUE: BG_PALETTE_SUB[49] ^= (0x0B << 10) | (0x5<<5);break;
- case YELLOW: BG_PALETTE_SUB[33] ^= 0x0B | (0xB<<5);break;
- default:
- BG_PALETTE_SUB[1] = ARGB16(1,0,20,0);
- BG_PALETTE_SUB[17] = ARGB16(1,20,0,0);
- BG_PALETTE_SUB[33] = ARGB16(1,20,20,0);
- BG_PALETTE_SUB[49] = ARGB16(1,0,0,20);
- break;
- }
-}
-
-//Update the chronometer every VBlank
-void VBLANK_ISR()
-{
- updateChronoDisp_Main(min,sec,msec);
-}
-
-//-----------------------------------------------------------------------------
-int main(void) {
-//-----------------------------------------------------------------------------
- //Enable the VRAM bank
- VRAM_C_CR = VRAM_ENABLE | VRAM_C_SUB_BG;
- //Enable the Engine
- REG_DISPCNT_SUB = MODE_0_2D | DISPLAY_BG0_ACTIVE;
-
- //Configure BG0
- BGCTRL_SUB[0] = BG_32x32 | BG_COLOR_16 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- /*********************
- * TO COMPLETE EX. 6
- *********************/
- //Copy the tiles to the tile base
- swiCopy(quarterTiles, BG_TILE_RAM_SUB(1), quarterTilesLen/2);
-
- //Copy the 4 16-colors palettes (4 times the same palette)
- swiCopy(quarterPal, &BG_PALETTE_SUB[0], quarterPalLen/2);
- swiCopy(quarterPal, &BG_PALETTE_SUB[16], quarterPalLen/2);
- swiCopy(quarterPal, &BG_PALETTE_SUB[32], quarterPalLen/2);
- swiCopy(quarterPal, &BG_PALETTE_SUB[48], quarterPalLen/2);
-
- //Fill all the BG0 with the white tile (tile corresponding to the 12th position
- //of the map, the upper right corner of the original image)
- int i;
- for(i=0; i<32*24; i++)
- BG_MAP_RAM_SUB(0)[i] = quarterMap[11];
-
- //Create the map of the BG0
- int row, column, tile = 0;
- for(row = 0; row < 12; row++)
- for(column = 0; column <12; column++)
- {
- //Upper left quarter
- BG_MAP_RAM_SUB(0)[4 + row*32 + 11 - column]
- = quarterMap[tile] | (1<<10) | PALETTE(0);
- //Upper right quarter
- BG_MAP_RAM_SUB(0)[4 + row*32 + 12 + column]
- = quarterMap[tile] | PALETTE(1);
- //Bottom left quarter
- BG_MAP_RAM_SUB(0)[4 + (23-row)*32 + 11 - column]
- = quarterMap[tile] | (1<<10) | (1<<11) | PALETTE(2);
- //Bottom right quarter
- BG_MAP_RAM_SUB(0)[4 + (23-row)*32 + 12 + column]
- = quarterMap[tile] | (1<<11) | PALETTE(3);
- tile++;
- }
- /**********************************************/
-
-
- //Change the default colors of the quarters
- BG_PALETTE_SUB[1] = ARGB16(1,0,20,0); //Upper left (green)
- BG_PALETTE_SUB[17] = ARGB16(1,20,0,0); //Upper right (red)
- BG_PALETTE_SUB[33] = ARGB16(1,20,20,0); //Bottom left (yellow)
- BG_PALETTE_SUB[49] = ARGB16(1,0,0,20); //Bottom rigth (Blue)
-
- //Enable Interrupt for the timers and Vblank and set the handlers
- irqSet(IRQ_TIMER0, &TIMER0_ISR);
- irqEnable(IRQ_TIMER0);
- irqSet(IRQ_TIMER2, &TIMER2_ISR);
- irqEnable(IRQ_TIMER2);
- irqSet(IRQ_VBLANK, &VBLANK_ISR);
- irqEnable(IRQ_VBLANK);
-
- //Configure the timers
- TIMER0_DATA = TIMER_FREQ_1024(8);
- TIMER0_CR = TIMER_DIV_1024 | TIMER_IRQ_REQ | TIMER_ENABLE;
- TIMER2_DATA = TIMER_FREQ_256(1000);
- TIMER2_CR = TIMER_DIV_256 | TIMER_IRQ_REQ;
-
- //Initialize the chrono display
- initChronoDisp_Main();
- changeColorDisp_Main(ARGB16(1,31,31,0));
- updateChronoDisp_Main(0,0,0);
-
- int x, y, radius;
- int hits = 0;
- int last;
- active_button = last = NONE;
-
- while(1) {
-
- /***********************
- * TO COMPLETE EX. 7
- ***********************/
- //Scan the keys
- scanKeys();
-
- //If start is pressed, the game starts
- if(keysDown() & KEY_START)
- {
- //Init the randomizer
- srand(TIMER0_DATA);
- //Random button starts
- active_button = rand() % 4;
- //Enable Timers
- TIMER0_CR |= TIMER_ENABLE;
- TIMER2_CR |= TIMER_ENABLE;
- //10 times will be hitted
- hits = 9;
- //Initialize the time variables for the chronometer
- min = sec = msec = 0;
- }
- /*************************************/
-
-
- /***********************
- * TO COMPLETE EX. 7
- ***********************/
- //Declare a touchPosition variable
- touchPosition touch;
- //Poll the touch-screen
- touchRead(&touch);
- //If the touch received is different to (0,0)
- if(touch.px || touch.py)
- {
- //Calculates x and y with respect to the center of the game
- x = touch.px-127;
- y = touch.py-95;
- //Calculate the radius (distance to the center)
- radius = sqrt32(x*x + y*y);
-
- //Check if any of the buttons has been touched
- if(x>=3 && y <=-3 && radius >=19 && radius <96) //RED touched
- if(active_button == RED) active_button = NONE;
- if(x>=3 && y >=3 && radius >=19 && radius <96) //BLUE touched
- if(active_button == BLUE) active_button = NONE;
- if(x<=-3 && y <=-3 && radius >=19 && radius <96) //GREEN touched
- if(active_button == GREEN) active_button = NONE;
- if(x<=-3 && y >=3 && radius >=19 && radius <96) //YELLO touched
- if(active_button ==YELLOW) active_button = NONE;
- }
- /*********************************************/
-
-
- if(active_button == NONE)
- {
- //End of the game (Stop Time Timer)
- if(hits == 0)
- {
- TIMER2_CR &= ~TIMER_ENABLE;
- last = active_button;
- }
- else
- //Look for another random button different to the last one
- {
- int temp = rand() % 4;
- if(temp != last)
- {
- hits--;
- last = active_button = temp;
- }
- }
- //Reset the colors to the dark ones
- BG_PALETTE_SUB[1] = ARGB16(1,0,20,0);
- BG_PALETTE_SUB[17] = ARGB16(1,20,0,0);
- BG_PALETTE_SUB[33] = ARGB16(1,20,20,0);
- BG_PALETTE_SUB[49] = ARGB16(1,0,0,20);
- }
- swiWaitForVBlank();
- }
-}
diff --git a/midterm/midterm-2014/.root b/midterm/midterm-2014/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/midterm/midterm-2014/Makefile b/midterm/midterm-2014/Makefile
deleted file mode 100755
index 3f5a958..0000000
--- a/midterm/midterm-2014/Makefile
+++ /dev/null
@@ -1,164 +0,0 @@
-.PHONY: build run
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS :=
-AUDIO := audio
-PRECOMPILED :=
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9 -lm
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-build:
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- xdg-open $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/midterm/midterm-2014/data/bottom.png b/midterm/midterm-2014/data/bottom.png
deleted file mode 100644
index b47e7d3..0000000
Binary files a/midterm/midterm-2014/data/bottom.png and /dev/null differ
diff --git a/midterm/midterm-2014/source/bottom.h b/midterm/midterm-2014/source/bottom.h
deleted file mode 100644
index b7618f8..0000000
--- a/midterm/midterm-2014/source/bottom.h
+++ /dev/null
@@ -1,28 +0,0 @@
-
-//{{BLOCK(bottom)
-
-//======================================================================
-//
-// bottom, 256x192@8,
-// + palette 256 entries, not compressed
-// + bitmap not compressed
-// Total size: 512 + 49152 = 49664
-//
-// Time-stamp: 2023-11-19, 18:05:20
-// Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-// ( http://www.coranac.com/projects/#grit )
-//
-//======================================================================
-
-#ifndef GRIT_BOTTOM_H
-#define GRIT_BOTTOM_H
-
-#define bottomBitmapLen 49152
-extern const unsigned int bottomBitmap[12288];
-
-#define bottomPalLen 512
-extern const unsigned char bottomPal[512];
-
-#endif // GRIT_BOTTOM_H
-
-//}}BLOCK(bottom)
diff --git a/midterm/midterm-2014/source/bottom.s b/midterm/midterm-2014/source/bottom.s
deleted file mode 100644
index 8aaa463..0000000
--- a/midterm/midterm-2014/source/bottom.s
+++ /dev/null
@@ -1,1791 +0,0 @@
-
-@{{BLOCK(bottom)
-
-@=======================================================================
-@
-@ bottom, 256x192@8,
-@ + palette 256 entries, not compressed
-@ + bitmap not compressed
-@ Total size: 512 + 49152 = 49664
-@
-@ Time-stamp: 2023-11-19, 18:05:20
-@ Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-@ ( http://www.coranac.com/projects/#grit )
-@
-@=======================================================================
-
- .section .rodata
- .align 2
- .global bottomBitmap @ 49152 unsigned chars
- .hidden bottomBitmap
-bottomBitmap:
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x01010102,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101,0x01010101
- .word 0x01010101,0x01010101,0x02010101,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x00000002,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x02000000,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
- .word 0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202,0x02020202
-
- .section .rodata
- .align 2
- .global bottomPal @ 512 unsigned chars
- .hidden bottomPal
-bottomPal:
- .byte 0x00,0x00,0xFF,0x7F,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
-
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
-
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
-
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
-
-@}}BLOCK(bottom)
diff --git a/midterm/midterm-2014/source/game.c b/midterm/midterm-2014/source/game.c
deleted file mode 100644
index db6b1ab..0000000
--- a/midterm/midterm-2014/source/game.c
+++ /dev/null
@@ -1,66 +0,0 @@
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THIS FILE
-/////////////////////////////////////////////////////////
-
-#include "game.h"
-#include "graphics_main.h"
-#include "graphics_sub.h"
-#include "timer_management.h"
-
-bool gameFinished = false;
-int whiteBlocks;
-
-void initGame() {
- int i,j;
- bool grid[16*12];
- whiteBlocks = 0;
-
- for(i=0; i<12; i++)
- for(j=0;j<16;j++)
- grid[i*16+j] = (i%2)^(j%2);
-
- for(i=0;i<400;i++)
- grid[rand()%192] ^=1;
-
- for(i=0; i<12; i++)
- for(j=0;j<16;j++)
- if(grid[i*16+j]) {
- whiteBlocks++;
- fillRectangle(j*16,(j+1)*16-1,i*16,(i+1)*16-1, WHITE);
- }
- else {
- fillRectangle(j*16,(j+1)*16-1,i*16,(i+1)*16-1, BLACK);
- }
- gameFinished = false;
-}
-
-void playerPlaysBlack() {
- if(whiteBlocks > 96)
- playerLoses();
- else
- playerWins();
-}
-
-void playerPlaysWhite() {
- if(whiteBlocks < 96)
- playerLoses();
- else
- playerWins();
-}
-
-void playerWins() {
- if(!gameFinished){
- gameFinished = true;
- fillRectangle(0,255,0,191,GREEN);
- }
-}
-
-void playerLoses() {
- if(!gameFinished){
- gameFinished = true;
- fillRectangle(0,255,0,191,RED);
- }
-}
-
-
-
diff --git a/midterm/midterm-2014/source/game.h b/midterm/midterm-2014/source/game.h
deleted file mode 100644
index 2d3ed14..0000000
--- a/midterm/midterm-2014/source/game.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THIS FILE
-/////////////////////////////////////////////////////////
-
-#ifndef GAME_H_
-#define GAME_H_
-
-#include
-
-#define BLACK ARGB16(1,0,0,0)
-#define WHITE ARGB16(1,31,31,31)
-#define RED ARGB16(1,31,0,0)
-#define GREEN ARGB16(1,0,31,0)
-#define BLUE ARGB16(1,0,0,31)
-
-/*
- * initGame:
- * This function initializes the game. It can be called several times, and each
- * time it will restart the game. It generates a random 16x12 map of white and
- * black boxes and plots them in the screen.
- * IMPORTANT: It requires the correct implementation of the function
- * fillRectangle(...) prototyped in grahpics_main.h
- */
-void initGame();
-
-/*
- * playerPlayBlack:
- * This function is called when the player has chosen to play the Black color
- */
-void playerPlaysBlack();
-
-/*
- * playerPlaysWhite:
- * This function is called when the player has chosen to play the White color
- */
-void playerPlaysWhite();
-
-/*
- * playerWins:
- * This function is called by playerPlaysBlack() or playerPlaysWhite()
- * when the player has chosen the correct color. It replaces the checked
- * screen (white and black blocks) by a full screen in green
- * IMPORTANT: It requires the correct implementation of the function
- * fillRectangle(...) prototyped in grahpics_main.h
- */
-void playerWins();
-
-/*
- * playerLoses:
- * This function is called by playerPlaysBlack() or playerPlaysWhite()
- * when the player has chosen the incorrect color. It replaces the checked
- * screen (white and black blocks) by a full screen in green
- * This function is also used in case of timeout (from the timer ISR)
- * IMPORTANT: It requires the correct implementation of the function
- * fillRectangle(...) prototyped in grahpics_main.h
- */
-void playerLoses();
-
-#endif /* GAME_H_ */
diff --git a/midterm/midterm-2014/source/graphics_main.c b/midterm/midterm-2014/source/graphics_main.c
deleted file mode 100644
index 07e291f..0000000
--- a/midterm/midterm-2014/source/graphics_main.c
+++ /dev/null
@@ -1,88 +0,0 @@
-#include "graphics_main.h"
-#include "game.h"
-#include "nds/arm9/background.h"
-#include "nds/arm9/video.h"
-#include "nds/bios.h"
-
-void configureGraphics_Main() {
- // Configure the MAIN engine in mode 5 activating background 2
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE | DISPLAY_BG0_ACTIVE;
-
- // Configure the VRAM bank A accordingly
- VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG;
-}
-
-void configBG2_Main() {
- // Configure background BG2 in extended rotoscale mode emulating framebuffer mode
- BGCTRL[2] = BG_BMP_BASE(1) | BgSize_B16_256x256;
-
- // Set up affine matrix
- REG_BG2PA = 256;
- REG_BG2PC = 0;
- REG_BG2PB = 0;
- REG_BG2PD = 256;
-}
-
-void fillRectangle(int left, int right, int top, int bottom, u16 color){
-
- //Check boundaries of rectangle and return if not correct
- //All points (top, bottom, left and right) must be within the screen boundaries
- if (left < 0 || right < 0 || top < 0 || bottom < 0) return;
- if (left >= SCREEN_WIDTH || right >= SCREEN_WIDTH || top >= SCREEN_HEIGHT || bottom >= SCREEN_HEIGHT) return;
- if (left > right || top > bottom) return;
-
- //Paint the rectangle
- for (size_t row = top; row <= bottom; row++) {
- for (size_t col = left; col <= right; col++) {
- BG_BMP_RAM(1)[row * SCREEN_WIDTH + col] = color;
- }
- }
- /*
- Example: top=1 bottom=2 left=1 right=2 should paint a 2x2 pixels rectangle
- in the top left corner of the screen as in the following diagram
-
- Column
- 0 1 2 3 ... W-1
- Row 0 - - - - -
- Row 1 - # # - -
- Row 2 - # # - -
- Row 3 - - - - -
- ... ...
- Row H-1 - - - - -
- */
-}
-
-
-// Custom tile
-u8 tile[64] = {
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,0,0,0,
- 1,1,1,1,0,0,0,0,
- 1,1,1,0,0,0,0,0,
- 1,1,0,0,0,0,0,0,
- 1,0,0,0,0,0,0,0,
- 1,0,0,0,0,0,0,0,
- 1,0,0,0,0,0,0,0,
-};
-
-void configBG0_Main() {
-
- //Configure background
- BGCTRL[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(1) | BG_TILE_BASE(0);
-
- //Copy the tile(s)
- swiCopy(tile, BG_TILE_RAM(0), 32);
-
- //Set color(s) in the palette
- BG_PALETTE[1] = BLUE;
-
- //Create map
- for (size_t row = 0; row < 24; row +=2) {
- for (size_t col = 0; col < 32; col += 2) {
- BG_MAP_RAM(1)[row*32 + col] = 0;
- BG_MAP_RAM(1)[row*32 + col + 1] = 0 | BIT(10);
- BG_MAP_RAM(1)[(row+1)*32 + col] = 0 | BIT(11);
- BG_MAP_RAM(1)[(row+1)*32 + col + 1] = 0 | BIT(10) | BIT(11);
- }
- }
-}
diff --git a/midterm/midterm-2014/source/graphics_main.h b/midterm/midterm-2014/source/graphics_main.h
deleted file mode 100644
index 00c7c86..0000000
--- a/midterm/midterm-2014/source/graphics_main.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THIS FILE
-/////////////////////////////////////////////////////////
-#ifndef GRAPHICS_MAIN_H_
-#define GRAPHICS_MAIN_H_
-
-#include
-
-/*
- * configureGraphics_Main:
- * This function sets up the main graphical engine to work in mode 5 and
- * activates the background 2. It also sets up the VRAM bank A properly
- */
-void configureGraphics_Main();
-
-
-/*
- * configBG2_Main:
- * This function configures the BG2 to work in rotoscale mode emulating
- * framebuffer mode (i.e. using 16bit pixels)
- */
-void configBG2_Main();
-
-
-/*
- * fillRectangle:
- * This function fills a rectangle in the background 2 with the provided color.
- * The rectangle is delimited by the coordinates (top,left) and (bottom,right).
- * The function does nothing if one of the coordinate is out of the boundaries.
- * IMPORTANT: The screen buffer where to paint the pixels depends on the
- * configuration of the background 2 done in the function configBG2()
- */
-void fillRectangle(int left, int right, int top, int bottom, u16 color);
-
-
-/* configBG0_Main:
- * This function configure BG0 to work in tiled mode. It also copies the
- * custom tile(s) to the corresponding tile base, sets the necessary color(s)
- * in the palette and generates the map as specified in the exam sheet.
- */
-void configBG0_Main();
-
-
-#endif /* GRAPHICS_MAIN_H_ */
diff --git a/midterm/midterm-2014/source/graphics_sub.c b/midterm/midterm-2014/source/graphics_sub.c
deleted file mode 100644
index dbb5ef0..0000000
--- a/midterm/midterm-2014/source/graphics_sub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-#include "graphics_sub.h"
-#include "bottom.h"
-#include "game.h"
-#include "nds/bios.h"
-
-void configureGraphics_Sub() {
- // Configure the MAIN engine in mode 5 and activate background 2
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-
- // Configure the VRAM bank C accordingly
- VRAM_A_CR = VRAM_ENABLE | VRAM_C_SUB_BG;
-}
-
-
-void configBG2_Sub() {
- // Configure background BG2 in extended rotoscale mode using 8bit pixels
- BGCTRL_SUB[2] = BG_MAP_BASE(0) | BgSize_B8_256x256;
-
- // Transfer image and palette to the corresponding memory locations
- swiCopy(bottomBitmap, BG_BMP_RAM_SUB(0), bottomBitmapLen/2);
- swiCopy(bottomPal, BG_PALETTE_SUB, bottomPalLen/2);
-
- // Set up affine matrix
- REG_BG2PA_SUB = 256;
- REG_BG2PC_SUB = 0;
- REG_BG2PB_SUB = 0;
- REG_BG2PD_SUB = 256;
-}
diff --git a/midterm/midterm-2014/source/graphics_sub.h b/midterm/midterm-2014/source/graphics_sub.h
deleted file mode 100644
index 20fc03d..0000000
--- a/midterm/midterm-2014/source/graphics_sub.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THIS FILE
-/////////////////////////////////////////////////////////
-#ifndef GRAPHICS_SUB_H_
-#define GRAPHICS_SUB_H_
-#include
-
-/*
- * configureGraphics_Sub:
- * configures the SUB engine in MODE 5 and activates BG2. It also sets-up the
- * corresponding VRAM bank
- */
-void configureGraphics_Sub();
-
-/*
- * configBG2_Sub:
- * configures the background BG2 in rotoscale mode and transfers the
- * corresponding image (bottom.png) to the background using a pixel depth
- * of 8 bits
- */
-void configBG2_Sub();
-
-#endif /* GRAPHICS_SUB_H_ */
diff --git a/midterm/midterm-2014/source/main.c b/midterm/midterm-2014/source/main.c
deleted file mode 100644
index b0ba3ef..0000000
--- a/midterm/midterm-2014/source/main.c
+++ /dev/null
@@ -1,92 +0,0 @@
-#include
-#include "graphics_main.h"
-#include "graphics_sub.h"
-#include "nds/arm9/input.h"
-#include "timer_management.h"
-#include "game.h"
-
-void exercise_1() { //DO NOT modify this function
- configureGraphics_Sub();
- configBG2_Sub();
-}
-
-void exercise_2() { //DO NOT modify this function
- int i;
- configureGraphics_Main();
- configBG2_Main();
- configBG0_Main();
-
- fillRectangle(-1,138,0,20, ARGB16(1,31,0,0));
- fillRectangle(250,257,0,20, ARGB16(1,31,0,0));
- fillRectangle(250,254,180,195, ARGB16(1,31,0,0));
- fillRectangle(250,254,-5,50, ARGB16(1,31,0,0));
- fillRectangle(0,255,0,191, ARGB16(1,31,16,0));
- fillRectangle(118,138,0,20, ARGB16(1,31,31,31));
- for(i=0; i<12;i++){
- fillRectangle(i*16,(i+1)*16-1,i*16,(i+1)*16-1, ARGB16(1,31,31,31));
- fillRectangle((15-i)*16,(16-i)*16-1,i*16,(i+1)*16-1, ARGB16(1,31,31,31));
- }
-}
-
-void exercise_3() { //DO NOT modify this function
- initTimer();
-}
-
-
-void exercise_4() {
- //Randomizer initialization -> DO NOT modify this line
- srand(time(NULL));
- // Game initialization -> DO NOT modify this line
- initGame();
- // Timer initialization -> DO NOT modify this line
- initTimer();
-
- while(1) {
- // Scan the keys that have been pressed down
- scanKeys();
-
- // Check if the player has pressed START
- // In that case restart the timer (initTimer) and the game (initGame)
- uint32 keys = keysDown();
- if (keys & KEY_START) {
- initTimer();
- initGame();
- }
-
- // Check if the touchscreen has been touched and if YES get the coordinates
- // if WHITE region touched, call playerPlaysWhite()
- // if BLACK region touched, call playerPlaysBlack()
- // if touch is not in one of those regions, do nothing
-
- touchPosition pos;
- touchRead(&pos);
-
- if (pos.px > 53 && pos.px < 53 + 150) {
- if (pos.py < 96) {
- playerPlaysWhite();
- } else {
- playerPlaysBlack();
- }
- }
-
- swiWaitForVBlank();
- }
-}
-
-
-int main(void) {
- // EXERCISE 1: Uncomment the following line
- exercise_1();
-
- // EXERCISE 2: Uncomment the following line (DO NOT comment the previous ones)
- exercise_2();
-
- // EXERCISE 3: Uncomment the following line (DO NOT comment the previous ones)
- exercise_3();
-
- // EXERCISE 4: Uncomment the following line (DO NOT comment the previous ones)
- exercise_4();
-
- while(1)
- swiWaitForVBlank();
-}
diff --git a/midterm/midterm-2014/source/timer_management.c b/midterm/midterm-2014/source/timer_management.c
deleted file mode 100644
index 912f584..0000000
--- a/midterm/midterm-2014/source/timer_management.c
+++ /dev/null
@@ -1,29 +0,0 @@
-#include "timer_management.h"
-#include "game.h"
-
-//Number of timer ticks (periods of 100 ms) passed
-int timer_ticks;
-
-void initTimer() {
- // Initialize timer_ticks
- timer_ticks = 0;
-
- // Configure timer to trigger an interrupt every 100 ms
- TIMER_CR(0) = TIMER_ENABLE | TIMER_DIV_64 | TIMER_IRQ_REQ;
- TIMER_DATA(0) = TIMER_FREQ_64(10);
-
- // Associate the ISR (timerISR) to the interrupt line and enable it
- irqSet(IRQ_TIMER(0), &timerISR);
- irqEnable(IRQ_TIMER(0));
-}
-
-void timerISR() {
- // Disable the timer when 1.5 seconds have passed and call the function
- // playerLoses() to finish the game (player did not play on time)
- timer_ticks++;
-
- if (timer_ticks >= 1.5 * 10) {
- irqDisable(IRQ_TIMER(0));
- playerLoses();
- }
-}
diff --git a/midterm/midterm-2014/source/timer_management.h b/midterm/midterm-2014/source/timer_management.h
deleted file mode 100644
index a883051..0000000
--- a/midterm/midterm-2014/source/timer_management.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THIS FILE
-/////////////////////////////////////////////////////////
-#ifndef TIMER_MANAGEMENT_H_
-#define TIMER_MANAGEMENT_H_
-#include
-
-/*
- * initTimer:
- * configures a timer in order to trigger an interrupt every 100 ms
- * and associates the interrupt service routine timerISR() to that
- * line. It also activates the timer
- */
-void initTimer();
-
-/*
- * timerISR:
- * Interrupt Service Routine of the timer. When 1.5 seconds have passed,
- * it disables the timer and calls the function plyerLoses()
- */
-void timerISR();
-
-#endif /* TIMER_MANAGEMENT_H_ */
diff --git a/midterm/midterm-2017/.root b/midterm/midterm-2017/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/midterm/midterm-2017/Makefile b/midterm/midterm-2017/Makefile
deleted file mode 100644
index b7a9c10..0000000
--- a/midterm/midterm-2017/Makefile
+++ /dev/null
@@ -1,165 +0,0 @@
-.PHONY: run build
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean run
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- xdg-open $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-# soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- # @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/midterm/midterm-2017/data/hand.grit b/midterm/midterm-2017/data/hand.grit
deleted file mode 100644
index 0c875fe..0000000
--- a/midterm/midterm-2017/data/hand.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--g
--gb
--gB16
--gTFFFFFF
\ No newline at end of file
diff --git a/midterm/midterm-2017/data/hand.png b/midterm/midterm-2017/data/hand.png
deleted file mode 100644
index 3d1f588..0000000
Binary files a/midterm/midterm-2017/data/hand.png and /dev/null differ
diff --git a/midterm/midterm-2017/data/numbers.grit b/midterm/midterm-2017/data/numbers.grit
deleted file mode 100644
index d4eabbe..0000000
--- a/midterm/midterm-2017/data/numbers.grit
+++ /dev/null
@@ -1,3 +0,0 @@
--gt
--gB8
--p
\ No newline at end of file
diff --git a/midterm/midterm-2017/data/numbers.png b/midterm/midterm-2017/data/numbers.png
deleted file mode 100644
index 1e3724d..0000000
Binary files a/midterm/midterm-2017/data/numbers.png and /dev/null differ
diff --git a/midterm/midterm-2017/plate.png b/midterm/midterm-2017/plate.png
deleted file mode 100644
index d6dc145..0000000
Binary files a/midterm/midterm-2017/plate.png and /dev/null differ
diff --git a/midterm/midterm-2017/precompiled/countdown_timer_display.h b/midterm/midterm-2017/precompiled/countdown_timer_display.h
deleted file mode 100644
index f310852..0000000
--- a/midterm/midterm-2017/precompiled/countdown_timer_display.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THIS FILE
-/////////////////////////////////////////////////////////
-
-#include
-#include "string.h"
-
-/*
- * This function plots the 32 tiles of the given digit (number) in
- * the coordinates x, y of the map (not the pixels). The parameters are:
- * map = pointer to the location where the Background map is placed
- * number = digit to be printed in the range [0..9]. If the number is
- * out of this range the funciton does not print any digit
- * x, y = Coordinates of the map. This display is implemented to be used
- * with a 32x32 map of pixels. X and Y represent the coordinates of
- * the 32x32 grid where to start printing the digit (upper left corner).
- * In other words, the 32 tiles of the digit should be plotted form
- * the positions (x,y) to the position (x+4, x+8).
- */
-void printDigit(u16* map, int number, int x, int y);
-
-/*
- * This function prints the value of the countdown timer. It does not receive the coor-
- * dinates where to plot the countdown timer display. It will always be plotted in the
- * center of the screen starting in the coordinates x=0, y=8 (see the example
- * depicted in the manual). The parameters are
- * map = pointer to the location where the Background map is placed
- * min = number of minutes in the range [0...59]
- * sec = number of seconds in the range [0...59]
- * msec = number of milliseconds in the range [0...999]
- *
- * If any of the parameter is out of the range the corresponding digits should
- * not be printed.
- *
- * The separator colon for the minutes and seconds and the separator pint for
- * the seconds and the milliseconds should also be plotted correctly. Both sym-
- * bols are made out of 2x8 tiles (16x64 pixels).
- *
- * The function should also clear all the screen before. To do that, an empty
- * tile (for example the tile 32) will be assigned first to all the 32x32 map
- */
-void updateTimerDisp(u16* map, int min, int sec, int msec);
-
-/*
- * This function change the colors used to display the countdown timer display.
- * The parameters are:
- * b = background color (that replaces to the default white)
- * c = digits color (that replaces to the default black)
- * The tiles of the countdown timer display are created out of two colors (black
- * and white) that are stored in two places in the palet. Changing this two
- * components of the palette will change the color of the display. Look at the
- * generated tiles to guess which components of the palette are used.
- */
-void changeMainColorDisp(u16 b, u16 c);
-
-
diff --git a/midterm/midterm-2017/precompiled/exercises.h b/midterm/midterm-2017/precompiled/exercises.h
deleted file mode 100644
index 577b572..0000000
--- a/midterm/midterm-2017/precompiled/exercises.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * exercises.h
- *
- * Created on: Oct 20, 2017
- * Author: nds
- */
-
-#ifndef EXERCISES_H_
-#define EXERCISES_H_
-
-#include
-#include
-
-
-// Function prototypes
-void exercise_1();
-void exercise_2();
-void exercise_3();
-
-
-// Picture/Grit includes
-#include "hand.h"
-#include "numbers.h"
-
-#include "../source/graphics_sub.h"
-#include "../source/irq_management.h"
-
-extern uint32 min, sec, msec;
-
-
-void exercise_1()
-{
- // Configure Sub screen
- configureGraphics_Sub_Plate();
-
- //---------------------- Print timer's hand in extended rotoscale mode emulating framebuffer mode ----------------------
-
- //Configure the engine in Mode 5 (already done for the plate image) and use the BG2
- REG_DISPCNT_SUB |= DISPLAY_BG2_ACTIVE; // WARNING: Here we must use the "|="
- //Configure background BG2 in extended rotoscale mode emulating framebuffer mode
- BGCTRL_SUB[2] = BG_BMP16_128x128 | BG_BMP_BASE(4);
-
- // Transfer image to the corresponding memory location
- swiCopy(handBitmap, BG_BMP_RAM_SUB(4), handBitmapLen/2); // Copy bitmap
-}
-
-
-void exercise_2()
-{
- // Configure Main screen
- //---------------------- Print timer digits in tiled mode ----------------------
-
- // Enable a suitable VRAM block and map it to the main engine
- VRAM_A_CR = VRAM_ENABLE
- | VRAM_A_MAIN_BG;
- // Configure the engine in Mode 0 and use the BG1
- REG_DISPCNT = MODE_0_2D | DISPLAY_BG1_ACTIVE;
- // Configure the engine to be used as a 32x32 grid of tiles of 256 colors
- // Use BG_MAP_BASE(0) and a suitable BG_TILE_BASE
- BGCTRL[1] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- // Copy the tiles and the palette to the corresponding location
- swiCopy(numbersTiles, BG_TILE_RAM(1), numbersTilesLen/2);
- swiCopy(numbersPal, BG_PALETTE, numbersPalLen);
-
- // DO NOT CALL irqInit();
-
- // Flush the keys register the first time
- scanKeys();
-
- // By default, the background color is set to WHITE
- // and the digits color is set to BLACK
- changeMainColorDisp(WHITE, BLACK);
-
- // Configure the timer and associate the ISRs
- IRQ_initialize();
-
- // Initialization and start the timer for test (Only)
- min = 60;
- irqEnable(IRQ_TIMER0);
-}
-
-
-void exercise_3()
-{
- // Reset the timer initialization used for test
- min = 0;
- irqDisable(IRQ_TIMER0);
-}
-
-#endif /* EXERCISES_H_ */
diff --git a/midterm/midterm-2017/precompiled/hand.h b/midterm/midterm-2017/precompiled/hand.h
deleted file mode 100644
index 6086c3d..0000000
--- a/midterm/midterm-2017/precompiled/hand.h
+++ /dev/null
@@ -1,25 +0,0 @@
-
-//{{BLOCK(hand)
-
-//======================================================================
-//
-// hand, 128x128@16,
-// Transparent color : FF,FF,FF
-// + bitmap not compressed
-// Total size: 32768 = 32768
-//
-// Time-stamp: 2023-11-23, 19:01:06
-// Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-// ( http://www.coranac.com/projects/#grit )
-//
-//======================================================================
-
-#ifndef GRIT_HAND_H
-#define GRIT_HAND_H
-
-#define handBitmapLen 32768
-extern const unsigned int handBitmap[8192];
-
-#endif // GRIT_HAND_H
-
-//}}BLOCK(hand)
diff --git a/midterm/midterm-2017/precompiled/hand.s b/midterm/midterm-2017/precompiled/hand.s
deleted file mode 100644
index ad52e23..0000000
--- a/midterm/midterm-2017/precompiled/hand.s
+++ /dev/null
@@ -1,1174 +0,0 @@
-
-@{{BLOCK(hand)
-
-@=======================================================================
-@
-@ hand, 128x128@16,
-@ Transparent color : FF,FF,FF
-@ + bitmap not compressed
-@ Total size: 32768 = 32768
-@
-@ Time-stamp: 2023-11-23, 19:01:06
-@ Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-@ ( http://www.coranac.com/projects/#grit )
-@
-@=======================================================================
-
- .section .rodata
- .align 2
- .global handBitmap @ 32768 unsigned chars
- .hidden handBitmap
-handBitmap:
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0xF7BF7FFF
- .word 0x7FFFFBDF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0xDADF7FFF,0x801F909F
- .word 0xB19F801F,0x7FFFFBDF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x801FE31F,0x801F801F
- .word 0x801F801F,0x7FFFA53F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x801FA53F,0x801F801F
- .word 0x801F801F,0xE73F801F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x801F8C7F,0x801F801F
- .word 0x801F801F,0xCE7F801F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x801F9CFF,0x801F801F
- .word 0x801F801F,0xDEFF801F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x801FD29F,0x801F801F
- .word 0x801F801F,0x7FFF94BF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0xC21F7FFF,0x801F801F
- .word 0x94BF801F,0x7FFFEF7F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x909FF39F
- .word 0x7FFFB9DF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x801FD6BF
- .word 0xD6BF8C7F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x801FB5BF
- .word 0xB5BF801F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x885FEF7F
- .word 0xEF7FA53F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x98DF7FFF
- .word 0x7FFFC21F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0xEB5F7FFF
- .word 0x7FFFF39F,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
- .word 0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF,0x7FFF7FFF
-
-@}}BLOCK(hand)
diff --git a/midterm/midterm-2017/precompiled/numbers.h b/midterm/midterm-2017/precompiled/numbers.h
deleted file mode 100644
index 917383c..0000000
--- a/midterm/midterm-2017/precompiled/numbers.h
+++ /dev/null
@@ -1,28 +0,0 @@
-
-//{{BLOCK(numbers)
-
-//======================================================================
-//
-// numbers, 32x704@8,
-// + palette 256 entries, not compressed
-// + 352 tiles not compressed
-// Total size: 512 + 22528 = 23040
-//
-// Time-stamp: 2023-11-23, 19:01:57
-// Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-// ( http://www.coranac.com/projects/#grit )
-//
-//======================================================================
-
-#ifndef GRIT_NUMBERS_H
-#define GRIT_NUMBERS_H
-
-#define numbersTilesLen 22528
-extern const unsigned int numbersTiles[5632];
-
-#define numbersPalLen 512
-extern const unsigned short numbersPal[256];
-
-#endif // GRIT_NUMBERS_H
-
-//}}BLOCK(numbers)
diff --git a/midterm/midterm-2017/precompiled/numbers.s b/midterm/midterm-2017/precompiled/numbers.s
deleted file mode 100644
index 013e930..0000000
--- a/midterm/midterm-2017/precompiled/numbers.s
+++ /dev/null
@@ -1,855 +0,0 @@
-
-@{{BLOCK(numbers)
-
-@=======================================================================
-@
-@ numbers, 32x704@8,
-@ + palette 256 entries, not compressed
-@ + 352 tiles not compressed
-@ Total size: 512 + 22528 = 23040
-@
-@ Time-stamp: 2023-11-23, 19:01:57
-@ Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-@ ( http://www.coranac.com/projects/#grit )
-@
-@=======================================================================
-
- .section .rodata
- .align 2
- .global numbersTiles @ 22528 unsigned chars
- .hidden numbersTiles
-numbersTiles:
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x0000FFFF,0xFF000000,0x00FFFFFF,0xFFFF0000,0x00FFFFFF,0xFFFF0000,0x0000FFFF,0xFF000000
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
-
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x000000FF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFF0000,0x00FFFFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x000000FF,0xFFFFFF00,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x000000FF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFF0000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x000000FF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x000000FF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFF0000,0x00000000,0xFF000000
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x000000FF,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFF0000,0x00FFFFFF,0xFF000000
- .word 0x00FFFFFF,0xFF000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFF00,0x0000FFFF,0xFFFFFF00
- .word 0x000000FF,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0x00000000,0x000000FF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFF00
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x000000FF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFF000000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFF0000,0x00000000,0xFF000000
- .word 0x00000000,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x0000FFFF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
- .word 0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x000000FF,0xFFFF0000
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x000000FF,0x00000000,0x0000FFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x0000FFFF,0xFF000000,0x00FFFFFF,0xFF000000,0x00FFFFFF,0xFFFF0000,0x000000FF,0xFFFF0000
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x000000FF,0xFFFFFF00,0x000000FF,0xFFFFFF00,0x0000FFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFF000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF
- .word 0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFF00,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFFFF00
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFFFF0000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x0000FFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0x000000FF,0x00000000,0x000000FF,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF
- .word 0x00000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFF000000,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0x00000000,0x0000FFFF,0xFF000000
- .word 0x0000FFFF,0xFF000000,0x0000FFFF,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFF000000
-
- .word 0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x000000FF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFF000000,0x00000000,0xFF000000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x000000FF,0xFF000000,0x000000FF,0xFF000000,0x000000FF,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x000000FF,0xFFFF0000,0x00000000,0xFFFF0000
- .word 0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000,0x00000000,0xFFFF0000
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0x00000000
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00
-
- .word 0xFFFFFFFF,0x0000FFFF,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000
- .word 0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFF00,0x00000000,0xFFFFFF00,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFF000000,0xFFFFFFFF,0xFFFF0000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000
- .word 0x00FFFFFF,0x00000000,0x00FFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF
- .word 0x00000000,0xFFFFFFFF,0x00000000,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
- .word 0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF
-
- .section .rodata
- .align 2
- .global numbersPal @ 512 unsigned chars
- .hidden numbersPal
-numbersPal:
- .hword 0x0000,0x0010,0x0200,0x0210,0x4000,0x4010,0x4200,0x6318
- .hword 0x6378,0x7B34,0x0088,0x008C,0x0090,0x0094,0x0098,0x009C
- .hword 0x0100,0x0104,0x0108,0x010C,0x0110,0x0114,0x0118,0x011C
- .hword 0x0180,0x0184,0x0188,0x018C,0x0190,0x0194,0x0198,0x019C
- .hword 0x0200,0x0204,0x0208,0x020C,0x0210,0x0214,0x0218,0x021C
- .hword 0x0280,0x0284,0x0288,0x028C,0x0290,0x0294,0x0298,0x029C
- .hword 0x0300,0x0304,0x0308,0x030C,0x0310,0x0314,0x0318,0x031C
- .hword 0x0380,0x0384,0x0388,0x038C,0x0390,0x0394,0x0398,0x039C
-
- .hword 0x2000,0x2004,0x2008,0x200C,0x2010,0x2014,0x2018,0x201C
- .hword 0x2080,0x2084,0x2088,0x208C,0x2090,0x2094,0x2098,0x209C
- .hword 0x2100,0x2104,0x2108,0x210C,0x2110,0x2114,0x2118,0x211C
- .hword 0x2180,0x2184,0x2188,0x218C,0x2190,0x2194,0x2198,0x219C
- .hword 0x2200,0x2204,0x2208,0x220C,0x2210,0x2214,0x2218,0x221C
- .hword 0x2280,0x2284,0x2288,0x228C,0x2290,0x2294,0x2298,0x229C
- .hword 0x2300,0x2304,0x2308,0x230C,0x2310,0x2314,0x2318,0x231C
- .hword 0x2380,0x2384,0x2388,0x238C,0x2390,0x2394,0x2398,0x239C
-
- .hword 0x4000,0x4004,0x4008,0x400C,0x4010,0x4014,0x4018,0x401C
- .hword 0x4080,0x4084,0x4088,0x408C,0x4090,0x4094,0x4098,0x409C
- .hword 0x4100,0x4104,0x4108,0x410C,0x4110,0x4114,0x4118,0x411C
- .hword 0x4180,0x4184,0x4188,0x418C,0x4190,0x4194,0x4198,0x419C
- .hword 0x4200,0x4204,0x4208,0x420C,0x4210,0x4214,0x4218,0x421C
- .hword 0x4280,0x4284,0x4288,0x428C,0x4290,0x4294,0x4298,0x429C
- .hword 0x4300,0x4304,0x4308,0x430C,0x4310,0x4314,0x4318,0x431C
- .hword 0x4380,0x4384,0x4388,0x438C,0x4390,0x4394,0x4398,0x439C
-
- .hword 0x6000,0x6004,0x6008,0x600C,0x6010,0x6014,0x6018,0x601C
- .hword 0x6080,0x6084,0x6088,0x608C,0x6090,0x6094,0x6098,0x609C
- .hword 0x6100,0x6104,0x6108,0x610C,0x6110,0x6114,0x6118,0x611C
- .hword 0x6180,0x6184,0x6188,0x618C,0x6190,0x6194,0x6198,0x619C
- .hword 0x6200,0x6204,0x6208,0x620C,0x6210,0x6214,0x6218,0x621C
- .hword 0x6280,0x6284,0x6288,0x628C,0x6290,0x6294,0x6298,0x629C
- .hword 0x6300,0x6304,0x6308,0x630C,0x6310,0x6314,0x7BFF,0x5294
- .hword 0x4210,0x001F,0x03E0,0x03FF,0x7C00,0x7C1F,0x7FE0,0x7FFF
-
-@}}BLOCK(numbers)
diff --git a/midterm/midterm-2017/source/clk_hand.c b/midterm/midterm-2017/source/clk_hand.c
deleted file mode 100644
index a97d604..0000000
--- a/midterm/midterm-2017/source/clk_hand.c
+++ /dev/null
@@ -1,48 +0,0 @@
-#include "clk_hand.h"
-
-
-// ------ Exercise 3 ------ //
-
-/*
- * Rotate the image representing the red hand of the clock on the background 2
- * of the bottom screen.
- */
-void rotateImage_Sub_BG2(int x, int y, float angle_rads)
-{
- // Compute the distance from rotation point to system origin
- float r = sqrt(x*x + y*y);
-
- // Determine the rotation angle alpha of the image
- float alpha = atan(((float) x) / ((float) y)) + angle_rads;
-
- // Image rotation matrix
- REG_BG2PA_SUB = cos(angle_rads) * 256;
- REG_BG2PB_SUB = sin(angle_rads) * 256;
- REG_BG2PC_SUB = -sin(angle_rads) * 256;
- REG_BG2PD_SUB = cos(angle_rads) * 256;
-
- // Image translation
- REG_BG2X_SUB = (x - r*sin(alpha) - CLK_HAND_MARGIN_X_PIX) * 256;
- REG_BG2Y_SUB = (y - r*cos(alpha) - CLK_HAND_MARGIN_Y_PIX) * 256;
-
-}
-
-
-
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THE FUNCTION BELOW
-/////////////////////////////////////////////////////////
-
-/*
- * Update the angular position of the red hand, based on
- * the initial timer's value and the current one.
- */
-void updateClkHandPosition(uint32 sec_init, uint32 sec_curr)
-{
- static float angle = 0; // Reset the angle (only once)
-
- if (sec_curr != sec_init)
- angle = -(2*M_PI*sec_curr)/sec_init;
-
- rotateImage_Sub_BG2((CLK_HAND_WIDTH_PIX/2) + CLK_HAND_MARGIN_X_PIX, (CLK_HAND_WIDTH_PIX/2) + CLK_HAND_MARGIN_Y_PIX, angle);
-}
diff --git a/midterm/midterm-2017/source/clk_hand.h b/midterm/midterm-2017/source/clk_hand.h
deleted file mode 100644
index f0f1953..0000000
--- a/midterm/midterm-2017/source/clk_hand.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THIS FILE
-/////////////////////////////////////////////////////////
-
-#ifndef CLK_HAND_DISPLAY_H_
-#define CLK_HAND_DISPLAY_H_
-
-#include
-#include
-
-// Constants
-#define CLK_HAND_WIDTH_PIX 128 // Pixel width of the image representing the red hand of the clock
-#define CLK_HAND_MARGIN_X_PIX ((SCREEN_HEIGHT - CLK_HAND_WIDTH_PIX)/2) // Pixel margin on the left of the image representing the red hand of the clock
-#define CLK_HAND_MARGIN_Y_PIX ((SCREEN_HEIGHT - CLK_HAND_WIDTH_PIX)/2) // Pixel margin on the top and bottom of the image representing the red hand of the clock
-
-// Function prototypes
-void rotateImage_Sub_BG2(int x, int y, float angle_rads);
-void updateClkHandPosition(uint32 sec_init, uint32 sec_curr);
-
-
-
-#endif /* CLK_HAND_DISPLAY_H_ */
diff --git a/midterm/midterm-2017/source/graphics_sub.c b/midterm/midterm-2017/source/graphics_sub.c
deleted file mode 100644
index b456ab5..0000000
--- a/midterm/midterm-2017/source/graphics_sub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-#include "graphics_sub.h"
-#include "nds/arm9/background.h"
-#include "nds/arm9/video.h"
-#include "nds/bios.h"
-#include "plate.h"
-//... TO COMPLETE EXERCISE 1
-
-// ------ Exercise 1 ------ //
-
-/*
- * Print timer's plate, dial and buttons in extended rotoscale mode
- * with palette of 256 colors
- */
-void configureGraphics_Sub_Plate() {
- // Configure the VRAM bank C accordingly
- VRAM_C_CR = VRAM_ENABLE | VRAM_C_SUB_BG;
-
- // Configure the engine in Mode 5 and use the BG3
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG3_ACTIVE;
-
-
- // Configure background BG3 in extended rotoscale mode using 8 bit pixels and "0" for the base address
- BGCTRL_SUB[3] = BG_BMP_BASE(0) | BgSize_B8_256x256;
-
- // Transfer image bitmap and palette to the corresponding memory locations
- swiCopy(plateBitmap, BG_BMP_RAM_SUB(0), plateBitmapLen / 2);
- swiCopy(platePal, BG_PALETTE_SUB, platePalLen / 2);
-
- // Set up affine matrix
- REG_BG3PA_SUB = 256;
- REG_BG3PC_SUB = 0;
- REG_BG3PB_SUB = 0;
- REG_BG3PD_SUB = 256;
-}
diff --git a/midterm/midterm-2017/source/graphics_sub.h b/midterm/midterm-2017/source/graphics_sub.h
deleted file mode 100644
index 44261a9..0000000
--- a/midterm/midterm-2017/source/graphics_sub.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THIS FILE
-/////////////////////////////////////////////////////////
-
-#ifndef GRAPHICS_SUB_H_
-#define GRAPHICS_SUB_H_
-
-#include
-#include
-
-
-// Macros for the colors
-#define RED ARGB16(1,31,0,0)
-#define GREEN ARGB16(1,0,31,0)
-#define BLUE ARGB16(1,0,0,31)
-#define YELLOW ARGB16(1,31,31,0)
-#define LIGHT_BLUE ARGB16(1,0,31,31)
-#define WHITE ARGB16(1,31,31,31)
-#define BLACK ARGB16(1,0,0,0)
-
-
-/*
- * Print timer's plate, dial and buttons in extended rotoscale mode
- * with palette of 256 colors
- */
-void configureGraphics_Sub_Plate();
-
-
-#endif /* GRAPHICS_SUB_H_ */
diff --git a/midterm/midterm-2017/source/irq_management.c b/midterm/midterm-2017/source/irq_management.c
deleted file mode 100644
index b2317e3..0000000
--- a/midterm/midterm-2017/source/irq_management.c
+++ /dev/null
@@ -1,182 +0,0 @@
-
-#include "irq_management.h"
-
-#include "graphics_sub.h"
-#include "nds/arm9/input.h"
-#include "nds/input.h"
-#include "nds/interrupts.h"
-
-// ------ Exercise 2 ------ //
-
-/*
- * IRQ_initialize:
- * configures the timer and IRQs of the system
- */
-void IRQ_initialize() {
- // Configure timer 0 to trigger an interrupt every 1 ms
- TIMER_DATA(0) = TIMER_FREQ(1000);
- TIMER_CR(0) = TIMER_ENABLE | TIMER_DIV_1 | TIMER_IRQ_REQ;
-
- // Countdown timer value decrementing:
- // Associate the ISR (ISR_countdown_timer) to the interrupt line of timer 0
- // (Do not enable it!)
- irqSet(IRQ_TIMER(0), &ISR_countdown_timer);
-
- // Main screen refreshing:
- // Associate the ISR (ISR_VBlank) to the interrupt line VBLANK and enable it
- irqSet(IRQ_VBLANK, &ISR_VBlank);
- irqEnable(IRQ_VBLANK);
-}
-
-// ------ Exercise 4 ------ //
-
-// Initial value of the countdown timer (in sec)
-// (set by the user before starting the countdown)
-uint32 sec_init = 0; // Reset
-
-// Current value of the countdown timer (in mini-sec, sec and min)
-uint32 min = 0, sec = 0, msec = 0; // Reset
-
-// Countdown timer states list
-enum { STOP, PLAY, PAUSE };
-
-// Countdown timer state
-u8 countdown_state = STOP; // Initial state
-
-/*
- * This function handles the input by monitoring the keys and the touchscreen.
- */
-void handleInput() {
- // Scan the keys
- scanKeys();
-
- /* Identify the keys and map the action according to the instructions
- * presented in the exam sheet. */
- uint32 keys = keysDown();
-
- // If the arrows have been touched and countdown_state is STOP
- if (countdown_state == STOP && ((keys & KEY_UP) || (keys & KEY_DOWN))) {
- // Save the initial value of the countdown timer in seconds
- if ((keys & KEY_UP) && sec_init <= 59 * 60)
- sec_init += 30;
- if ((keys & KEY_DOWN) && sec_init >= 30)
- sec_init -= 30;
- min = sec_init / 60;
- sec = sec_init % 60;
- } else if (keys & KEY_TOUCH) // The touchscreen has been touched
- {
- handleTouchPad();
- }
-}
-
-// ------ Exercise 5 ------ //
-
-/*
- * This function handles the touchscreen.
- */
-void handleTouchPad() {
- // Read the touch position (structure).
-
- /* Get the coordinates of the touched position:
- ▪ If STOP (square) button/region touched:
- - Disable the countdown timer IRQ (IRQ_TIMER0).
- - Reset timer value to zero.
- - Change the state of "countdown_state".
- - Set background color to WHITE and the digits color to BLACK on the MAIN screen,
- with the function: changeMainColorDisp(uint16 bg_color, uint16 digit_color).
- ▪ If PLAY (triangle) button/region touched:
- - Start countdown timer by enabling its IRQ (IRQ_TIMER0).
- - Change the state of "countdown_state".
- - Set background color to YELLOW and the digits color to BLACK on the MAIN screen,
- with the function: changeMainColorDisp(uint16 bg_color, uint16 digit_color).
- ▪ If PAUSE (double bars) button/region touched:
- - Pause countdown timer by disabling its IRQ (IRQ_TIMER0).
- - Change the state of "countdown_state".
- - Set background color to GREEN and the digits color to BLACK on the MAIN screen,
- with the function: changeMainColorDisp(uint16 bg_color, uint16 digit_color).
- ▪ If the touch position is not in one of those 3 regions, do nothing.
- */
- touchPosition pos; touchRead(&pos);
-
- if (187 <= pos.px && pos.px <= 187 + 38) {
- if (35 <= pos.py && pos.py <= 35 + 38) { // STOP
- irqDisable(IRQ_TIMER(0));
- // min = sec_init / 60;
- // sec = sec_init % 60;
- min = sec = msec = 0;
- countdown_state = STOP;
- changeMainColorDisp(WHITE, BLACK);
- }
- if (35 + 38 + 4 <= pos.py && pos.py <= 35 + 2*38 + 4) { // PLAY
- irqEnable(IRQ_TIMER(0));
- countdown_state = PLAY;
- changeMainColorDisp(YELLOW, BLACK);
- }
- if (35 + 2*38 + 2*4 <= pos.py && pos.py <= 35 + 3*38 + 2*4) { // PAUSE
- irqDisable(IRQ_TIMER(0));
- countdown_state = PAUSE;
- changeMainColorDisp(GREEN, BLACK);
- }
- }
-
- // If we are in the region of the 3 buttons (STOP, PLAY and PAUSE),
- // perform the actions presented above.
- //... TO COMPLETE EXERCISE 5
- /* if (...)
- {
-
-
- }
-*/
-}
-
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THE FUNCTION BELOW
-/////////////////////////////////////////////////////////
-
-/*
- * ISR_countdown_timer:
- * Interrupt Service Routine of the timer.
- * After each 1 ms, it decrements the countdown timer.
- */
-void ISR_countdown_timer() {
- if (msec || sec || min) // if the countdown timer did not reach 00:00.000
- {
- if (!msec && (sec || min)) {
- msec = 999; // Reset to the max of the ms range
- if (!sec) {
- sec = 59; // Reset to the max of the sec range
- if (min)
- min--; // Decrement 1 minutes
- } else
- sec -= 1; // Decrement 1 seconds
- } else
- msec -= 1; // Decrement 1 ms
- } else // Countdown finished!!!
- {
- // Change the color of the MAIN screen
- changeMainColorDisp(RED, WHITE);
-
- // Disable the Timer IRQ
- irqDisable(IRQ_TIMER0);
- }
-}
-
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THE FUNCTION BELOW
-/////////////////////////////////////////////////////////
-
-/*
- * ISR_VBlank:
- * Interrupt Service Routine of the screens, to refresh them properly.
- */
-void ISR_VBlank() {
- // Handles the inputs (keys / touchscreen)
- handleInput();
-
- // Update the time value printed on the MAIN screen
- updateTimerDisp(BG_MAP_RAM(0), min, sec, msec);
-
- // Update the rotation angle of the countdown timer's hand
- updateClkHandPosition(sec_init, min * 60 + sec);
-}
diff --git a/midterm/midterm-2017/source/irq_management.h b/midterm/midterm-2017/source/irq_management.h
deleted file mode 100644
index 8383c4d..0000000
--- a/midterm/midterm-2017/source/irq_management.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/////////////////////////////////////////////////////////
-//// DO NOT MODIFY THIS FILE
-/////////////////////////////////////////////////////////
-
-#ifndef IRQ_MANAGEMENT_H_
-#define IRQ_MANAGEMENT_H_
-#include
-#include
-#include "countdown_timer_display.h"
-#include "graphics_sub.h"
-#include "clk_hand.h"
-
-
-extern uint32 min, sec, msec;
-
-/*
- * IRQ_initialize:
- * configures the timer and IRQs of the system
- */
-void IRQ_initialize();
-
-/*
- * ISR_countdown_timer:
- * Interrupt Service Routine of the timer.
- * After each 1 ms, it decrements the countdown timer.
- */
-void ISR_countdown_timer();
-
-/*
- * ISR_VBlank:
- * Interrupt Service Routine of the screens, to refresh them properly.
- */
-void ISR_VBlank();
-
-/*
- * This function handles the input by monitoring the keys and the touchscreen.
- */
-void handleInput();
-
-/*
- * This function handles the touchscreen.
- */
-void handleTouchPad();
-
-
-#endif /* IRQ_MANAGEMENT_H_ */
diff --git a/midterm/midterm-2017/source/main.c b/midterm/midterm-2017/source/main.c
deleted file mode 100644
index baafa77..0000000
--- a/midterm/midterm-2017/source/main.c
+++ /dev/null
@@ -1,25 +0,0 @@
-#include
-#include
-#include "exercises.h"
-
-
-//---------------------------------------------------------------------------------
-
-//---------------------------------------------------------------------------------
-
-int main(void)
-{
- // EXERCISE 1 - LINE TO UNCOMMENT
- exercise_1();
-
- // EXERCISE 2 - LINE TO UNCOMMENT
- exercise_2();
-
- // EXERCISE 3 - LINE TO UNCOMMENT
- exercise_3();
-
- while(1)
- {
- swiWaitForVBlank();
- }
-}
diff --git a/midterm/midterm-2017/source/plate.h b/midterm/midterm-2017/source/plate.h
deleted file mode 100644
index 0a28c65..0000000
--- a/midterm/midterm-2017/source/plate.h
+++ /dev/null
@@ -1,28 +0,0 @@
-
-//{{BLOCK(plate)
-
-//======================================================================
-//
-// plate, 256x192@8,
-// + palette 256 entries, not compressed
-// + bitmap not compressed
-// Total size: 512 + 49152 = 49664
-//
-// Time-stamp: 2023-11-23, 19:09:50
-// Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-// ( http://www.coranac.com/projects/#grit )
-//
-//======================================================================
-
-#ifndef GRIT_PLATE_H
-#define GRIT_PLATE_H
-
-#define plateBitmapLen 49152
-extern const unsigned int plateBitmap[12288];
-
-#define platePalLen 512
-extern const unsigned char platePal[512];
-
-#endif // GRIT_PLATE_H
-
-//}}BLOCK(plate)
diff --git a/midterm/midterm-2017/source/plate.s b/midterm/midterm-2017/source/plate.s
deleted file mode 100644
index 32fe71c..0000000
--- a/midterm/midterm-2017/source/plate.s
+++ /dev/null
@@ -1,1791 +0,0 @@
-
-@{{BLOCK(plate)
-
-@=======================================================================
-@
-@ plate, 256x192@8,
-@ + palette 256 entries, not compressed
-@ + bitmap not compressed
-@ Total size: 512 + 49152 = 49664
-@
-@ Time-stamp: 2023-11-23, 19:09:50
-@ Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-@ ( http://www.coranac.com/projects/#grit )
-@
-@=======================================================================
-
- .section .rodata
- .align 2
- .global plateBitmap @ 49152 unsigned chars
- .hidden plateBitmap
-plateBitmap:
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x7D7D7D7D
- .word 0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC7C3C3C3,0xDAD9D8D4,0xDBDBDBDB
- .word 0xDBDBDBDB,0xC8D7D9DA,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x5F5F5F7D
- .word 0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x7D5F5F5F
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xDBCBC3C3,0xF2DBDBDB,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xF2FCFCFC,0xDBDBDBDB,0xC3C3CADA,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xDBCAC3C3,0xFCF2DBDB,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xDBDBF2FC,0xC3C3C3CB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xCAC3C3C3,0xFCF2DBDB,0xFCFCFCFC,0xFCFCFCFC,0xF87F9DFB,0x1212AEFC
- .word 0xFCF61A12,0xFCC188CD,0xFCFCFCFC,0xFCFCFCFC,0xCCDBDBF2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xF2DBCBC3,0xFCFCFCFC,0xB6FCFCFC,0xFCFCC668,0xE10016FC,0x0000A8FC
- .word 0xFCF50900,0xFC6D008E,0x7A90FCFC,0xFCFCFCDB,0xF2FCFCFC,0xC3CBDBDB,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xDBC8C3C3,0xFCFCF2DB,0xD6F1FCFC,0x72FCFCFC,0xFCFC8100,0xC60037FC,0x0000A8FC
- .word 0xFCF50900,0xFC870074,0x0032FCFC,0xFBFCFCC7,0xFCFCF9CE,0xDBF2FCFC,0xC3C3C3CB,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCF2DBC9,0xFCFCFCFC,0x2E0BD1FC,0xA7FCFCFC,0xFCFC4D00,0xAB0052FC,0x0000A8FC
- .word 0xFCF50900,0xFCA2005B,0x0A05F3FC,0xD6FCFCF5,0xFCFB3501,0xFCFCFCFC,0xC3CBDBF2,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xDBC8C3C3,0xFCFCFCF2,0xFCF1E0FC,0x0112F6FC,0xDCFCFCD8,0xFCFC1801,0x90006CFC,0x0000A8FC
- .word 0xFCF50900,0xFCBF0040,0x3400C1FC,0x84FCFCFC,0xFCFC6200,0xFCF4DDFC,0xDBF2FCFC,0xC3C3C3CB
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xFCF2CBC3,0xFCFCFCFC,0xFC8B0489,0x0062FCFC,0xFAFCFC83,0xFCDE0013,0x830485FC,0x0000A8FC
- .word 0xFCF50900,0xFCDD0136,0x68008BFC,0x34FCFCFC,0xFCFCB400,0xCB163AFB,0xFCFCFCFC,0xC3CADBF2
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC9C3C3C3
- .word 0xFCFCF2DB,0xFCFCE0FC,0xF92200B4,0x00B3FCFC,0xFCFCFC34,0xFCCD3956,0xFCF9F5FC,0x0000A8FC
- .word 0xFCF50900,0xFCFAF4FC,0x9F2892FC,0x01DDFCFC,0xFCFCF712,0xF41600C6,0xFCECF1FC,0xCCF2FCFC
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2CBC3C3
- .word 0xE7FCFCFC,0xFCC80665,0xA70029F9,0x0EF4FCFC,0xFCFCE305,0xFCFCFCFB,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFBFCFCFC,0x0194FCFC,0xFCFCFC5C,0xFC7A0056,0x961577FC,0xF2FCFCF8
- .word 0xC3C3CADB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2DBC8
- .word 0x0F9DFCFC,0xFB390000,0x380099FC,0xB7FCFCFC,0xFCFCFCE5,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xCCFAFCFC,0xDEFCFCD0,0xFCE60904,0x000007DA,0xFCFCD12E
- .word 0xC3CBF2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xCBC3C3C3,0xFCFCFCF2
- .word 0x00A0FCFC,0xA1000000,0x1114F2FC,0xFCFCFCDF,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x9AFCFCFC,0xFCFC6003,0x0000004F,0xFCFCE50F
- .word 0xDBF2FCFC,0xC3C3C3C8,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2CBC3C3,0x97FBFCFC
- .word 0x37FAFCE4,0x1D000000,0xF0C3FCF2,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xB9FCDCD7,0x00000000,0xB2FCFC86
- .word 0xFCFCFCC9,0xC3C3CAF2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2DBC6,0x0083FCFC
- .word 0xC4FCFA44,0x00000002,0xFCFCFC79,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x2CF7FCFC,0x26000000,0x0FDBFCF6
- .word 0xFCFCD207,0xC3CBF2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC7C3C3C3,0xFCFCFCF2,0x18E6FCFC
- .word 0xFCFC8400,0x0000005C,0xFCFCDD0A,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0092FCFC,0xB0010000,0x0039F7FC
- .word 0xFCFCFC56,0xCBF2FCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2C7C3C3,0xF8FCFCFC,0xB7FCFCFC
- .word 0xFCC50402,0x00000BE1,0xFCFC5400,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0012E9FC,0xFC450000,0x210078FC
- .word 0xFCFCFCEE,0xF2FCFCF8,0xC3C3C3CB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2C8C3,0x3B94FCFC,0xFCFCFCF2
- .word 0xFA2C0075,0x000083FC,0xFCBF0100,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x00006BFC,0xFCD20500,0xC30502D0
- .word 0xCAFCFCFC,0xFCFCD128,0xC3C3CBF2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCFCF2C7,0x0022F0FC,0xFCFCF84B
- .word 0xFCD05BF6,0x0021F4FC,0xFA310000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x000004D2,0xFCFC6A00,0xFC899CFC
- .word 0x18DBFCFC,0xFCFC6900,0xC3CBF2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC6C3C3C3,0xFCFCFCF2,0x16D7FCFC,0xFCFB6200
- .word 0xFCFCFCFC,0x00AAFCFC,0x96000000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0303A9FC
- .word 0xFCF60C03,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x00000046,0xFCFCEA13,0xFCFCFCFC
- .word 0x0025E6FC,0xFCFCF84A,0xCBF2FCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xDBC3C3C3,0xFAFCFCFC,0xC8FCFCFC,0xFC7B000D
- .word 0xFCFCFCFC,0x41FCFCFC,0x15000000,0xFCFCFCEC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xECECF7FC
- .word 0xFCFCEDEC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xAFFCFCFC,0x00000000,0xFCFCFC91,0xFCFCFCFC
- .word 0x380034F1,0xFCFCFCF2,0xF2FCFCFA,0xC3C3C3CB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2CBC3C3,0x5690FCFC,0xFCFCFCF5,0xFCA60EB7
- .word 0xFCFCFCFC,0xCEFCFCFC,0x0A000004,0xFCFCFCB2,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x69FCFCFC,0x2D000001,0xFCFCFCF9,0xFCFCFCFC
- .word 0xE8275FF7,0xD7FCFCFC,0xFCFCD334,0xC3C3CAF2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2CBC3,0x0013EAFC,0xFCFCEE42,0xFCFCEAFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xDC530166,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xBA0129B4,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCEAFBFC,0x15C7FCFC,0xFCFC5500,0xC3C8F2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCFCF2C9,0x1CD1FCFC,0xFCE43100,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCBEE8,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCADF7FC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x000BB5FC,0xFCFCF44D,0xC3DBFCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCFCFCDB,0xDFFCFCFC,0xF92B002B,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x630005C9,0xFCFCFCF8,0xCBF2FCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xCBC3C3C3,0xA7FAFCF2,0xFCFCFCFA,0xFCAA3FEA,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFB7C5DFA,0xE9FCFCFC,0xF2FCFCB5,0xC3C3C3CA,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2CAC3C3,0x0087FCFC,0xFCFCE548,0xFCFCFAFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFAFC,0x1CBDFCFC,0xFCFCD109,0xC3C3C3DB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCDBC3C3,0x18B6FCFC,0xFCB61800,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0x00027BF7,0xFCFCE13E,0xC3C3CCF2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2CBC3,0xE5FCFCFC,0x92020045,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFBFCFCFC,0x7E040043,0xFCFCFCFA,0xC3C9F2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCFCF2C9,0xFCFCD6A6,0xD61386FA,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCC0208F,0xD0ADFBFC,0xC3DBFCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xDDFCFCDB,0xEC720609,0xFCEEFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCEFFB,0x3F0043CF,0xCBF2FCFB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC9C3C3C3,0x55FCFCF2,0x16000000,0xFCFCF899,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0x68E7FCFC,0x00000003,0xDBFCFCA8,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xDBC3C3C3,0x01C3FCFC,0x00000000,0xFCBF3100,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0x00108FF7,0x00000000,0xF2FCF821,0xC3C3C3CB,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xF2C9C3C3,0x8BF7FCFC,0x00000010,0x55010000,0xFCFCFCDD,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xB6FCFCFC,0x0000002A,0x2E000000,0xFCFCFCBC,0xC3C3C3DB,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x5F5F5F7D
- .word 0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x7D5F5F5F
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCDBC3C3,0xFCFCFCFC,0x000364E7,0x00000000,0xFCF17B09,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x004CD6FC,0x00000000,0xF9941500,0xFCFCFCFC,0xC3C3CBF2,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x7D7D7D7D
- .word 0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCDBC3C3,0xFCE39DFC,0x3FCDFCFC,0x00000000,0xA31C0000,0xFCFCFCFA
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xECFCFCFC,0x00000672,0x06000000,0xFCFCEC6C,0xFCBBC7FB,0xC3C3DBFC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCF2CCC3,0x620701CF,0xFBFCFCCE,0x000021A8,0x03000000,0xFCFCFCD1
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0x80FCFCFC,0x00000000,0xD4480100,0xABF8FCFC,0xFA2A013C,0xC3C9F2FC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCFCDBC3,0x000554D4,0xFCE44501,0x0C7EF4FC,0x62000000,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xF0FCFCFC,0x0000001A,0xFCFCB126,0x0022B4FC,0xF4781500,0xC3DBFCFC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCFCF2CB,0x70DEFCFC,0xFCF81D0F,0xE1FCFCFC,0xE60F015A,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x880F00A0,0xFCFCFCF7,0x2800C0FC,0xFCFCF495,0xC3DBFCFC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCFCFCDB,0xFCFCFCFC,0xFCFCC7EE,0xFCFCFCFC,0xFCA1C2FC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCE67FF9,0xFCFCFCFC,0xFBBBFBFC,0xFCFCFCFC,0xCBF2FCFC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xECFCFCDB,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFAFCFCFC,0xDBFCFCEE,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xCBC3C3C3,0x07E1FCF2,0xFCE29542,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x277ACCFA,0xDBFCFC3C,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x7D7D7D7D
- .word 0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xDBC3C3C3,0x09AFFCFC,0x3D020000,0xFCFCFCDD,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xA6FCFCFC,0x00000021,0xF2FCF31C,0xC3C3C3CB,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x5F5F5F7D
- .word 0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x7D5F5F5F
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xDBC3C3C3,0xEFFCFCFC,0x0E0A51A2,0xFCFCFCF4,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xABFCFCFC,0xBF6C1B00,0xFCFCFCFA,0xC3C3C3DB,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xF2C9C3C3,0xFCFCFCFC,0xC3F2FCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xF2FCFCFC,0xFCFCFBC4,0xFCFCFCFC,0xC3C3C3DB,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCDAC3C3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xC3C3C3DB,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCDAC3C3,0xD7A2B6FC,0xFCFCFCF8,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xF1FCFCFC,0xFCDE91C5,0xC3C3CBF2,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCDAC3C3,0x00004AFC,0xFC8F460E,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x053369ED,0xFC9A0000,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCD9C3C3,0x1F5494FC,0xFC570000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x040008F6,0xFCC06431,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCD9C3C3,0xFCFCFCFC,0xFCC2AFE5,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xF2C1A3FC,0xFCFCFCFC,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCF0C5C3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFBCFC3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x8C18FCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFBD6C3,0x7B62478F,0xFCFCB898,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x8FAAEDFC,0xD03F5973,0xC3C6F2FC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFCFC8C18,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDAC3,0x0000005C,0xFCFC2700,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000D1FC,0xAD000000,0xC3D2FCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x8C180000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0x819CB6DB,0xFCFC7867,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFAFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7054EDFC,0xECBFA58A,0xC3D6FCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0xFCFC8C18,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xC3D8FCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x8C180000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0xD0D0D0D4,0xD0D0D0D0,0xD0D0D0D0,0xD0D0D0D0,0xFCFCF9D1,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xD0EBFCFC,0xD0D0D0D0,0xD0D0D0D0,0xD0D0D0D0,0xE3D0D0D0,0xC3DAFCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0xFCFC8C18,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0x00000015,0x00000000,0x00000000,0x00000000,0xFCFCEC03,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x0099FCFC,0x00000000,0x00000000,0x00000000,0x69000000,0xC3DBFCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x8C180000,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0x00000015,0x00000000,0x00000000,0x00000000,0xFCFCEC03,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x0099FCFC,0x00000000,0x00000000,0x00000000,0x69000000,0xC3DBFCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFCFC18,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0x00000015,0x00000000,0x00000000,0x00000000,0xFCFCEC03,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x0099FCFC,0x00000000,0x00000000,0x00000000,0x69000000,0xC3DBFCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0x00000015,0x00000000,0x00000000,0x00000000,0xFCFCEC03,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x0099FCFC,0x00000000,0x00000000,0x00000000,0x69000000,0xC3DBFCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x00000000,0xFCFCFC18,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0xD9D9D9DC,0xD9D9D9D9,0xD9D9D9D9,0xD9D9D9D9,0xFCFCFAD9,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xD9EEFCFC,0xD9D9D9D9,0xD9D9D9D9,0xD9D9D9D9,0xE8D9D9D9,0xC3DBFCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0x8C180000,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xC3DAFCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x00000000,0xFCFC8C18,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDBC3,0x7C96B4DA,0xFCFC7863,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x6B53EDFC,0xEBBDA085,0xC3D8FCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0x8C180000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDAC3,0x0000005D,0xFCFC2700,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000D0FC,0xAD000000,0xC3D4FCFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x00000000,0xFCFC8C18,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCDAC3,0x80664C91,0xFCFCBA9B,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x92ACEDFC,0xD0435E78,0xC3C6F2FC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0x8C180000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCD9C3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFCFC8C18,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCFCD5C3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x8C18FCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCF2C6C3,0xFCFCFCFC,0xFCC0AADF,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xEFBB9FFC,0xFCFCFCFC,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCDBC3C3,0x1A4F93FC,0xFC570000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x030008F5,0xFCC0612C,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCDBC3C3,0x01004BFC,0xFC934B19,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0D3A6FED,0xFC9C0000,0xC3C3DBFC,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCDBC3C3,0xE2A6B7FC,0xFCFCFCFB,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xF7FCFCFC,0xFCDF94CF,0xC3C3CBF2,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xFCDAC3C3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xC3C3C3DB,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xF2C9C3C3,0xFCFCFCFC,0xC0EFFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xF2FCFCFC,0xFCFCFAC0,0xFCFCFCFC,0xC3C3C3DB,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xDBC3C3C3,0xE9FCFCFC,0x0D084C9D,0xFCFCFCF3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xAAFCFCFC,0xB9661800,0xFCFCFCF6,0xC3C3C3DB,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xDBC3C3C3,0x05AEFCFC,0x43070000,0xFCFCFCDC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xA7FCFCFC,0x0000012A,0xF2FCF318,0xC3C3C3CA,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x5F5F5F7D
- .word 0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x7D5F5F5F
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xCBC3C3C3,0x0CE2FCF2,0xFCEB9A49,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x307FD5FB,0xDBFCFC3E,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x7D7D7D7D
- .word 0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xF1FCFCDB,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xDBFCFCF3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCFCFCDB,0xFCFCFCFC,0xFCFCC5EC,0xFCFCFCFC,0xFC9FBFFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCE37DF9,0xFCFCFCFC,0xFAB8FBFC,0xFCFCFCFC,0xCBF2FCFC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCFCF2CB,0x6BD8FCFC,0xFCF71C0C,0xDDFCFCFC,0xE40E0155,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x840D009D,0xFCFCFCF3,0x2400BFFC,0xFCFCEF90,0xC3DBFCFC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCFCDBC3,0x000350D5,0xFCE34A03,0x087BF0FC,0x5F000000,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xEFFCFCFC,0x00000019,0xFCFBAC22,0x0028B5FC,0xF5761000,0xC3DBFCFC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCF2CCC3,0x650B01D2,0xFAFCFCD6,0x00001BA3,0x02000000,0xFCFCFCD3
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0x81FCFCFC,0x00000000,0xCF410000,0xB2FAFCFC,0xFB2C0240,0xC3C9F2FC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCDBC3C3,0xFCEAA1FC,0x3AC8FCFC,0x00000000,0xA9200000,0xFCFCFCFB
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xF1FCFCFC,0x00000876,0x03000000,0xFCFCE868,0xFCBECEFC,0xC3C3DBFC,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xFCDBC3C3,0xFCFCFCFC,0x000160E4,0x00000000,0xFCF5800B,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x0051DBFC,0x00000000,0xF88F1100,0xFCFCFCFC,0xC3C3CBF2,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x7D7D7D7D
- .word 0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xF2C9C3C3,0x86F4FCFC,0x0000000D,0x5B020000,0xFCFCFCE0,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xBBFCFCFC,0x0000002F,0x2B000000,0xFCFCFCB6,0xC3C3C3DB,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x5F5F5F7D
- .word 0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x7D5F5F5F
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xDBC3C3C3,0x02C5FCFC,0x00000000,0xFCC43700,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0x001595F8,0x00000000,0xF2FCF823,0xC3C3C3CB,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC9C3C3C3,0x59FCFCF2,0x1B000000,0xFCFCFA9F,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0x6DEDFCFC,0x00000006,0xDBFCFCAC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xDFFCFCDB,0xF177090A,0xFCEBFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCEDFA,0x420048D6,0xCAF2FCFB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCFCF2C8,0xFCFCDBA8,0xD50F82F9,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCBD1C8C,0xD2B2FCFC,0xC3DBFCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2CBC3,0xE1FCFCFC,0x94030042,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFBFCFCFC,0x7B030047,0xFCFCFCF8,0xC3C9F2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCDBC3C3,0x14B1FCFC,0xFCBC1C00,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0x000581F9,0xFCFCDD3A,0xC3C3CBF2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2CAC3C3,0x008CFCFC,0xFCFCE94E,0xFCFCF9FC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCF9FC,0x21C2FCFC,0xFCFCD30B,0xC3C3C3DB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xCBC3C3C3,0xACFBFCF2,0xFCFCFCFB,0xFCA63AE8,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFB7758F9,0xEDFCFCFC,0xF2FCFCB9,0xC3C3C3CA,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCFCFCDB,0xDDFCFCFC,0xF92B0028,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x5F0006C8,0xFCFCFCF8,0xCBF2FCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCFCF2C9,0x1ACDFCFC,0xFCE63400,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCB8E6,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCA8F4FC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0x000DB8FC,0xFCFCF14A,0xC3DBFCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2CBC3,0x0011EAFC,0xFCFCF045,0xFCFCE5FC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xD74D0164,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFBFCFCFC,0xB80124B0,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCE6FAFC,0x18CBFCFC,0xFCFC5400,0xC3C8F2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2CBC3C3,0x5B95FCFC,0xFCFCFCF7,0xFCA10AB3
- .word 0xFCFCFCFC,0xCCFCFCFC,0x06000003,0xFCFCFCB1,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x65FCFCFC,0x2B000000,0xFCFCFCF8,0xFCFCFCFC
- .word 0xE6245BF6,0xDBFCFCFC,0xFCFCD63A,0xC3C3C9F2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xCCC3C3C3,0xFBFCFCF2,0xC5FCFCFC,0xFC7F000A
- .word 0xFCFCFCFC,0x3EFBFCFC,0x17000000,0xFCFCFCEE,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xC0C0E8FC
- .word 0xFCFAC2C0,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xB2FCFCFC,0x00000000,0xFCFCFC8E,0xFCFCFCFC
- .word 0x340037F2,0xFCFCFCF0,0xF2FCFCFB,0xC3C3C3CB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCFCFCDB,0x13D5FCFC,0xFCFC6500
- .word 0xFCFCFCFC,0x00A8FCFC,0x99000000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x00000048,0xFCFCE911,0xFCFCFCFC
- .word 0x0027E8FC,0xFCFCF746,0xCBF2FCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCFCF2C7,0x0021F1FC,0xFCFCF94F
- .word 0xFCCC58F5,0x001FF2FC,0xFA330000,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x000005D3,0xFCFC6800,0xFC8697FB
- .word 0x1ADCFCFC,0xFCFC6900,0xC3CBF2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2C7C3,0x4099FCFC,0xFCFCFCF4
- .word 0xFA2D0071,0x000080FC,0xFCC10200,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x00006EFC,0xFCD00400,0xC00403CF
- .word 0xCDFCFCFC,0xFCFCD42E,0xC3C3CBF2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2C7C3C3,0xFAFCFCFC,0xB3FCFCFC
- .word 0xFCC80601,0x00000ADF,0xFCFC5700,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0014EBFC,0xFB420000,0x1F007CFC
- .word 0xFCFCFCEC,0xF2FCFCFA,0xC3C3C3CB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC7C3C3C3,0xFCFCF2DB,0x16E4FCFC
- .word 0xFCFC8900,0x00000059,0xFCFCE00B,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0096FCFC,0xAD000000,0x003CF9FC
- .word 0xFCFCFB52,0xCBF2FCFC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2CCC3,0x0085FCFC
- .word 0xC2FCFB46,0x00000001,0xFCFCFC7C,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x2EF8FCFC,0x24000000,0x10DDFCF6
- .word 0xFCFCD208,0xC3CBF2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2CBC3C3,0x9AFBFCFC
- .word 0x35F9FCE5,0x1E000000,0xECC3FCF3,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xBBFCDBD3,0x00000001,0xB3FCFC84
- .word 0xFCFCFCCC,0xC3C3CAF2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xCAC3C3C3,0xFCFCFCF2
- .word 0x009CFCFC,0xA4000000,0x0C13F1FC,0xFCFCFCDF,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x97FCFCFC,0xFCFC5D02,0x00000053,0xFCFCE30E
- .word 0xDBF2FCFC,0xC3C3C3C8,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xFCF2DBC8
- .word 0x149EFCFC,0xFB3C0000,0x3A0097FC,0xB3FCFCFC,0xFCFCFCDC,0xFCFCFCFC,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFCFCFCFC,0xC4F9FCFC,0xDFFCFCCF,0xFCE50805,0x000009DC,0xFCFCD134
- .word 0xC3CBF2FC,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xF2CBC3C3
- .word 0xEAFCFCFC,0xFCCA076A,0xA90027F9,0x0DF3FCFC,0xFCFCE202,0xFCFCFCFB,0xFCFCFCFC,0x0000A8FC
- .word 0xFCF50900,0xFCFCFCFC,0xFBFCFCFC,0x0091FCFC,0xFCFCFC5A,0xFC780058,0x9B1879FC,0xF2FCFCFA
- .word 0xC3C3CADB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC9C3C3C3
- .word 0xFCFCF2DB,0xFCFCE4FC,0xFA2200B3,0x00B2FCFC,0xFCFCFC34,0xFCCD3650,0xFCF9F5FC,0x0000A8FC
- .word 0xFCF50900,0xFCFAF4FC,0x9D2193FC,0x01DDFCFC,0xFCFCF611,0xF41500C7,0xFCEFF2FC,0xCCF2FCFC
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0x0000FCFC,0xFC000000,0xFCFCFCFC,0x000000FC,0xFCFC0000,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xF2DBCBC3,0xFCFCFCFC,0xFC8D088A,0x0061FCFC,0xFAFCFC84,0xFCDE0013,0x830485FC,0x0000A8FC
- .word 0xFCF50900,0xFCDC0136,0x67008CFC,0x35FCFCFC,0xFCFCB300,0xCB1C3CFB,0xFCFCFCFC,0xC3CADBF2
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xCBC3C3C3,0xFCFCFCF2,0xFCF2E5FC,0x0111F5FC,0xDBFCFCD9,0xFCFC1901,0x91006BFC,0x0000A8FC
- .word 0xFCF50900,0xFCBE0040,0x3300C2FC,0x85FCFCFC,0xFCFC6000,0xFCF7E0FC,0xDBF2FCFC,0xC3C3C3CB
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xF2DBDBC9,0xFCFCFCFC,0x3012D0FC,0xA6FCFCFC,0xFCFC4E00,0xAB0051FC,0x0000A8FC
- .word 0xFCF50900,0xFCA2005B,0x0905F3FC,0xD7FCFCF4,0xFCFB3B01,0xFCFCFCFC,0xC3CBDBF2,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xCCC3C3C3,0xFCFCF2DB,0xD9F7FCFC,0x71FCFCFC,0xFCFC8200,0xC60036FC,0x0000A8FC
- .word 0xFCF50900,0xFC870075,0x0033FCFC,0xFBFCFCC5,0xFCFCFBD5,0xDBF2FCFC,0xC3C3C3CB,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xF2DBCBC3,0xFCFCFCFC,0xB7FCFCFC,0xFCFCC76D,0xE10016FC,0x0000A8FC
- .word 0xFCF50900,0xFC6D008E,0x7E92FCFC,0xFCFCFCDB,0xF2FCFCFC,0xC3CADBDB,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC9C3C3C3,0xFCF2DBDB,0xFCFCFCFC,0xFCFCFCFC,0xF87F9DFB,0x4141BEFC
- .word 0xFCF74841,0xFCC188CD,0xFCFCFCFC,0xFCFCFCFC,0xCBDBDBF2,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xDAC9C3C3,0xFCF2DBDB,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xDBDBF2FC,0xC3C3C3CB,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xDBCAC3C3,0xDBDBDBDB,0xFCFCFCF2,0xFCFCFCFC
- .word 0xFCFCFCFC,0xF2FCFCFC,0xDBDBDBDB,0xC3C3C9DA,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0xFCFC5F7D
- .word 0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0xFCFCFCFC,0x7D5FFCFC
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xD9D6D4C7,0xDBDBDBDA
- .word 0xDADBDBDB,0xC8D7D8D9,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x5F5F5F7D
- .word 0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x5F5F5F5F,0x7D5F5F5F
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x7D7D7D7D
- .word 0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D,0x7D7D7D7D
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0x00C3C3C3,0x00000000
- .word 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000
- .word 0xC3C3C300,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
- .word 0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3,0xC3C3C3C3
-
- .section .rodata
- .align 2
- .global platePal @ 512 unsigned chars
- .hidden platePal
-platePal:
- .byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- .byte 0x21,0x04,0x21,0x04,0x21,0x04,0x21,0x04,0x21,0x04,0x21,0x04,0x21,0x04,0x21,0x04
- .byte 0x42,0x08,0x42,0x08,0x42,0x08,0x42,0x08,0x42,0x08,0x42,0x08,0x42,0x08,0x42,0x08
- .byte 0x63,0x0C,0x63,0x0C,0x63,0x0C,0x63,0x0C,0x63,0x0C,0x63,0x0C,0x63,0x0C,0x63,0x0C
- .byte 0x84,0x10,0x84,0x10,0x84,0x10,0x84,0x10,0x84,0x10,0x84,0x10,0x84,0x10,0x84,0x10
- .byte 0xA5,0x14,0xA5,0x14,0xA5,0x14,0xA5,0x14,0xA5,0x14,0xA5,0x14,0xA5,0x14,0xA5,0x14
- .byte 0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18
- .byte 0xE7,0x1C,0xE7,0x1C,0xE7,0x1C,0xE7,0x1C,0xE7,0x1C,0xE7,0x1C,0xE7,0x1C,0x08,0x21
-
- .byte 0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x29,0x25
- .byte 0x29,0x25,0x29,0x25,0x29,0x25,0x29,0x25,0x29,0x25,0x29,0x25,0x29,0x25,0x4A,0x29
- .byte 0x4A,0x29,0x4A,0x29,0x4A,0x29,0x4A,0x29,0x4A,0x29,0x4A,0x29,0x4A,0x29,0x6B,0x2D
- .byte 0x6B,0x2D,0x6B,0x2D,0x6B,0x2D,0x6B,0x2D,0x6B,0x2D,0x6B,0x2D,0x6B,0x2D,0x8C,0x31
- .byte 0x8C,0x31,0x8C,0x31,0x8C,0x31,0x8C,0x31,0x8C,0x31,0x8C,0x31,0xAD,0x35,0xAD,0x35
- .byte 0xAD,0x35,0xAD,0x35,0xAD,0x35,0xAD,0x35,0xAD,0x35,0xAD,0x35,0xCE,0x39,0xCE,0x39
- .byte 0xCE,0x39,0xCE,0x39,0xCE,0x39,0xCE,0x39,0xCE,0x39,0xCE,0x39,0xEF,0x3D,0xEF,0x3D
- .byte 0xEF,0x3D,0xEF,0x3D,0xEF,0x3D,0xEF,0x3D,0xEF,0x3D,0x10,0x42,0x10,0x42,0x10,0x42
-
- .byte 0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x31,0x46,0x31,0x46,0x31,0x46
- .byte 0x31,0x46,0x31,0x46,0x31,0x46,0x31,0x46,0x31,0x46,0x52,0x4A,0x52,0x4A,0x52,0x4A
- .byte 0x52,0x4A,0x52,0x4A,0x52,0x4A,0x52,0x4A,0x52,0x4A,0x73,0x4E,0x73,0x4E,0x73,0x4E
- .byte 0x73,0x4E,0x73,0x4E,0x73,0x4E,0x73,0x4E,0x73,0x4E,0x94,0x52,0x94,0x52,0x94,0x52
- .byte 0x94,0x52,0x94,0x52,0x94,0x52,0x94,0x52,0x94,0x52,0xB5,0x56,0xB5,0x56,0xB5,0x56
- .byte 0xB5,0x56,0xB5,0x56,0xB5,0x56,0xB5,0x56,0xB5,0x56,0xD6,0x5A,0xD6,0x5A,0xD6,0x5A
- .byte 0xD6,0x5A,0xD6,0x5A,0xD6,0x5A,0xD6,0x5A,0xD6,0x5A,0xF7,0x5E,0xF7,0x5E,0xF7,0x5E
- .byte 0xF7,0x5E,0xF7,0x5E,0xF7,0x5E,0xF7,0x5E,0xF7,0x5E,0x18,0x63,0x18,0x63,0x18,0x63
-
- .byte 0x18,0x63,0x18,0x63,0x18,0x63,0x18,0x63,0x18,0x63,0x39,0x67,0x39,0x67,0x39,0x67
- .byte 0x39,0x67,0x39,0x67,0x39,0x67,0x39,0x67,0x39,0x67,0x5A,0x6B,0x5A,0x6B,0x5A,0x6B
- .byte 0x5A,0x6B,0x5A,0x6B,0x5A,0x6B,0x5A,0x6B,0x5A,0x6B,0x7B,0x6F,0x7B,0x6F,0x7B,0x6F
- .byte 0x7B,0x6F,0x7B,0x6F,0x7B,0x6F,0x7B,0x6F,0x7B,0x6F,0x9C,0x73,0x9C,0x73,0x9C,0x73
- .byte 0x9C,0x73,0x9C,0x73,0x9C,0x73,0x9C,0x73,0x9C,0x73,0xBD,0x77,0xBD,0x77,0xBD,0x77
- .byte 0xBD,0x77,0xBD,0x77,0xBD,0x77,0xBD,0x77,0xBD,0x77,0xDE,0x7B,0xDE,0x7B,0xDE,0x7B
- .byte 0xDE,0x7B,0xDE,0x7B,0xDE,0x7B,0xDE,0x7B,0xDE,0x7B,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F
- .byte 0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0x00,0x00,0x00,0x00,0x00,0x00
-
-@}}BLOCK(plate)
diff --git a/midterm/midterm-2021/.root b/midterm/midterm-2021/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/midterm/midterm-2021/Makefile b/midterm/midterm-2021/Makefile
deleted file mode 100755
index 70cbb90..0000000
--- a/midterm/midterm-2021/Makefile
+++ /dev/null
@@ -1,165 +0,0 @@
-.PHONY: build run
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED :=
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-build:
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- xdg-open $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
diff --git a/midterm/midterm-2021/background.png b/midterm/midterm-2021/background.png
deleted file mode 100644
index 9d99235..0000000
Binary files a/midterm/midterm-2021/background.png and /dev/null differ
diff --git a/midterm/midterm-2021/source/background.h b/midterm/midterm-2021/source/background.h
deleted file mode 100644
index 938d09c..0000000
--- a/midterm/midterm-2021/source/background.h
+++ /dev/null
@@ -1,28 +0,0 @@
-
-//{{BLOCK(background)
-
-//======================================================================
-//
-// background, 256x192@8,
-// + palette 256 entries, not compressed
-// + bitmap not compressed
-// Total size: 512 + 49152 = 49664
-//
-// Time-stamp: 2023-11-17, 09:01:49
-// Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-// ( http://www.coranac.com/projects/#grit )
-//
-//======================================================================
-
-#ifndef GRIT_BACKGROUND_H
-#define GRIT_BACKGROUND_H
-
-#define backgroundBitmapLen 49152
-extern const unsigned int backgroundBitmap[12288];
-
-#define backgroundPalLen 512
-extern const unsigned short backgroundPal[256];
-
-#endif // GRIT_BACKGROUND_H
-
-//}}BLOCK(background)
diff --git a/midterm/midterm-2021/source/background.s b/midterm/midterm-2021/source/background.s
deleted file mode 100644
index 4ae77c5..0000000
--- a/midterm/midterm-2021/source/background.s
+++ /dev/null
@@ -1,1791 +0,0 @@
-
-@{{BLOCK(background)
-
-@=======================================================================
-@
-@ background, 256x192@8,
-@ + palette 256 entries, not compressed
-@ + bitmap not compressed
-@ Total size: 512 + 49152 = 49664
-@
-@ Time-stamp: 2023-11-17, 09:01:49
-@ Exported by Cearn's GBA Image Transmogrifier, v0.9.2
-@ ( http://www.coranac.com/projects/#grit )
-@
-@=======================================================================
-
- .section .rodata
- .align 2
- .global backgroundBitmap @ 49152 unsigned chars
- .hidden backgroundBitmap
-backgroundBitmap:
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0xC7141414,0x798F8BC7,0x61965651,0xAB96AC80,0x512F39DA,0x36717138,0x71713636,0x71387171
- .word 0x36367138,0x36363636,0x36363636,0x36363636,0x36363636,0x51517136,0x38383851,0x36363671
- .word 0x71363636,0x51383838,0x5C565151,0x5C5C5C5C,0x38512F5C,0x92363636,0x92579292,0x92929257
- .word 0x36363692,0x36363636,0x36363636,0x36363636,0x573F3636,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x36365725,0x38717136,0x54542F56,0xAB95DABD,0x5EBC6796,0x9D1F8099,0x9980809D
- .word 0x96BC9ECE,0xBDBDDAAB,0x5439398F,0x8F8F542F,0xABBD3939,0x999E9E96,0xB89E809D,0x398FBDAB
- .word 0x54545454,0x2F2F5454,0x9E95392F,0x1A05E887,0x00D71884,0x94D70000,0x949418D0,0x18D0D0D0
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0xC7141414,0x8F8F8BC7,0x9DAB5151,0x6F969E80,0x515C8FDA,0x36713838,0x71713636,0x71717171
- .word 0x36713871,0x36363636,0x36363636,0x36363636,0x92363636,0x38383692,0x36363636,0x36363636
- .word 0x51517136,0x2F5C2F2F,0x5C5C5C2F,0x51565C5C,0x36367151,0x92369236,0x36369257,0x36363636
- .word 0x36363636,0x36363636,0x36363636,0x36929236,0x2525573F,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x7136363F,0x2F565638,0xABDA8F54,0x9E67966F,0x1F99995E,0x809D9D9D,0x96BC9E99
- .word 0xDA95ABAB,0x5439BDBD,0x54545454,0x39393954,0x809EABBD,0x6F9E809D,0x39BDDAAB,0x54543939
- .word 0x54545454,0xBD2F5656,0x05160767,0xD7180E1A,0xD7D70000,0x943A3A3A,0xD0181894,0x1818D04A
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x8F8F8BC7,0x80BD7151,0xB7675E75,0x515C8F95,0x36713851,0x36363636,0x71717136
- .word 0x71717171,0x36363636,0x36363636,0x36363636,0x36363636,0x36383836,0x36929236,0x71363636
- .word 0x5C565138,0x5C5C5C5C,0x565C5C5C,0x36715151,0x92929236,0x92363692,0x71369257,0x38383838
- .word 0x36363636,0x36363636,0x36363636,0x57575792,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x36365757,0x2F515171,0xBD39545C,0x6796ABDA,0x805E9EBC,0x9D1F9D1F,0x5E99801F,0xBD956F67
- .word 0xBDBDBDBD,0x545439BD,0x542F2F5C,0xBC966FDA,0x9E9E9E9E,0xBDAB96BC,0x54545454,0x562F5454
- .word 0x542F5656,0x859DB8BD,0x180E1A05,0x00007AD7,0x943A3AD7,0x94181818,0xF64A1894,0x4A4AD04A
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x8F8F8B36,0x99393651,0x969E999D,0x515C8F95,0x36713851,0x36363636,0x71717136
- .word 0x71717171,0x36363636,0x36363636,0x36363636,0x51363636,0x38512F2F,0x36929236,0x51515138
- .word 0x5C5C2F51,0x512F5C5C,0x71515151,0x92923636,0x92929257,0x36363692,0x71363692,0x38383838
- .word 0x36363671,0x36363636,0x25579236,0x25252525,0x25252525,0x25252525,0x57572525,0x36925757
- .word 0x56517171,0x8F39545C,0x6FABDABD,0x5E5E6767,0x9D808099,0x5E998080,0x6F96679E,0x3939DADA
- .word 0x3939BD39,0x545C5454,0x6F95BD39,0x80999E96,0xBDAB9E99,0x39395454,0x54545454,0x3838562F
- .word 0x9D67DA5C,0xB943CFA3,0x0000D718,0x3A3AD700,0x18181818,0x18181818,0xF6F64A4A,0xF6F64A4A
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x8FD45114,0x5E5C3656,0x969E999D,0x515C8F95,0x36713851,0x36363636,0x38717136
- .word 0x36713838,0x36363636,0x71717171,0x36713636,0x5C713636,0x565C8F8F,0x36363638,0x5C5C5C51
- .word 0x5C5C5C5C,0x36715156,0x36363636,0x92925792,0x92929292,0x36923692,0x36363636,0x38363636
- .word 0x36713871,0x92923636,0x25252557,0x25252525,0x25252525,0x25252525,0x92575757,0x51717136
- .word 0x54542F56,0x6FAB95BD,0x9E67966F,0x80995E5E,0x9D619D80,0x6F679E99,0xBDBDDAAB,0x39393939
- .word 0x5C543939,0x8F54562F,0x1F809E6F,0x6F96BCCE,0x54BD95AB,0x545C2F2F,0x2F5C5C5C,0xDA5C5656
- .word 0xA15FA399,0x7A3AF6B9,0x3A3A7A00,0x9494943A,0x18181818,0x4A4AD018,0xF64A4A4A,0xF6F6F6F6
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0xD45C4914,0x962F3655,0x969E9D9D,0x565CDA6F,0x36363651,0x36363636,0x36717136
- .word 0x36363636,0x36363636,0x36363636,0x38383636,0x2F513851,0xBD95DA8F,0x5C51515C,0x5C545C5C
- .word 0x51512F2F,0x92363638,0x92929292,0x36929257,0x36363636,0x36363636,0x36363671,0x71363636
- .word 0x36363636,0x25259292,0x25252525,0x25252525,0x25252525,0x57252525,0x71363657,0x545C5651
- .word 0x95BD8F8F,0x9EBCB8AB,0x8099995E,0x80808080,0x5E5E5E99,0xBDDA6F67,0x39393939,0x5C545454
- .word 0x395C2F2F,0x67966FDA,0x99995E9E,0x5C39AB67,0x5454545C,0x56565656,0x39565651,0xCF9B99AB
- .word 0x94223D43,0x7A00007A,0x4A1894D7,0x181818D0,0x4AD01818,0xF6F6F6F6,0xF64A4AF6,0x184AF6F6
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0xD48BC714,0xDA51515C,0x675E6180,0x2F3995B8,0x92363651,0x71363692,0x36363636
- .word 0x36363636,0x36363636,0x36363636,0x51513836,0x51515151,0x67BC955C,0x395C5CBD,0x512F2F5C
- .word 0x36713851,0x92923636,0x92575757,0x36363692,0x71363636,0x38717171,0x71713851,0x36363636
- .word 0x92579236,0x25259236,0x25252525,0x25252525,0x57572525,0x92575757,0x56513871,0x95BD545C
- .word 0x96B8ABAB,0x805E9EBC,0x9D9D6161,0x9E5E8080,0xABAB6F96,0x3939BDAB,0x54393939,0x39542F2F
- .word 0x6FBD3954,0x991F809E,0xBDDA6FBC,0x2F2F39BD,0x562F5C2F,0x54565138,0x07679539,0x183D43E8
- .word 0xD77A7AD7,0x94943A3A,0x18181818,0x18181818,0xF64A4A4A,0xF6F6F6F6,0xF6F6F6F6,0x181818D0
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0xD48B1414,0x54515CD4,0xBC99615E,0x5C8F95B8,0x36363851,0x36363636,0x36363636
- .word 0x36363636,0x92255792,0x38713636,0x51515151,0x5C565151,0xBC679539,0x5C565C6F,0x36363851
- .word 0x36363636,0x92923636,0x92929292,0x36363636,0x38713636,0x38383838,0x36367138,0x36363636
- .word 0x25252592,0x25252557,0x25252525,0x25252525,0x36575725,0x38717136,0x8F545C56,0xABDABDBD
- .word 0x99CEBCB8,0x80801F1F,0x5E80809D,0x6F969E5E,0x5439BDDA,0x54542F2F,0x56562F54,0x96DA392F
- .word 0x9E5E5E9E,0x96679E9E,0x2F2F8FAB,0x5454545C,0x7138565C,0xBCBD2F38,0x1A051688,0x007A9484
- .word 0x3A3AD77A,0x18189494,0x18181818,0xF6F64A18,0xF6F6F6F6,0x4A4A4AF6,0x4AF64A4A,0xD34A9494
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x8F8B1414,0x56715C8F,0x9E1F9D96,0x5C8F95B8,0x36385156,0x92363636,0x92929292
- .word 0x36363636,0x36363636,0x51513871,0x2F565651,0x54565156,0x67958F8F,0x38365CB8,0x57259271
- .word 0x36363636,0x36363636,0x36363636,0x36363636,0x36713636,0x36363636,0x92363636,0x25575757
- .word 0x25252525,0x25252525,0x25252525,0x57572525,0x38719257,0x5C565651,0xAB95BD39,0x966F6FB8
- .word 0x079D999E,0x5E809D07,0x6F67BC9E,0xBDDADA6F,0x2F545439,0x2F2F5656,0xDA395C2F,0x9E67966F
- .word 0x9E998099,0x5454BDAB,0x2F2F5454,0x56562F2F,0xBD2F3838,0x5FA387BC,0xD7F63DA1,0x3A7A0000
- .word 0x18181818,0x18181818,0xD0181818,0x2284D34A,0x4A4A4AF6,0x1818184A,0xF64AD018,0x82B984F6
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0xD4491414,0x56715C8F,0xCE9D806F,0x5C8F9596,0x3638512F,0x36925792,0x25259236
- .word 0x36922525,0x515C2F51,0x56515138,0x5C5C5C2F,0x5C2F2F2F,0x955C515C,0x923639B8,0x25259236
- .word 0x92929292,0x36363636,0x36363636,0x36363636,0x36363636,0x36363636,0x25923636,0x25252525
- .word 0x25252525,0x25252525,0x92575725,0x71363636,0x2F565138,0xDA8F3954,0x67966FAB,0x995E5E9E
- .word 0x1F9D1F80,0x679ECE99,0xBDDAAB6F,0x54545439,0x5C2F5C5C,0x5C2F5C54,0x9D9EAB39,0xAB9E8061
- .word 0xDA95DADA,0x2F2F5439,0x56562F2F,0x51515656,0x9099DA2F,0x4AB91A05,0xD7D7D73A,0x94943AD7
- .word 0x943A9494,0x4A4AF64A,0x4A4A4A4A,0xD3D3F6F6,0x4A4A4AF6,0x4A4AD04A,0xE1F6F64A,0xA2A1A182
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x5CC71414,0x5C515C5C,0xCE1F996F,0x54BD6F67,0x3671515C,0x92252557,0x36363692
- .word 0x51383636,0x51515151,0x2F565151,0x5C5C5C5C,0x51562F2F,0x5C369238,0x25368FAB,0x25573636
- .word 0x36369292,0x71363636,0x38383871,0x36367171,0x36363636,0x36363636,0x25252592,0x25252525
- .word 0x25252525,0x92252525,0x36363636,0x56513871,0xBD39542F,0x966FAB95,0xCE9E9E67,0x9D9D9D80
- .word 0x675E809D,0xABAB6F96,0x5439BDDA,0x2F2F2F54,0x542F2F2F,0x966F95BD,0x995E9E67,0xDAB89ECE
- .word 0x56562F39,0x51562F56,0x71717171,0x9D965438,0x3D435FA3,0x007A3AF6,0x943AD77A,0x18181818
- .word 0x18189494,0xF6F6F64A,0xF6F6F6F6,0xF6F6F6F6,0x18D04AF6,0x224A1818,0xA1FE3DB9,0xCF5F05A2
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x8BC71414,0x5C515C5C,0xCE805EAB,0x3995B8BC,0x3636515C,0x36369292,0x51513636
- .word 0x51512F56,0x51363638,0x2F2F2F5C,0x51515656,0x36385151,0x38252557,0x2556DA8F,0x36367192
- .word 0x36363636,0x71387171,0x71713838,0x36363671,0x57929236,0x25575757,0x25252525,0x25252525
- .word 0x57252525,0x38363692,0x51515151,0x395C5C2F,0x96ABDABD,0x5E9E9E67,0x8099995E,0x809D1F80
- .word 0xDAB89E99,0x393939BD,0x5C545439,0x54542F2F,0xBD393939,0x9D9967AB,0x8FABBC99,0xDABD3939
- .word 0x36382FBD,0x71385171,0xAB395671,0xA1CF8767,0x7AD7940E,0x943AD77A,0x18181818,0x18189494
- .word 0xD322F64A,0xF6F64A4A,0xD32222D3,0x4A4AF6F6,0x4A4A4A4A,0xFEB922F6,0xCF5FA2A1,0x8AF0F0CF
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x51141414,0x55515C5C,0x991F678F,0x8F95B8BC,0x3671515C,0x38383636,0x51515151
- .word 0x51515151,0x5C565151,0x562F5C5C,0x36363851,0x57929292,0x92252525,0x258F955C,0x36363625
- .word 0x71713636,0x38383838,0x36367136,0x92363636,0x25252592,0x25252525,0x25252525,0x57252525
- .word 0x36363692,0x2F565138,0x395C5C5C,0xAB95DA8F,0x9E67966F,0x80809999,0x99808080,0x969E9E5E
- .word 0xBDDAAB96,0x54545439,0x56565454,0xBD545651,0x9E9E96AB,0xBC9E9EBC,0x5C8FAB96,0x39542F56
- .word 0x71715654,0x38713871,0xCF90CE8F,0x9484FE43,0xD7D77AD7,0x18943A3A,0x94181818,0xD3F64A18
- .word 0xF6F6D322,0xF6F6F6F6,0xF6F6F6D3,0x4A4A4AF6,0x3D84F64A,0x05A2A11A,0x8A8AF05F,0x8A8A8A8A
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x51141414,0x36515CD4,0x1F9D6F51,0xDA6FBCCE,0x36385654,0x51515136,0x38383838
- .word 0x2F565151,0x5C5C5C5C,0x38512F5C,0x25259236,0x25252525,0x25252557,0x36959551,0x38713625
- .word 0x38383838,0x36713838,0x36363636,0x25579292,0x25252525,0x25252525,0x25252525,0x36369225
- .word 0x56515138,0x8F395C5C,0x9595BD8F,0xBC67B8B8,0x80995E9E,0x809D9D9D,0x9E999999,0xBDDAAB96
- .word 0x54545439,0x2F545454,0x545C2F56,0x966F958F,0x5ECE9E9E,0x54BDAB67,0x54545454,0x5156562F
- .word 0x56719271,0x079EAB54,0x22FEA216,0x7A7AD73A,0x18943A3A,0x18189494,0x4A4AD0D0,0x2222F6F6
- .word 0xF6F6F622,0xF6F62222,0x4AD0D04A,0xE122F6F6,0x43A1FE3D,0x8AF05F05,0x8A8AE8E8,0x8A8AE8E8
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x8B142514,0x25518F8F,0x6161DA57,0x95B8BC99,0x71512F8F,0x36515138,0x2F513836
- .word 0x5C54545C,0x51512F5C,0x36363851,0x25252525,0x25252525,0x25363636,0x516F9536,0x51383692
- .word 0x38385151,0x36363671,0x92923636,0x25252525,0x25252525,0x25252525,0x36922525,0x51387136
- .word 0x395C5C2F,0x95DABD8F,0xBCB8B86F,0x99CE5EBC,0x9D9D9D80,0x5E99809D,0x6F96679E,0x5439BDDA
- .word 0x5656562F,0x5C54542F,0xB8DA545C,0xCE99999E,0x95ABB89E,0x565654BD,0x2F54542F,0x71515151
- .word 0x67BD5671,0xFEA21661,0x3A3A9422,0x3A3AD7D7,0x94949494,0xF64A1894,0x8422D3F6,0xF6F62222
- .word 0xD3F6F64A,0x4AF6F6D3,0x224AD0D0,0xA1823D0E,0xCF5F5F05,0x8A8A8AF0,0x16E8E8E8,0xE8161616
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x51141414,0x2551D4D4,0x619DBD25,0xDA6FBCCE,0x51515C39,0x2F513838,0x5C5C5C5C
- .word 0x512F5C5C,0x36367151,0x25255792,0x25252525,0x92925725,0x25363636,0x39958F92,0x38383651
- .word 0x36717138,0x92363636,0x25575792,0x25252525,0x25252525,0x92572525,0x51383636,0x395C5C51
- .word 0x9595BD8F,0xB8B86FAB,0xCECEBCBC,0x9D1F8099,0x809D9D9D,0x96679E99,0x39BDDAAB,0x54543939
- .word 0x5656562F,0xAB39542F,0x9EBCBC96,0xB8BC9E27,0x5C5C8F95,0x5656565C,0x51565C2F,0x2F363671
- .word 0xA2E861B8,0xD74AB91A,0x3AD70000,0x94949494,0xF64AD018,0xF64AF6F6,0x22222222,0xF6F62222
- .word 0x4AF6F6F6,0xF64A1818,0x82B98422,0x5F0543A1,0xE8E8E88A,0xE8E8E816,0x1616E8E8,0x16161616
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0xC7141414,0x5C5C5C8B,0x99CE8F71,0x5C8F6FBC,0x562F2F5C,0x39515151,0x515C398F
- .word 0x92363638,0x25579292,0x25252525,0x92252525,0x36363636,0x57363636,0x958F5136,0x3636365C
- .word 0x36363636,0x25579292,0x25252525,0x25252525,0x92572525,0x38363636,0x5C2F5151,0x958F8F39
- .word 0xB8B86F95,0xBCBC6796,0x1F1F80CE,0x801F1F1F,0x9E5E9999,0xBDAB6F96,0x54545439,0x54545454
- .word 0xBD395454,0x9EAB95DA,0x96271F1F,0x5C54BDAB,0x5151565C,0x56565651,0x51717151,0x87BCB88F
- .word 0x3A0EA1CF,0x7A7A0000,0x94943AD7,0x18181818,0xE122F6D0,0x4A4A22E1,0xF6F6D3D3,0x2222F6F6
- .word 0xD04AF622,0x3DE1F6D0,0xA243A1FE,0x16E8F05F,0x1616E8E8,0x16161616,0x16161616,0xE8E8E8E8
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141425,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x1414C714,0x59954E36,0x96BCBD54,0x714E1CDA,0x5C5C5638,0x5C5C5C5C,0x38512F5C
- .word 0x25255736,0x25252525,0x14141425,0x36369257,0x36363636,0x92923636,0xB85C3636,0x9292368F
- .word 0x57929292,0x25252525,0x25252525,0x25252525,0x36365725,0x56515138,0x8F39545C,0xB86F9595
- .word 0x9EBC6796,0x99CE5E9E,0x0707611F,0x5E801F61,0xAB6F9667,0x5439BDBD,0x542F2F54,0x56562F54
- .word 0x9E96BD54,0xC5C5C5C5,0x8FEBF5C5,0x63631979,0x63636363,0x51566B63,0xBA631971,0x3DA1C213
- .word 0xDE4093F6,0x3A3AD735,0x08084018,0xF6F6C340,0xA8A89CF6,0x9C228484,0xD3D3A8A8,0xF6F6F6F6
- .word 0xA8F6F6F6,0xA2A1E068,0x8AF0CF05,0xD88516E8,0x85161616,0x16168516,0x16161616,0x16161616
-
- .word 0x14141425,0x14141414,0x04C81414,0x04040404,0x1414DD04,0x040404B6,0x04040404,0x7C141414
- .word 0x04040404,0x1414F304,0xE7040464,0xEE0A5CD4,0x04040404,0x6B5C5C64,0x49040429,0x04CD5736
- .word 0x25252504,0x25252525,0x040404ED,0x36363660,0x36363636,0x36363636,0x95512536,0x2525718F
- .word 0x25252557,0x25252525,0x25252525,0x92252525,0x51513636,0x395C5C2F,0xAB95DABD,0x6767B86F
- .word 0x80995E9E,0x611F9980,0x99809D61,0x969E5ECE,0xBDBDBD95,0x56565439,0x2F562F2F,0xABDABD54
- .word 0x999E96B8,0xF9F9F8F8,0xBAF9F8F9,0xF8F9445C,0xF9F9F9F9,0xAB5CEFF9,0xF8F8F9B1,0xD7F8F9F8
- .word 0xF8F89300,0x9C4A4A08,0xF8F8B2F8,0x22A8F8F9,0xF8F8E022,0xE084221B,0xF622F8F8,0xF64A4AF6
- .word 0xF82B3D84,0xF05F26F9,0x85D88516,0x85858585,0x85858585,0x16168585,0x16161616,0x16161616
-
- .word 0x14141425,0x14141414,0x046A1414,0x04040404,0x14110404,0x040404ED,0x6D040404,0x04601414
- .word 0x04040404,0x14140404,0x7C040464,0x04723FC7,0x04040404,0x7856B604,0x6D040472,0x04112525
- .word 0x25252529,0xED572525,0x04110404,0x3692D104,0x36363636,0x71363636,0x8F512536,0x2525518F
- .word 0x25252525,0x25252525,0x36362525,0x51363636,0x5C5C5151,0x95DA8F8F,0x6796966F,0x5E9EAC67
- .word 0x611F8099,0x88611F61,0x6F679961,0xDA956F6F,0x8F5454BD,0x51515C8F,0x54543954,0x9D9996BD
- .word 0x4D965E1F,0x196EF8F8,0xF8F8F9DC,0xF9F9445C,0x6363636E,0x53CED663,0xDEB5F8F8,0x08F9F8B5
- .word 0xF8F8933A,0xF84A4A68,0x68B5F8F9,0x74F8F8F9,0xF8F8E022,0xE0222BF8,0x2222F8F8,0x3D0E22F6
- .word 0xB2F9261A,0x851653F8,0xA3A3A385,0x854848A3,0x48A3A3A3,0x85858585,0x85858585,0x16161616
-
- .word 0x14141425,0x14141414,0x046A1414,0x14147C04,0x14290404,0x6A0404ED,0x14141414,0x04041414
- .word 0xC8141429,0x147CCD04,0x6A040464,0x04047614,0x6D0A5CED,0x57F30404,0x040404CD,0x04112564
- .word 0x25252529,0x04573F3F,0xDD366404,0x36360404,0x36363636,0x36362592,0x5C362592,0x25252F8F
- .word 0x25252525,0x25252525,0x36363636,0x5C8B5151,0x0A8F8F5C,0xB8B89595,0x9EAC6796,0x8099995E
- .word 0x879D9D9D,0x9D9D9D89,0xDAAB969E,0xBD39DADA,0x545C5C8F,0x5C562F54,0x9E9EBCAB,0xBC9E9E5E
- .word 0xD5BD6F96,0x51BAF8F8,0xF8F88349,0xF9F9EB51,0xCE662863,0xF943CFA3,0x0000B5F9,0x1818937A
- .word 0xF8F8C318,0xF8A84A68,0x2222E0F8,0x08F9F874,0xF8F8E04A,0xE084F8F9,0x3D0EF8F8,0xA2A11A82
- .word 0xF9B2F942,0xA3A353F8,0x48484848,0x48484848,0x85A3A3A3,0x85858585,0x85858585,0x16161616
-
- .word 0x14141425,0x14141414,0x046A1414,0xD1147C04,0x14720404,0xED0404ED,0x76DDDDDD,0x0404D114
- .word 0x25141464,0x14252525,0xC8040464,0x04047214,0x4B8F791C,0x57D10404,0x040404CD,0x04111404
- .word 0x363F5729,0x04F33636,0x7C36F304,0x36DF0404,0x36363636,0x92922557,0x56362525,0x25255C8F
- .word 0x25252525,0x36142525,0x2F515171,0x8F8F5C5C,0xB895958F,0x67BCB8B8,0x995E9E67,0x9D9D7580
- .word 0x9D619D9D,0x6799809D,0xBDDABDDA,0x545439BD,0x545C5C54,0x9695BDBD,0x1F1F805E,0x5C39B8CE
- .word 0x6B5C545C,0xB1F8F8F8,0x6EF9F983,0xF9F9EB92,0xB2B2F8F8,0xF8DED0F8,0xDE9408F8,0xB5B5B5B5
- .word 0xF8F89C94,0xF8B5F668,0x848474F8,0x1BF8F9E1,0xF9F8084A,0xE01BF9F8,0x431AF8F8,0xE8F05F05
- .word 0xF985CCA6,0xA3A353F8,0xA3A3A3A3,0xA3A3A3A3,0x85A3A348,0x85858585,0x85858585,0x16161616
-
- .word 0x14141425,0x14141414,0x046A1414,0x04040404,0x14146D04,0x040404ED,0xCD040404,0x04048D14
- .word 0x6DDD146A,0x25B66D6D,0xC8040464,0x04042914,0x4E5C8F6B,0x25600404,0x042904CD,0x04112904
- .word 0x36365729,0x04C83636,0x98367E04,0x367E0404,0x92929292,0x25252525,0x38572525,0x25258F8F
- .word 0x25252525,0x51713692,0x395C5C56,0x95DA8F8F,0x67B8B86F,0x5E5EBCBC,0x7599915E,0x6161619D
- .word 0x809D9D61,0xAB9E9999,0x395054BB,0x54545454,0x95545C2F,0x9D9D99BC,0xBDABBC99,0x565C54BD
- .word 0x5651562F,0xF9F9F8F8,0x25EBF8F8,0xF9F9F556,0x1B1BE9F9,0xF835D7E9,0x40D0A8F8,0xF8F8F8F8
- .word 0xF8F8744A,0xF8FC2268,0x848474F8,0x1BF8F922,0xF9F8E04A,0xF9F8F82B,0xCF05F9F8,0x90908516
- .word 0xF948A390,0xA3A353F8,0xA3A3A3A3,0xA3A3A3A3,0xA348A3A3,0x85854885,0x85858585,0x16161685
-
- .word 0x14141425,0x14141414,0x046A1414,0x04728D04,0x14147C04,0xD10404ED,0x6A7C7C7C,0x04046014
- .word 0x048D147C,0x25110404,0xC8040464,0x04047214,0xDF55798F,0x25D10404,0x142904CD,0x04040404
- .word 0x3636576D,0x04983636,0x6A36F304,0x57DF0404,0x57252525,0x25252525,0x36252525,0x2536DADA
- .word 0x36369225,0x5C2F5138,0xDA8F8F39,0xB86F9595,0x9EBCBC67,0x99CECECE,0x9D9D8080,0x9D616161
- .word 0x999D9D9D,0x396F679E,0x54392F56,0xDABD39BB,0xCEBC96AB,0x5E801F99,0x5654BDB8,0x5C5C5656
- .word 0x5651565C,0x6B03F8F8,0x9DF9F9F9,0xF8F9C2D8,0x00000040,0xF89394D7,0x7DD0B5F8,0xF8F8B59C
- .word 0xF8F87422,0xF8E08468,0x2222A8F8,0x68F9F8F6,0xF9F8E022,0xF8F9261A,0xA316F9F8,0x903E3E90
- .word 0xF985A390,0x909053F8,0xA3909090,0xA3A3A390,0xA348A3A3,0x858548A3,0x85858585,0x16161685
-
- .word 0x14141425,0x14141414,0x046A1414,0x04147C04,0x14140404,0x980404ED,0x25252525,0x04045B14
- .word 0x252525ED,0x2511046D,0xC8040464,0x04048D14,0x8D8678D1,0x25980404,0x572904CD,0x0404048D
- .word 0x3636576D,0x04493636,0xD157CA04,0x25140404,0x92252525,0x25252525,0x36923625,0x3651B895
- .word 0x2F515138,0x8F39545C,0x6FAB95DA,0xBC67B8B8,0xCECE5E9E,0x808099CE,0x9D9D9D9D,0x9D9D9D9D
- .word 0x5E80759D,0x2F50AB96,0x54542F56,0x5E9E96BD,0x1F9D9D80,0x54BDB89E,0x398F545C,0x565C5C54
- .word 0xA7717138,0xAFBAF8F8,0x1BF9F9C5,0xF8F8DED3,0xDEDEDE08,0x1B949340,0x9CA8F8F9,0xF8F8E92B
- .word 0xF8F89C4A,0xF8848468,0x2BA8F9F9,0x2BF8F8E9,0xB2F8683D,0xB2B2CF05,0x9090F9F8,0x90909090
- .word 0xF9909090,0x909B53F8,0xA3909090,0xA3A39090,0x48A3A3A3,0x8548A3A3,0x85858585,0x16858585
-
- .word 0x14141425,0x14141414,0x046A1414,0x60147C04,0x14CD0404,0x040404ED,0x6D040404,0x04CD1414
- .word 0x29DD2904,0x25B60404,0xC8040464,0x04041414,0x04297204,0x25256D04,0x3F2904CD,0x04042957
- .word 0x3636576D,0xCD573636,0x046A2904,0x25251104,0x92252525,0x92252557,0x71367192,0x515C676F
- .word 0x8F545C2F,0xAB95DABD,0x6796B86F,0xCE5E9EBC,0x80809999,0x80808080,0x75808080,0x9D9D9D9D
- .word 0x9E999980,0x3856396F,0x392F5638,0x8061619E,0xB89E9999,0x2F5C54BD,0x2F5C5656,0x36715156
- .word 0x71252557,0xCFA6F8F8,0xF9F8F943,0xF9F835D7,0xF8F8F8F8,0x9CF69CF8,0xF8F8F8F9,0xB5F8F8F8
- .word 0xF8F89CD3,0xA8F62268,0xF8F8F8F8,0xA1FCF9F8,0xB2F842A2,0xF90C9085,0x3E3EF9F8,0x90909090
- .word 0xF9773E90,0x907753F8,0x90909090,0xA3A3A390,0xA3A3A3A3,0x4848A3A3,0x85858585,0x16858585
-
- .word 0x14141425,0x14141414,0x046A1414,0x14147C04,0x14040404,0x040404ED,0x04040404,0xCD141414
- .word 0x04040404,0x14141104,0xC8040464,0x6D98C714,0x04040404,0x57251472,0x3F290472,0x04047E36
- .word 0x3636576D,0x7E573F3F,0x04040404,0x2525146D,0x36575757,0x36369236,0x51515136,0x54DABCB8
- .word 0x95DABD39,0x96966FAB,0x9E9E6767,0x8099995E,0x1F1F1F80,0x809D801F,0x9D1F8080,0x809D9D9D
- .word 0x96BC5ECE,0x71382FBD,0xDA563671,0xBC879061,0x54BD95AB,0x545C5656,0x3671515C,0x36252557
- .word 0x99AB8F56,0x94E0E9E9,0x1B1B357A,0x1B1B9CB5,0x1B1B1B1B,0xE1229C1B,0xE9E968B9,0x228468E9
- .word 0x1B1B9C22,0x22F6F6E0,0xE9E9FC74,0xCF05C2E9,0xB1B1CC16,0xA677771E,0x7790B1B1,0x77777777
- .word 0xB13E7777,0x9077A6B1,0x90909090,0xA3A3A390,0xA3A3A3A3,0x8585A3A3,0x85858548,0x85858585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x147C9814,0x14141425,0x14252514,0x3649C714,0x25986ADF,0x57252525,0x36575757,0x57573636
- .word 0x57363657,0x25255757,0x147C1425,0x57252525,0x36369292,0x51383671,0x5C2F5C51,0xDAB85EB8
- .word 0xB8ABABDA,0x9EBC6796,0x99CE5E9E,0x9D808099,0x801F9D9D,0x1F9D8080,0x9D9D1F1F,0x5E809D9D
- .word 0xBD95B867,0x71713854,0x6F385792,0xBD5E903B,0x8FBD8F54,0x562F5C54,0x36713856,0x95389292
- .word 0x8243E89D,0x94944A84,0xD0949494,0xD0D0D0D0,0x22E1D34A,0x0EE1D3D3,0xE10EB9B9,0x84E18422
- .word 0x2222F6F6,0x3D0E8422,0x05A11AFE,0xA385E8F0,0xC9C9C977,0x77777777,0xC9777777,0x77C9C9C9
- .word 0x9090903E,0x90909090,0x90909090,0xA3A39090,0xA3A3A390,0x4848A3A3,0x85854848,0x85858585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xC7494914,0x25253636,0x57252525,0x36363636,0x36363636
- .word 0x57575792,0x25252525,0x25252525,0x92575725,0x38713636,0x2F2F5651,0x8F8F392F,0x6FBC5E96
- .word 0x67966F6F,0x995E5E9E,0x99999999,0x9D9D8080,0x80808080,0x9D808080,0x9D9D9D9D,0x675E8080
- .word 0x565CBDAB,0x71717138,0xAB385792,0x56958707,0x8F8F5454,0x56562F54,0x56577156,0x05D86167
- .word 0xD7D0B9A1,0xD094D700,0xD3D3F64A,0xD3D3D3D3,0x0EE18422,0x2222E1E1,0xE1E1E184,0xF6222284
- .word 0xB984F6F6,0x431AFE3D,0x858A5F05,0xC9C9C977,0x7777C9C9,0xC9C9C9C9,0xC97777C9,0x7777C9C9
- .word 0x90909090,0x90909090,0x90909090,0xA3A3A390,0xA3A3A390,0x48A3A3A3,0x85854885,0x85858585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x515149C7,0x57923636,0x57575757,0x36929257,0x57929292
- .word 0x25252557,0x25252525,0x57575757,0x71369257,0x56565138,0x3939545C,0xAB95BD39,0x675E9E96
- .word 0x5E9E6767,0x99999999,0x80808080,0x75808080,0x80808080,0x9D758080,0x99809D9D,0xAB969E5E
- .word 0x71382F39,0x71717192,0x39719292,0x2FBD995E,0x5C5C5454,0x8F565156,0x9DAB6FAB,0x3A221A5F
- .word 0xD0D0943A,0x18D01818,0x84F61894,0xE1E1E184,0xB984840E,0x4A22B93D,0x8422D34A,0xF6F6F622
- .word 0x1A82B984,0xF05F0543,0x886C9085,0xC9C977C9,0x6C6C6CC9,0xC9C9C96C,0x777777C9,0x77777777
- .word 0x77777777,0x3E909090,0x90909090,0x90909090,0xA39090A3,0xA3A3A3A3,0x854885A3,0x85858585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x518B49C7,0x36363651,0x92929236,0x92369292,0x25255792
- .word 0x25252525,0x57572525,0x09929292,0x56387171,0x54542F2F,0xDADADA39,0x96B8ABBD,0x5E999E96
- .word 0x99995E9E,0x75758080,0x80758080,0x75808080,0x80808080,0x9D9D9D75,0x675E999D,0xBDDA6F96
- .word 0x36385654,0x92717192,0x38369292,0xBD96996F,0x56562F54,0x9E5C3856,0xFEA105D8,0x7AD718E1
- .word 0x4AD094D7,0xD3D3F64A,0x0E0E8422,0xB90E0E0E,0x84840EB9,0x22840E0E,0x22222222,0x3D0E8422
- .word 0x5FA2431A,0x779085E8,0x888788C9,0xC9C9C9C9,0x88886CC9,0xC9C9C96C,0x77C9C9C9,0x77777777
- .word 0x77777777,0x3E90903E,0x903E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0x854885A3,0x85858585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x518B8BC7,0x36363851,0x36363636,0x57363636,0x25255757
- .word 0x25252525,0x36925757,0x38383871,0x542F5656,0xBDBDBD39,0xAB6FABDA,0x67966FAB,0x801F5E67
- .word 0x80999999,0x80808080,0x80757580,0x75757575,0x80808075,0x80808080,0x6F679E99,0x5439BD95
- .word 0x3638562F,0x57927192,0x57923692,0x96809E54,0x2F5C565C,0x9D547151,0x0000D0A2,0xD018943A
- .word 0x4AD0D0D0,0xB984D3F6,0xB93D3DB9,0xE184840E,0x840E0E0E,0x0E842222,0xB984840E,0x05431A3D
- .word 0x20168ACF,0x8887C00C,0xC9C96C88,0x6C6C6C6C,0x6C6C6C6C,0x7777C9C9,0xC9C9C9C9,0xC9C9C9C9
- .word 0x903E7777,0x3E3E3E90,0x3E3E3E3E,0x90909090,0xA390A390,0xA3A3A3A3,0x858585A3,0x85858585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x4E4E8B49,0x36715151,0x36363636,0x98579236,0x1498D1B6
- .word 0x92252525,0x51713636,0x2F2F5656,0xBD39545C,0xB86FABDA,0xB896B8B8,0x679696B8,0x9D9D999E
- .word 0x99998080,0x80999999,0x9D808080,0x759D9D9D,0x99998080,0x9E9E5E5E,0xDA6F969E,0x565C39BD
- .word 0x92367138,0x57579257,0x25923657,0x9E9DAB71,0x565C2F54,0xCE5C7171,0x94D794A2,0xD04AD018
- .word 0x84D34AD0,0xB9B9B9E1,0xB9B9B9B9,0x8484840E,0x840E8484,0x0E842222,0xA1FE3DB9,0xCC34CFA2
- .word 0xF9F9B1A6,0x878724F9,0x88888888,0x88888888,0x6C888888,0xC9C9C96C,0xC9C9C9C9,0xC9C9C9C9
- .word 0x77777777,0x3E909090,0x90909090,0x90909090,0x90A39090,0xA3A3A390,0xA3A3A348,0x85858585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x5C4E8B49,0x36385151,0x71383836,0x36923636,0x04040404
- .word 0x36F36029,0x2F515138,0x8F395454,0xABDABDBD,0x96B86FAB,0x96969696,0x67969696,0x9D9D809E
- .word 0x99998075,0x80999999,0x75808080,0x8080759D,0x5E919999,0x9696679E,0xBD956FB8,0x38565C54
- .word 0x57923671,0x25575757,0x25929257,0x5E5E5C25,0x56565CBD,0xBD563871,0x4AF6B9E8,0xD3F6F6D0
- .word 0xB9B9B984,0xB9B9B9B9,0x0E0E0EB9,0x84E1E1E1,0xD3F62284,0x1A3D0E84,0xF05FA2A1,0xF9837785
- .word 0xF9F88383,0x888888B2,0x87878788,0x88888888,0x6C888888,0x6C6C6C6C,0xC9C9C9C9,0x7777C9C9
- .word 0x77777777,0x3E777777,0x90903E90,0x90909090,0xA3909090,0xA3A3A390,0x48A348A3,0x85858585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x5C4E8B49,0x3851512F,0x38515138,0x36363671,0x6D04046D
- .word 0x38720472,0x545C2F51,0x95DABD39,0x6F6F6FAB,0x9696B86F,0x96969667,0xBC676767,0x751F809E
- .word 0x99999980,0x75808099,0x80808075,0x5E999980,0x679E9E9E,0xAB6FB796,0x54BDDAAB,0x3856565C
- .word 0x57579236,0x25259257,0x25925725,0x9E957125,0x51515496,0x71715138,0x1884A2CE,0xB984F6D0
- .word 0x3DFEFE3D,0xB9B9E1B9,0x840EB9B9,0x0EE18484,0xB984E10E,0x5FA2A1FE,0xC977A3E8,0x07888888
- .word 0xF9F8F95D,0x8787870C,0x87878787,0x88888888,0x88888888,0x6C6C6C88,0xC9C9C9C9,0x7777C9C9
- .word 0x77777777,0x77777777,0x90907777,0x90909090,0xA3909090,0xA3A3A390,0xA3A348A3,0x85854848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x5CD44E49,0x5151565C,0x51515151,0x36713851,0x040404D1
- .word 0x5C5638CA,0xBD8F3939,0x6FAB95DA,0x96969696,0x67969696,0x9E676767,0x9E9E9E9E,0x809D805E
- .word 0x80808099,0x9D1F8080,0x99998080,0x9E9E5E5E,0x6F969667,0xDADAABAB,0x5C548FBD,0x71385156
- .word 0x25255736,0x25255725,0x25572525,0xBC562525,0x563839CE,0x57365156,0xF6FE9B54,0xB9B9B90E
- .word 0x3D82823D,0xB9B9B9B9,0x840E0E0E,0x0E222284,0x05A11A3D,0x9016F0CF,0x076187C9,0xCC078707
- .word 0xB21383F9,0x87878987,0x87898987,0x87878787,0x88888787,0x88888888,0xC9C9C9C9,0x77C9C9C9
- .word 0x7777C9C9,0x77777777,0x3E3E7777,0x90903E3E,0xA3909090,0xA3A3A3A3,0xA3A348A3,0x85858548
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x5CD44E49,0x562F2F5C,0x2F2F2F56,0x3851512F,0x72CA0438
- .word 0x8F397604,0xAB95DADA,0x96966FAB,0x67969696,0x9EBC6767,0x5E9E9E9E,0x5ECECECE,0x809D8099
- .word 0x80809999,0x99808080,0x9E5E5E99,0x6F96679E,0xDAABAB6F,0x398FBDBD,0x2F5C5C39,0x36365151
- .word 0x25252536,0x25252525,0x25572525,0xAB362525,0x565695CE,0x92927156,0x82059636,0xB93D8282
- .word 0xB9B9B9B9,0xE10EB9B9,0x0E0E8484,0x1A823DB9,0x90E85FA2,0x878787C9,0x87878707,0xF9536187
- .word 0x83F98953,0x87898989,0x87878787,0x87878887,0x87878887,0x88888888,0xC9C9C9C9,0xC9C9C9C9
- .word 0x7777C977,0x7777C9C9,0x903E7777,0x903E3E3E,0xA3909090,0xA3A3A3A3,0xA34848A3,0x85858548
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xD4D44E49,0x5C5C5C5C,0x5C5C5C5C,0x2F2F5C5C,0xBBCD2956
- .word 0xDAEE04CD,0x96B86FAB,0x96969696,0x67969696,0x5E5E9E9E,0x99CE5E5E,0x99999999,0x801F8099
- .word 0x99808080,0x5E999999,0x9667679E,0xABAB6F96,0x8FBDBDDA,0x54543939,0x512F5C5C,0x36363851
- .word 0x25255792,0x25252525,0x25572525,0x5C252525,0x518F9696,0x71927151,0x43C95436,0x3D3D3D82
- .word 0xE1E10EB9,0x8484E10E,0xFE3DB90E,0x8A5FA2A1,0x87C99B85,0x9D9D9D61,0x87870761,0xCCF9B161
- .word 0x5DF9C061,0x89898989,0x87898989,0x87878787,0x88888787,0x88888887,0xC96C6C6C,0xC9C9C9C9
- .word 0xC9C977C9,0x77C97777,0x903E7777,0x903E3E3E,0xA3909090,0xA3A39090,0x48A3A3A3,0x85484885
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x8F8FD449,0x39393939,0x39393939,0x39393939,0xDA04B639
- .word 0x33041195,0x6796B86F,0x96969667,0x9E676796,0x99995E5E,0x99995E5E,0x99998080,0x80999999
- .word 0xCECE9999,0x67BC9E5E,0xAB6FB896,0xBDDA95AB,0x5439398F,0x5C5C5454,0x512F5C5C,0x36363851
- .word 0x25255792,0x25252525,0x57572525,0x36252525,0x71B8CE8F,0x71367171,0x8AAB5171,0x3D3DB982
- .word 0x84840EB9,0xB9B9B9E1,0x5FA2A1FE,0x8877A3E8,0x619D6187,0x9D616161,0x24619D9D,0x610CF9B2
- .word 0x610C8961,0x89898989,0x89898989,0x87878787,0x88888787,0x88888888,0xC96C6C6C,0xC9C9C9C9
- .word 0xC9C9C9C9,0x77C9C977,0x3E3E7777,0x9090903E,0x90909090,0xA3A39090,0x48A3A3A3,0x85484885
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x8F0AD449,0x8F8F8F8F,0xDADADABD,0x8F8F8FBD,0xAB4BDADA
- .word 0x04696F6F,0x67679669,0x9EAC6767,0x5E9E9E9E,0x99809991,0x99999999,0x91999999,0xCECE5E5E
- .word 0xBCBC5ECE,0x6FB8B867,0xDA959595,0x398F8FDA,0x5C5C5C5C,0x5C5C5C5C,0x512F2F5C,0x36363851
- .word 0x25255757,0x25252525,0x25252525,0x25252525,0x56BCCE51,0x92367171,0x87515171,0xB9B9B9A1
- .word 0xB9B9B9B9,0x43A11A3D,0x8885CF05,0x619D9D9D,0x9D809D61,0x9D9D6161,0xF95D809D,0x6161C0F9
- .word 0x89616161,0x89898989,0x89898989,0x89B4B4B4,0x8888B4B4,0x88888888,0xC96C6C6C,0xC9C9C9C9
- .word 0xC9C9C9C9,0x77C9C977,0x773E7777,0x9090903E,0x90909090,0xA3A39090,0xA3A3A3A3,0x85488585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x950AD449,0x95DADADA,0x95959595,0x95DA9595,0x6F6F6F95
- .word 0x696FB8B8,0x67676904,0x5E5E9E9E,0x99999999,0x80808080,0x99999999,0x5E919999,0x9E9E9E9E
- .word 0xB8B867BC,0x959595AB,0x8F8F8FBD,0x5C5C398F,0x5C5C5C5C,0x2F2F5C5C,0x51515656,0x92367151
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x959EAB36,0x57363651,0x96577171,0x84E11ACF
- .word 0xA11AFE3D,0xA3F00543,0x9D8788C9,0x80808075,0x759D7580,0x75808080,0xB1F9CC80,0x61619D87
- .word 0x61616161,0x89896161,0x89898989,0x898989B4,0xB4B48989,0x888888B4,0x88888888,0xC96C8888
- .word 0xC9C9C9C9,0x77C9C9C9,0x903E7777,0x90909090,0x90909090,0xA3A390A3,0xA3A3A3A3,0x484848A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x9595D449,0x6F6F6F6F,0x6F6F6F6F,0x6F6F6F6F,0x96B8B86F
- .word 0x96676767,0x9E110469,0x80995E5E,0x80808080,0x80998080,0x99999980,0x9E5E9199,0x96676767
- .word 0x9595ABB8,0x8F8F8F8F,0x5C54398F,0x565C5C5C,0x2F565151,0x51562F2F,0x51515151,0x92363638
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x9E965657,0x71363654,0x54575736,0x3DFE0507
- .word 0xCF5FA2A1,0x808790E8,0x9D809999,0x759D9D9D,0x9D9D9D75,0x9D808075,0x8053F9A6,0x6161619D
- .word 0x61616161,0x89896161,0x89898989,0x89898989,0x89898989,0x8888B4B4,0x88888888,0xC96C8888
- .word 0xC9C9C9C9,0x77C9C9C9,0x90777777,0x90909090,0x90909090,0xA39090A3,0xA3A3A3A3,0x854848A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xB859D4C6,0x6796B8B8,0x96676767,0xB89696B8,0x67676796
- .word 0xBCBCBCBC,0xCD04339E,0x80809991,0x80808080,0x99999999,0x5E5E5E99,0x96679E5E,0xABB89696
- .word 0x8F8FBD95,0x5C5C398F,0x5C5C5C5C,0x5151565C,0x51515151,0x51515151,0x38515138,0x57923638
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x99DA5757,0x383638AB,0x51362536,0xA2A290AB
- .word 0x88C9D8CF,0x80801F07,0x99999980,0x9D9D8099,0x9D809D9D,0xB1B06161,0x808013F9,0x61619D9D
- .word 0x61616161,0x61896161,0x89898989,0x89898989,0x89898989,0x88878989,0x88888888,0x6C888888
- .word 0xC9C9C96C,0xC9C9C9C9,0x777777C9,0x90909077,0x90909090,0xA3909090,0xA3A3A3A3,0x4848A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xB8AD0A8B,0xBC676767,0x67BCBCBC,0x67676767,0xBCBC6767
- .word 0x5E5E5E9E,0x04EE99CE,0x80807529,0x99999999,0x99999999,0x67AC9E5E,0xAB6F9667,0xBD95ABAB
- .word 0x5C8F8F8F,0x5C5C5C5C,0x5151515C,0x51515151,0x51515151,0x36515151,0x38513871,0x57923638
- .word 0x25575725,0x25252525,0x25252525,0x25252525,0x96512525,0x719254BC,0x57713671,0x90779E51
- .word 0xCE809D87,0x1F999E9E,0x99998080,0x80809999,0x80998080,0xF9F8249D,0x757575C5,0x619D9D9D
- .word 0x61616161,0x61616161,0x61616161,0x89898989,0x89898989,0x87898989,0x88888888,0x6C6C8888
- .word 0xC9C9C96C,0xC9C9C9C9,0x7777C9C9,0x90907777,0x90909090,0xA3A39090,0xA3A3A3A3,0x48A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xBCADD4C6,0x9E9E9E9E,0x9E9E5E9E,0xBCBC9E9E,0x5E5E9E9E
- .word 0x9999CE5E,0x10808080,0x99916D04,0x5E5E5E99,0x5E5E5E5E,0x6F96679E,0xDA32AB6F,0x8FBDBDBD
- .word 0x5C5C5C54,0x515C5C5C,0x51515151,0x51515151,0x51515151,0x3636AF51,0x38383871,0x92363638
- .word 0x25575725,0x25252525,0x25252525,0x25252525,0x54252525,0x3636AB9E,0x25363636,0x9E678F36
- .word 0x9ECE9E9E,0x80999E9E,0x99999999,0x91919999,0x99809999,0x24F9B25D,0x9D9D9D9D,0x9D9D9D9D
- .word 0x61616161,0x61616161,0x61616161,0x61898989,0x89898989,0x89898989,0x88888888,0x6C6C8888
- .word 0xC9C96C6C,0xC9C96C6C,0x7777C9C9,0x903E3E77,0x90909090,0xA3A39090,0xA3A3A3A3,0x48A34848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xBC0A4EC7,0x9E9E9999,0x5E5E5E99,0x5E9E5E5E,0x99999999
- .word 0x80808099,0x99808080,0xCE6D0410,0x9E5ECE99,0x67BCBC9E,0xAB6FB896,0x8FBDDA95,0x5C393939
- .word 0x2F5C5C5C,0x51515156,0x51515151,0x51515151,0x38515151,0x36363838,0x38717136,0x36363671
- .word 0x25252592,0x25252525,0x25252525,0x25252525,0x51252525,0x365CBCBC,0x36369292,0xAB395136
- .word 0x9E9E9E67,0x5E5E5E9E,0x5E5E5E5E,0x915E5E5E,0x13808099,0x809D83F9,0x9D9D9D9D,0x9D9D9D9D
- .word 0x9D9D9D9D,0x619D9D9D,0x61616161,0x61618961,0x89898989,0x89898989,0x87878888,0x88888888
- .word 0x6C6C8888,0xC9C96C6C,0x7777C9C9,0x3E3E7777,0x90909090,0xA3A39090,0xA3A3A3A3,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xB88F4914,0x5E5E995E,0x9999809D,0x915E9980,0x80999999
- .word 0x99808080,0x99999999,0x04044791,0xBC9E5EC1,0x6FB89667,0xDA959595,0x54398FBD,0x5C5C5C5C
- .word 0x5156562F,0x51515151,0x51515151,0x51515151,0x38383851,0x36367138,0x36363671,0x36363636
- .word 0x25252592,0x25252525,0x25252525,0x25252525,0x36252525,0x5159BC81,0x38369225,0xDA563636
- .word 0x67679E67,0x9E9E9E9E,0x5E5E5E9E,0x995E5E5E,0xF9538099,0x80808013,0x80808080,0x9D9D9D80
- .word 0x9D9D9D9D,0x9D9D9D9D,0x6161619D,0x89616161,0x89898989,0x89898989,0x87878887,0x88888887
- .word 0x6C6C6C88,0xC9C96C6C,0x7777C977,0x3E3E7777,0x90909090,0xA3A39090,0xA348A3A3,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x8F5CC714,0x999E67AB,0x80809D9D,0x99809D75,0x99999999
- .word 0x99999999,0x5E5E5E91,0x04475E5E,0xB8962104,0xBD95956F,0x398F8F8F,0x2F5C5C5C,0x5151562F
- .word 0x51515151,0x38383851,0x38383838,0x38383851,0x36367171,0x36363636,0x36363636,0x36363636
- .word 0x25252557,0x25252525,0x25252525,0x25252525,0x25252525,0x5CCEB851,0x36363625,0x39383636
- .word 0x6767676F,0x9E9EBC67,0x5E9E9E9E,0xCE5E5E5E,0xC5F9B1A5,0x8080808E,0x9D808080,0x9D9D9D80
- .word 0x9D9D9D9D,0x9D9D9D9D,0x6161619D,0x89616161,0x89898989,0x89898989,0x88878787,0x88888887
- .word 0x6C6C8888,0xC96C6C6C,0xC9C977C9,0x3E3E7777,0x90909090,0xA3A39090,0xA348A3A3,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x2F8BC714,0x9167DA5C,0x9D9D8099,0x999D9D9D,0x99999999
- .word 0x5E919999,0x9E9E9E5E,0x4BBCBCBC,0xDA210404,0x398F8FBD,0x5C5C5C54,0x5151562F,0x51515151
- .word 0x51515151,0x36713838,0x38717171,0x71717138,0x36363636,0x36363636,0x36363636,0x36363636
- .word 0x25252557,0x25252525,0x25252525,0x25252525,0x25252525,0x95CE9525,0x36369236,0x56363636
- .word 0x6767B8BD,0x9E679696,0x9E9E9E9E,0x245E5E5E,0xCE5DF9F8,0x80808080,0x80808080,0x9D9D9D80
- .word 0x9D9D9D9D,0x9D9D9D9D,0x6161619D,0x89616161,0x89898989,0x89898989,0x88878787,0x88888888
- .word 0x6C6C6C88,0xC96C6C88,0xC9C9C9C9,0x3E3E7777,0x90909090,0xA3A39090,0xA3A3A3A3,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x515C4914,0x96AB2F38,0x80995E96,0x99757580,0x99999991
- .word 0x9E5E5E5E,0x67BC9E9E,0xABB8B896,0xE7046DAD,0x5C5C5C54,0x512F2F5C,0x51515151,0x51513838
- .word 0x38385151,0x36363636,0x36363636,0x36363636,0x36363636,0x36929236,0x36363636,0x92363636
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xBCBC5C25,0x3657255C,0x71923636
- .word 0x6796952F,0x67679696,0x9E9E6767,0xF95D5E9E,0x5E5E2483,0x80999999,0x80808080,0x9D809D80
- .word 0x9D9D9D9D,0x9D9D9D9D,0x6161619D,0x89616161,0x89896189,0x89898989,0x88878787,0x88888888
- .word 0x88886C88,0x6C6C8888,0xC9C9C9C9,0x3E7777C9,0x90909090,0xA3A39090,0xA3A3A3A3,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x5CD48B14,0xBD543871,0x5E9EAB39,0x5E5E5E5E,0x5E5E5E5E
- .word 0x679E9E9E,0x6F969696,0xBDDA9595,0x0429548F,0x562F56CA,0x51515156,0x51515151,0x38515151
- .word 0x36713838,0x36363636,0x36363636,0x36363636,0x36923636,0x92929292,0x92929292,0x57929292
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x1F8F3625,0x3625256F,0x92923692
- .word 0x676F3971,0x67969696,0x9E676767,0xB1F9CC9E,0x5E5E5E5E,0x99999999,0x80808080,0x80808080
- .word 0x9D9D9D9D,0x9D9D9D9D,0x9D619D9D,0x61616161,0x89898961,0x89898989,0x88878787,0x88888888
- .word 0x88886C88,0x6C6C8888,0xC9C96C6C,0x777777C9,0x9090903E,0xA3A39090,0xA3A3A3A3,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x8F0A8B14,0x2F2F3856,0x966F3978,0x67969696,0x67676767
- .word 0x6F969696,0xDAABABAB,0x548F8FBD,0x72565C5C,0x5151D104,0x51515151,0x38383838,0x38383838
- .word 0x36363638,0x36363636,0x36363636,0x92363636,0x92929292,0x92579292,0x57575792,0x57575757
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xCE512525,0x259251BC,0x57363692
- .word 0x67955692,0x96969667,0x9E676767,0xB3A6F9F4,0x5E5E5E5E,0x9999995E,0x80808099,0x80808080
- .word 0x9D9D9D9D,0x9D9D9D9D,0x9D9D9D9D,0x6161619D,0x89898961,0x89898989,0x87878787,0x88888887
- .word 0x886C6C88,0x6C6C8888,0xC9C96C6C,0x7777C9C9,0x9090903E,0xA3909090,0xA3A3A3A3,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x950A8B14,0x5C392F39,0xDABD2F38,0x6FAB95DA,0x6F6F6F6F
- .word 0xDADAABAB,0x8F8FBDBD,0x5C5C548F,0x782F2F2F,0x386004CD,0x71383838,0x71717171,0x71717171
- .word 0x36363671,0x36363636,0x36363636,0x92363636,0x92929236,0x92579292,0x57255792,0x57925757
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x36252525,0x95362525,0x25386F5E,0x92383892
- .word 0x96BD3857,0x96969667,0xF89E6767,0x5E5EC5F9,0x5E5E5E5E,0x995E5E5E,0x80809999,0x80808080
- .word 0x9D9D9D9D,0x9D9D9D9D,0x9D9D9D9D,0x6161619D,0x89896161,0x89898989,0x87878789,0x88888787
- .word 0x886C8888,0x6C6C8888,0xC9C96C6C,0x7777C9C9,0x903E3E3E,0x90909090,0xA3A3A390,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x95D44914,0xBDABDAAB,0x54542F2F,0xDADABD39,0xDADADADA
- .word 0x398FBDBD,0x54545454,0x562F5C5C,0x51515151,0x8D04B651,0x71717171,0x36363636,0x36363636
- .word 0x36363636,0x36363636,0x36363636,0x92923636,0x92929292,0x92579292,0x25255792,0x57572525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x36252525,0x51252525,0x255C99BC,0x92515192
- .word 0xAB549257,0x96966767,0xF9F85867,0x5E5E9E24,0x5E5E5E5E,0x995E5E5E,0x80809999,0x80808080
- .word 0x9D9D9D9D,0x9D9D9D9D,0x9D9D9D9D,0x6161619D,0x89616161,0x89898989,0x87878789,0x88888787
- .word 0x88888888,0x6C6C8888,0xC9C96C6C,0x777777C9,0x903E3E3E,0x90909090,0xA3A3A390,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x95D41414,0x6F9696B8,0x2F2F54BD,0x8FBD3954,0x39393939
- .word 0x54545439,0x5C2F2F5C,0x51512F5C,0x51515151,0x048D3838,0x7136718D,0x36363636,0x36363636
- .word 0x36363636,0x36363636,0x92363636,0x92929292,0x92929292,0x92929292,0x25252592,0x57252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252536,0x36951F95,0x71513836
- .word 0xBD569257,0x6F96966F,0xECB2F95D,0x5E9E9E67,0x5E5E5E5E,0x5E5E5E5E,0x80999999,0x80808080
- .word 0x809D9D9D,0x9D759D9D,0x9D9D9D9D,0x619D6161,0x89616161,0x89898989,0x87898989,0x88888787
- .word 0x88888888,0x6C6C8888,0x6C6CC96C,0x777777C9,0x903E903E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x95D41414,0xB867BC96,0x565654DA,0x5439542F,0x54545454
- .word 0x2F2F5C54,0x56565656,0x38515151,0x38383838,0xDD363638,0x3636ED04,0x36363636,0x36363636
- .word 0x36363636,0x92929292,0x92929292,0x57579292,0x25575757,0x57255725,0x25252592,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25253636,0x5496BC5C,0x71713636
- .word 0x2F719236,0xBA6FB8DA,0x67ACF4F9,0x9E9E6767,0x9E9E5E9E,0x5E5E5E5E,0x9999995E,0x80808099
- .word 0x9D808080,0x9D9D8080,0x9D9D9D9D,0x9D619D9D,0x61616161,0x89616161,0x87898989,0x88878887
- .word 0x88888888,0x6C6C8888,0xC9C96C6C,0x3E7777C9,0x903E3E77,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x95D4C614,0xDA6F6796,0x56515CDA,0x2F54542F,0x56565656
- .word 0x5656562F,0x51385156,0x36363838,0x71713636,0x92363671,0x36ED0460,0x36363636,0x36363636
- .word 0x92929236,0x57579292,0x92929292,0x25252557,0x57252525,0x57252525,0x25252557,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25253625,0xB8CE8F36,0x71362536
- .word 0x38927138,0xF953AB39,0x67966F6E,0x67676767,0x9E9E9E9E,0x5E5E5E5E,0x99995E5E,0x80808099
- .word 0x80808080,0x9D758080,0x9D9D9D9D,0x619D9D9D,0x61616161,0x89618961,0x87898989,0x88888787
- .word 0x88888888,0x6C6C8888,0xC9C9C96C,0x3E7777C9,0x903E3E77,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x950A8B14,0xBDDA9696,0x565154BD,0x51562F2F,0x51513838
- .word 0x38385151,0x71713838,0x36363636,0x36363636,0x36363636,0x11046092,0x57929236,0x92575757
- .word 0x57579292,0x25255792,0x25579257,0x25252525,0x25252525,0x25252525,0x25252557,0x57572525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xBC9E5125,0x3657572F
- .word 0x92927138,0xC5F9F870,0x9696966F,0x67676767,0x9E9E9E67,0x5E5E5E5E,0x99995E5E,0x80808099
- .word 0x9D808080,0x7580759D,0x9D9D9D75,0x619D9D9D,0x61616161,0x89898961,0x87898989,0x88888787
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x3E7777C9,0x903E3E77,0x90909090,0xA3A39090,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x81D48B14,0xBDAB96B8,0x7156BDBD,0x71385638,0x38383838
- .word 0x71717171,0x36717171,0x36363636,0x36363636,0x36363636,0x04D15736,0x25573672,0x57252525
- .word 0x57925792,0x25929257,0x25252525,0x25259225,0x25255725,0x25255725,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xBCDA3625,0x572551B8
- .word 0x70363871,0x9658F8F9,0x67969696,0x67676767,0x5E9E6767,0x5E5E5E9E,0x99995E5E,0x80809999
- .word 0x80808080,0x75758080,0x9D9D759D,0x9D9D9D9D,0x6161619D,0x89616161,0x89898989,0x88878989
- .word 0x88888888,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x8FD4C614,0xDA6F6FAB,0x922FDABD,0x71717136,0x71717138
- .word 0x71717171,0x36093671,0x36363636,0x36363636,0x92929236,0xCA929292,0x25252904,0x25252525
- .word 0x57575792,0x25925757,0x25252525,0x25259225,0x25259225,0x25259225,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xB8382525,0x92368FCE
- .word 0xF9443692,0xB895D5F8,0x67969696,0x67676767,0x9E9E6767,0x5E5E9E5E,0x99995E5E,0x80999999
- .word 0x80808080,0x75758080,0x9D759D75,0x9D9D9D9D,0x6161619D,0x61616161,0x89898989,0x87878989
- .word 0x88888888,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x815C4914,0xAB966FAB,0x925CBD8F,0x71717192,0x71717138
- .word 0x36717171,0x36929292,0x36363636,0x36363636,0x92929292,0x57929292,0x256D046A,0x25252525
- .word 0x25255757,0x25252525,0x25252525,0x25259225,0x25259225,0x25259225,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x95362525,0x7151DA5E
- .word 0xB1F90325,0x6F397171,0x96969696,0x67676767,0x9E9E6767,0x5E9E9E9E,0x995E5E5E,0x99999999
- .word 0x80808080,0x80758080,0x75759D80,0x9D9D9D75,0x6161619D,0x61616161,0x89898961,0x87878989
- .word 0x88888888,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x954EC714,0x6F966FB8,0x382F548F,0x71389257,0x71717171
- .word 0x36363636,0x36929236,0x36923636,0x92929236,0x92929292,0x25579292,0x6D041425,0x25252514
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25259225,0x25259225,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x5C252525,0x928F96B8
- .word 0x38BAF9E2,0xDA565792,0x9696676F,0x67679696,0x9E9E9E9E,0x9E9E9E9E,0x5E5E5E5E,0x99999999
- .word 0x80808080,0x80808080,0x75759D75,0x9D9D9D75,0x6161619D,0x61616161,0x89898961,0x87878989
- .word 0x88888887,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x958B1414,0xB867B8B8,0x562F5CBD,0x71382536,0x36363636
- .word 0x36363636,0x92923636,0x92929292,0x57575792,0x92252525,0x25252557,0x04142525,0x25251404
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25259225,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x36252525,0x8315CE8F
- .word 0x71254452,0x39715792,0x9667966F,0x67966F96,0x67679E9E,0x9E9E9E9E,0x5E5E5E5E,0x9999995E
- .word 0x80808080,0x80808080,0x75757575,0x9D757575,0x6161619D,0x61616161,0x89616189,0x87878989
- .word 0x88888887,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x0AC61414,0xB8B8BC67,0x5C2F2F95,0x36712536,0x36363636
- .word 0x92929292,0x92579292,0x57579292,0x25252557,0x25252525,0x25252525,0x14252525,0x25F30404
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25259225,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xF9F9F551
- .word 0x92923619,0x56363692,0x67966FDA,0x676F6F96,0x67679E9E,0x9E9E6767,0x5E5E5E9E,0x995E5E5E
- .word 0x80999999,0x80808080,0x75757575,0x9D757575,0x7F7F619D,0x61616161,0x89616161,0x87878989
- .word 0x88888887,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x8FC71414,0xB8B89E67,0x5C2F5CB8,0x36362536,0x92929292
- .word 0x25579257,0x25252557,0x25255725,0x25252525,0x25252525,0x25252525,0x25252525,0x6A046D14
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25259257,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x19B1F9DC
- .word 0x57929251,0x38367192,0x6796AB39,0x676F6F96,0x67676767,0x9E9E9E67,0x5E5E5E9E,0x995E5E5E
- .word 0x99999999,0x80808080,0x759D7580,0x9D757575,0x617F619D,0x61616161,0x89616161,0x87878989
- .word 0x88888888,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x5CC71414,0xB8B8BCB8,0x5C5C8FB8,0x92929238,0x25575757
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x04292525
- .word 0x2525257C,0x25252525,0x25252525,0x25252525,0x25255757,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x03252525,0xCE96E2F9
- .word 0x92365754,0x71717192,0x676FBD2F,0x966F6F67,0x67676767,0x9E9E9E67,0x5E5E5E9E,0x99995E5E
- .word 0x99999999,0x80809999,0x759D8080,0x759D7575,0x61619D9D,0x61616161,0x89896161,0x87898989
- .word 0x88888888,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x51141414,0x6F966795,0x51399595,0x25253651,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x72252525
- .word 0x2525CA04,0x25252525,0x25252525,0x25252525,0x25572525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xF9F45725,0x80952503
- .word 0x929271DA,0x71369292,0x96AB3938,0x6F6F9667,0x67676796,0x9E9E9E67,0x5E5E5E9E,0x995E5E5E
- .word 0x99999999,0x80809999,0x75807580,0x9D757575,0x7F7F9D9D,0x6161617F,0x61616161,0x87878989
- .word 0x88888787,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xC7141414,0xAB676F39,0x518F95BD,0x25255151,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x257604CD,0x25252525,0x25252525,0x25252525,0x36362525,0x25252592,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x44F9F9A7,0x675C2525
- .word 0x57925496,0x92929292,0x6FDA2F71,0x6F6F9696,0x67676796,0x9E676767,0x5E5E5E9E,0x995E5E5E
- .word 0x99999999,0x80809999,0x75808080,0x75757575,0x61619D9D,0x6161617F,0x89616161,0x87878989
- .word 0x88888887,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x36141414,0xABB8DA2F,0x518F958F,0x25255156,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x8D041125,0x25252525,0x25252525,0x25252525,0x56382525,0x25252538,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x19252525,0x256BF9F9,0x39719225
- .word 0x5771ABBC,0x57927192,0xDA393892,0x6F96966F,0x67679696,0x9E676767,0x5E5E9E9E,0x5E5E5E5E
- .word 0x99999999,0x80999999,0x75808080,0x75757575,0x7F7F759D,0x6161617F,0x89616161,0x87898989
- .word 0x88888887,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x36141414,0xABB88F51,0x548F8F8F,0x25927156,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x048D2525,0x25252514,0x25252525,0x25252525,0x8F2F5725,0x25259256,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xF9632525,0x25253FB1,0x38259225
- .word 0x715C9696,0x92929292,0xBD2F7192,0x96966FAB,0x67679696,0x67676767,0x5E9E9E9E,0x5E5E5E5E
- .word 0x99999999,0x80999999,0x75808080,0x9D757575,0x7F7F759D,0x6161617F,0x89616161,0x87898961
- .word 0x88878887,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0xB8598F51,0xDA8F54BD,0x5736362F,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x14252525,0x25252525,0x25252525,0x25252525,0x955C3625,0x25253679,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x6EF96E25,0x25252525,0x38252525
- .word 0x51AB96DA,0x92929257,0x54567192,0x96966FDA,0x67679696,0x67676767,0x9E9E9E67,0x5E5E5E5E
- .word 0x9999995E,0x80999999,0x80807580,0x9D757575,0x7F7F7575,0x6161617F,0x89616161,0x87898961
- .word 0x88878887,0x6C6C6C88,0x77C96C6C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x4D95D4C7,0x8F8F8F95,0x9236385C,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25255725,0x25252525,0x36363F25,0x2525253F,0x8F512525,0x25255181,0x25572525,0x25252525
- .word 0x25252525,0x25259257,0x25252592,0x25259257,0x25252525,0x2563F9E2,0x25252525,0x36252525
- .word 0x5C9EBC5C,0x92363625,0x56717136,0xB89696BD,0x966767B8,0x67676796,0x9E676767,0x5E5E9E9E
- .word 0x9999995E,0x80809999,0x759D7580,0x75757575,0x7F7F759D,0x6161617F,0x89616161,0x87898989
- .word 0x88888888,0x6C6C6C88,0xC9C9C96C,0x77777777,0x903E3E3E,0x90909090,0xA3A3A390,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x958F8BC7,0x8F8F8F95,0x9236515C,0x25252557
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25927192,0x25252525,0x55513625,0x14253F8B,0x5C142514,0x25368F95,0x253F2525,0x25252525
- .word 0x25252557,0x25253657,0x25255736,0x25259292,0xF86B2525,0x2525EBF9,0x25252525,0x25252525
- .word 0x95CEB851,0x36363671,0x71367136,0xB896B854,0x9667BCB8,0x67679696,0xBC6767BC,0x5E9E9E9E
- .word 0x999999CE,0x80809999,0x9D9D9D80,0x75757575,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x0AD42E14,0xD4D48F0A,0x9236515C,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x36252525
- .word 0x25385C2F,0x25252525,0x818B3614,0x1414C70A,0xC7252514,0x25179581,0x25252525,0x36252525
- .word 0x25252536,0x25252525,0x25252525,0x25252525,0xF8521925,0x252525EF,0x25252525,0x25252525
- .word 0xBCBC5C25,0x5136258F,0x71573636,0x96B8815C,0x96969696,0x67679696,0x9E676767,0x5E9E9E9E
- .word 0x99995ECE,0x80999999,0x75759D80,0x7575759D,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x5C8BC714,0xD45C5CD4,0x9236515C,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x5C252525
- .word 0x92396F6F,0x25252525,0x4D8B3F14,0x3F148B4C,0x14252514,0x365C4D8F,0x25252525,0x3F252525
- .word 0x2525253F,0x25252525,0x25572525,0x25252525,0x25F4F9DC,0x25252525,0x25252525,0x25252525
- .word 0x1F8F3625,0x513657B8,0x36575736,0x15955C51,0x96B8B8BC,0x67679696,0x9E676767,0x5E5E9E9E
- .word 0x9999915E,0x80999999,0x759D7580,0x75757575,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x49C71414,0xD45C8B8B,0x92365CD4,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xBD572525
- .word 0x516F80CE,0x25252525,0x81C72525,0x14C7D44C,0x14252525,0x5195955C,0x25252525,0x25251425
- .word 0x3F252525,0x25252525,0x57383625,0x19252525,0x25256EF9,0x25252525,0x25252525,0x25252525
- .word 0xCE5C2525,0x363651BC,0x71575736,0x158F5136,0x96B8B8BC,0x67969696,0xBCBC6767,0x5E5E9E9E
- .word 0x995E915E,0x80999999,0x9D9D7580,0x75757575,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0xD48B51C7,0x36515C8F,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xDA252525
- .word 0x395E071F,0x25252557,0x5C142525,0x14555959,0x25252525,0x8FB88F36,0x25252514,0x25253F25
- .word 0x25252525,0x57252525,0x515C3825,0x25252557,0x252525EF,0x25252525,0x25252525,0x25252525
- .word 0x95362525,0x253695CE,0x71363F36,0xB8543636,0x96B8B815,0x67969696,0xBC676767,0x5E5E9EBC
- .word 0x995E5E5E,0x80999999,0x75808080,0x7575759D,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C8BC7C7,0x385C8F8F,0x25252592
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x39252525
- .word 0xAB6188CE,0x25252536,0x36252525,0x3F0A150A,0x25252525,0x95B85125,0x25253F17,0x253F1425
- .word 0x25252525,0x25252525,0x545C3625,0x25252551,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x51252525,0x255CCEBC,0x7171363F,0x81557136,0x96B8B8B8,0x67969696,0x67676767,0x5E9E9EBC
- .word 0x995E5E5E,0x80999999,0x75808080,0x7575759D,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C51C7C7,0x515C8F8F,0x25259236
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x38252525
- .word 0x67071F6F,0x25252551,0x14252525,0x514D4679,0x25252514,0x95813625,0x2514C755,0x3F3F1425
- .word 0x25252525,0x25252525,0x8F553F25,0x2525255C,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x36AB1F95,0x71713625,0x5C517171,0x96969695,0x96969696,0x67676767,0x9E9E9EBC
- .word 0xCE5E5E5E,0x99999999,0x75808080,0x7575759D,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x51C736C7,0x518F8F5C,0x25253636
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0xCE075E5C,0x2525368F,0x25252525,0x5C4D4D8B,0x25252536,0x5C513625,0x2514C78B,0x14142525
- .word 0x3F252525,0x25365136,0x8F172525,0x25253654,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x79CECE5C,0x36713657,0x51175171,0x96BCB854,0x96969696,0x67676767,0x9E9E9EBC
- .word 0x5E5E5E5E,0x99999999,0x75808080,0x7575759D,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x513614C7,0x5C5C5C5C,0x25253651
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x1F9DB871,0x143F51B8,0x25252525,0xD48F5C36,0x252525C7,0x3F14363F,0x25143F36,0x25252525
- .word 0x8B361425,0x36558F79,0x79362525,0x2536518F,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0xB8459536,0x57363636,0x36715136,0x9696AB56,0x96969696,0x67676796,0x9E9E9E67
- .word 0x5E5E5E5E,0x9999995E,0x80808080,0x75757575,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C5C5C51,0x25253651
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x07CE8F36,0x14C78FCE,0x25252525,0x51511425,0x25252536,0x25253636,0x14142525,0x25252525
- .word 0x8F55C73F,0x36D49595,0x55252525,0x25175C79,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x9ECE5125,0x2536715C,0x36715136,0x96B88F51,0x9696B896,0x67679667,0x9E9EBC67
- .word 0x5E5E9E5E,0x9999995E,0x80808099,0x75757575,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C5C2851,0x2592385C
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x07155125,0x3F514D1F,0x25252525,0x3F252525,0x25252514,0x2525363F,0x14142525,0x8BC71414
- .word 0x8F0A8FD4,0x368B798F,0x36252525,0x36558FD4,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x36252525,0x9E953625,0x25575695,0x36717136,0x96AB2F36,0x9696B896,0x67966767,0x9E9EBC67
- .word 0x5E5E5E5E,0x9999995E,0x80808099,0x75757575,0x7F7F759D,0x617F7F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x3E3E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C285151,0x2592515C
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x1F953F25,0x365CBC3C,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x5979C714
- .word 0x5C814DB8,0x253F36C7,0x25252525,0x36D4815C,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0xB85C2525,0x573F79BC,0x3671713F,0x96BD7136,0x96969696,0x67679696,0x9E9EBC67
- .word 0x5E5E9E9E,0x9999915E,0x80809999,0x759D9D75,0x7F7F759D,0x61617F61,0x89616161,0x87898989
- .word 0x88888888,0x6C6C8888,0xC9C9C9C9,0x77777777,0x903E3E3E,0x9090903E,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x36141414,0x5C4E51C7,0x2536284F
- .word 0x25252536,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x15552525,0x36951F3C,0x25252525,0x25252525,0x25252525,0x25252525,0x25252514,0x59955C36
- .word 0xC755D40A,0x25252514,0x25252525,0x518F8F17,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0xBD3F2525,0x3F51AB27,0x71513625,0xAB543657,0x96969696,0x96679696,0x9E9E6767
- .word 0x5E5E9E9E,0x99999999,0x75808099,0x9D757575,0x7F7F619D,0x617F7F7F,0x89616161,0x87878989
- .word 0x88888887,0xC96C6C88,0xC9C9C9C9,0x777777C9,0x3E3E3E3E,0xA3909090,0xA3A3A3A3,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C5C5136,0x36365C4F
- .word 0x25252536,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x8F363F25,0x36B83CCE,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x5C8FD4C7
- .word 0x14142536,0x25252525,0x25252525,0x8F4D5C3F,0x25252536,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x56252525,0x3FBD9E15,0x71513625,0xDA565757,0x6FB89696,0x67679696,0x9EBC6796
- .word 0x5E5E9E9E,0x99999999,0x80808099,0x9D757575,0x6161619D,0x61616161,0x89616161,0x87878989
- .word 0x88888887,0xC96C6C6C,0x7777C9C9,0x77777777,0x9090903E,0xA3909090,0xA3A3A3A3,0xA3A34848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C4E5136,0x36515C5C
- .word 0x25251436,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x51143614,0x148F1559,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xC78B1714
- .word 0x25252525,0x3F252525,0x25252536,0xBCCE9536,0x2525365C,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x36252525,0x57B84595,0x71363657,0x39715736,0xB8B8B86F,0x67969696,0x9EBC6767
- .word 0x5E5E9E9E,0x99999999,0x75808099,0x9D757575,0x6161619D,0x61616161,0x89616161,0x87898989
- .word 0x88888888,0xC96C6C6C,0x7777C9C9,0x77777777,0x9090903E,0xA3909090,0xA3A3A3A3,0xA3A34848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C514936,0x49285C5C
- .word 0x25251414,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x3F251414,0x25365551,0x25252525,0x25252525,0x25252525,0x25252525,0x25141425,0x14142525
- .word 0x25252525,0x25252525,0x51363636,0x1F07BC8F,0x25255195,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x51BCCE5C,0x36253671,0x56713671,0x96B8ABBD,0x67969696,0x67676767
- .word 0x5E5E9E9E,0x9999995E,0x75808099,0x9D757575,0x6161619D,0x61616161,0x89616161,0x87898989
- .word 0x88888888,0xC96C6C6C,0x7777C9C9,0x77777777,0x9090903E,0xA3909090,0xA3A3A3A3,0xA3A34848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x4E513614,0x515C4E5C
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25251425,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x253F1425,0x25252525
- .word 0x25252525,0x57252525,0x6F8F2F71,0x07871FBC,0x25368FCE,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0xBD27B836,0x57575751,0x71367136,0x966FDA54,0x96969696,0x67676767
- .word 0x5E5E9E9E,0x9999995E,0x80808099,0x75757575,0x6161619D,0x61616161,0x89616189,0x87878989
- .word 0x6C888887,0xC96C6C6C,0xC977C9C9,0x77777777,0x9090903E,0xA3909090,0xA3A3A3A3,0xA3A34848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x51491414,0x5C8F4E51
- .word 0x25252514,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x14141425,0x14252525,0x25252525,0x25252525,0x25252525,0x25252525,0x3F361425,0x25252525
- .word 0x25252525,0x5C513636,0xCEBC6F8F,0x3B07611F,0x25369507,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x9E9E5C25,0x573F575C,0x9292713F,0x96AB8F56,0x96969667,0x67676767
- .word 0x5E5E9E9E,0x9999995E,0x80808099,0x75757575,0x6161619D,0x61616161,0x89898989,0x87878789
- .word 0x88888888,0xC96C6C6C,0x7777C9C9,0x77777777,0x9090903E,0xA3909090,0xA3A3A3A3,0xA3A34848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x51361414,0x5C8F4E51
- .word 0x14252536,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252557,0x25252525
- .word 0x3F3F1425,0x36252525,0x2525253F,0x25252525,0x25252525,0x25252525,0x143F2525,0x25252525
- .word 0x363F5725,0x96953951,0x1FCE5EBC,0x773B8861,0x2536B807,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x1FAB3625,0x57367195,0x57573657,0x96955C71,0x96969667,0x6767BC67
- .word 0x5E5E9E9E,0x9999995E,0x80808099,0x75757575,0x6161619D,0x61616161,0x89898989,0x88878789
- .word 0x88888888,0xC96C6C6C,0x7777C9C9,0x77777777,0x9090903E,0xA3909090,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x49141414,0xD4D44E51
- .word 0x36141451,0x25252514,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x14141414,0x36252525,0x25922536,0x25252525,0x25252525,0x25252525,0x25252525,0x92252525
- .word 0x8F5C5138,0xCEBCB895,0x071F80CE,0x3B9B7788,0x253695CE,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0xCE542525,0x573F54BC,0x92925757,0x6FBD5636,0x67969696,0x6767BC67
- .word 0x5E9E9E9E,0x9999995E,0x80808099,0x75757580,0x6161619D,0x61898961,0x87898989,0x88878787
- .word 0x6C6C6C88,0xC96CC96C,0x7777C9C9,0x773E3E77,0x9090903E,0xA3909090,0xA3A3A3A3,0xA3A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x36141414,0xD45C4E49
- .word 0x3614368B,0x25252514,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x8BC72525,0x5C5C518B,0x25572571,0x25252525,0x25252525,0x25252525,0x25252525,0x51362525
- .word 0xB86F958F,0x1FCE5EBC,0x3B888761,0x5E618788,0x25365C95,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0xAB362525,0x5771B899,0x9236573F,0xAB395157,0x679696B8,0x6767BC67
- .word 0x5E9E9E9E,0x9999995E,0x80808099,0x75757575,0x6161619D,0x61618961,0x87898989,0x88878787
- .word 0x6C888888,0xC96CC96C,0x7777C9C9,0x77773E77,0x9090903E,0xA3909090,0xA3A3A3A3,0xA3A34848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x36141414,0xD44E5149
- .word 0x3636C75C,0x25252514,0x25252525,0x25252525,0x25252525,0x36555136,0x25252525,0x14252525
- .word 0x8155BF14,0x8F595959,0x25252551,0x25252525,0x25252525,0x25252525,0x25252525,0x8F513657
- .word 0x5E5EBCB8,0x079D8099,0x073B3B88,0x5C8F6F99,0x25253651,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x55252525,0x3F5CCECE,0x57363657,0xBD2F7157,0x679696AB,0x67676767
- .word 0x5E9E9EBC,0x9999915E,0x80808099,0x75757575,0x6161619D,0x89618961,0x87898989,0x88888787
- .word 0x6C6C6C88,0xC96C6C6C,0x7777C9C9,0x3E3E3E77,0x9090903E,0xA3909090,0xA3A3A3A3,0xA348A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C515149
- .word 0x36C78BD4,0x25252525,0x25252525,0x25252525,0x36252525,0x8FB8B88F,0x25252536,0x79C72525
- .word 0x59810A81,0x5C8F8159,0x25252536,0x25252525,0x25252525,0x25252525,0x25252525,0x6F543892
- .word 0x618080CE,0x61878888,0xDAB85E80,0x9236515C,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x36252525,0x71AB99B8,0x57367157,0x54383657,0x67966FDA,0x67679667
- .word 0x5E9E9EBC,0x9999915E,0x80808099,0x75757580,0x61619D9D,0x89898961,0x87898989,0x88888787
- .word 0x6C6C6C88,0xC9C9C96C,0x777777C9,0x3E3E3E77,0x9090903E,0xA3909090,0xA3A3A3A3,0x48A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C514936
- .word 0x1451D4D4,0x25252525,0x25252525,0x25252525,0x55252525,0x960707BC,0x25255756,0x4D5C3625
- .word 0x790A5915,0x3F361755,0x25252525,0x25252525,0x25252525,0x25573F25,0x25252525,0xB85C3692
- .word 0x619D6180,0x67CE6187,0x25922FDA,0x92922525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x5CCE9E5C,0x57367157,0x56365757,0x67966FBD,0x67969696
- .word 0x5E9E9EBC,0x9991CE5E,0x80808099,0x75757580,0x61619D9D,0x89896189,0x87898789,0x88888788
- .word 0x6C6C6C6C,0xC9C9C96C,0x3E7777C9,0x3E3E7777,0x9090903E,0xA3909090,0xA3A3A3A3,0x48A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x8B494936
- .word 0x258B8FD4,0x25251425,0x25252525,0x25252525,0x5C252525,0xCE9B9045,0x2525255C,0x8F5C3625
- .word 0xC78B55D4,0x2525143F,0x25252525,0x25252525,0x25252525,0x25363F25,0x25252525,0x6F382525
- .word 0x5E61071F,0x5654DA6F,0x25259238,0x92922525,0x25252525,0x25252536,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x951F9636,0x92575736,0x38575757,0x9696AB54,0x6796B896
- .word 0x5E9E9E67,0x9991CE5E,0x80808099,0x75758080,0x61619D9D,0x89616161,0x87898989,0x88888887
- .word 0x6C6C6C6C,0x77C9C96C,0x3E777777,0x3E3E7777,0x9090903E,0xA3909090,0xA3A3A3A3,0x48A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x8B51C736
- .word 0x364E8F5C,0x25252514,0x25252525,0x25252525,0x51252525,0x9DD8D827,0x25253695,0xC7515725
- .word 0x14141414,0x25252525,0x25252525,0x25252525,0x25252525,0x5C5C3625,0x25252551,0x54252525
- .word 0x54671FCE,0x25573651,0x57925725,0x57252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0xBCCE8F25,0x3625255C,0x36575757,0x96969556,0x969696B8
- .word 0x5E9E9EBC,0x99995E5E,0x80808099,0x9D9D7580,0x89619D9D,0x89898989,0x87898989,0x88888887
- .word 0x6C6C6C88,0x77C9C96C,0x3E777777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0x48484848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x8B51C714
- .word 0x515C5C4E,0x25252536,0x25252525,0x25252525,0x25252525,0x3BD83B95,0x25255CBC,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25573657,0x25252557,0xB8813625,0x2525368F,0x3625143F
- .word 0x255CBC4D,0x253F363F,0x25922525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x99B85125,0x3F253F95,0x25363657,0xB8B83936,0xB8B8BCB8
- .word 0x5E9EBCBC,0x99CE5E5E,0x75808099,0x9D9D9D9D,0x8989619D,0x89898989,0x87898987,0x88888787
- .word 0x6C6C6C88,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0x85858585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5149C714
- .word 0x5C5C5C8B,0x25255751,0x25252525,0x25252525,0x25252525,0x9B9B1F5C,0x2517951F,0x25252525
- .word 0x25252525,0x25252525,0x71363F25,0x25365551,0x3F252525,0x4D793F25,0x14148B95,0x25251414
- .word 0x25179579,0x253F3F25,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x27792525,0x252555BC,0x3F36363F,0xB8BD5157,0xBC159615
- .word 0x5E9EBCBC,0x99CE5E5E,0x9D808099,0x9D9D9D9D,0x8989619D,0x89898989,0x87898987,0x88888787
- .word 0x6C886C88,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0x85858548
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x49C71414
- .word 0x5C5C5C8B,0x25253651,0x25252525,0x25252525,0x25252525,0x9B3BB836,0x3679BC07,0x25252525
- .word 0x25252525,0x363F2525,0x8F5C5617,0x3F558195,0x57572525,0x79C72525,0x14170A95,0x25251414
- .word 0x3F55798B,0x143F2525,0x57252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x95512525,0x253695BC,0x36363636,0x4D513F36,0xBCBCB8BC
- .word 0x5E9EBCBC,0x99CE5E5E,0x9D808099,0x9D9D9D9D,0x8989619D,0x89898989,0x87898987,0x88888787
- .word 0x6C6C6C88,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0x85484848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x49141414
- .word 0x5C5C5C8B,0x25253656,0x25252525,0x25252525,0x25252525,0x9B0D6225,0x1795CE3B,0x57252525
- .word 0x25252525,0x79567157,0x9EB8AB95,0x5181BCCE,0x57572525,0x8B252525,0x14D44D95,0x25252525
- .word 0x51795C36,0x36252525,0x57252525,0x25252557,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25255725,0x5C252525,0x255C9EBC,0x3636573F,0x81362536,0xBCBCB896
- .word 0x9EBCBCBC,0x99CE5E5E,0x9D808099,0x9D9D9D9D,0x8989619D,0x89898989,0x87878787,0x88888787
- .word 0x6C6C8888,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0x48854848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414
- .word 0x5C5C5C51,0x2592382F,0x25252525,0x25252525,0x25252525,0xC9BE01E4,0x51B807C9,0x25252525
- .word 0x55513657,0xB895BD54,0x871FCEBC,0x5C679DC9,0x25572557,0x17252525,0x3F0A1581,0x25252525
- .word 0x5C8F5125,0x36252525,0x92252525,0x25252557,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x36252525,0x3695CE4D,0x36365725,0x5C573636,0xBCBCB84D
- .word 0x9EBCBCBC,0x99CE5E5E,0x9D808099,0x9D9D9D9D,0x8989619D,0x89898989,0x87878789,0x88888887
- .word 0x6C6C886C,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0x85484848
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414
- .word 0x5C5C4E51,0x2536515C,0x25252525,0x25252525,0x14252525,0x1F0A2A01,0x5CBC3BC9,0x71363F36
- .word 0x96AB7951,0x27BCBCBC,0x90C9871F,0x9599C990,0x25255717,0x36252525,0x360AB879,0x25252525
- .word 0x8F793625,0x57252551,0x92252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x5CBC9E54,0x25573F3F,0x363F7136,0x96BC968F
- .word 0x9EBCBC67,0x995E5E9E,0x9D808099,0x9D9D9D9D,0x8989619D,0x89898989,0x88878787,0x88888888
- .word 0x6C6C6C88,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0x85A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x36141414
- .word 0x5C5C8BC7,0x2536515C,0x25252525,0x25252525,0x01252525,0xBC511401,0x95993B3B,0xBD8F5C54
- .word 0xCE9E96AB,0x9D809999,0x90A39B87,0xBC879B9B,0x25253654,0x57572525,0x36D40A51,0x2525253F
- .word 0x39512525,0x2525575C,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25255725,0x4DCE4D51,0x25253F17,0x25365136,0x96BCB855
- .word 0x9EBCBC67,0x995E5E9E,0x9D808099,0x9D9D9D9D,0x8989619D,0x89898989,0x88878787,0x88888888
- .word 0x6C6C6C88,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0x48A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x5C5C51C7,0x3F51565C,0x25252525,0x25252525,0x01E62525,0x8F2525FA,0x279D3B3C,0x9E9696BC
- .word 0x9D8099CE,0x3BC98807,0x999D6187,0x9D9B779D,0x252571AB,0x25572525,0x3617513F,0x25252536
- .word 0x39252525,0x2525DBDA,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252557,0x25575725,0xBC9E5C25,0x2525365C,0x25367136,0xBCB88136
- .word 0x9EBCBC67,0x995E5E9E,0x9D1F8099,0x9D9D9D9D,0x8989619D,0x89898989,0x88878787,0x88888888
- .word 0x6C6C6C6C,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0xA34848A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x5C8BC736,0x36515C5C,0x25252525,0x25252525,0x30010B25,0x51252525,0x3C0707CE,0x80991F1F
- .word 0xC987619D,0x879BA390,0x5454ABCE,0xC99087B8,0x2525569E,0x25255757,0x25252525,0x25252525
- .word 0xDA369225,0x2537A096,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0xCEB83625,0x36253695,0x25363F57,0xBC4D5C36
- .word 0x9EBCBC67,0x995E5E9E,0x9D1F8099,0x9D9D9D9D,0x8989619D,0x89898989,0x88888887,0x6C888887
- .word 0x6C6C6C6C,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x5C51C714,0x715C5C5C,0x2525253F,0x25252525,0x257301A9,0x36252525,0x3B07CE95,0x8761073B
- .word 0x779B77C9,0xAB9E9D88,0x57577154,0x7777995C,0x9271BD80,0x25255792,0x25252525,0x36252525
- .word 0x67395C51,0x41D9375E,0x25252557,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0xBC542525,0x36365C15,0x3F362525,0x96BD7125
- .word 0x9EBCBC67,0x995E5E9E,0x9D1F8099,0x9D9D9D9D,0x8989619D,0x89898989,0x88878887,0x6C6C8888
- .word 0x6C6C6C6C,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x8BC71414,0x515C5C5C,0x25255736,0x14252525,0x25252A01,0x25252525,0x9B87BC5C,0xC9883B90
- .word 0x80887777,0x57713996,0x25572525,0x77876F71,0x92546761,0x25252557,0x92252525,0x5C513657
- .word 0xCE676FDA,0xD9C45E1F,0x25258CD9,0x25259225,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x95362525,0x3651959E,0x36362525,0xAB5C3F57
- .word 0x9EBCBC67,0x995E5E9E,0x9D1F8099,0x9D9D9D9D,0x8989619D,0x89898989,0x88878787,0x6C6C8888
- .word 0x6C6C6C6C,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x51C71414,0x515C5C5C,0x25253F36,0x2A252525,0x25251401,0x25252525,0xE83BB836,0x07C9D8E8
- .word 0x54ABAC99,0x25255738,0x25252525,0x77995457,0x92958088,0x25252525,0x2F382525,0x6F953956
- .word 0x9DCE9E67,0xAE950788,0x252CD9A0,0x25259257,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x8F252525,0x575CBCCE,0x36363657,0x8F175757
- .word 0x9EBCBC96,0x995E5E9E,0x9D1F8099,0x9D9D9D9D,0x8989619D,0x89898989,0x88878787,0x6C6C8888
- .word 0x6C6C6C6C,0xC9C9C96C,0x3E3E7777,0x3E3E3E3E,0x90909090,0xA3909090,0xA3A3A3A3,0xA3A3A390
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x49C71414,0x5C5C5C8B,0x25255717,0x01E62525,0x25252531,0x25252525,0x07CE8F57,0x6FCE1F07
- .word 0x25925639,0x92572525,0x25255792,0x88673857,0x51678788,0x92579292,0x958F2F38,0x5E5E9695
- .word 0x3B1F80CE,0x386777A3,0x9AD9F292,0x25259225,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x51252525,0x579599B8,0x36363625,0x5C362525
- .word 0x9EBC676F,0x99999E9E,0x9D1F9999,0x9D9D9D9D,0x89896161,0x87898989,0x88888888,0x6C6C8888
- .word 0x6C6C6C6C,0x77C9C96C,0x3E3E7777,0x903E3E3E,0x909090A3,0xA3909090,0x48A3A3A3,0x90A3A348
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x51C71414,0x8F5C5151,0x2525575C,0x5A010B25,0x25252525,0x25252525,0x8F5C5125,0x71515554
- .word 0x25255792,0x57572525,0x57255757,0x80DA7157,0xDA998888,0x39562F2F,0x67B86FDA,0x611F995E
- .word 0xA3880761,0x2F673B16,0xD9F72557,0x252592F2,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x519E995C,0x3F362525,0x51362525
- .word 0x6767B88F,0x80999EBC,0x9D9D9999,0x619D9D9D,0x89896161,0x87878989,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0xC9C9C9C9,0x3E3E7777,0x903E3E3E,0x7790A3A3,0xA3A3903E,0x85A3A3A3,0x90A38585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0xC7C71414,0x8F8B5151,0x2525365C,0x25730114,0x25252525,0x25252525,0x25572525,0x25252525
- .word 0x25252525,0x25252525,0x25575725,0x9E2F2525,0xAC8990C9,0x6FDADADA,0xCE5EBC67,0x3B076180
- .word 0xA3A3A377,0x51DACE88,0xFB252525,0x25CBA0D9,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x8FCE9636,0x3F362536,0x36575757
- .word 0x9E96955C,0x99CE9EBC,0x9D9D9999,0x619D9D9D,0x89898961,0x88878989,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0xC9C9C9C9,0x3E3E7777,0x903E903E,0x909090A3,0xA38585A3,0x90909090,0xA3A3A3A3
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0xC7C71414,0xD48B5151,0x1425515C,0x25140101,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0xAB922525,0x9D7785C9,0x5E9E6F67,0x6180CE5E,0x7777C988
- .word 0x1F779B77,0x92568F6F,0x25252525,0x2302A0DB,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xBC155C3F,0x3F25255C,0x36253636
- .word 0x9EB88F51,0x995E9E9E,0x9D1F8099,0x619D9D9D,0x89898961,0x88878989,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0xC9C9C9C9,0x3E3E7777,0x3E90903E,0x903E7777,0xA3858548,0x90909090,0x85A39090
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0xC7141414,0x5C8B51C7,0x2A36565C,0x25251401,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x92252525,0x39252536,0x3BA38587,0x61809E99,0xA3778861,0x88A38585
- .word 0x396FBC80,0x25573651,0x57252525,0xD9A45757,0x252525E5,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x1F953625,0x3F2536B8,0x573F3636
- .word 0x67955C36,0x5E9E9E5E,0x80801F99,0x619D9D75,0x89898961,0x88878989,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0xC9C9C9C9,0x773E7777,0x3E3E3E3E,0x90777777,0x90A3A390,0x8585A390,0x85489090
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0xC7141414,0x558B51C7,0x01305C5C,0x25252531,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x92252525,0x56252536,0x9085C9BC,0x77876188,0x9BA3A3A3,0x671F8877
- .word 0x57922FDA,0x25252525,0x92572525,0x97252592,0x2525F2D9,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x458F2525,0x25255C9E,0x92365736
- .word 0x968F3857,0x9E9E9E9E,0x80801F99,0x619D9D80,0x89898961,0x88878989,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0xC9C9C9C9,0x3E3E7777,0x3E3E3E3E,0x90903E90,0x90909090,0x8585A390,0xA3A34885
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x8B8B51C7,0xE601065C,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x36252525,0x85A38039,0xA37790A3,0x5E6177D8,0x5654DA6F
- .word 0x25259238,0x25252525,0x92252525,0x25255792,0x2541D92C,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xB8512525,0x253FBDCE,0x3636253F
- .word 0xAB2F3625,0x9E9E5E9E,0x80808099,0x619D9D80,0x89898961,0x88878789,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0x77C9C9C9,0x3E777777,0x3E3E3E3E,0xA3909090,0x9090A3A3,0xA3909090,0x90A38585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x8B8B17C7,0x362A0106,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x36365725,0x85C96751,0x879B85E8,0x396F9E80,0x25923651
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0xA0D92325,0x2525258C,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x5C3F2525,0x3F5CBCBC,0x71362525
- .word 0x8F712525,0x9E9E5E67,0x808080CE,0x619D9D80,0x89898961,0x88878789,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0x77C9C9C9,0x3E777777,0x3E3E3E3E,0x90909090,0x90909090,0x90909090,0x90A38585
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x8B51C7C7,0x51D401AA,0x253F2525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x36363657,0x8799BD71,0x6F80873B,0x36382F54,0x25255792
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0xD9CB2525,0x25252CD9,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x36252525,0x364DCEAB,0x36362525
- .word 0x2F572592,0x9E5E9EAB,0x8080995E,0x619D9D80,0x89898961,0x6C878789,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0x77C9C9C9,0x77777777,0x3E3E3E3E,0x773E9090,0xA3903E77,0xA34848A3,0x9D88C977
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x7392C714,0x51790601,0x2536363F,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25575725,0xAB797157,0x515C7995,0x25579236,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x57252525,0x259AD9F2,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x5CCECE8F,0x36572525
- .word 0x71252536,0x9E9E96BD,0x8099995E,0x619D7580,0x89898961,0x6C888787,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0x77C9C9C9,0x77777777,0x77777777,0x77777777,0xA3909077,0xC990A3A3,0xBD6FAC80
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x01303614,0x5C542FD2,0x25363671,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x173F5757,0x25252536,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25253F57,0x25252525,0x25252525,0xF2D91225,0x25252571,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x8F45BC51,0x25253F36
- .word 0x92252536,0x9E67AB2F,0x8099CE5E,0x619D7580,0x89898961,0x6C888787,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0x77C9C9C9,0x77777777,0x77777777,0xA3907777,0x3E90A3A3,0x67999D88,0x715654DA
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0xE601E414,0x5C5C5138,0x25253656,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x57252525,0x2525253F,0x3F573F36,0x2525253F,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25141414,0x25141425,0x25252525,0xD9FB2525,0x2525CBA0,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xB89E8F36,0x2525365C
- .word 0x57579292,0x9E6F3938,0x8099CE5E,0x9D9D7580,0x89898961,0x6C6C8789,0x88888888,0x6C6C8888
- .word 0x6C6C6C6C,0xC977C9C9,0x77777777,0x77777777,0x48A39077,0x758877A3,0x7854329E,0x09713838
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0xC7AA0114,0x795C5151,0x2525365C,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x57252525,0x3F252557,0x2525253F,0x25253F3F,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x8C252525,0x2523D9A0,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x9E955125,0x25253695
- .word 0x57363625,0xBC955692,0x8099995E,0x9D9D7580,0x89898961,0x6C6C8789,0x88888888,0x6C6C8888
- .word 0x6C6C6C6C,0xC977C9C9,0x77777777,0x90773E3E,0xC990A390,0xBDB75E61,0x57097854,0x71719292
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0xC7140101,0x79515151,0x2525518F,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x57252525,0x25252525,0x25253F3F,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xF7D94109,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x275C2525,0x253F5CBC
- .word 0x57363657,0x968F7157,0x8099CECE,0x9D9D9D75,0x89898961,0x6C6C8887,0x88888888,0x6C6C8888
- .word 0xC96C6C6C,0xC9C97777,0x77777777,0x773E7777,0x9E9D876C,0x713854AB,0x71717171,0x92717171
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x73141414,0xC714FA01,0x5C8B5117,0x2536515C,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xD9972525,0x252557A4
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xB8362525,0x255195CE
- .word 0x3F363636,0xB8563F57,0x80CE9E9E,0x759D9D9D,0x8989619D,0x6C888888,0x88886C6C,0x6C6C8888
- .word 0xC96C88C9,0xC9C97777,0x777777C9,0x9D886CC9,0x2FBDAB67,0x92923671,0x38383871,0x92367138
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x01D21414,0x361414D2,0x5C8B51C7,0x92515C5C,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x65252525,0x257141D9
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x8F252525,0x3F5CBCBC
- .word 0x3F3F3636,0xBD71573F,0x9D999EBC,0x75759D9D,0x89896175,0x8889B489,0x88C9C9C9,0x88888888
- .word 0x88888888,0xC9C9C9C9,0x88C97777,0x95675E9D,0x9236712F,0x38363657,0x92367138,0x51713692
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x7301A914,0x14141414,0x5C51C7C7,0x36515C5C,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x23A0D9DB
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x51252525,0x5195BCAD
- .word 0x3F3F3F3F,0x5557573F,0x9D999EAB,0x9D758080,0x89896161,0x88898989,0x886CC96C,0x88888887
- .word 0x88888888,0x886C886C,0x5E9D8788,0x7156396F,0x36363636,0x51383636,0x25573638,0xBD5C5136
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14AA0114,0x14141414,0x8B51C7C7,0x36515C5C,0x25252592,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xD941CB25
- .word 0x2525252C,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x79BCBC8F
- .word 0x363F253F,0x71575736,0x9999BC8F,0x9D758099,0x89898961,0x87878989,0x88878888,0xC96C8888
- .word 0xC988C9C9,0x80896CC9,0x54DAB79E,0x57577156,0x36363636,0x71363692,0x51367138,0xAB95958F
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x1414012A,0x14141414,0x51493614,0x515C5C5C,0x25252536,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xF2572557
- .word 0x25259AD9,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x4DCEB851
- .word 0x36572571,0x57573F71,0x99999656,0x9D759999,0x87898961,0x88888888,0x87878789,0xC9C96C88
- .word 0x878888C9,0xAB9E9961,0x09715639,0x92579292,0x92363838,0x71922525,0x958F542F,0xDAABB8B8
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x62141414
- .word 0x14149F01,0x14141414,0x51C73614,0x515C5C5C,0x25259236,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252557
- .word 0x71A4D912,0x25252525,0x25252525,0x25252525,0x25252525,0x36252525,0x25252525,0xBCCE8F36
- .word 0x3625575C,0x573F3671,0xCEBCBD17,0x9D758099,0x8961619D,0x88888887,0x88878787,0x87886C88
- .word 0x9E759D61,0x565439AB,0x09097138,0x36717109,0x36363671,0x5C513692,0x67BC6F8F,0x2F398F95
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x01D21414
- .word 0x14141430,0x14141414,0x51361414,0x5C5C5C8B,0x25259251,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252557
- .word 0xD9D9C425,0x252525E3,0x25252525,0x25252525,0x25252525,0x36252525,0x25252525,0xCEB85125
- .word 0x36253695,0x3F363636,0x9EAB5C36,0x75808099,0x61617575,0x87898989,0xC9888887,0x7587C9C9
- .word 0x54BD6F9E,0x92717138,0x92575757,0x36717192,0x5C385725,0xAB95DA8F,0xBDABAB95,0x36383856
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x73011414
- .word 0x14141425,0x14141414,0xC7361414,0x5C5C5C51,0x25253651,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252557
- .word 0xA0E32525,0x252523D9,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x278F3625
- .word 0x36255C9E,0x36713F3F,0x678F713F,0x9D9D1F99,0x619D7580,0x89898787,0x87878887,0xB85E1F61
- .word 0x579256BD,0x57927136,0x57575757,0x36369292,0x955C5136,0xB867BCB8,0x71515CBD,0x36369292
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x1401AA14
- .word 0x14141414,0x14141414,0xC7361414,0x5C5C4E51,0x25253651,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x71572525,0x25F7D9A0,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xB8512525
- .word 0x36179545,0x3636573F,0xB82F5757,0x9D9D80CE,0x8761619D,0x88878888,0x67808788,0x515639AB
- .word 0x92363671,0x71929292,0x71717171,0x51927171,0x95AB6FDA,0x5C398F95,0x36363851,0x38383836
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14FA012A
- .word 0x14141414,0x14141414,0xC7361414,0x5C5C8B49,0x2536382F,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x57572525,0xF2D99757,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x8F252525
- .word 0x177915CE,0x36365757,0xBD515757,0x619D99BC,0x87616161,0x9D618888,0x54AB9E99,0x25255738
- .word 0x71719257,0x71369292,0x56513871,0xDA39542F,0x8F956796,0x3636385C,0x51713636,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x62141414,0x14149F01
- .word 0x14141414,0x14141414,0x36361414,0x5C4E51C7,0x2536512F,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x573F2525,0xD9FB253F,0x252578A4,0x25252525,0x25252525,0x25252525,0x25252525,0x51252525
- .word 0x51AB274C,0x36363636,0x5C715757,0x61809EAB,0x809D6107,0x965E9980,0x38565639,0x92923671
- .word 0x92575792,0x36367136,0x54567171,0xB867ABBD,0x565C5C8F,0x36363851,0x38387136,0x38713636
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x019F1414,0x141414FF
- .word 0x14141414,0x14141414,0xC7361414,0x5C4E51C7,0x9236515C,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x57575725,0x2325573F,0x2523A0D9,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x56BCCE8F,0x3F717136,0x71927136,0x6199968F,0x675E9D07,0x5639DA6F,0x92929271,0x36713692
- .word 0x57579292,0x2F389257,0xDADABD39,0x39DADADA,0x36717151,0x38713636,0x38383838,0x51383838
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x2A011414,0x14141414
- .word 0x14141414,0x14141414,0xC7C71414,0x5C8BC7C7,0x3651515C,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x57575725,0x25255757,0xFBD9A4E3,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x8FCEBC17,0x57715156,0x57365136,0x5E96BD56,0x39AB675E,0x5792382F,0x92923636,0x92575757
- .word 0x71369292,0xDA545638,0x956FB86F,0x36715639,0x36367136,0x38713636,0x51383838,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14010114,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x8B51C736,0x385C5C5C,0x25252592,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0xD9F22525,0x2525259A,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x96279525,0x253F718F,0x3F715157,0x395C5671,0x38565439,0x92579271,0x36717192,0x57575792
- .word 0x54387192,0xABAB6F95,0x2F54BDDA,0x92927138,0x36713871,0x38387171,0x51515151,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14A901E6,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x5151C7C7,0x515C5C5C,0x25252536,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x9A252514,0x259241D9,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x99155625,0x253F514D,0x36175136,0x36363636,0x36363636,0x71717171,0x57579271,0x56719257
- .word 0xABBD3954,0x39DAB896,0x9271382F,0x38717192,0x51515138,0x51515151,0x51515151,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x30141414,0x14145A01,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x51C7C7C7,0x515C5C8B,0x25252536,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0xCBD9D92D,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x1F953625,0x3636549E,0x71367171,0x92367171,0x71713692,0x71717171,0x57579236,0xDA543892
- .word 0xAB96B8AB,0x512F2F39,0x71367171,0x51383871,0x51515151,0x51515151,0x51515151,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x019F1414,0x141414E6,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x51C7C714,0x2F5C5C8B,0x25253638,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0xD9A07825,0x252525FD,0x25252525,0x25252525,0x25252525
- .word 0xBC5C2525,0x36369599,0x36575736,0x36363671,0x71717136,0x57363671,0x8F567192,0xAB6FABDA
- .word 0x5C8FBD95,0x36363638,0x71713636,0x51515138,0x51515151,0x51515151,0x51515151,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x2A011414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x49C73614,0x5C5C8B51,0x25253651,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0xA4572525,0x25259AD9,0x25252525,0x25252525,0x25252525
- .word 0x8F362525,0x3F51BCCE,0x36362536,0x36363636,0x36363636,0x51363636,0xB895392F,0x8F959667
- .word 0x3636382F,0x36363636,0x51387171,0x51515151,0x51515151,0x51515151,0x51515151,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14012A25,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xC7C71414,0x5C555151,0x2592382F,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25F2D99A,0x25252525,0x25252525,0x25252525
- .word 0x36252525,0x71951FBC,0x51513625,0x36363636,0x57252536,0x958F5536,0xDA95B8B8,0x51515C39
- .word 0x71363671,0x51383838,0x51515151,0x51515151,0x51515151,0x51515151,0x51515151,0x51383851
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14E4010F,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xC7361414,0x5C8B5117,0x2536512F,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x41D96525,0xE3252578,0x2525252D,0x25252525
- .word 0x25252525,0x5C451F95,0x36511725,0x25573636,0x5C513625,0xB895958F,0x513995B8,0x36929236
- .word 0x51515138,0x51515151,0x51515151,0x51515151,0x51515151,0x51515151,0x51515151,0x38383838
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0xD2141414,0x14145A01,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xC7141414,0x5C5151C7,0x2536512F,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0xD9DB2525,0x7B2523D9,0x252557D9,0x25252525
- .word 0x25252525,0x9507CE51,0x25367136,0x363F3636,0x4D815C51,0x8F954DB8,0x3638515C,0x38363636
- .word 0x51515151,0x51515151,0x51515151,0x51515151,0x51515151,0x51515151,0x38515151,0x71383838
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x01A91414,0x14141473,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x36141414,0x8B5117C7,0x9271512F,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x92252525,0xE3FBD9A4,0x25257B02,0x25252525
- .word 0x25252525,0xBC1F9525,0x2536515C,0xBD5C7157,0x954DB8AB,0x568F8F8F,0x51369236,0x36363851
- .word 0x51513836,0x51515151,0x51515151,0x51565151,0x51515151,0x51515151,0x38383851,0x71717171
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0xAA011414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x5151C736,0x36515151,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x9AD9F225,0x2525A41D,0x25252525
- .word 0x25252525,0x45B85125,0x5C5C8FBC,0xB8955C55,0x5C8F4DB8,0x17511751,0x51383636,0x36715151
- .word 0x51513871,0x51515151,0x51515151,0x51515151,0x51515151,0x38385151,0x38383838,0x36717171
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14019F14,0x1401AA14,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x5151C736,0x38515151,0x25252536,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xD9122525,0x25CBD9D9,0x25252525
- .word 0x25252525,0xCE5C5725,0xBCB8B81F,0x79814D4C,0x8B55555C,0x3F3F3651,0x36715138,0x2F565171
- .word 0x5138512F,0x51512F51,0x51515151,0x51515151,0x38515151,0x71383838,0x36363636,0x36713636
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x1401E614,0x149F01FF,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14BF1414,0x14141414,0x5151C736,0x515C5C51,0x25252536,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0xA0A0A0A0,0x2597D9A0,0x25252525
- .word 0x25252525,0x8F362525,0x96B895B8,0x515C81B8,0x51C73636,0x71365151,0x71385151,0x5C2F5138
- .word 0x5151562F,0x51512F51,0x51515151,0x51515151,0x38383838,0x36713838,0x36363636,0x36713636
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x0B012A14,0x1414FF01,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14BF1414,0x14141414,0x5117C736,0x555C5C51,0x25259217,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x021D7B23,0x2541D9D9,0x25252525
- .word 0x25252525,0x25252525,0x565C5636,0x51515151,0x3636C717,0x5C555117,0x51515151,0x51515151
- .word 0x56565151,0x51515151,0x51515151,0x51515151,0x38713838,0x36367171,0x36363636,0x36367136
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x01AA2A14,0x14D2140F,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x49C73614,0x5C5C5C8B,0x25573651,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25253F57,0x25252525,0x25252525,0x7823CB09,0x25252525
- .word 0x25252525,0x25252525,0x36713625,0x51173636,0x71385151,0x56565117,0x2F565151,0x51515156
- .word 0x51515151,0x51515151,0x38383851,0x51383838,0x71717138,0x36367171,0x36363636,0x92367138
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x0101AA14,0x9F01010F,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x49141414,0x4E4E4E8B,0x25361751,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x57572525,0x573F363F,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x92252525,0x38383636,0x38717171,0x51515151,0x51515151,0x56565651,0x51515151
- .word 0x51515151,0x51515151,0x38385151,0x38383838,0x36713838,0x36363636,0x36363636,0x92923636
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x01010114,0x14A96201,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C4E8B8B,0x2536518B,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x57572525,0x253F363F,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x92252525,0x38383636,0x38383838,0x51515151,0x51515151,0x51515151,0x51515151
- .word 0x51515151,0x51383838,0x51515151,0x36363851,0x36367136,0x36363636,0x92929236,0x36922525
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0xD2730114,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C4E8B49,0x3F36518B,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x57252525,0x57573F3F,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x92252525,0x51383636,0x51383851,0x51515151,0x51515151,0x51515151,0x51515151
- .word 0x51515151,0x71713838,0x51513871,0x36713851,0x36363636,0x36363636,0x25252592,0x51713657
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x141414E4,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C4E8BC7,0x3636515C,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x573F3F57,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x36572525,0x51517136,0x51515151,0x51515151,0x51515151,0x51515151,0x51515151
- .word 0x51383851,0x36363851,0x71363636,0x36383838,0x36369292,0x36363636,0x36259236,0x5C5C2F51
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xD44EC6C7,0x36518B5C,0x25252557
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x57252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x36922525,0x51513836,0x51515151,0x51515151,0x51515151,0x51515151,0x38515151
- .word 0x38717138,0x36715151,0x36363636,0x71713636,0x25923636,0x36922525,0x5C515138,0x398F8F8F
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xD48B4914,0x36515C5C,0x25255757
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x36922525,0x51513836,0x51515151,0x51515151,0x51515151,0x51515151,0x71383851
- .word 0x36363671,0x36363636,0x36363636,0x36363692,0x25923636,0x38365725,0xBD8F542F,0x5C548FBD
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C8BC714,0x71515C5C,0x25255736
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25255757,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x36922525,0x51387136,0x51515151,0x51515151,0x51515151,0x51515151,0x36713838
- .word 0x36363636,0x36369292,0x92363671,0x25252525,0x36369257,0x5C2F5138,0x8F8F8F39,0x51512F5C
-
- .word 0x14141425,0x14141414,0x14141414,0x0BA91414,0x9F0B0B0B,0x141425E4,0x0B0B0BE4,0x0B0B0B0B
- .word 0x25141414,0x5AFF5AE4,0x141425A9,0x140B0BE4,0x25141414,0xE45A300B,0x14141425,0x140B0B0B
- .word 0x0B0B1414,0x1414140B,0x14141414,0xD2305AA9,0x14141414,0x8B51C714,0x51515C5C,0x25579236
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x57252525,0x65656565,0x257123FD,0x6565CB25,0x65656565,0x252509FD,0x122CE325,0x2525F1E5
- .word 0xFD657825,0x36922523,0xF77B2D14,0x51514965,0xFBFBF151,0xF1515151,0x3838FBFB,0x36367138
- .word 0x12FB3636,0x3636CBE5,0x25573636,0x57572525,0x2F513692,0x8FBD8F39,0x51565C39,0x36363671
-
- .word 0x14141425,0x14141414,0x14141414,0x015A1414,0x01010101,0x14FA0101,0x010101FF,0x01010101
- .word 0x2A141425,0x01010101,0x14146201,0xE4010130,0x019F1414,0x01010101,0x1414142A,0x9F010101
- .word 0x01AA1414,0x14141401,0xFF141414,0x01010101,0x14149F01,0x8BC71414,0x515C5C5C,0x25573671
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x92252525,0xD9D9D9D9,0x2CD9D9D9,0xD9D92D25,0xD9D9D9D9,0x2525E3D9,0xD9D9D937,0x92A4D9D9
- .word 0xD9D98C25,0x8C92259A,0xD9D9D941,0x49C4D9D9,0xD9D9F749,0xF7513837,0x7136D9D9,0x36363671
- .word 0x02D9D9F1,0x25C4D9D9,0x25252525,0x51713657,0x395C5651,0x398FBD8F,0x9236382F,0x38363636
-
- .word 0x14141425,0x14141414,0x14141414,0x015A1414,0x625A6201,0x25E60101,0x30010130,0x30FFFFFF
- .word 0x01011425,0x2A5A6201,0x14310101,0xE4010130,0x0101FA14,0x010F6201,0x1425AA01,0x01010101
- .word 0x01AA1414,0x14141401,0x01141414,0x73A96201,0x14252A01,0x51C71414,0x555C5C8B,0x25573651
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x92252525,0xFBF2A0A0,0xA0A0D97B,0xD9D92D57,0x121212F2,0x9A257112,0xE5F2D9D9,0x12D9D997
- .word 0xD9D98C25,0x4125259A,0x3797D9A0,0x50D9A0D9,0xA0A0F7AF,0xF73823D9,0x3636D9A0,0x25363636
- .word 0x7197D91D,0x2541D9A4,0x36252525,0x5C2F5138,0x548F8F8F,0x3851565C,0x36363671,0x51387136
-
- .word 0x14141425,0x14141414,0x14141414,0x015A1414,0x14149F01,0x25730101,0x14010130,0x14141414
- .word 0x0101E414,0x14141430,0x1414A9D2,0xE4010130,0x01016214,0xFF251414,0x14310101,0x01010101
- .word 0x01AA25E6,0x14141401,0x5A141414,0x30141430,0x1425AA01,0x49C71414,0x5C5C5C8B,0x25573651
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x92252525,0x259AA0A0,0xA0A0A425,0xD9D92D57,0x7171712C,0xD9252536,0x25251DA0,0x25DB2C25
- .word 0xD9D98C25,0xD965259A,0x36259AD9,0x12A0D92D,0xA0A0F736,0xF756D9A0,0x3636D9A0,0x36363636
- .word 0x78783625,0x25F2D9A4,0x5C513625,0x395C395C,0x515C8F8F,0x36923638,0x51517136,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x015A1414,0x01E67301,0x149F0101,0x01010130,0x30010101
- .word 0x01015A25,0x9FE41414,0x14319F9F,0xE4010130,0x01010125,0x31141414,0x14300101,0x01010101
- .word 0x01AA9F01,0x14141401,0x14141414,0x01E41414,0x1414E601,0xC7141414,0x5C5C5C51,0x25923651
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x92252525,0x9AA4A0A0,0x1DD9D9A4,0xA0D92D25,0xD9D9D9D9,0xD9235702,0xE32512D9,0x2D2D2D2D
- .word 0xD9D98C25,0xD937259A,0x3636DBD9,0xF2A0A036,0xA0A0F714,0x7B9AA0D9,0x3636D9A0,0x36363636
- .word 0xD9783636,0x3678EAD9,0xBD8F2F38,0x565C8FDA,0x71385151,0x71363636,0x51515138,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x015A1414,0x01010101,0x14149F01,0x01010130,0x30010101
- .word 0x01013025,0x010F1414,0x14730101,0xE4010130,0x01010125,0xE4141414,0x14FF0101,0x620F0101
- .word 0x012AAA01,0x14141401,0x14141414,0x01015A14,0x1414252A,0xC7141414,0x5C5C8B51,0x3F365155
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x92252525,0xA0A0A0A0,0x2512EAA0,0xD9D92D25,0xA0A0A0A0,0xD92D57A0,0x2D25E5D9,0xD9A0D9D9
- .word 0xD9D98C25,0xD937259A,0x3636CBD9,0x1DA04136,0xA0A0F714,0xA4D9D965,0x5736D9A0,0x36369257
- .word 0xA4789236,0x5CA0D9A0,0x8F8F8F39,0x71512F54,0x71363636,0x51513838,0x51515151,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x015A1414,0x019F9F01,0x14147301,0x14010130,0x14141414
- .word 0x01010B14,0x9F3114A9,0x1473012A,0xE4010130,0x01017325,0x0B141414,0x14D20101,0x14730101
- .word 0x01010101,0x14141401,0x14141414,0x30010173,0x14141414,0x14141414,0x5C5C51C7,0x3617515C
- .word 0x25252536,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x92252525,0x8C9AA0A0,0x2541A0D9,0xD9D92D25,0x5757572C,0xD98C2557,0xCB2537D9,0xD9D997FD
- .word 0xD9D98C25,0xD97B259A,0x3636FDD9,0x37A0A036,0xA0A07B14,0xD9D91D38,0x5792D9A0,0x36925725
- .word 0x38363636,0x65D9D950,0x515C398F,0x36363671,0x51513871,0x51515151,0x51515151,0x2F565651
-
- .word 0x14141425,0x14141414,0x14141414,0x015A1414,0x01149F01,0x14E40101,0x14010130,0xFAFAFAFA
- .word 0x01011414,0xE4251401,0x14730101,0xE4010130,0x01019F14,0x01E41473,0x14140101,0x25730101
- .word 0x01010131,0x14141401,0xE6141414,0x140B0101,0x1414FAFA,0x14141414,0x5C4E51C7,0x3651515C
- .word 0x25252536,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x92252525,0x259AA0A0,0x97D9A07B,0xD9D92D25,0x8C8C8C7B,0xA425928C,0x252DA0A0,0xD9D9A478
- .word 0xD9D98C25,0xD978259A,0xCBDB41D9,0xC4D9D9A4,0xA0A07B14,0xA0A07138,0x3636D9A0,0x71923636
- .word 0x8FF7A441,0xC4D9D932,0x3636512F,0x71363636,0x51515151,0x56562F56,0x51515156,0x51512F2F
-
- .word 0x14141425,0x14141414,0x14141414,0x015A1414,0xFA149F01,0x25010101,0x01010130,0x01010101
- .word 0x01D21414,0x01010101,0x145A0101,0xE4010130,0x01731414,0x01010101,0x14145A01,0x25730101
- .word 0x0101FF14,0x14141401,0x01141414,0x01010101,0x14250101,0x14141414,0x5C8B49C7,0x7151515C
- .word 0x2525253F,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x92252525,0x259AA0A0,0xA0A0D971,0xA0D92D36,0xD9D9D9D9,0xDB258CD9,0xD9D9A002,0x97D9D9D9
- .word 0xD9D98C25,0x7B25259A,0xD9D9D9D9,0x3697D9D9,0xA0A07B36,0xD9FD3671,0x3692D9A0,0x51513836
- .word 0x97A0D99A,0x3641A041,0x36929236,0x56515136,0x51515151,0x2F2F2F2F,0x5156562F,0x36385151
-
- .word 0x14141425,0x14141414,0x14141414,0x730B1414,0x14143173,0xE473730F,0x7373735A,0x2A737373
- .word 0x31141414,0x73012AE6,0x14141430,0xA97373D2,0x0B141414,0xE62AAA73,0x141414E4,0x14627373
- .word 0x73731414,0x14141473,0x73311414,0x73737373,0x14257373,0x14141414,0x5C51C714,0x17515C5C
- .word 0x25255736,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x92252525,0x257BF2F2,0xF2F2FD25,0xF21D2312,0xF2F2F2F2,0x25258CF2,0xA0A412CB,0x25239AA4
- .word 0xF2F2CB57,0x252525E5,0x41A437F1,0x369265F2,0xF2F2FB36,0x12252592,0x36361DF2,0x8F395C51
- .word 0xA0A4E58F,0x927812A4,0x51369257,0x2F2F2F51,0x2F2F2F2F,0x51515156,0x51515151,0x36717138
-
- .word 0x14141425,0x14141414,0x14141414,0x25141414,0x14141425,0x14252525,0x25252514,0x25252525
- .word 0x14141414,0x25252525,0x14141414,0x14252514,0x14141414,0x14252525,0x14141414,0x14252525
- .word 0x25251414,0x14141425,0x25141414,0x25252525,0x14142525,0x14141414,0x8B51C714,0x515C5C5C
- .word 0x25255736,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25572525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x92572525,0x25252592,0x25252525,0x56513614,0x8F8F395C
- .word 0x1414515C,0x36363614,0x5C563836,0x5151562F,0x512F2F56,0x51515151,0x71383851,0x51713636
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5149C714,0x515C5C4E
- .word 0x25253636,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252557,0x25252525,0x25252525
- .word 0x25252525,0x57252525,0x25255757,0x25252592,0x57252525,0x51713636,0x8F5C2F51,0x512F548F
- .word 0x36363638,0x38383838,0x5C5C2F51,0x36365156,0x51515651,0x38383851,0x71717171,0x56513871
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x51C73614,0x515C5C51
- .word 0x25573671,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252557,0x57575725,0x25255757
- .word 0x57252525,0x92929292,0x57255792,0x25252557,0x36252525,0x395C2F51,0x5C395454,0x3636515C
- .word 0x51363692,0x51515151,0x2F2F2F56,0x38385151,0x38385151,0x38717138,0x51383838,0x2F2F5651
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x51C71414,0x565C5C51
- .word 0x25363651,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252557,0x25252525,0x25252525
- .word 0x92925725,0x57923692,0x25252557,0x57252525,0x51383636,0x8F8F395C,0x512F5C8F,0x36363636
- .word 0x38383836,0x51515151,0x51515151,0x512F5651,0x36363671,0x38387136,0x51515151,0x2F5C5C5C
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C5C5C51
- .word 0x25365151,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252557,0x25252525,0x25572525
- .word 0x92925725,0x25579292,0x25252525,0x51369225,0x54545C2F,0x5C5C5C54,0x9236515C,0x51383657
- .word 0x38515156,0x51515138,0x51515151,0x512F5151,0x71363636,0x51513871,0x56565151,0x562F2F5C
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C5C8B51
- .word 0x3F365156,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x57575725,0x25252525,0x36925725,0x5C517136,0x398F8F8F,0x3638515C,0x38713636,0x51515151
- .word 0x56565151,0x56565151,0x71515156,0x71713636,0x38713636,0x56515151,0x2F2F2F2F,0x56515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414,0x5C5C8B51
- .word 0x3671515C,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25575757,0x25252525,0x51517136,0x5C5C5C2F,0x565C5C5C,0x92367151,0x2F513692,0x38512F5C
- .word 0x2F2F5151,0x512F2F2F,0x36363851,0x36363636,0x51513838,0x2F2F5651,0x51562F2F,0x56515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x36141414,0x5C5C8BC7
- .word 0x3617565C,0x25252557,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x5757363F,0x36572525,0x395C5651,0x565C398F,0x36363651,0x38363636,0x51565651,0x51515151
- .word 0x51515151,0x71515156,0x36363636,0x51513836,0x56515151,0x2F2F2F2F,0x5151512F,0x51515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C5C8BC7
- .word 0x3651555C,0x2525253F,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x3F142525,0x5C515136,0x5C5C5C5C,0x51565C5C,0x36363636,0x2F513836,0x5155545C,0x2F565151
- .word 0x38515156,0x36363671,0x38363636,0x2F2F5151,0x2F2F2F2F,0x56565656,0x51515156,0x2F565656
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C5CC614
- .word 0x1756555C,0x25255736,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x57575757,0x25252557,0x57252525,0x2525573F,0x25252525,0x25252525
- .word 0x17363F25,0x8F8FD48B,0x71515C8F,0x51511717,0x51515117,0x56565151,0x5155545C,0x56565656
- .word 0x71177151,0x36369292,0x51515138,0x56515151,0x562F2F2F,0x56565656,0x56515656,0x5C5C5556
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C8B2E14
- .word 0x51565C5C,0x57575771,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x57572525,0x57575757,0x2525573F,0x25252525,0x363F5725
- .word 0xD45C5551,0xD4D4D4D4,0x36178B5C,0x51177136,0x56515151,0x562F2F56,0x55555C55,0x51565454
- .word 0x71363671,0x51383636,0x2F2F5651,0x282F2F2F,0x56565656,0x56565656,0x56515656,0x5C5C5C55
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x5C8BC714
- .word 0x56555C5C,0x25575771,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x3F252525,0x51173636
- .word 0x7979D455,0xC7178B5C,0x51515117,0x51515151,0x2F565151,0x562F562F,0x54545C56,0x715695AB
- .word 0x51365736,0x51515151,0x5C5C2F2F,0x282F2F5C,0x2F565651,0x2F2F2F2F,0x5651562F,0x518B5C55
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x8BC6C714
- .word 0x565C5C5C,0x25573651,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x36363F25,0x51515117
- .word 0x8B8B5117,0x36363651,0x51515136,0x56515151,0x2F2F5151,0x562F2F2F,0xBD545C56,0x712F969E
- .word 0x51363671,0x5C2F5656,0x5C5C5C2F,0x512F5C5C,0x2F565151,0x5C2F2F2F,0x5151512F,0xC7515151
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x8BC71414
- .word 0x5C545C5C,0x25573651,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x36572525,0x51511736,0x51565151
- .word 0x1717C736,0x363636C7,0x56515151,0x56565656,0x2F2F5656,0x2F2F2F2F,0xAB545C56,0x3854991F
- .word 0x5C513851,0x2F2F2F2F,0x5C5C5C2F,0x51515151,0x2F2F5651,0x2F2F5C2F,0x51515151,0x36C74951
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x51141414
- .word 0x5C545C55,0x57927156,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x51713636,0x51515651,0x17515151
- .word 0x1717C736,0x5C515117,0x5151565C,0x2F2F2F56,0x2F2F2F2F,0x2F2F2F2F,0xAB5C5656,0x51541F61
- .word 0x5C5C5156,0x5151562F,0x51515151,0x51515151,0x5C2F2F51,0x51512F5C,0xC7C75151,0x14363636
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414
- .word 0x5C54558B,0x57365155,0x25252557,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x36252525,0x55515171,0x51565C5C,0x36363651
- .word 0x51173636,0x5C5C5151,0x51515C5C,0x2F2F2F2F,0x562F2F2F,0x2F2F5656,0x952F5656,0x385C1F61
- .word 0x5C5C5656,0x5151512F,0x51515151,0x28515151,0x285C5C5C,0x49515151,0x36363636,0x14141414
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0xC7141414
- .word 0x5C5C5517,0x36715155,0x25255757,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x363F5725,0x36363636,0x51515171,0x17515151,0x36363636
- .word 0x51517136,0x5C2F5151,0x2F2F5C5C,0x2F2F2F2F,0x56562F2F,0x56562F56,0xDA563856,0x382F999D
- .word 0x5C2F5151,0x51515151,0x4E4E5151,0x4E8B8B8B,0x51515C5C,0x3636C751,0x14141436,0x14141414
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x5C5C8B17,0x71175655,0x25255736,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x3636363F,0x36177136,0x51713636,0x36361751,0x51515171
- .word 0x5C5C5151,0x5151512F,0x5C5C2F51,0x2F2F2F2F,0x562F2F2F,0x56512F56,0xDA2F5656,0x382F5E80
- .word 0x56515151,0x8B515151,0x5C5C5C5C,0x8B8B4E4E,0x4951518B,0x141436C7,0x14141414,0x14141414
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x5C5517C7,0x1751565C,0x25255736,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x363F5725,0x36363636,0x36515117,0x36363F57,0x71363636,0x545C5651
- .word 0xBDDADA8F,0x38382F39,0x5C5C5651,0x2F2F2F2F,0x2F2F2F2F,0x56562F2F,0x6F542F2F,0x385C5E80
- .word 0x51515151,0x28512851,0x8B8B5C5C,0x51518B8B,0x36C74949,0x14141414,0x14141414,0x14141414
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x5C8B1736,0x5151555C,0x25255736,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x36363636,0x36363636,0x36363636,0x71363657,0x51515151,0xBD5C5C51
- .word 0xDA6FB8B8,0x51512F39,0x2F2F2F51,0x2F2F2F2F,0x2F2F2F2F,0x2F2F2F2F,0x6F392F38,0x385CBC80
- .word 0x51515151,0x51515151,0x8B8B8B4E,0xC7C74951,0x14141436,0x14141414,0x14141414,0x14141414
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x8B8BC714,0x518B5C55,0x25255736,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x92252525,0x36361771,0x36363636,0x3657573F,0x51517136,0x51565555,0x8F5C5651
- .word 0x5C8FAB6F,0x2F2F512F,0x2F2F2F5C,0x2F2F2F2F,0x2F2F2F2F,0x512F2F2F,0x6F393838,0x385C675E
- .word 0x51515151,0x51515151,0x518B8B8B,0x141414C7,0x14141414,0x14141414,0x14141414,0x14141414
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x8B17C714,0x515C5C55,0x25253671,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x38369292,0x36365151,0x36363636,0x36573F36,0x55565551,0x55555555,0x5C515156
- .word 0x2F398FDA,0x2F2F3838,0x2F2F2F2F,0x2F2F2F2F,0x2F2F2F2F,0x562F2F2F,0x6F393838,0x384F675E
- .word 0x515C2F51,0x51518B51,0xC7C74951,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x51C7C714,0x8B5C5C8B,0x25253651,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x36929225,0x56515171,0x36365156,0x71363636,0x55515151,0x555C5479,0x5C555151,0x2F51565C
- .word 0x8FDA8F39,0x562F2F2F,0x2F2F2F38,0x2F2F2F2F,0x2F2F2F2F,0x2F2F2F2F,0xB8392F2F,0x514FB85E
- .word 0x4E5C5C51,0x49518B4E,0x1414C7C7,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
-
- .word 0x14141425,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
- .word 0x51C71414,0x5C5C5C8B,0x57363651,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525
- .word 0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x25252525,0x36925725
- .word 0x38363636,0x51515151,0x36363617,0x51713636,0x958F5455,0x548F8FBD,0x5C5C5C5C,0x515C5C5C
- .word 0x67B88F2F,0x2F39396F,0x2F2F2F2F,0x2F2F2F2F,0x2F2F2F2F,0x2F2F562F,0xB8392F2F,0x5139B8BC
- .word 0x51512851,0xC7C74951,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414,0x14141414
-
- .section .rodata
- .align 2
- .global backgroundPal @ 512 unsigned chars
- .hidden backgroundPal
-backgroundPal:
- .hword 0x0420,0x03FF,0x5D80,0x472A,0x001F,0x39AD,0x57BD,0x56B5
- .hword 0x1DE1,0x7FDD,0x6B7B,0x47FF,0x46AC,0x4AF7,0x1CC6,0x1BFF
- .hword 0x3DF9,0x18DF,0x6A8B,0x3AC8,0x77FF,0x6338,0x4A31,0x77DD
- .hword 0x1083,0x6796,0x2949,0x2660,0x6B5C,0x6204,0x5292,0x5AD6
- .hword 0x4A70,0x529A,0x18A5,0x7756,0x56D2,0x7FFF,0x2A63,0x5F17
- .hword 0x779D,0x085F,0x0BFF,0x1D44,0x6ECF,0x7334,0x73DE,0x779C
- .hword 0x2FFF,0x53FF,0x6F59,0x253D,0x3E4C,0x1100,0x7BDE,0x6648
- .hword 0x7BBD,0x737B,0x0C62,0x5294,0x56D5,0x20E7,0x5272,0x7BFE
-
- .hword 0x1961,0x61C1,0x3245,0x318B,0x5B52,0x5AF6,0x5F18,0x4E59
- .hword 0x4E51,0x77BE,0x1484,0x5ADB,0x6339,0x6759,0x739D,0x737C
- .hword 0x737A,0x77BD,0x22A0,0x32A4,0x739B,0x73BC,0x77BC,0x7FFE
- .hword 0x5B13,0x675A,0x3BFF,0x633F,0x739C,0x4ACE,0x62F7,0x3DCE
- .hword 0x319F,0x5AB5,0x27FF,0x4F2E,0x463F,0x6EF1,0x6F5B,0x6718
- .hword 0x2201,0x211D,0x5ADF,0x73BB,0x5693,0x043F,0x3EE7,0x6B39
- .hword 0x6FB9,0x7BDD,0x0C7F,0x13FF,0x1D24,0x5ED5,0x39DF,0x5273
- .hword 0x7BBC,0x6F9B,0x0821,0x6AAD,0x52BF,0x14C3,0x6B5E,0x5EB5
-
- .hword 0x5ED6,0x6B7A,0x2108,0x2AC1,0x18C5,0x4A51,0x7BFD,0x56B4
- .hword 0x5694,0x5AB4,0x4610,0x73BD,0x7B99,0x295F,0x5ED7,0x6F7B
- .hword 0x4E72,0x62F6,0x7FDE,0x10A2,0x1063,0x6B5A,0x6738,0x6626
- .hword 0x5EFF,0x5EF6,0x6A6A,0x4E73,0x1903,0x5AD5,0x6317,0x4BFF
- .hword 0x61C0,0x2D4A,0x35AC,0x4E52,0x61E3,0x5AF5,0x36A6,0x77DC
- .hword 0x1DA2,0x5FFF,0x07FF,0x6B59,0x6717,0x673A,0x7B9B,0x7BBE
- .hword 0x5AD4,0x2EC2,0x2AA0,0x62F8,0x5A94,0x2220,0x1CFF,0x6B38
- .hword 0x6739,0x1CE6,0x4309,0x779B,0x6318,0x6F7A,0x23BD,0x77FE
-
- .hword 0x4EB0,0x5AB8,0x3209,0x14E3,0x6F13,0x46EC,0x73BE,0x77DE
- .hword 0x56DF,0x5293,0x4A5E,0x7B9A,0x3EA9,0x109F,0x5EF7,0x41EF
- .hword 0x1084,0x3DFF,0x3FFF,0x14A5,0x6F9C,0x6F9A,0x6B79,0x0841
- .hword 0x4A52,0x5DA0,0x6F5A,0x7757,0x5750,0x2D7F,0x1521,0x6F7E
- .hword 0x21C2,0x18C6,0x36E4,0x7BBB,0x57FF,0x6EAE,0x23FF,0x4E7C
- .hword 0x4630,0x2680,0x61A0,0x5F73,0x5F15,0x211F,0x2D7C,0x73BA
- .hword 0x420F,0x7335,0x6605,0x631E,0x32C3,0x5310,0x14A4,0x6A8C
- .hword 0x2AC0,0x26A0,0x63FF,0x6EF0,0x2642,0x7312,0x2528,0x2BFF
-
-@}}BLOCK(background)
diff --git a/midterm/midterm-2021/source/main.c b/midterm/midterm-2021/source/main.c
deleted file mode 100644
index cd5027f..0000000
--- a/midterm/midterm-2021/source/main.c
+++ /dev/null
@@ -1,197 +0,0 @@
-#include
-#include
-#include "background.h"
-#include "nds/bios.h"
-#include "nds/timers.h"
-
-#define RED ARGB16(1,31,0,0)
-#define GREEN ARGB16(1,0,31,0)
-#define BLUE ARGB16(1,0,0,31)
-#define YELLOW ARGB16(1,31,31,0)
-#define WHITE ARGB16(1,31,31,31)
-
-//Array of colors (can be useful in the implementation)
-u16 colors[4] = {RED, GREEN, YELLOW, BLUE};
-
-
-//Timer ISR (for EXERCISE 3)
-int blinking_region = 0; // Region toggling its color
-int ticks = 0; // Number of calls to the timer ISR
-void timer_ISR()
-{
- //Account the call to the timer ISR (update ticks)
- ticks++;
-
- //Toggle the color of the palette corresponding to the blinking region
- //(if odd number of ticks set to to WHITE, otherwise to the corresponding color)
- if (ticks % 2) {
- BG_PALETTE_SUB[blinking_region] = WHITE;
- } else {
- BG_PALETTE_SUB[blinking_region] = colors[blinking_region];
- }
-
-
- //Change the blinking region if necessary (once every 2 second or 8 ticks)
- if (!(ticks % 8)) {
- blinking_region = (blinking_region + 1) % 4;
- }
-}
-
-
-u8 upperLeftTile[64] =
-{
- 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,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,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0
-};
-
-u8 upperRightTile[64] =
-{
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1
-};
-
-u8 lowerLeftTile[64] =
-{
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2
-};
-
-u8 lowerRightTile[64] =
-{
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3
-};
-
-int main(void) {
-
-
- /*************
- * EXERCISE 1
- *************/
- // 1) VRAM Configuration for MAIN engine
- VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG;
-
- // 2) Main engine configuration in rotoscale mode
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-
- // 3) Configure the background (Ignore warning 'large implictly truncated to unsigned type')
- BGCTRL[2] = BG_BMP_BASE(0) | BgSize_B8_256x256;
-
- // 4) Copy bitmap and palette generated by grit
- swiCopy(backgroundBitmap, BG_GFX, backgroundBitmapLen/2);
- swiCopy(backgroundPal, BG_PALETTE, backgroundPalLen/2);
-
- //Affine Marix Transformation
- bgTransform[2]->hdx = 1*256;
- bgTransform[2]->vdx = 0*256;
- bgTransform[2]->hdy = 0*256;
- bgTransform[2]->vdy = 1*256;
- bgTransform[2]->dx = 0*256;
- bgTransform[2]->dy = 0*256;
-
- /*************
- * EXERCISE 2
- *************/
- ///////////////////////////////////////////////////////////////////////////////////////
- //ATTENTION!!!: You may find useful to check the example (slides 15 to 27) given during
- // the week 8 (Graphics III, tiled mode)
- ///////////////////////////////////////////////////////////////////////////////////////
-
- // 1) VRAM configuration for SUB engine
- VRAM_C_CR = VRAM_ENABLE | VRAM_C_SUB_BG;
-
- // 2) SUB engine configuration in tiled mode
- REG_DISPCNT_SUB = MODE_0_2D | DISPLAY_BG0_ACTIVE;
-
- // 3) Configure the background
- BGCTRL_SUB[0] = BG_MAP_BASE(0) | BG_TILE_BASE(1) | BG_32x32 | BG_COLOR_256;
-
- // 4) Copy the 4 tiles to the tile base
- swiCopy(upperLeftTile, &BG_TILE_RAM_SUB(1)[0], 32);
- swiCopy(upperRightTile, &BG_TILE_RAM_SUB(1)[32], 32);
- swiCopy(lowerLeftTile, &BG_TILE_RAM_SUB(1)[64], 32);
- swiCopy(lowerRightTile, &BG_TILE_RAM_SUB(1)[96], 32);
-
- // 5) Initialize the palette (4 components, one per region)
- BG_PALETTE_SUB[0] = RED;
- BG_PALETTE_SUB[1] = GREEN;
- BG_PALETTE_SUB[2] = YELLOW;
- BG_PALETTE_SUB[3] = BLUE;
-
- // 6) Generate the map
- size_t mid_row = 12, mid_col = 16;
- for (size_t row = 0; row < 12; row++) {
- for (size_t col = 0; col < 16; col++) {
- BG_MAP_RAM_SUB(0)[row * 32 + col] = 0;
- BG_MAP_RAM_SUB(0)[row * 32 + mid_col + col] = 1;
- BG_MAP_RAM_SUB(0)[(row + mid_row) * 32 + col] = 2;
- BG_MAP_RAM_SUB(0)[(row + mid_row) * 32 + mid_col + col] = 3;
- }
- }
-
- /*************
- * EXERCISE 3
- *************/
- ///////////////////////////////////////////////////////////////////////////////////////
- //IMPORTANT NOTE!!!: Do not initialize the interrupts with the call to irqInit() since
- // later the touchscreen will be used
- ///////////////////////////////////////////////////////////////////////////////////////
- // 1) Configure the timer to raise an interrupt 4 times per second
- TIMER_DATA(0) = TIMER_FREQ_1024(4);
- TIMER_CR(0) = TIMER_ENABLE | TIMER_DIV_1024 | TIMER_IRQ_REQ;
-
- // 2) Implement the functionality of the timer ISR [already declared outside the main() ]
-
- // 3) Associate the implemented ISR to the Timer Interrupt Line
- irqSet(IRQ_TIMER(0), &timer_ISR);
-
- // 4) Enable the timer interrupt
- irqEnable(IRQ_TIMER(0));
-
-
- /*************
- * EXERCISE 4
- *************/
- while(1){
- // 1) Scan the keypad
- //...
-
- // 2) Obtain the pressed keys
- //...
-
- // 3) Check if the pressed key is the correct one and then change the blinking region
- //...
-
- // 4) Read the touchscreen position
- //...
-
- // 5) Check if the touched position is on the blinking region and in that case change the blinking region
- //...
-
- swiWaitForVBlank();
- }
-}
diff --git a/midterm/midterm-2022/Makefile b/midterm/midterm-2022/Makefile
deleted file mode 100644
index 1e6d978..0000000
--- a/midterm/midterm-2022/Makefile
+++ /dev/null
@@ -1,162 +0,0 @@
-#---------------------------------------------------------------------------------
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-# PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-build: FORCE
- make clean
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d)
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-# precompiled:
-# @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-# soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- # @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
-
-FORCE: ;
diff --git a/midterm/midterm-2022/data/logo.grit b/midterm/midterm-2022/data/logo.grit
deleted file mode 100644
index f6112ae..0000000
--- a/midterm/midterm-2022/data/logo.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--g
--gb
--gB8
--p
\ No newline at end of file
diff --git a/midterm/midterm-2022/data/logo.png b/midterm/midterm-2022/data/logo.png
deleted file mode 100644
index 3e1f082..0000000
Binary files a/midterm/midterm-2022/data/logo.png and /dev/null differ
diff --git a/midterm/midterm-2022/source/.root b/midterm/midterm-2022/source/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/midterm/midterm-2022/source/main.c b/midterm/midterm-2022/source/main.c
deleted file mode 100644
index e7a01c9..0000000
--- a/midterm/midterm-2022/source/main.c
+++ /dev/null
@@ -1,220 +0,0 @@
-#include
-#include
-#include "logo.h"
-#include "nds/arm9/background.h"
-#include "nds/arm9/input.h"
-#include "nds/arm9/video.h"
-#include "nds/bios.h"
-#include "nds/input.h"
-#include "nds/timers.h"
-
-#define RED ARGB16(1,31,0,0)
-#define GREEN ARGB16(1,0,31,0)
-#define BLUE ARGB16(1,0,0,31)
-#define WHITE ARGB16(1,31,31,31)
-#define BLACK ARGB16(1,0,0,0)
-
-
-//Timer ISR (for EXERCISE 3)
-// You may want to use these variables in your ISR
-int current_color = 0, timer_row = 0, timer_column = 0;
-void timer_ISR()
-{
- BG_MAP_RAM_SUB(0)[timer_row * 32 + timer_column] = current_color;
-
- timer_column = (timer_column + 2) % 32;
-
- if (timer_column == 0 || timer_column == 1) {
- timer_row = (timer_row + 1) % 24;
- timer_column = timer_column == 0 ? 1 : 0;
- }
-
- if (timer_row == timer_column && timer_column == 0) {
- current_color = (current_color + 1) % 3;
- }
-}
-
-// Different color tiles
-u8 RedTile[64] =
-{
- 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,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,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0
-};
-
-u8 GreenTile[64] =
-{
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1
-};
-
-u8 BlueTile[64] =
-{
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2
-};
-
-u8 WhiteTile[64] =
-{
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3
-};
-
-u8 BlackTile[64] =
-{
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4
-};
-
-
-
-int main(void) {
-
- /*************
- * EXERCISE 1
- *************/
- // 1) VRAM configuration for SUB engine
- VRAM_C_CR = VRAM_ENABLE | VRAM_C_SUB_BG;
-
- // 2) SUB engine configuration in tiled mode
- REG_DISPCNT_SUB = MODE_3_2D | DISPLAY_BG0_ACTIVE;
-
- // 3) Configure the background
- BGCTRL_SUB[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- // 4) Copy the 4 tiles to the tile base
- swiCopy(RedTile, BG_TILE_RAM_SUB(1), 32);
- swiCopy(GreenTile, &BG_TILE_RAM_SUB(1)[32], 32);
- swiCopy(BlueTile, &BG_TILE_RAM_SUB(1)[2*32], 32);
- swiCopy(WhiteTile, &BG_TILE_RAM_SUB(1)[3*32], 32);
- swiCopy(BlackTile, &BG_TILE_RAM_SUB(1)[4*32], 32);
-
- // 5) Initialize the palette (5 components)
- BG_PALETTE_SUB[0] = RED;
- BG_PALETTE_SUB[1] = GREEN;
- BG_PALETTE_SUB[2] = BLUE;
- BG_PALETTE_SUB[3] = WHITE;
- BG_PALETTE_SUB[4] = BLACK;
-
- // 6) Generate the map
- for (size_t col = 0; col < 32; col++) {
- for (size_t row = 0; row < 24; row++) {
- BG_MAP_RAM_SUB(0)[row * 32 + col] = (col+row) % 2 == 0 ? 3 : 4;
- }
-
- }
-
- /*************
- * EXERCISE 2
- *************/
-
- // 1) VRAM Configuration for MAIN engine
- VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG;
-
- // 2) Main engine configuration in rotoscale mode
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-
- // 3) Configure the background
- BGCTRL[2] = BG_BMP_BASE(0) | BgSize_B8_256x256;
-
- // 4) Copy bitmap and palette generated by grit
- swiCopy(logoBitmap, BG_BMP_RAM(0), logoBitmapLen/2);
- swiCopy(logoPal, BG_PALETTE, logoPalLen/2);
-
- // Uncomment this for including the Affine Marix Transformation
- bgTransform[2]->hdx = 1*256;
- bgTransform[2]->vdx = 0*256;
- bgTransform[2]->hdy = 0*256;
- bgTransform[2]->vdy = 1*256;
- bgTransform[2]->dx = 0*256;
- bgTransform[2]->dy = 0*256;
-
- // Uncomment this for including the Affine Marix Transformation (MAC only!)
- // bgTransform[2]->hdx = 1*256;
- // bgTransform[2]->vdx = 0*256;
- // bgTransform[2]->hdy = 0*256;
- // bgTransform[2]->vdy = 1*256;
- // bgTransform[2]->dx = 0*256;
- // bgTransform[2]->dy = 0*256;
-
- /*************
- * EXERCISE 3
- *************/
- ///////////////////////////////////////////////////////////////////////////////////////
- //Note: Do not initialize the interrupts with the call to irqInit()
- // since later the touchscreen will be used
- ///////////////////////////////////////////////////////////////////////////////////////
-
- // 1) Configure the timer to raise an interrupt 10 times per second
- int frequency = 20;
- TIMER_DATA(0) = TIMER_FREQ_64(frequency);
- TIMER_CR(0) = TIMER_ENABLE | TIMER_DIV_64 | TIMER_IRQ_REQ;
-
- // 2) Associate the implemented ISR to the Timer Interrupt Line
- irqSet(IRQ_TIMER(0), &timer_ISR);
-
- // 3) Enable the timer interrupt
- irqEnable(IRQ_TIMER(0));
-
- // 4) Implement the functionality of the timer ISR
-
- /*************
- * EXERCISE 4
- *************/
- while(1){
-
- // 1) Scan the keypad
- scanKeys();
-
- // 2) Obtain the pressed keys
- uint32 keys = keysDown();
-
- // 3) Check if the pressed key is the correct one and increase/decrease the frequency accordingly
- if ((keys & KEY_UP) != 0) {
- frequency = frequency * 2;
- TIMER_DATA(0) = TIMER_FREQ_64(frequency);
- }
- if ((keys & KEY_DOWN) != 0) {
- frequency = (frequency / 2) | 1;
- TIMER_DATA(0) = TIMER_FREQ_64(frequency);
- }
-
- // 4) Read the touchscreen position
-
- // 4) If touched, set the new color
- if (keys & KEY_TOUCH) {
- current_color = (current_color + 1) % 3;
- }
-
- swiWaitForVBlank();
- }
-}
diff --git a/midterm/midterm-2023/.root b/midterm/midterm-2023/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/midterm/midterm-2023/Makefile b/midterm/midterm-2023/Makefile
deleted file mode 100644
index 1e6d978..0000000
--- a/midterm/midterm-2023/Makefile
+++ /dev/null
@@ -1,162 +0,0 @@
-#---------------------------------------------------------------------------------
-.PHONY: build clean run
-#---------------------------------------------------------------------------------
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-# PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-
-#---------------------------------------------------------------------------------
-build: FORCE
- make clean
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-run: build
- desmume $(TARGET).nds
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d)
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-# precompiled:
-# @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-# soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- # @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
-
-FORCE: ;
diff --git a/midterm/midterm-2023/Makefile_old b/midterm/midterm-2023/Makefile_old
deleted file mode 100644
index ae0c982..0000000
--- a/midterm/midterm-2023/Makefile_old
+++ /dev/null
@@ -1,163 +0,0 @@
-#---------------------------------------------------------------------------------
-.SUFFIXES:
-#---------------------------------------------------------------------------------
-
-.SECONDARY:
-
-ifeq ($(strip $(DEVKITARM)),)
-$(error "Please set DEVKITARM in your environment. export DEVKITARM=devkitARM")
-endif
-
-include $(DEVKITARM)/ds_rules
-
-#---------------------------------------------------------------------------------
-# TARGET is the name of the output
-# BUILD is the directory where object files & intermediate files will be placed
-# SOURCES is a list of directories containing source code
-# INCLUDES is a list of directories containing extra header files
-#---------------------------------------------------------------------------------
-TARGET := $(shell basename $(CURDIR))
-BUILD := build
-SOURCES := source
-DATA :=
-INCLUDES := include
-GRAPHICS := data
-AUDIO := audio
-PRECOMPILED := precompiled
-
-#---------------------------------------------------------------------------------
-# options for code generation
-#---------------------------------------------------------------------------------
-ARCH := -mthumb -mthumb-interwork
-
-CFLAGS := -g -Wall -O0\
- -march=armv5te -mtune=arm946e-s -fomit-frame-pointer\
- -ffast-math \
- $(ARCH)
-
-CFLAGS += $(INCLUDE) -DARM9
-CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions
-
-ASFLAGS := -g $(ARCH)
-LDFLAGS = -specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
-
-#---------------------------------------------------------------------------------
-# any extra libraries we wish to link with the project
-#---------------------------------------------------------------------------------
-LIBS := -lnds9 -lmm9 -lm
-
-
-#---------------------------------------------------------------------------------
-# list of directories containing libraries, this must be the top level containing
-# include and lib
-#---------------------------------------------------------------------------------
-LIBDIRS := $(LIBNDS)
-
-#---------------------------------------------------------------------------------
-# no real need to edit anything past this point unless you need to add additional
-# rules for different file extensions
-#---------------------------------------------------------------------------------
-ifneq ($(BUILD),$(notdir $(CURDIR)))
-#---------------------------------------------------------------------------------
-
-export OUTPUT := $(CURDIR)/$(TARGET)
-
-export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
- $(foreach dir,$(DATA),$(CURDIR)/$(dir)) \
- $(foreach dir,$(GRAPHICS),$(CURDIR)/$(dir))
-
-export DEPSDIR := $(CURDIR)/$(BUILD)
-
-CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
-CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
-SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
-BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
-PNGFILES := $(foreach dir,$(GRAPHICS),$(notdir $(wildcard $(dir)/*.png)))
-PRECFILES := $(foreach dir,$(PRECOMPILED),$(notdir $(wildcard $(dir)/*.o)))
-
-# build audio file list, include full path
-export AUDIOFILES := $(foreach dir,$(notdir $(wildcard $(AUDIO)/*.*)),$(CURDIR)/$(AUDIO)/$(dir))
-ifneq ($(strip $(AUDIOFILES)),)
- BINFILES += soundbank.bin
-endif
-#---------------------------------------------------------------------------------
-# use CXX for linking C++ projects, CC for standard C
-#---------------------------------------------------------------------------------
-ifeq ($(strip $(CPPFILES)),)
-#---------------------------------------------------------------------------------
- export LD := $(CC)
-#---------------------------------------------------------------------------------
-else
-#---------------------------------------------------------------------------------
- export LD := $(CXX)
-#---------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------
-
-export OFILES := $(addsuffix .o,$(BINFILES)) \
- $(PNGFILES:.png=.o) \
- $(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)\
- $(PRECFILES)
-
-export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- $(foreach dir,$(LIBDIRS),-I$(dir)/include) \
- -I$(CURDIR)/$(BUILD)
-
-export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
-
-.PHONY: $(BUILD) clean
-
-#---------------------------------------------------------------------------------
-$(BUILD):
- @[ -d $@ ] || mkdir -p $@
- @$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
-
-#---------------------------------------------------------------------------------
-clean:
- @echo clean ...
- @rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba
-
-
-#---------------------------------------------------------------------------------
-else
-
-DEPENDS := $(OFILES:.o=.d) precompiled
-
-#---------------------------------------------------------------------------------
-# main targets
-#---------------------------------------------------------------------------------
-$(OUTPUT).nds : $(OUTPUT).arm9
-$(OUTPUT).arm9 : $(OUTPUT).elf
-$(OUTPUT).elf : $(OFILES)
-
-#---------------------------------------------------------------------------------
-%.bin.o : %.bin
-#---------------------------------------------------------------------------------
- @echo $(notdir $<)
- @$(bin2o)
-
-#---------------------------------------------------------------------------------
-# Copying precompiled code
-#---------------------------------------------------------------------------------
-precompiled:
- @ cp $(CURDIR)/../$(PRECOMPILED)/* .
-
-
-#---------------------------------------------------------------------------------
-# rule to build soundbank from music files
-#---------------------------------------------------------------------------------
-soundbank.bin : $(AUDIOFILES)
-#---------------------------------------------------------------------------------
- @mmutil $^ -osoundbank.bin -hsoundbank.h -d
-
-#---------------------------------------------------------------------------------
-%.s %.h : %.png %.grit
-#---------------------------------------------------------------------------------
- grit $< -fts -o$*
-
--include $(DEPENDS)
-
-#---------------------------------------------------------------------------------------
-endif
-#---------------------------------------------------------------------------------------
\ No newline at end of file
diff --git a/midterm/midterm-2023/archives/midterm_ex_1.zip b/midterm/midterm-2023/archives/midterm_ex_1.zip
deleted file mode 100644
index c286be9..0000000
Binary files a/midterm/midterm-2023/archives/midterm_ex_1.zip and /dev/null differ
diff --git a/midterm/midterm-2023/archives/midterm_ex_2.zip b/midterm/midterm-2023/archives/midterm_ex_2.zip
deleted file mode 100644
index 5735222..0000000
Binary files a/midterm/midterm-2023/archives/midterm_ex_2.zip and /dev/null differ
diff --git a/midterm/midterm-2023/archives/midterm_ex_3.zip b/midterm/midterm-2023/archives/midterm_ex_3.zip
deleted file mode 100644
index 889242b..0000000
Binary files a/midterm/midterm-2023/archives/midterm_ex_3.zip and /dev/null differ
diff --git a/midterm/midterm-2023/archives/midterm_ex_4.zip b/midterm/midterm-2023/archives/midterm_ex_4.zip
deleted file mode 100644
index dab1b8a..0000000
Binary files a/midterm/midterm-2023/archives/midterm_ex_4.zip and /dev/null differ
diff --git a/midterm/midterm-2023/archives/midterm_ex_5.zip b/midterm/midterm-2023/archives/midterm_ex_5.zip
deleted file mode 100644
index c3cf3f6..0000000
Binary files a/midterm/midterm-2023/archives/midterm_ex_5.zip and /dev/null differ
diff --git a/midterm/midterm-2023/data/demo.grit b/midterm/midterm-2023/data/demo.grit
deleted file mode 100644
index f6112ae..0000000
--- a/midterm/midterm-2023/data/demo.grit
+++ /dev/null
@@ -1,4 +0,0 @@
--g
--gb
--gB8
--p
\ No newline at end of file
diff --git a/midterm/midterm-2023/data/demo.png b/midterm/midterm-2023/data/demo.png
deleted file mode 100644
index ba90d85..0000000
Binary files a/midterm/midterm-2023/data/demo.png and /dev/null differ
diff --git a/midterm/midterm-2023/source/main.c b/midterm/midterm-2023/source/main.c
deleted file mode 100644
index 8f211a1..0000000
--- a/midterm/midterm-2023/source/main.c
+++ /dev/null
@@ -1,307 +0,0 @@
-#include
-#include
-#include
-#include "demo.h"
-#include "nds/arm9/background.h"
-#include "nds/arm9/video.h"
-#include "nds/input.h"
-
-/*** You may want to use follow variables in your solutions ***/
-// Color definitions
-#define RED ARGB16(1,31,0,0)
-#define BLUE ARGB16(1,0,0,31)
-#define GREEN ARGB16(1,0,31,0)
-#define WHITE ARGB16(1,31,31,31)
-#define BLACK ARGB16(1,0,0,0)
-
-#define TILE_OF(color) ((color) == RED ? 0 : ((color) == BLUE ? 1 : ((color) == GREEN ? 2 : ((color) == WHITE ? 3 : 4))))
-
-// 5 custom color tiles
-u8 RedTile[64] =
-{
- 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,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,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0
-};
-
-u8 BlueTile[64] =
-{
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1
-};
-
-u8 GreenTile[64] =
-{
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2
-};
-
-u8 WhiteTile[64] =
-{
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3
-};
-
-u8 BlackTile[64] =
-{
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4,
- 4,4,4,4,4,4,4,4
-};
-
-
-// rainbow_snake struct
-typedef struct rainbow_snake{
- int tail_x;
- int tail_y;
- int tail_color;
- int body_x;
- int body_y;
- int body_color;
- int head_x;
- int head_y;
- int head_color;
-} rainbow_snake;
-
-// declare a snake struct
-rainbow_snake snake;
-
-// Direction definition
-enum DIRECTION {
- LEFT,
- RIGHT,
- UP,
- DOWN
-};
-// initialize direction as RIGHT
-enum DIRECTION direction = RIGHT;
-
-void update_snake() {
- BG_MAP_RAM_SUB(0)[snake.tail_y * 32 + snake.tail_x] = TILE_OF(snake.tail_color);
- BG_MAP_RAM_SUB(0)[snake.body_y * 32 + snake.body_x] = TILE_OF(snake.body_color);
- BG_MAP_RAM_SUB(0)[snake.head_y * 32 + snake.head_x] = TILE_OF(snake.head_color);
-}
-
-/*** You may want to use the above variables in your solutions ***/
-
-void timer_ISR()
-{
- /*************
- * EXERCISE 3 (part B)
- *************/
- // 1) update the position of different parts of the snake, leave a white tile behind the tail
- BG_MAP_RAM_SUB(0)[snake.tail_y * 32 + snake.tail_x] = TILE_OF(WHITE);
-
- // Horizontal
- if (snake.head_x == 31 && direction == RIGHT) {
- direction = DOWN;
- }
- if (snake.body_x == 31 && direction == DOWN) {
- direction = LEFT;
- }
- if (snake.head_x == 0 && direction == LEFT) {
- direction = DOWN;
- }
- if (snake.body_x == 0 && direction == DOWN) {
- direction = RIGHT;
- }
-
-
- // Vertical
- if (snake.head_y == 0 && direction == UP) {
- direction = RIGHT;
- }
- if (snake.body_y == 0 && direction == RIGHT && snake.tail_y != snake.head_y) {
- direction = DOWN;
- }
- if (snake.head_y == 23 && direction == DOWN) {
- direction = RIGHT;
- }
- if (snake.body_y == 23 && direction == RIGHT && snake.tail_y != snake.head_y) {
- direction = UP;
- }
-
- snake.tail_x = snake.body_x;
- snake.tail_y = snake.body_y;
- snake.body_x = snake.head_x;
- snake.body_y = snake.head_y;
- snake.head_x += (direction == UP || direction == DOWN) ? 0 : (direction == RIGHT ? 1 : -1);
- snake.head_y += (direction == RIGHT || direction == LEFT) ? 0 : (direction == DOWN ? 1 : -1);
-
- // 2) generate a new map for the snake
- update_snake();
-}
-
-
-int main(void) {
-
- /*************
- * EXERCISE 1
- *************/
-
- // 1) VRAM Configuration for MAIN engine
- VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG;
-
- // 2) Main engine configuration in rotoscale mode
- REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE;
-
- // 3) Configure the background (Ignore warning 'large implictly truncated to unsigned type')
- BGCTRL[2] = BG_BMP_BASE(0) | BgSize_B8_256x256;
-
- // 4) Copy bitmap and palette generated by grit
- swiCopy(demoBitmap, BG_BMP_RAM(0), demoBitmapLen/2);
- swiCopy(demoPal, BG_PALETTE, demoPalLen/2);
-
- // !!! Uncomment this for including the Affine Matrix Transformation (MAC and Native Linux user only!)
- bgTransform[2]->hdx = 1*256;
- bgTransform[2]->vdx = 0*256;
- bgTransform[2]->hdy = 0*256;
- bgTransform[2]->vdy = 1*256;
- bgTransform[2]->dx = 0*256;
- bgTransform[2]->dy = 0*256;
-
- /**************
- * EXERCISE 2 *
- **************/
-
- // 1) VRAM configuration for SUB engine
- VRAM_C_CR = VRAM_ENABLE | VRAM_C_SUB_BG;
-
- // 2) SUB engine configuration in tiled mode
- REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG0_ACTIVE;
-
- // 3) Configure the background
- BGCTRL_SUB[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(0) | BG_TILE_BASE(1);
-
- // 4) Copy the 5 tiles to the tile base
- swiCopy(RedTile, BG_TILE_RAM_SUB(1), 32);
- swiCopy(BlueTile, &BG_TILE_RAM_SUB(1)[1*32], 32);
- swiCopy(GreenTile, &BG_TILE_RAM_SUB(1)[2*32], 32);
- swiCopy(WhiteTile, &BG_TILE_RAM_SUB(1)[3*32], 32);
- swiCopy(BlackTile, &BG_TILE_RAM_SUB(1)[4*32], 32);
-
- // 5) Initialize the palette (5 components)
- BG_PALETTE_SUB[0] = RED;
- BG_PALETTE_SUB[1] = BLUE;
- BG_PALETTE_SUB[2] = GREEN;
- BG_PALETTE_SUB[3] = WHITE;
- BG_PALETTE_SUB[4] = BLACK;
-
- // 6) Generate the map for black background
- for (size_t col = 0; col < 32; ++col) {
- for (size_t row = 0; row < 24; ++row) {
- BG_MAP_RAM_SUB(0)[row * 32 + col] = 4;
- }
- }
-
- // 7) set the initial position of the snake, as well as the color of each part
- snake.tail_x = 0;
- snake.tail_y = 0;
- snake.body_x = 1;
- snake.body_y = 0;
- snake.head_x = 2;
- snake.head_y = 0;
-
- snake.tail_color = RED;
- snake.body_color = BLUE;
- snake.head_color = GREEN;
-
- // 8) Generate the map for the snake
- update_snake();
-
-
- /*************
- * EXERCISE 3 (part A)
- *************/
- ///////////////////////////////////////////////////////////////////////////////////////
- //IMPORTANT NOTE!!!: Do not initialize the interrupts with the call to irqInit() since
- // later the touchscreen will be used
- ///////////////////////////////////////////////////////////////////////////////////////
-
- // 1) Configure the timer to raise an interrupt 10 times per second
- int frequency = 10;
- TIMER_DATA(0) = TIMER_FREQ_64(frequency);
- TIMER_CR(0) = TIMER_ENABLE | TIMER_DIV_64 | TIMER_IRQ_REQ;
-
-
- // 2) Associate the implemented ISR to the Timer Interrupt Line
- irqSet(IRQ_TIMER(0), &timer_ISR);
-
- // 3) Enable the timer interrupt
- irqEnable(IRQ_TIMER(0));
-
- // 4) Implement the functionality of the timer_ISR(), which is defined above main()
-
- scanKeys();
- while(1){
-
- /*************
- * EXERCISE 4
- *************/
-
- // 1) Scan the keypad
- scanKeys();
-
- // 2) Obtain the pressed keys
- uint32 keys = keysDown();
-
- // 3) change the direction of the snake according to the pressed keys
- if ((keys & KEY_UP) != 0) {
- direction = UP;
- }
- if ((keys & KEY_DOWN) != 0) {
- direction = DOWN;
- }
- if ((keys & KEY_LEFT) != 0) {
- direction = LEFT;
- }
- if ((keys & KEY_RIGHT) != 0) {
- direction = RIGHT;
- }
-
- // 4) Complete the functionality about moving up and down of the snake in timer_ISR(), which is defined above main()
-
- /*************
- * EXERCISE 5
- *************/
- // 1) If the touchscreen is touched, increase and set the new frequency. Note that the frequency should be no larger than 60
- if ((keys & KEY_TOUCH) != 0) {
- frequency *= 2;
- if (frequency > 60) {
- frequency = 10;
- }
- TIMER_DATA(0) = TIMER_FREQ_64(frequency);
- }
-
-
- swiWaitForVBlank();
- }
-}
diff --git a/notes/.root b/notes/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/notes/markdown-img/cpsr.png b/notes/markdown-img/cpsr.png
deleted file mode 100644
index 4ff4780..0000000
Binary files a/notes/markdown-img/cpsr.png and /dev/null differ
diff --git a/notes/markdown-img/disp_mode.png b/notes/markdown-img/disp_mode.png
deleted file mode 100644
index 6ac5b85..0000000
Binary files a/notes/markdown-img/disp_mode.png and /dev/null differ
diff --git a/notes/markdown-img/keys_touch.png b/notes/markdown-img/keys_touch.png
deleted file mode 100644
index fba4952..0000000
Binary files a/notes/markdown-img/keys_touch.png and /dev/null differ
diff --git a/notes/markdown-img/mem_arch.png b/notes/markdown-img/mem_arch.png
deleted file mode 100644
index cf6d6e1..0000000
Binary files a/notes/markdown-img/mem_arch.png and /dev/null differ
diff --git a/notes/markdown-img/time_bounds.png b/notes/markdown-img/time_bounds.png
deleted file mode 100644
index 0834f47..0000000
Binary files a/notes/markdown-img/time_bounds.png and /dev/null differ
diff --git a/notes/markdown-img/vram_type.png b/notes/markdown-img/vram_type.png
deleted file mode 100644
index 976d9c2..0000000
Binary files a/notes/markdown-img/vram_type.png and /dev/null differ
diff --git a/notes/notes.md b/notes/notes.md
deleted file mode 100644
index b7b6d75..0000000
--- a/notes/notes.md
+++ /dev/null
@@ -1,483 +0,0 @@
----
-geometry: margin=2cm
----
-
-Lucas Jung (@gruvw) - EPFL BA5
-
-# SEM (EE-310) notes
-
-## NDS
-
-### Processor
-
-Two advanced RISC processors:
-
-* ARM9 (66 MHz) - ARM 946E-S
- * Keys: A, B, L, R, arrows, select, start
- * LCD TFT
- * GBA Flash
- * BIOS in ROM: `0xffff0000 ` to `0xffff7fff ` (32KB)
- * Harvard
-* ARM7 (33 MHz) - ARM 7TDMI-S
- * Keys: X, Y
- * Touchscreen
- * WiFi
- * Audio
- * Screen open-close
- * BIOS in ROM: `0x00000000` to `0x00003fff` (16KB)
- * Von Neuman
-* Communicate via WRAM
-
-ARM processor:
-
-* 32-bit RISC processor (32-bit instruction = word size)
-* 37 registers of 32-bits (16 available)
-* ALU, multiplier, caches
-* Litte endian (by default)
-* Up-to 4 function parameters (registers `r0-r3`), rest through stack
-* Return value in `r0`
-* Interupts (`intr0` less priority < `intr1` more priority)
-
-Program status register `cpsr`:
-
-![cpsr](./markdown-img/cpsr.png){ width=50% }
-
-### Memory
-
-Main RAM:
-
-* From `0x02000000` to `0x023fffff` (4MB)
-
-VRAM:
-
-* From `0x06000000` to `0x068A0000` (656KB)
-
-Cartige ROM:
-
-* From `0x08000000` to `0x09ffffff` (32MB)
-
-NDS memory architecture:
-
-![mem_arch](./markdown-img/mem_arch.png){ width=50% }
-
-### Utilities
-
-Find macro value: `grep -rn "REG_DISPCNT" /opt/devkitpro/libnds/include/nds`
-
-## Peripherals
-
-Interrupts sources:
-
-* Graphic (x2)
-* Timer (x4)
-* DMA (x4)
-* Keypad
-* GBA Flashcard
-* FIFO
-* GFX FIFO
-* DS Card
-* ...
-
-Interrupts:
-
-* `IRQ_VBLANK`: Vertical blank
-* `IRQ_HBLANK`: Horizontal blank
-* `IRQ_TIMER0`: Timer 0
-* `IRQ_KEYS`: Keypad
-* `IRQ_WIFI`: WiFi
-* `IRQ_DMA0`: DMA 0
-
-Interrupts handler:
-
-* Initialize interrupts subsystem: `irqInit()`
-* Specify handler for interrupt: `irqSet(IRQ_MASK irq, VoidFunctionPointer handler)`
-* Remove handler for interrupt: `irqClear(IRQ_MASK irq)` (before disable)
-* Allow/Enable given interrupt: `irqEnable(uint32 irq)`
-* Prevent/Disable interrupt: `irqDisable(uint32 irq)`
-
-### Timer
-
-Information and formulas:
-
-* Clock is `33.514` MHz
-* 4 hardware timers, 16 bits counter
-* Maximum measured ticks: `2^16 - 1` ticks
-* Maximum measured time: `M = (2^16 - 1) * VALUE / 33514000` seconds
-* Find start timer value or frequency for `x` seconds:
- * Frequency: `f = 33514000 / VALUE` Hz
- * Time of a cycle: `t = 1 / f` seconds
- * Maximum time: `M = (2^16 - 1) * t` seconds
- * Number of ticks: `n = x * f` ticks
- * Start timer value: `s = (2^16 - 1) - n`, equivalent to using macro with `freq = 1 / x` Hz
-
-Macros:
-
-* `TIMER_DATA(n)`: de-referenced pointer to data register `n`
-* `TIMER_CR(n)`: de-referenced pointer to control register `n`, same as `TIMERn_CR`
-* `TIMER_ENABLE`: enable timer
-* `TIMER_DIV_VALUE`: timer counts at `(33.514 / VALUE)` MHz (`VALUE`: 1, 64, 256, 1024)
-* `TIMER_FREQ_VALUE(freq)`: register value to start counting from so that it overflows each `1/freq` second (user `TIMER_FREQ` for `VALUE` 1)
-* `TIMER_IRQ_REQ`: request interrupt on overflow
-
-Examples:
-
-* `TIMER_DATA(0) = TIMER_FREQ_64(125)`
-* `TIMER_CR(0) = TIMER_ENABLE | TIMER_DIV_64 | TIMER_IRQ_REQ`
-* `irqSet(IRQ_TIMER(0), &ISR_TIMER0)`: set the interrupt handler to the function `ISR_TIMER0` (don't forget to `irqInit()` before), (`IRQ_TIMER(n)` equivalent to `IRQ_TIMERn`)
-* `irqEnable(IRQ_TIMER(0))`: enable interrupt
-
-Pre-computed divider boundaries:
-
-![time_bounds](./markdown-img/time_bounds.png){ width=70% }
-
-### Graphics
-
-Information:
-
-* Each pixel is 16 bits RGB
- * 1 bit for transparency: 0 transparent, 1 opaque
- * 5 bits intensity for each color: 0 minimum, 31 maximum
-* Macros `ARGB16(...)` and `RGB15(...)`
-* Resolution of screen
- * 192 rows (`SCREEN_HEIGHT`)
- * 256 columns (`SCREEN_WIDTH`)
- * 49152 pixels
- * Drawn from left to right and top to bottom
-* Interrupts when drawing
- * `IRQ_VBLANK`: vertical blank, once per screen refresh
- * `IRQ_HBLANK`: horizontal blank, once per line refresh
-* Bitmaps in VRAM used with ARM9 from `0x06000000` to `0x068A0000` (656KB)
- * `A` to `D`: 128 KiB
- * `E`: 64 KiB
- * `H`: 32 KiB
- * `F`, `G`, `I`: 16 KiB
-* Background layers are on top of each other (`BG0` is the most external, `BG3` is the most internal), `BG0` on top of every other BG
-
-Configuration sequence:
-
-* Power Manager configuration: `REG_POWERCNT`
- * `POWER_LCD`: LCD screen
- * `POWER_2D_A`: Main 2D core
- * `POWER_MATRIX`: 3D Matrix
- * `POWER_3D_CORE`: Main 3D core
- * `POWER_2D_B`: Sub-display 2D core
- * `POWER_SWAP_LCDS`: Screen used by the main core
-* Graphical engines configuration: `REG_DISPCNT` (mode)
- * `MODE_a_2D` where `a` in `0..=6`
- * `ENABLE_3D`
- * `DISPLAY_b_ACTIVE` where `b` in `{BG0,BG1,BG2,BG3,SPR}`
- * `DISPLAY_c_ON` where `c` in `{WIN0,WIN1,SPR_WIN}`
- * 2D mode
- * `MODE_FBd` where `d` in `0..=4`
-* VRAM configuration: `VRAM_x_CR` (activate and configure banks)
- * Mode
- * Shifting
- * `VRAM_ENABLE`
-
-Examples:
-
-* `REG_POWERCNT = POWER_LCD | POWER_2D_A`
-* `REG_DISPCNT = MODE_0_2D | DISPLAY_BG1_ACTIVE`: activate mode 0 and background 1
-* `VRAM_A_CR = VRAM_ENABLE | VRAM_A_LCD`: activate bank A, map it to 2D background representation
-* `REG_DISPCNT = MODE_FB0` and `VRAM_A_CR = VRAM_ENABLE | VRAM_A_LCD`: to use `FB0`
-* `ARGB16(1, 31, 0, 0)`, `RGB15(31, 0, 0)`
-* Pointer to buffer: `u16 * buff = (u16 *) VRAM_A` (pixel is 16 bits, read VRAM pixel by pixel)
-
-Screen modes:
-
-![disp_mode](./markdown-img/disp_mode.png){ width=80% }
-
-VRAMs banks for types of data:
-
-![vram_type](./markdown-img/vram_type.png){ width=50% }
-
-#### Framebuffer Mode
-
-* Drawing map of pixels directly
-* Four framebuffers associated with their 128 KiB VRAM bank (`FB0` with `VRAM_A`, `FB3` with `VRAM_D`)
-* Full screen takes `192*256*16/1024/8 = 96` KiB
-* Support for double buffering
- * One buffer is read to be written on the screen
- * The other buffer used to change/write the next image to draw
- * Swap/Exchange during `VBLANK` interrupt
-* Enable framebuffer mode for sub display by swap screens: toggle bit 15 `REG_POWERCNT ^= BIT(15)`
-
-Example:
-
-* Fill canvas with white color: `memset(VRAM_A, 0xFF, 256*192*2)`
-
-#### Rotoscale Mode
-
-Additional configuration:
-
-* Configure each active background `BGCTRL[n]` (pixel configuration 8/16 bits), background memory organized in data blocks
- * Set bitmap base address, indicate slot to use in dedicated background memory `BG_BMP_BASE(x)` (increase of 16 KB)
- * Indicate background size and format `BgSize_m_yxz`, `m` is `B8` or `B16` (bitmap pixel size), `yxz` is background size (e.g.: `256x256`)
-* Initialize pallets when using 8 bits mode `BG_PALETTE[0..=255]`
-* Can only use 256 colors type of palette with rotoscale
-* Optional: adjust affine transformation matrix (for each background)
-
-Palettes:
-
-* Collection of 256 colors (in ARGB16), 512 B
-* 8 bits per pixel (index in palette)
-* Dedicated Palette RAM (2 KiB), faster and consumes less power
-* Palette pointer: `uint_16 * myPalette = BG_PALETTE`
-* Write to palette: `BG_PALETTE[1] = BLUE`, use `BG_PALETTE_SUB` for sub display
-* Two possibilities for palettes
- * 1 palette of 256 colors: 8 bits per pixel (64 B tile size), colors from `0x00` to `0xFF`
- * 16 palettes of 16 colors: 4 bits per pixel (32 B tile size), palette from `0x0` to `0xF`, color from `0x0` to `0xF`
- * Index 0 in palette is used for transparency (displays when no opaque background pixel behind)
-* Use `BgSize_B16_256x256` to configure background for emulating framebuffer mode
-
-Software Interrupt mode (SWI):
-
-* Copy data from one point to another
-* `void swiCopy (const void *source, void *dest, int flags)`, uses 2 bytes `u16`
-* `source`: origin memory address
-* `dest`: destination memory address
-* `flags`: data size/length (in 2-byte words) to copy
-
-Affine transformation matrix:
-
-* Rotoscale: rotation and scaling
-* Structure `bg_transform` (`xdx`/`hdx`, `ydx`/`vdx`, ..., `dx`, `dy`), fixed-point numbers (8 bits decimal part `Q1.8`, e.g.: `1.00000000 := 256 = 1 << 8`)
-* One matrix per background: `bgTransform[background_nb]`
-* Must define the transformation matrix (required for Ext. Rotoscale mode)
-
-GRIT:
-
-* Convert images to Assembly code (in data segment of program)
-* Declaration of paletes, maps, graphic data
-* Also generates header file to link between C and Assembly
-* From terminal `grit myImage.png -g -gB16` > `myImage.h`, `myImage.s`
-* Put output files in the `data` project folder
-* Get bitmap and pallette (8 bits): `grit bottom.png -gb -gB8 -pu8`
-
-Examples:
-
-* Activation: `REG_POWERCNT = POWER_LCD | POWER_2D_A`
-* Deactivation: `REG_POWERCNT &= ~(POWER_LCD) & ~(POWER_2D_A)`
-* Activate mode 4 and background 2: `REG_DISPCNT = MODE_5_2D | DISPLAY_BG2_ACTIVE`
-* Activate mode and background for SUB display: `REG_DISPCNT_SUB = MODE_5_2D | DISPLAY_BG2_ACTIVE`
-* Store image of 256x256 pixels with palette (64 KiB), activate VRAM: `VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG`
-* Main 2D engine, background 2, base address 0, 256x256 image size, one palette format (`B8`): `BGCTRL[2] = BG_BMP_BASE(0) | BgSize_B8_256x256` (or `BGCTRL_SUB[x]`)
-* Write color: `BG_BMP_RAM(0)[row * SCREEN_WIDTH + col] = color` (`BG_BMP_RAM(0) === BG_GFX`)
-* Transfer image (to base address 0): `swiCopy(imgBitmap, BG_BMP_RAM(0), imgBitmapLen/2)`
-* Transfer palette: `swiCopy(imgPal, BG_PALETTE, imgPalLen/2)`
-
-#### Tiled mode
-
-* Useful for repeated pieces of graphics
-* Tile size is 8x8 pixels (64 pixels), screen width 32 tiles, screen height 24 tiles, total of 32x24=768 tiles on screen (can have more out of screen, scrolling effect)
- * Tiles map possibilities: 32x32, 32x64, 64x32, 64x64
-* Maximum of 1024 tiles (as index map is 10 bits)
-* Can be used for background (configure `BGCTRL[x]`)
-* Tiles transformations like rotoscale
-* Tile is matrix of color indexes in palette
-* Tiles stored from base address `BG_TILE_RAM(x)`, `BG_TILE_RAM_SUB(x)`
- * Tile base address must be multiple of 16 KB (0x4000)
- * Maximum size is 256 KB
-* Configure background control register: `BG_TILE_BASE(x)` (16 values of base address, `x` in `0..=15`, 4 bits for `TILE_BASE` in `REG_BGnCNT`)
-* Screen size is 256 pixels (32 tiles) by 192 pixels (24 tiles)
-
-Tile referencing (map format):
-
-* Each tile is referenced with 16 bits
- * Tile number: 10 bits
- * Horizontal/Vertical mirror: 2 bits
- * Horizontal flip: `tile | BIT(10)`
- * Vertical flip: `tile | BIT(11)`
- * Palette used (if 16-color palette): 4 bits (16 possible palettes), bits 15-12 specify palette number
-* Map can start (map base) in address multiple of 2 KB (0x800)
- * Most used BG: 32x32 tiles (2 B per tile), total of 2 KB
- * Config BG register controller: `BG_MAP_BASE(x)` (increase of 2KB for tile mode, 16 KB for rotoscale), `BG_TILE_BASE(x)` (increase of 16KB)
- * Write the tile definition: `BG_TILE_RAM(x)`, `BG_TILE_RAM_SUB(x)`
- * Access tile to set/modify: write layout with tiles `BG_MAP_RAM(x)[row*32 + col]`, `BG_MAP_RAM_SUB(x)` (or tile number with flip bits)
-
-Configuration `BGCTRL[n]` / `BGCTRL_SUB[n]` (same as `REG_BGnCNT`):
-
-* Number of tiles in tiles map
-* Number of colors in palette
-* Memory positions for map and for tiles (base address)
-
-Direct Memory Address:
-
-* Faster for large amount of memory (larger than a tile)
-* Perform data transfers without CPU intervention (DMA controller)
-* CPU configures DMA controller to make data transfer between peripherals
- * Base address, Destination address, Data size
-* DMA controller performs I/O operation autonomously when bus available
-* `void dmaCopy(const void * source, void * dest, uint32 size)`, uses 1 byte `u8`
-* Always cast `dest`: `(u8*)`
-* Used to copy the tiles to e.g. for second tile: `&BG_TILE_RAM(0)[32]` (size 64)
-
-GRIT:
-
-* Option to generate tiles `-gt`
-* Option to generate palette `-p`
-* Image to transform should have size multiple of 8
-* Map can be generated if full image is going to be displayed (tiled mode): option `-m`
-
-Examples:
-
-* Configure engine: `REG_DISPCNT = MODE_0_2D | DISPLAY_BG0_ACTIVE`
-* Configure VRAM bank: `VRAM_A_CR = VRAM_ENABLE | VRAM_A_MAIN_BG`, use `VRAM_x_SUB_BG` for sub (look which VRAM available in picture)
-* Background 0 in SUB display, 32x32 tiles, use 1 palette (256 colors), in `MAP_BASE0`, tiles at 2 KB from `TILE_BASE`: `BGCTRL_SUB[0] = BG_32x32 | BG_COLOR_256 | BG_MAP_BASE(0) | BG_TILE_BASE(1)` (be careful for overlap between `MAP_BASE` and `TILE_BASE`)
-* Used tiled mode and ext. rotoscale in one: `REG_DISPCNT = MODE_5_2D | DISPLAY_BG1_ACTIVE | DISPLAY_BG3_ACTIVE`
-* Copy two custom tiles (`u8 tile[64] = ...`): `swiCopy(tile1, BG_TILE_RAM_SUB(x), 32); swiCopy(tile2, &BG_TILE_RAM_SUB(x)[32], 32);`
-
-### Keys & Touchscreen
-
-Information:
-
-* Events detected in 16 bits register `REG_KEYCNT`
-* Pressed keys in `REG_KEYINPUT` (zero bit means key pressed)
-* No buffering
-* 60 points read/sec with `swiForVBlank()` (interpolate for lines)
-* Two arm processors
- * ARM 946E-S: `KEY_A`, `KEY_B`, `KEY_SELECT`, `KEY_START`, `KEY_RIGHT`, `KEY_LEFT`, `KEY_UP`, `KEY_DOWN`, `KEY_R`, `KEY_L`
- * ARM 7TDMI-S: `KEY_X`, `KEY_Y`, `KEY_TOUCH` (for touchscreen), `KEY_LID`
- * Can check bits against macro: e.g. `uint32 keys = keysDown()`, `keys == KEY_x` (strictly only one key), `keys & KEY_x != 0` (maybe multiple keys)
- * Bit 14/15 used to configure interrupts
-* Polling (active waiting using infinite loop) in libnds
- * Polling is slower and consumes more power than interrupts
- * Call `swiWaitForVBlank()` inside of polling loop
- * Scans and stores pressed keys and touchscreen: `void scanKeys()`
- * Returns keys pressed/held: `uint32 keysHeld()`
- * Returns only keys pressed: `uint32 keysDown()`
- * Returns only keys released: `uint32 keysUp()`
- * Position where touchscreen pressed: `void touchRead(touchPosition * pos)` (output argument)
- * Check if touchscreen was touched: `keys & KEY_TOUCH`
- * Use API with struct return: `touchPosition pos; touchRead(&pos);`
- * Fields `px` and `py`, touched pixel coordinates
- * `(0, 0)` when screen is not touched, detect touch using `touch.px || touch.py`
- * Position in memory for pixel is `VRAM_x[touch.py * 256 + touch.px]`
-
-Interrupts:
-
-* Set `REG_KEYCNT` to trigger interrupts
-* One key triggers an interrupt: set bit 14 (enable interrupts)
-* A combination of keys pressed together trigers an interrupt: set bit 15 and 14 + all the keys to trigger interrupt
-* Cannot use libnds API in the ISR: use the `REG_KEYINPUT` to identify pressed key with inverse logic `~REG_KEYINPUT & KEY_x != 0`
-
-Examples:
-
-* Key A, Left or Start trigger an interrupt when any is pressed: `REG_KEYCNT = BIT(14) | KEY_A | KEY_LEFT | KEY_START`
-* Key A and B trigger an interrupt only when both pressed together: `REG_KEYCNT = BIT(14) | BIT(15) | KEY_A | KEY_B`
-
-Two processors manage keys and touchscreen together:
-
-![keys_touch](./markdown-img/keys_touch.png){ width=50% }
-
-### Sound
-
-Registers:
-
-* Power up sound I/O subsystem: `powerON(POWER_SOUND)`
-* Global configuration register `SOUND_CR`
- * Enable and set volume: `SOUND_CR = SOUND_ENABLE | SOUND_VOL(0x7F)`
- * 127 possible volumes from silent `0x00` to full `0x7f`
-* Each channel configured independently (16 channels audio)
- * Channel activation: `SCHANNEL_CR(index)`
- * Configuring channel 0: `SCHANNEL_CR(0) = SCHANNEL_ENABLE | SOUND_ONE_SHOT | SOUND_8BIT`
- * Must configure (at least) three properties with `SCHANNEL_property(index)`
- * Playback frequency `SCHANNEL_TIMER(0) = SOUND_FREQ(11127)`
- * Pointer to sound to play `SCHANNEL_SOURCE(0) = (uint32) sound1`
- * Duration (32 bits): `SCHANNEL_LENGTH(0) = ((int) sound1_end - (int) sound) >> 2`
-
-MaxMod:
-
-* Module files: background music (`.mod`, `.s3m`, `.it`, `.xm`)
-* Sound effects: play on demand (`.wav` + module formats witohut looping)
-* Initialize library pointers to sounds + internal buffers
- * `void mmInitDefaultMem(mm_addr soundbank)`
- * `soundbank` parameter is name of sound-bank binary (default `soundbank_bin`)
- * Not too big (below 2 MB)
-* Load music modules
- * `void mmLoad(mm_word module_ID)`
- * `module_ID` parameter is 32 bits index with module identifier
- * All identifiers defined in `soundbank.h`
-* Load sound effect
- * `void mmLoadEffect( mm_word sample_ID )`
- * `sample_ID` parameter is 32 bit sample index with effect identifier
-* Play music
- * `void mmStart(mm_word module_ID, mm_pmode mode)`
- * `mode` parameter specifies loop or not `MM_PLAY_LOOP` or `MM_PLAY_ONCE`
-* Control music using active module identifier
- * `void mmPause()`
- * `void mmResume()`
- * `void mmStop()`
-* Play sound effect
- * `mm_sfxhand mmEffect(mm_word sample_ID)`
- * Effect will play without modifying the sound configuration
-* Play sound effect with specific sound configuration
- * `mm_sfxhand mmEffectEx(mm_sound_effect* sound)`
- * `sound` parameter is struct with `volume`, `panning`, `rate` (frequency)
-
-Transformation utility:
-
-* Start with raw audio data (uncompressed binary files)
-* Use the MaxMod `mmutil` toolchain
-* Use `-d` parameter for NDS
-* Generates the `soundbank.bin` and header file `soundbank.h`
-* Place the audio file sin folder `audio` inside C project
-
-Automatic transformation:
-
-* Place audio files in folder `audio` inside C project
-* When building the project files will be generated in the `build` folder (`.bin`, `.h`)
-* Use sounds in C project with MaxMod API: include library and soundbank headers
-
-Examples:
-
-* Transform `s1.wav` and `s2.mod`: `mmutil s1.wav s2.mod –d –osoundbank.bin –hsoundbank.h`
-
-## Acronyms
-
-* NDS: Nintendo DS
-* GBA: Game Boy Advance
-* LCD: Liquid Crystal Display
-* TFT: Thin-Film Transistor
-* ARM: Advanced RISC Machine
-* RISC: Reduced Instruction Set Computer
-* CISC: Complex Instruction Set Computer
-* CPU: Central Processing Unit
-* ALU: Arithmetic Logic Unit
-* CU: Control Unit
-* PC: Program Counter
-* CR: Control Register
-* SR: State Register
-* IR: Instruction Register
-* MAR: Memory Address Register
-* MDR: Memory Data Register
-* I/O: Input/Output
-* MM: Main Memory
-* CM: Cache Memory
-* SPM: Scratch-Pad Memory
-* RAM: Random Access Memory
-* VRAM: Video Random Access Memory
-* WRAM: Window Random Access Memory
-* REQ: REQuest
-* FIQ: Fast Interrupt Request
-* IRQ: Interrupt ReQuest
-* FREQ: FREQuency
-* SVC: SuperVisor Call
-* INTR: INTeRrupt
-* DMA: Direct Memory Access
-* SPI: Serial Peripheral Interface
-* ASCII: American Standard Code for Information Interchange
-* GFX: Graphics
-* FIFO: First-In, First-Out
-* API: Application Programming Interface
-* RGB: Red Green Blue
-* ARGB: Alpha Red Green Blue
-* BG: BackGround
-* FB: FrameBuffer
-* BMP: BitMap Pointer
-* SWI: SoftWare Interrupt
-* GRIT: GBA Raster Image Transmogrifier
-* CNT/CTRL: CoNTRoLler
-* A2D: Analog TO Digital
-* ISR: Interrupt Service Routine
-* IPC: Inter-Processor Communication
diff --git a/notes/notes.pdf b/notes/notes.pdf
deleted file mode 100644
index 9d9038f..0000000
Binary files a/notes/notes.pdf and /dev/null differ
diff --git a/project/tic-tac-tile/.clangd b/project/tic-tac-tile/.clangd
deleted file mode 100644
index e28c136..0000000
--- a/project/tic-tac-tile/.clangd
+++ /dev/null
@@ -1,9 +0,0 @@
-CompileFlags:
- Add:
- - "-I/opt/devkitpro/libnds/include"
- - "-I/opt/devkitpro/libctru/include"
- - "-I/opt/devkitpro/devkitARM/include"
- - "-I/opt/devkitpro/devkitARM/arm-none-eabi/include"
- - "-I/opt/devkitpro/devkitARM/arm-none-eabi/include"
- - "-I/home/gruvw/SynologyDrive/Programmation/C/epfl-nds-game/project/tic-tac-tile/build/"
- - "-DARM9"
diff --git a/project/tic-tac-tile/.gitignore b/project/tic-tac-tile/.gitignore
deleted file mode 100644
index ff7a361..0000000
--- a/project/tic-tac-tile/.gitignore
+++ /dev/null
@@ -1,61 +0,0 @@
-# Prerequisites
-*.d
-
-# Object files
-*.o
-*.ko
-*.obj
-*.elf
-
-# Linker output
-*.ilk
-*.map
-*.exp
-
-# Precompiled Headers
-*.gch
-*.pch
-
-# Libraries
-*.lib
-*.a
-*.la
-*.lo
-
-# Shared objects (inc. Windows DLLs)
-*.dll
-*.so
-*.so.*
-*.dylib
-
-# Executables
-*.exe
-*.out
-*.app
-*.i*86
-*.x86_64
-*.hex
-
-# Debug files
-*.dSYM/
-*.su
-*.idb
-*.pdb
-
-# Kernel Module Compile Results
-*.cmd
-.tmp_versions/
-modules.order
-Module.symvers
-Mkfile.old
-dkms.conf
-
-# NDS
-*.map
-*.d
-*.o
-*.tmp
-*.arm9
-*.elf
-*.nds
-build/*
diff --git a/project/tic-tac-tile/.root b/project/tic-tac-tile/.root
deleted file mode 100644
index e69de29..0000000
diff --git a/project/tic-tac-tile/README.md b/project/tic-tac-tile/README.md
deleted file mode 100644
index 00653b2..0000000
--- a/project/tic-tac-tile/README.md
+++ /dev/null
@@ -1,269 +0,0 @@
-# Tic-Tac-Tile NDS Game Project
-
-EPFL BA5 EE-310 NDS project
-Lucas Jung (324724)
-
-This game is a [Tic-Tac-Toe](https://en.wikipedia.org/wiki/Tic-tac-toe) clone on the [NDS](https://en.wikipedia.org/wiki/Nintendo_DS).
-
-**Name**: the name Tic-Tac-Tile is a modification of the original Tic-Tac-Toe game name. It is a reference to the word "TacTile", denoting the bottom tactile screen of the NDS. Additionally, the last word "Tile" is a reference to the tile mode of the graphical engines of the NDS. The last layer of meaning behind the name is the sound of a clock "tic tac" as there is some kind of a time pressure aspect to the game.
-
-## Showcase
-
-Here are a few pictures of the Tic-Tac-Tile game:
-
-
-
-## Instructions
-
-Instructions to play Tic-Tac-Tile :)
-
-### Installation
-
-To install the game, you will need to obtain the `tic-tac-tile.nds` game file.
-
-Use one of the following method:
-
-- Download it online from the GitHub releases: [`tic-tac-tile.nds`](https://)
-- Build it from source: clone this repository and run `make build` in the same directory as this README (requires [`devkitpro-pacman`](https://apt.devkitpro.org/install-devkitpro-pacman)). The game file `tic-tac-tile.nds` will be generated in that directory.
-
-Place the `tic-tac-tile.nds` file inside the micro SD card of an [R4 cartridge](https://en.wikipedia.org/wiki/R4_cartridge).
-
-### Game
-
-Once the game boots up, you'll be welcomed by a nice background music and the settings menu.
-
-#### Settings
-
-It features 3 **game modes**:
-
-* Single player mode, against bot/AI
-* Two player mode, single NDS
-* Two player mode, two NDS over Wi-Fi
-
-Select among the 3 **speeds** to adjust the game's difficulty:
-
-* Slow (green)
-* Medium (orange)
-* Fast (red)
-
-#### Play
-
-1. Select the settings that you want by using the bottom touch screen. (see below for [Wi-Fi Two Player Mode Setup](#wi-fi-two-player-mode-setup))
-2. Press on the `START` button to launch a game.
- * In Wi-Fi two player mode, the first player to press `START` will go first and starts the game for both players.
-3. Select the square where you want to place your piece using the `LEFT`, `RIGHT`, `UP`, `DOWN` arrow buttons.
-4. Press on the `A` button to confirm your choice and place your piece. Be carefull about the progress bar, you need to play before you run out of time to win!
-5. Wait for the other side to play.
- * In single player mode, the bot will play instantly after your turn.
- * In (local) two player mode, you need to hand out the Nintendo DS to the other player so they can play on the same device.
- * In Wi-Fi two player mode, simply wait for your opponent to play on their Nintendo DS.
-6. Carry on till you reach the Game Over screen. Alternatively you can also press the `START` button at any moment to put an end to the current game and go directly to the Game Over screen.
- * If one of the side won, their 3 winning pieces will be highlighted on the board. Additionally, the winning side will be crowned on the bottom screen.
- * A clock will be displayed on the bottom screen in case they won because the other side ran out of time.
- * No information will be displayed on the bottom screen if the game resulted in a draw or if it was interrupted. In that case, you will simply see the Game Over screen and the final state of the board.
-7. You can start a new game by pressing the `START` button to go back to the settings selection menu.
-
-Have fun !
-
-#### Wi-Fi Two Player Mode Setup
-
-In order to play in Two Player Mode over Wi-Fi, each player playing on their own NDS, you need to complete the following setup first:
-
-1. Take a smartphone and disable your Wi-Fi and cellular data (as you will create a public Access Point).
-2. Go into your phone settings a configure your Access Point (AP) network sharing.
-3. Setup the SSID (name of your internet sharing AP) to be `SEM-NDS`.
-4. Instead of putting a password, select `None` in the AP configuration security settings to disable password authentification, essentially making a public network.
-5. You are good to go :)
-
-NDS setup:
-
-1. Start the game on both NDS.
-2. Click on the "Two Player Wi-Fi" game mode. Keep the NDS very close to the AP.
-3. You will see the Wi-Fi icon show up while trying to connect to the AP:
- * If the connection is successful, the "Two Player Wi-Fi" mode will now be selected.
- * Otherwise (fails to connect to AP) it will stop trying to connect after a few seconds, hide the Wi-Fi icon and leave you in your current game mode.
-4. Once the "Two Player Wi-Fi" mode is selected (successfully connected to AP), the search icon will indicate that your NDS is ready to pair with another NDS:
-5. When two NDS are looking to connect together, they will find each other automatically and pair. The paired/success icon will be displayed on the two NDS once the connection is fully established:
-6. Each player can chose their own speed difficulty independently. You can now start a game!
-7. At the end of the game, each player needs to press the `START` button to go back to the main menu. The search process will start again (back to point 4). It allows to change opponent between games if another NDS is also searching (more than 2 NDS connected on AP). Otherwise just wait a few seconds to connect back to your opponent.
-
-**Note 1**: on the main menu, you can restart the pairing process by pressing the `SELECT` button (e.g. if you want to pair to someone else).
-
-**Note 2**: you can play with more than 2 NDS on the same Wi-Fi network! You can have multiple games running simultaneously (e.g. with 4 NDS).
-
-##### Troubleshoot
-
-You should not expect many issues with the game, as it went through extended testing before release.
-
-However, if you happen to run into an issue, there is a good chance that you will find the solution below:
-
-* **Problem 1** - You are stuck in a game. Simply press the `START` button once to bring up the Game Over screen, and then a second time to get back to the main menu.
-* **Problem 2** - Wi-Fi connection is momentary interrupted: this can take the form of longer time in search mode trying to pair to your opponent or a move played during a game that is not reflected on the other NDS during a game. This is normal and can happen, make sure to keep the phone AP very close to the NDS and wait for the messages to arrive.
-* **Problem 3** - If one or more NDS is blocked in search mode and cannot find the other NDS to connect to:
- 1. First, try to press the `SELECT` button on all affected NDS to reset the connection process and see if it helps.
- 2. If that did not work, it means the Wi-Fi connection is permanently lost (see Problem 4 below).
-* **Problem 4** - Wi-Fi connection is permanently lost: this can take the form of NDS blocked in search mode (even after pressing the `SELECT` button) or not being able to select the "Two Player Wi-Fi" mode. You can simply shutdown all the NDS and the smartphone Wi-Fi Access Point, and then restart the Wi-Fi setup (full systems reboot). Everything should be working normally after that.
-
-**Note**: there are no security features built into the Tic-Tac-Tile game. Games can be rigged by hackers on the same (public) local network.
-
-## Development
-
-This project was less about creating a great game to play than it was about controlling peripherals and embedded programming.
-I chose a simple game but utilized a lot of peripherals and NDS functionalities.
-The focus was on **code quality**, writing a good **documentation**, and **Wi-Fi communication reliability**.
-
-### Presentation
-
-#### NDS Features Checklist
-
-ARM Processors:
-
-* ARM9 to control the two screens, the buttons (Left, Right, Up, Down, A, Start, Select), send IPC messages to ARM7 to control sound and Wi-Fi.
-* ARM7 for audio, touchscreen and Wi-Fi.
-
-Timers / Interrupts:
-
-* Timer 0: variable speed, game time progress bar.
-* Timer 1: FREQ_64(60), game state FSM update.
-* Timer 2: TIMER_FREQ_64(10), button debounce, Wi-Fi spam prevention.
-
-Graphics:
-
-* Main display: Mode 5 with backgrounds 2 and 3 (ext. rotoscale), used to display the game pieces, and the board background + begin menu.
-* Sub display: Mode 5 with backgrounds 0 (tiled mode) and 2 (ext. rotoscale), used to display the settings selection + progress bar, and the game over screen.
-
-Keypad:
-
-* Controlling the top game board actions (interrupts):
- * Left, Right, Up, Down = Move selected cell
- * A = Place piece on selected cell
- * Start = Start, Terminate, Restart game
- * Select = Reinitiate NDS pairing (Wi-Fi)
-
-Touchscreen:
-
-* Select the game settings in the game menu, 6 different touch areas used, select game difficulty (speed) and game mode.
-* Reading touchscreen by polling.
-
-Sound:
-
-* There is a background music (MOD format) in the menu.
-* Another background music (MOD format) is playing during a game. It will speed up depending on the selected game difficulty.
-* Playing 3 sound effects (WAV format): when selecting a setting in the menu, when placing a piece on the board, and at the end of the game.
-
-Sprites:
-
-* 7 sprites in the project: 4 sprites are used to display the outcome of the game on the Game Over screen: (1) crown for the winner, each side (2) has their sprite, (1) clock to indicate losing because of timer; 3 sprites indicate the status of the NDS connection/pairing (Wi-Fi).
-
-Wi-Fi:
-
-* Wi-Fi connection with AP is used to communicate between two NDS and play two player games.
-* Designed and implemented P2P-BOP protocol to pair two NDS.
-* Designed and implemented Message Queue and ACK system to avoid packet loss.
-* Added simultaneous message (START) action recovery mechanism.
-
-#### NDS improvements
-
-* Implemented a bot/AI for single player mode that plays perfectly: using a minimax algorithm to find the best move + hard coded every first move response as it was to slow (~2 seconds) to compute.
-* Added button debounce procedure (using a timer) to avoid double trigger of NDS physical buttons.
-* Modified WiFi_minilib: implemented Wi-Fi AP connection timeout (do not stuck the game if can’t connect to AP, can still play other game modes even after connection failure).
-* If both players press START at the same time (in Wi-Fi mode) it will launch a conflict resolution process and still work as expected.
-* Wi-Fi stack implementation stands very strongly against packet loss thanks to the ACK and Message Queue system.
-
-**Note**: see source code for more details!
-
-### Project structure
-
-Here is the project structure:
-
-```
-.
-├── art
-├── audio
-├── data
-├── docs
-└── source
- ├── controller
- │ └── wifi
- ├── model
- └── view
-```
-
-* `art` - The folder with the [Aseprite](https://en.wikipedia.org/wiki/Aseprite) pixel "art" files for the game. There are 17 art files done entirely by me. Note that the colors in those files (and in `data`) might not be accurate as they are in fact redefined by the two color palettes in the game.
-* `audio` - The music and sound effect files. I did not create those myself, but I found them on sites that reference public and free to use sounds.
-* `data` - Arts export to images, later processed by [GRIT](https://www.coranac.com/man/grit/html/grit.htm).
-* `docs` - Contains the images used in this README.
-* `source` - The source code for the game. Follows a strict [MVC](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller) code architecture.
- * `controller` - Puts together the view and model, and orchestrates the game's logic. It also contains the audio components.
- * `wifi` - Implementation of the fully custom Wi-Fi stack and protocols (P2P-BOP and Message Queue ACK system).
- * `model` - [Bit Field Vector](https://en.wikipedia.org/wiki/Bit_array) modelling of the Tic-Tac-Toe game. It also contains the implementation of the bot/AI used in single player mode.
- * `view` - Contains the screen/graphics components and sprites control.
-
-**Note**: I wrote close to 2000 lines of C code for this project in the `source` folder. This does not account for debugging time, artwork, system design, testing and documentation.
-
-### Wi-Fi Connectivity Stack
-
-In order to ensure reliable communications over an unreliable and broadcast only channel I designed and implemented a new protocol: **Peer-to-Peer Broadcast Ordered Pairing (P2P-BOP) protocol**.
-
-It takes avantage and randomly chosen network IDs ordering to initiate a bidirectional connection between two devices after a discovery process.
-It is not tied to NDS and might aswell be used in other broadcast only peer-to-peer environment.
-
-Here is a simplified diagram of how it works:
-
-
-
-After a successful bidirectional pairing between two devices we are still left with the packet loss issue. To fix this problem, I implemented a packet acknowledgment (ACK) system along with a message queue.
-The device will keep sending their pending message while it was not ACKed by the other (paired) device.
-
-Here is a simplified diagram of how it works:
-
-
-
-Additionally the system will first check for the correct unique game identifier and match the sender and receiver IDs of the packet before processing it.
-That allows for more than two simultaneous players on the same AP Wi-Fi network.
-
-I also implemented a "simultaneous message action recovery mechanism" to fix the problem of two NDS sending the same message to each other at the same time and being stuck in a dead state.
-Essentially the connection leader will keep its state and inform the other NDS to reset their state when it detects a simultaneous message event (conflict resolution process).
-
-**Note**: if you want to further understand the implementation of those mechanisms, check the `source/controller/wifi/packet.c` file.
-
-### Roadmap
-
-- [X] Board model + utilities
-- [X] Main background graphics
-- [X] Connect board model to view
-- [X] Keys handling + cell selection
-- [X] Sub background settings graphics
-- [X] Settings selection touch
-- [X] Begin and game over screens
-- [X] Custom palettes generation
-- [X] AI (minimax)
-- [X] Timer + progress bar
-- [X] Game Over sprites
-- [X] Improve project structure
-- [X] Music + sound effects
-- [X] Polish code + add comments
-- [X] Fully test game
-- [X] Presentation
-- [X] Write README
-- [X] Wi-Fi packet stack + P2P-BOP design and implementation
-- [X] Wi-Fi ACK system
-- [X] Wi-Fi two player mode messages processing
-- [X] Keys debounce with timer
-- [X] Same packet simultaneous sending resolution (start game)
-- [X] Clean, comment, and polish code
-- [X] Game music speed changes with difficulty
-- [X] Fully test game
-- [X] Diagrams (Game FSM, P2P-BOP connection, ACK & queue FSM)
-- [X] Update presentation
-- [X] Go back to 16 bits network identifiers
-- [X] README full documentation + code structure + BOP protocol explain
-- [X] Last full project review (code, README, presentation, game test)
-- [ ] GitHub release (add to README)
-- [ ] GitHub reorganize repo (project and others)
diff --git a/project/tic-tac-tile/source/controller/audio.c b/source/controller/audio.c
similarity index 100%
rename from project/tic-tac-tile/source/controller/audio.c
rename to source/controller/audio.c
diff --git a/project/tic-tac-tile/source/controller/audio.h b/source/controller/audio.h
similarity index 100%
rename from project/tic-tac-tile/source/controller/audio.h
rename to source/controller/audio.h
diff --git a/project/tic-tac-tile/source/controller/game.c b/source/controller/game.c
similarity index 100%
rename from project/tic-tac-tile/source/controller/game.c
rename to source/controller/game.c
diff --git a/project/tic-tac-tile/source/controller/game.h b/source/controller/game.h
similarity index 100%
rename from project/tic-tac-tile/source/controller/game.h
rename to source/controller/game.h
diff --git a/project/tic-tac-tile/source/controller/interrupts.c b/source/controller/interrupts.c
similarity index 100%
rename from project/tic-tac-tile/source/controller/interrupts.c
rename to source/controller/interrupts.c
diff --git a/project/tic-tac-tile/source/controller/interrupts.h b/source/controller/interrupts.h
similarity index 100%
rename from project/tic-tac-tile/source/controller/interrupts.h
rename to source/controller/interrupts.h
diff --git a/project/tic-tac-tile/source/controller/network.c b/source/controller/network.c
similarity index 100%
rename from project/tic-tac-tile/source/controller/network.c
rename to source/controller/network.c
diff --git a/project/tic-tac-tile/source/controller/network.h b/source/controller/network.h
similarity index 100%
rename from project/tic-tac-tile/source/controller/network.h
rename to source/controller/network.h
diff --git a/project/tic-tac-tile/source/controller/setters.c b/source/controller/setters.c
similarity index 100%
rename from project/tic-tac-tile/source/controller/setters.c
rename to source/controller/setters.c
diff --git a/project/tic-tac-tile/source/controller/setters.h b/source/controller/setters.h
similarity index 100%
rename from project/tic-tac-tile/source/controller/setters.h
rename to source/controller/setters.h
diff --git a/project/tic-tac-tile/source/controller/wifi/WiFi_minilib.c b/source/controller/wifi/WiFi_minilib.c
similarity index 100%
rename from project/tic-tac-tile/source/controller/wifi/WiFi_minilib.c
rename to source/controller/wifi/WiFi_minilib.c
diff --git a/project/tic-tac-tile/source/controller/wifi/WiFi_minilib.h b/source/controller/wifi/WiFi_minilib.h
similarity index 100%
rename from project/tic-tac-tile/source/controller/wifi/WiFi_minilib.h
rename to source/controller/wifi/WiFi_minilib.h
diff --git a/project/tic-tac-tile/source/controller/wifi/packet.c b/source/controller/wifi/packet.c
similarity index 100%
rename from project/tic-tac-tile/source/controller/wifi/packet.c
rename to source/controller/wifi/packet.c
diff --git a/project/tic-tac-tile/source/controller/wifi/packet.h b/source/controller/wifi/packet.h
similarity index 100%
rename from project/tic-tac-tile/source/controller/wifi/packet.h
rename to source/controller/wifi/packet.h
diff --git a/project/tic-tac-tile/source/controller/wifi/queue.c b/source/controller/wifi/queue.c
similarity index 100%
rename from project/tic-tac-tile/source/controller/wifi/queue.c
rename to source/controller/wifi/queue.c
diff --git a/project/tic-tac-tile/source/controller/wifi/queue.h b/source/controller/wifi/queue.h
similarity index 100%
rename from project/tic-tac-tile/source/controller/wifi/queue.h
rename to source/controller/wifi/queue.h
diff --git a/project/tic-tac-tile/source/main.c b/source/main.c
similarity index 100%
rename from project/tic-tac-tile/source/main.c
rename to source/main.c
diff --git a/project/tic-tac-tile/source/model/board.c b/source/model/board.c
similarity index 100%
rename from project/tic-tac-tile/source/model/board.c
rename to source/model/board.c
diff --git a/project/tic-tac-tile/source/model/board.h b/source/model/board.h
similarity index 100%
rename from project/tic-tac-tile/source/model/board.h
rename to source/model/board.h
diff --git a/project/tic-tac-tile/source/model/bot.c b/source/model/bot.c
similarity index 100%
rename from project/tic-tac-tile/source/model/bot.c
rename to source/model/bot.c
diff --git a/project/tic-tac-tile/source/model/bot.h b/source/model/bot.h
similarity index 100%
rename from project/tic-tac-tile/source/model/bot.h
rename to source/model/bot.h
diff --git a/project/tic-tac-tile/source/view/graphics.c b/source/view/graphics.c
similarity index 100%
rename from project/tic-tac-tile/source/view/graphics.c
rename to source/view/graphics.c
diff --git a/project/tic-tac-tile/source/view/graphics.h b/source/view/graphics.h
similarity index 100%
rename from project/tic-tac-tile/source/view/graphics.h
rename to source/view/graphics.h
diff --git a/project/tic-tac-tile/source/view/sprites.c b/source/view/sprites.c
similarity index 100%
rename from project/tic-tac-tile/source/view/sprites.c
rename to source/view/sprites.c
diff --git a/project/tic-tac-tile/source/view/sprites.h b/source/view/sprites.h
similarity index 100%
rename from project/tic-tac-tile/source/view/sprites.h
rename to source/view/sprites.h