It's Long Ago !
At the beginning of 1984 - my civil-services came to an end - I realized, that I didn't possess any pocket calculator and that I would need one for my studies. So I made inquiries for these "artists of calculation" at my friends and in stores to find a suitable model for me. From school I knew that Texas Instruments, Hewlett-Packard, and Casio were manufacturer of calculators. My father owned a Privileg 1081 ESR-E made by Quelle (a German model). I made eyes at a Casio when I visited my cousin, who showed to me his HP-41CX. Immediately I was filled with enthusiasm - this one I must have, too ! :-)
Then, in February, 1984 I purchased for 865 DM at that time the world's best pocket calculator - or "handheld computing system" - the HP-41CX made by Hewlett-Packard ! The calculators of the HP-41 series were the world's first alphanumeric calculators, this means they could not only display numbers but also letters. Many functions were hard coded, it was programmable and there was the possiblity to plug in four modules at the top end - undreamt of possibilities arose ! Additionally HP offered many modules with programs ready to use.
Then the little consternation, when I held my HP-41CX for the first time : there was no "=" key !? But there was a big "ENTER^" key - what meant this ??? RPN - reversed polish notation - was the answer ! Once you are familiar with RPN you never want to miss it - especially if you have to perform longer calculations ! Contrary to today at that time the calculators were delivered with thick and detailed descriptions - the handbook of the HP-41CX I want to call exemplary ! All functions and possibilities were best described, so that I got familiarized in short time and soon wrote my first programs.
--- The art of programming is game programming. ;-) --- Shortly later my programs grew bigger and bigger and memory went short. The solution for this dilemma was the so-called "synthetic programming". With its aid new characters became available, the alpha register could be used as four additional registers, the flags could be administered more thoroughly and more. Rapidly my programs used "synthetic programming" as an indispensable element and some of the game programs were not feasible without it !
Those of you who have no idea what I'm talking about and what wonderful toy ;-) a HP-41 is or don't have any knowledge about "synthetic programming" should take a look at these links. However, there are interesting pages for the sophisticated HP(-41C/CV/CX) fan, too !
Since 17 years my HP-41CX is working. Once in this time I bought a new rechargeable battery - otherwise my HP-41CX and the card reader are functioning without any problems ! The keyboard, too, works properly without defect, though I treated it very hard in my "hot" programming phases ! I'm absolutely shure, that it will work many years on ! That's quality !
A Shortcoming . . .
Of course, there is a little deficiency within the HP-41CX ! ;-) This is, as you assume, its speed ! It should be much, much higher ! ;-) Fortunately, there was remedy : in autumn 1985 I tuned my HP-41CX by W&W Software Products GmbH in Bergisch Gladbach for 120 DM. They performed a so-called "TURBO" alteration. This accelerated the speed by a factor of 1.6 to 1.8. All programs (including the machine code programs like "PACK") run faster. Keypressing is faster, too. Because the card reader is able to read, but cannot write with "TURBO" speed, on the left side there is a microswitch to switch over the HP-41CX back to normal speed. Additionally, I have one more microswitch to prevent the extended memory from being cleared in case of "MEMORY LOST". Now I could start . . .
My (Game) Programs
Following I want to present some of my programs. For I'm a little bit stupid I did't record the date when I wrote the programs, but it was the interval from 1985 to 1990. I'm sorry for not being able to provide bar codes of the listings. So, in case you have to type in the programs by hand ! Another possibility is to send me cards, so that I can write the program on it.
These are the (game) programs, which in my opinion are worth to be published. Nearly all make - more or less - use of synthetic programming techniques (in most cases to save memory). Some of the programs are so large, that they don't fit in the main memory "in one piece". Due to this a part of the code is stored in the extended memory and is executed there by means of synthetic programming methods. What you have to pay attention for in these cases is described in detail on the individual pages, respectively.
All these programs do run fine on my HP-41CX, but - you know ;-) - use on your own risk ! If you encounter some bugs in the program listings, this happened through the transcription to HTML - please, let me know !
Usually the listings look like they are printed - with the exception, that the synthetic functions look totally different (nonetheless you can identify them with the aid oy a byte table). For better readability I typed the function name like you enter it. Another "problem" represent synthetic lines, whose content is copied into registers. In this case characters disappear and/or you cannot recognize the bytes, respectively. So I put the hexadecimal value in parentheses behind the statement.
Back to Natural Sciences and Mathematical Games
Back to the starting page
Kai Schröder, 30.5.2001