*********  ***         *****    ******** ******** ******* ******* ****        ****
***      * ***        **   **   ******** ***      *** *** **    * *****      *****
***      * ***        *******      **    ******** **   ** ******  *** **    ** ***
*********  ***        *******      **    ***      **   ** **  *   ***  **  **  ***
***        ***        **   **      **    ***      *** *** **  **  ***   ****   ***
***        ********   **   **      **    ***      ******* **  *** ***    **    ***
╔════════════════════════════╗
║By SomeCoolGuy on:          ║
║(Cemetech, TiCalc.org)      ║
║This is probably incomplete.║
╚════════════════════════════╝
╔═══════════════════════════════════════════════════════════════════╗
║Platform is a platformer for the TI-84+ CE and related calculators.║
║To run, send PLATFORM, PLATREND, and PLATDECT to your calculator.  ║
║LEVELS has a set of 15 (potentially incomplete) levels for you to  ║
║use. Send that if wanted.                                          ║
╚═══════════════════════════════════════════════════════════════════╝
╔═══════════════════╗
║Table of Contents: ║
║How to Play        ║
║  Simple Controls  ║
║  Advanced Controls║
║Tiles/Level Editor ║
║Running Levels     ║
║External Links     ║
╚═══════════════════╝
┏━━━━━━━━━━━━━┓
┃How to play: ┃
┗━━━━━━━━━━━━━┛
----------
┌────────────────┐
│Simple controls │
└────────────────┘
Press left or right to move left or right respectively.
Press up to jump. You can control where you go by pressing left, right, or up.
By pressing left or right, you go in that direction and up by one.
Pressing up will send the player up 2 spaces.
If airborne, the player will fall 1 space until they hit the floor or some tiles.

Press [sin] to go to the beginning of the level or the last checkpoint.
To quit, press [on].
===================
┌─────────────────┐
│Advanced Controls│
└─────────────────┘

This is a large section.

These will be essential for playing more diverse levels.
Everything in-game happens as a cycle. For example, the player moving right 1 tile, jumping up 2 tiles, or even falling 1 tile can be counted as a cycle. Between these cycles, the player can move onto an adjacent tile (i.e. an adjacent space with a tile underneath) if they press a direction toward it. This can seem confusing at first, so here are a few graphical examples.

  e
-  x
 = =

Here, e is mid-air, with an opportunity to move either left or right. If the player wants to move to the tile below spike x, they must first fall a tile and then press right:
              
- ex -> -  e
 = = ->  = =

Instead of just pressing right:

   e -> DEAD
-  x -> DEAD
 = = -> DEAD

When the player jumps left or right, this rule also applies.

====
 e g
== =

To reach the goal, e could just fall into the adjacent space and then jump right to the goal:

==== -> WIN!
   g -> WIN!
==e= -> WIN!
But what if there's a spike in that space?

====
 e g
==x=

e will have to jump across in order to make it to g:
==== -> WIN!
  eg -> WIN!
==x= -> WIN!
Even though it looks like e is about to die, e really is just hopping over to the goal. Also, it doesn't matter if there's a spike in the hole or not.
e can still jump straight to the goal.

More examples:

e ==
= =
Jump right, then move right:
 e   ->   e
  == ->   ==
= =  -> = =

e x
==x==
Move right, jump right, move right
      ->       ->   e   ->      
e x   ->  ex   ->   x   ->   xe 
==x== -> ==x== -> ==x== -> ==x==

   =
  e=
====
Jump up, press right
  e  ->    e
   = ->    =
   = ->    =
==== -> ====
┌───────────────────────────────┐
│That should be it for controls.│
└───────────────────────────────┘
===================

┏━━━━━━━━━━━━━━━━━━━━┓
┃Tiles/Level Editor  ┃
┗━━━━━━━━━━━━━━━━━━━━┛
Currently there are 14 tiles.
These can be used to make levels in the TI-8x's matrix editor by putting the number representing the tile to be used in each item.
Levels currently MUST be 8x16 matrices.

The online editor on Scratch (https://scratch.mit.edu/projects/264078721) can be used.
It has its own set of instructions.

0:  Blank             ( ): Nothing, empty space. 
1:  Equal Sign        (=): Ground 
2:  Asterisk          (*): Cloudish thing. Does nothing. 
3:  Not Equal Sign    (≠): Spikes. Attacks those above it. -1 Health
4:  Subtract Sign     (-): Platform. Can jump onto from below. 
5:  Caret, Power Sign (^): Spring. The player jumps 3 blocks into the air. 
6:  Plus Sign         (+): Grass. Running through this increases your health. 
7:  Square            (□): post. If you touch this, you win. 
8:  Start    (S or Blank): Starting point. Only one should exist at a time! 
9:  Question Mark     (?): Key. Triggers the next two tiles. 
10: (Zero)             0 : Blocked tile. Becomes unblocked when triggered. 
11: (Letter O)         O : Unblocked tile. Becomes blocked when triggered. 
12: Left Bracket      ([): Teleport 1. Teleports to Teleport 2.
                           Doesn't wait for the player to leave. 
13: Right Bracket     (]): Teleport 2. Teleports to Teleport 1. 
                           Doesn't wait for the player to leave. 
14: Exclamation Point (!): Checkpoint. Sets a new spawn point at its location.
                           (In case player gets hurt by spikes)
==================
┏━━━━━━━━━━━━━━━━┓
┃Running levels  ┃
┗━━━━━━━━━━━━━━━━┛
When running a custom level, first send the level to matrix [A].
This can be done by typing the matrix in manually, or by sending a program that sets [A] to the level.
Then press [2nd] when running PLATFORM.
If you don't have a level in [A], you can opt for a level built into PLATFORM itself by pressing [alpha].
If sending levels from LEVELS, just run PLATFORM after sending a level to [A], and press [2nd].
Now you should have an understanding of how to make and share levels for PLATFORM.
Enjoy!

External Links:

Online Level Editor
https://scratch.mit.edu/projects/264078721