********************** Millennium Advanced Programming ********************** ----------------------------------------------------------------------------- High Score Library 82 Version 1.0 TI-82 Adam Ziemba 2000 MAP Software 2000 Millennium Adcanced Programming Contact Me: http://map.50megs.com mailto:ASony5@hotmail.com mailto:Samnmax200@aol.com AIM - ASony5 AIM - Samnmax200 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Contents ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ·Introduction ·Instructions ·Notice ·Acknowledgements ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Introduction ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ High Score Lib 82 is a very useful library that you can use in your programs. It enables you to store the initials of the player who had the high score in one of your programs. The TI-82 does not have string capability in BASIC, so whenever you have made a stradegy game where high scores are always kept, you wouldn't normally be able to store the player's initials (A strad- egy game is a game where you must use some type of stradegy to play is suces- sfully, and most keep on going forever. Tetris, Simon, and Knight Moves are all examples of a stradegy game). With High Score LIB, you can use a list to store the player's initials. All you have to do is just store a couple numbers into a couple variables and then run the program. Read the next portion of this readme file to get the full description of those variables. Enjoy. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Instructions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Before we move on to the instructions, let me tell you something. I will be giving you example coding in the instructions. Please note that all the ` characters in the examples should be replaced with the store symbol when your typing it in to your program on your calculator. Also, all the @ characters should be replaced with the theta character, which you can access be pressing ALPHA and then the 3 key on your calculator. Also,please note the fact that HSLIB will only function on the graph. Or in other words, you can't make it display the initials on the home screen. I hope to have this feature included in Version 1.3 of HSLIB. 1) First, find in your program's code where you want the current high score initials to be displayed. Notice that I said "in your program's code", and not on the graph or something. 2) Once you have found it, you will need to define a couple variables. Here is a table of those variables and their proper values: +----------+-------------------------------------------------+ | Variable | Description | +----------+-------------------------------------------------+ ¦ W ¦ Store 0 into this variable. It has a purpose, ¦ ¦ ¦ which I will explain later. ¦ ¦ V ¦ The Y-coordinate of where you want HSLIB to ¦ ¦ ¦ display the initails. ¦ ¦ X ¦ The X-coordinate of where you want HSLIB to ¦ ¦ ¦ display the initials. ¦ +----------+-------------------------------------------------+ After defining these variables, on the next line, execute HSLIB. Here is an example of what you should have so far: :coding... :coding... :1`W :0`V :30`X :prgm@HSLIB :coding... :coding... 3) Now you have made it so that the program will display the high score initials. (wait to test it until you've completed all the steps.) But what are you going to do when the player surpasses the old high score and wants to enter his initials? Well, you're going to need to define a couple variables, and then execute HSLIB. Here is a table of the variables you need to define: +----------+-------------------------------------------------+ | Variable | Description | +----------+-------------------------------------------------+ ¦ W ¦ When this is 0, HSLIB will display the initials.¦ ¦ ¦ When it is 1, it will allow a user to store his ¦ ¦ ¦ initials. (Store 1 for this part) ¦ ¦ C ¦ The Y-coordinate of where you want HSLIB to ¦ ¦ ¦ display "NEW HIGH SCORE!". ¦ ¦ D ¦ The X-coordinate of where you want HSLIB to ¦ ¦ ¦ display "NEW HIGH SCORE!". ¦ ¦ E ¦ The Y-coordinate of where you want HSLIB to ¦ ¦ ¦ display "ENTER YOUR INITIALS:". ¦ ¦ F ¦ The X-coordinate of where you want HSLIB to ¦ ¦ ¦ display "ENTER YOUR INITIALS:". ¦ ¦ V ¦ The Y-coordinate of where you want HSLIB to ¦ ¦ ¦ display the initails as they are entered. ¦ ¦ X ¦ The X-coordinate of where you want HSLIB to ¦ ¦ ¦ display the initials as they are entered. ¦ +----------+-------------------------------------------------+ 4) Here is an example of the coding you should have so far: :coding... :coding... :0`W :15`V :15`X :prgm@HSLIB :coding... :coding... :coding... :coding... :1`W \ :0`C | :0`D | This should be located in your code :7`E |---- where you want HSLIB to wait for the :0`F | user to enter his/her initials. :13`V | :3`X / :prgm@HSLIB HSLIB will store the initials into L3 (List 3). The problem is that you won't be able to use HSLIB for more than one of your programs, UNLESS you store List 3 into a different list. I suggest you store List 3 into a Matrix rather than a list, because list are too common on the TI-82. To do that, use the following code: :{1,3}`dim [B] :For(Z,1,3 :L3(Z)`[B](1,Z :End :ClrList L3 Notice that [B] is one character, and should be accessed by pressing MATRX and then the 2 key (You can use a different matrix instead of [B] if you would like). ClrList L3 is optional, but preferred because List 3 has no purpose in the memory if it has already been stored in- to a matrix. Also, you will need to copy this code just before runn- ing HSLIB the first time: :For(Z,1,3 :[B](1,Z)`L3(Z :End 5) Here is an example of what the finished product of a program using HSLIB should look like: :ClrDraw :0`S :Text(0,0,"THIS IS A PROGRAM BY ADAM Z. :Text(7,0,"SCORE: 0 :Text(14,0,"HIGH SCORE: :Text(14,39,H :Text(14,47,"- :0`W :14`V :51`X :L1`L3 :prgm@HSLIB :ClrList L3 :Text(28,0,"PRESS ENTER REPEATIVELY :Lbl G :Text(7,22,S :Getkey`G :If G=105:S+1`S :If S>H:Goto 1 :Goto G :Lbl 1 :S`H :ClrDraw :0`C :0`D :6`E :0`F :5`X :14`V :1`W :prgm@HSLIB :L3`L1 :ClrList L3 :ClrDraw This is just some stupid program I'm using for an example. It waits for you to press the ENTER key. If you've pressed it more times than the high score, than it will allow you to enter your own initials. If you would like to test it out on your own calculator, before running the program, store 10 into the H variable and then type this on the home screen and then press ENTER (you'll only have to do this once): {65,41,73}`L1 6) Okiedookie! Your done! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Notice!!! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ At map.50megs.com you can download all the best games and programs by MAP Software? The URL is, well, www.map.50megs.com ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Acknowledgements ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In all the other text files I've made for my programs, this part usually says a whole bunch of stuff about thanking people and thanking other people and stuff like that, but in this text file, I've decided not to do that. I have no reason not to, Im just not. - Adam Ziemba _____________ |\ ___________\ | | | | | _ _ | ____ ____ | | | | | | | / \ | \ | | | | | | | | | | | | | | | | | | |____| |____/ | | | | | | | | | | \|__|\|__|\|__| | | | S O F T W A R E Millennium Advanced Programming Contact Us: http://www.map.50megs.com http://map.50megs.com mailto:ASony5@hotmail.com mailto:ShaggyKAR@hotmail.com mailto:BiteMe84@aol.com mailto:WarBirdx2g@aol.com mailto:Samnmax200@aol.com mailto:ShaggyKAR@aol.com mailto:WarBirdx2g@yahoo.com AIM - ASony5 AIM - Samnmax200 AIM - ShaggyKAR AIM - BiteMe84 AIM - WarBirdx2g