ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º º º ²²²² ² ² ²²²² ² ² ² ² ²²² ²²²² ² ² ²²²² ²²²² º º ² ² ² ² ² ² ² ² ² ² ² ² ² ² ² ² ² º º ²²²² ² ² ²²²² ² ²² ²² ² ² ² ²²²² ²²² º º ² ² ² ² ² ² ² ² ² ² ² ² ² ² ² ² º º ² ² ²²² ²²²² ² ² ² ²²² ²²²² ²²² ²²²² ²²²² º º º º º º ² ² ²²²² ²²²² ²²² ²²²² º º ² ² ² ² ² ² ² º º ² ² ²²² ²²²² ²² ²²² º º ² ² ² ² ² ² ² º º ² ²²²² ² ² ² ²²²² ² ²²² º º º º º º RUBIK's CUBE for HP48 GX º º Ver 2.5 º º º º (c) December 1995, º º by I¤igo Serna º º º ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ CONTENTS ======== 0. Disclaimer 1. Introduction 1.1 Ackowledgements & Excuses 1.2 Installing & Deleting the Library 2. The Program 2.1 Rubik's Cube 2.2 Keys 2.3 History 2.4 Known bugs 2.5 Source 3. The Author ( hey!, that's me :) 0. DISCLAIMER ============= This program is distributed in the hope that it will be useful, but the copyright holder provide the program "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. In no event will the copyright holder be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program. So there. 1. Introduction =============== 1.1 Acknowledgements & Excuses ------------------------------ First of all, I wish to thank some people without them I couldn't make this program: ù MIKA HEISKANEN: for JAZZ, ENTRIES, SADHP, ... ( What would be of us, HP48 programers, without you ... ;) ù ALBERTO MARTIN: for helping in my first ( and last ones too :) steps with the calc. ù SEBASTIEN CARLIER: for his marvellous EMU48. ù BEEF, ALONZO, KRIK and all the people of #HP48 IRC channel. and, as I surely forget someone, to everybody who make programs for HP48 too ... By the way, excuse my bad English. I can read almost everything in English, but when I have to write ... ( Imagine how bad my English is, that the 'Disclaimer' note and other parts of this document have been copied from the EQSTK doc ... :))) 1.2 Installing & Deleting the Library ------------------------------------- The library number is 973, and its CRC is # 34EAh. To install RUBIK's CUBE on your HP48 download the file 'rubik25.lib' to your calculator and store it in a port of your choice. For example to store the library to port 0, type in (or press suitable keys) 'rubik25.lib' DUP RCL SWAP PURGE 0 STO and power-cycle the calculator. The library will autoattach itself to the HOME directory. 2. The Program ============== 2.1 Rubik's Cube ---------------- This program is an implementation of the famous "Rubik's Cube". The game is something like a puzzle, but in 3D. A cube, as you know :), have 6 sides. In the Rubik's Cube each side have 9 little squares. Rotating rows and/or columns of a side you have to achieve that all the sides have the 9 little squares with the same color. Well, I suppose you know this game, so I won't explain more . The original cube sides were painted with colors but, in this version, I've replaced the colors by numbers ( 1..6 ) ( Yes, yes, ... I could have used a greyscale technique, but I thought that in the 6 tones of grey I could get, there is no wide enough color range to differentiate them in the HP48 screen, so at last I choose numbers instead of colors ). Is it understood, no? 2.2 Keys -------- A -> Cube in a 2D view. So you can appreciate the contents of the 6 sides B -> ABOUT screen C -> HELP screen D -> BEEP +/- E -> Turn OFF screen F -> SAVE current position = -> QUIT game  -> cursor moves to next position  -> cursor moves to previous position ENTER -> Rotate 90ø 2.3 History ----------- Ver 1.0 I started with this program some time ago ( June 1994 ), did the first version ( 1.0 ) in a week or so. Then I forgot it ... This version worked, but it was a bit slow, and its size was big enough for what I thought. ( Don't you think 20 Kbs is big enough? ;) It was completely written in SysRPL. Ver 2.0 In September 1994, I took the program in my hands again and I tried to improve speed... ML appeared in the source! Ver 2.1 In a pair of days in October 1994 when I didn't have much work, I rewrited almost the whole code to speed up ( making program work with strings instead of lists, ...) Ver 2.2b July 1995. I continued with the ver 2.1 ideas ... Ver 2.5 8/9 December 1995. I've got 2 days free and I've decided to finish the program ( at last!!! ). Now the code is more compacted, the library is less than 13 kbs, displaying routines aren't too much slow ... Well, I have a perfect game !!! ( right, right, it was just a joke ... ) 2.4 Known bugs -------------- Bugs? What are they? :))))))))))))))))))))) Seriously, I haven't found any ... , and you? NOTE: The game was written in a HP48 GX rev. P, if you have problems with yours, say me !!! 2.5 Source ---------- I've included the source with this program. The source was created using the great SADHP105, and adding some comments after. Methinks the best way to learn programming HP48 is to study sources of other people's programs and to see how each person solves different programming problems ... Don't be very critic with my code, I know some parts are very bad-written ( f.ex. the 2D display routine ), but I don't have time to rewrite them ( Nevertheless, don't they work? :) I hope this will be useful for anyone. I also have to thank again to everybody who includes the sources with their programs. 3. The Author ( hey!, that's me :) ================================= Well, my name is I¤igo Serna, and I am a Mechanical Engineering student in Bilbao ( Basque Country, North of Spain ). I have a HP48GX since November 1993 ( no, no, i didn't own a SX before ... ) and as I don't know what more to say I don't say more !!! My address: I¤igo Serna Avda. de los Chopos 41, 2øC 48990. Getxo - BIZKAIA - BASQUE COUNTRY SPAIN Email: imaseroi@S835CC.BI.EHU.ES Feel free to write/email me if you have something to ask, comment, have found a bug, ...