However, those methods were too easy and/or uninteresting. Therefore, here I'll describe a rather special mode that you could get your calculator in. That mode seems ideally suited for the creation of those strange hexadecimal strings. And besides, its very existance is quite unbelievable... unless you try for yourself!
First of all, let's create a program that includes all the digits. For example, this one will do nicely:
F-PROG
00. K SUB a (AA) 01. K STO b (BB) 02. K x<0 c (CC) 03. K RCL d (DD) 04. K x=0 e (EE) 05. 0 (00) 06. - (11) 07. F x2 (22) 08. K 6 (33) 09. STO 4 (44) 10. K 1 (55) 11. RCL 6 (66) 12. K x!=0 7 (77) 13. K JMP 8 (88) 14. K x>=0 9 (99)
F-AUTO
The whole point of this "program", of course, is that it contatins every possible digit, from 0 to 9 and from A to E. There are some hackers' ways to force a FF code into your program, naturally, but all of them are somewhat time-consuming, and they aren't needed here anyway : the empty spaces before address 00 of user program will do as well as proper FF's. The second digit in those codes doesn't really mean anything : the only reason for doing it like this (with second digits identical to the first ones) is that it, quite simply, looks better :)
Let's go. 1 EXP 6 EXP 99 EXP STO c. This will create a "E000000". You can change the number of digits in this "number" by modifying the first exponent to 5 or 7: for example, "1 EXP 5..." would give you a "E00000" (you can also use 1-4, 8 and 9+, but it would lead you elsewhere during the next step). Now, press "EXP . 0" (don't forget a "point"). Surprise, surprise : you suddenly are in programming mode (and, incidentally, you've just entered a FF right into your program; it is very far from the start though). In this mode, everything already works strange : the key "K" seems to be always active and if you'd try to press a simple "-", you'd get a "special" monster : an "ErrOr ,,,". However, let's not play with beasts right now. Use instead "RET/0 RET/0 JMP RET/0". That's it. You're now in Pseudo-Writing Mode (PWM or, in Russian, PSCH).
Most keys that would normally allow you to write or run programs, now operate quite differently :
Inserting an "empty hole" (F) into your number is done with a same technique, but you should exercise extreme caution. Instead of simpe shifting by EXP /-/ 1 you must always use a more complicated procedure : EXP /-/ 1 . STO a STO a Cx ENTER ENTER ENTER. After that, you can add trailing zeroes to a number in A : K RCL a, clean up the stack (Cx ENTER ENTER ENTER), call up a halfway-completed string (RCL a), go into a programming mode, find an empty code (before an address 00) and do the usual EXP STOP/RUN.
Looks hard? Never mind. There's at least one tip to help you do it quicker. Remember that JMP and SUB temporary change the part of your program you're looking it? Well, you can use a code of EXP key - "0C" immediately after them to immediately pick up the first letter of a code on this another part of your program! For example, if you were to press JMP 0C with a "program" at the top of this page, it would pick up letter "4" and make it the first digit of an on-screen number. So, if you think you're going to need a lot of a certain letter in your string(s), simply place its code on location 09. And if the code you need is too far away (say, if you wanted to add a "9" right after "-"), you don't have to step all the way through the program. Just get up to 10 steps from this code you need, press SUB 0C, and that's it!
Amazing? You bet. If a little Soviet calculator can boast such crazy features as those (and have you read all the other articles on it?) - then how can you be sure that all other calculators, computers, house appliances or airplanes don't have those? Can you imagine a win98 machine that reacts to certain keys by going into a mode when Control-Esc will cause a power shut-up, and Alt-Esc will format hard disk? VCR erasing all your tapes when you press PLAY with STOP together? WHY NOT? WHO ARE YOU? WHY ARE YOU DRAGGIN ME AWAY FROM MY...
:)
The content of this page is based upon the article from the magazine "Technica - molodyozhi" (technic for the youth), june 1987 by Mikhail Pukhov. That article mentioned S. Bannikov (Moscow), I.Emelianov (Jakutsk), B.Muradov (Zhukovskij) as the first discoverers of pseudo-writing mode.
This page is (C) Gregory Escov 1998. Please contact me at gryn@tangram.spb.ru if you want to do anything with it..