harlow@plains.UUCP (Jay B. Harlow) (03/23/90)
Hello, With the advent of the hp48sx, i got looking on my 42s, boy guess what i found! the memory scanner..... (gee why not on the hp28? 'debugging' features: key function on-sqrt(x) reset on-log single tests (see below) on-ln continuous tests on-sum+-xeq memory clear! Single tests: key test sum+ SPD ?? 1/x BEEP sqrt(x) DISPLAY, 7 'steps' of any key log ROM ln DRAM xeq URAM sto KeyBoard, need to press from upper-left to lower-right sum+, 1/x, sqrt(x)...... . r/s, + rcl ESD ?? rdn(pi) ok message backspace(clear) MEMORY SCANNER!!!!!! ;-))) Memory Scanner: key function up-arrow +1000h nybbles dn-arrow -1000h nybbles div-key -100h mul-key +100h - -1h + +1h cos +16h, xmit on infrared??? (no printer to check) 0-9,a-b enter a digit into memory, +1h (like base app) . execute address in ROM??? backspace refresh Addresses: 40000-4020c display 4020c-40xxx status line 50000 memory 503f6, 2 len alpha reg 502f8 alpha reg 50082 last key ?? 50084 key buffer head, tail 50086 16 byte key buffer ; table of 5 nybble ptrs 500b8 ptr to top of stack, this is indirect, & points to last byte of stack, go left or lower in memory CAN HAVE MORE THAN ST X, ST Y, ST Z, ST T, ST L 500d6 ptr to program end? 500db ptr to REGS var, & rest of var list ; inst table? ; nybble len ; str name ; addr address? ; 5 nybble address???? 1db62 ABS 1e8a8 XFCN 1e9fa [MIN] 1ea2d 'TED4ME' ??? looks like a function but no work.... 1ea3f 'DDST X' ; i have a whole list of em, but to lazy to type em in..... 'New' instuctions..... XFCN str wants a program label?, needs something else always says 'Nonexistent' [FIND] find a value in an array. 01 INDEX "REGS" ; look in this array 02 2 ; number to look for 03 [FIND] ; look for a 2 (ST X) 04 RCLIJ ; where found [MIN] find the minimum in array [MAX] find the maximum in array this two look in a single column returns: ST Y - row where found ST X - value 01 3 02 ENTER 03 DIM "AA" ; a sqauare 3x3 04 1 ; starting row 05 3 ; column 06 STOIJ ; look in third column 07 [MIN] ; or [MAX] Well for now thats enough? Hope you enjoy these new findings, Jay B. Harlow -- Jay B. Harlow <harlow@plains.nodak.edu> uunet!plains!harlow (UUCP) harlow@plains (Bitnet) Of course the above is personal opinion, And has no bearing on reality...
umapd51@sunb.cc.ic.ac.uk (W.A.C. Mier-Jedrzejowicz) (03/24/90)
Many thanks to Jay B. Harlow for posting his discoveries on the HP-42S. Most of what Jay describes has already been covered on comp.sys.handhelds, on the HPHH echo in FidoNet, and in user club magazines, but there are always new readers who have not seen the earlier postings, so there is no harm in posting again. My point in writing this is to tell keen HP-42S users that the most recent issue of the journal of the Danish user club has an article IN ENGLISH on just these HP-42S topics. XFCN is explained there as a command to execute a machine language function which the user can enter direct into RAM with the debugger. I submit a list of user club addresses to this area from time to time, maybe the arrival of the HP 48SX and the subsequent increase in interest in all HP handhelds means I should submit an updated address list again. Might I ask anyone who knows of new clubs or of address changes to send information to me personally, and I shall post an updated list on comp.sys.handhelds in about a week? Some users of electronic mail and bulletin boards feel that the Guthenberg technology is best left to die - but I feel that both technologies have their uses - a club journal is much more useful on a plane flight or a train ride than is attempting to download and read a bulletin board article under those circumstances. Wlodek Mier-Jedrzejowicz, Space Physics, Imperial College, London UK, Disclaimer: my opinions, if they are opinions, are not the opinions of my employer, if my employer has opinions.
bruce@hpcvra.CV.HP.COM (Bruce Stephens) (03/28/90)
Let me dispell any misconceptions about the use of XFCN on the HP-42S. It is totally useless in any machine covered under HP's warranty. It could possibly be used if some machine happened to have a static RAM or an EPROM accidently stuck onto its circuit board and a trace or two broken or solder-bridged on the circuit board. If such a calculator happened to have this configuration, it would have memory at address 20000 (hex). In a really bizzare twist of fate, if the first five nibbles at that address happen to be F3CA5, the HP-42S will not give the usual "Nonexistent" error. Instead, the CPU will do a subroutine jump to address 20005 (hex) and execute whatever assembly level code happens to be there. It is possible that this code could even look at the value of the mysterious parameter to XFCN and do different things based on its value. All of this would be fairly difficult given that this is a "closed" machine, whose internals are not documented or supported by HP. Bruce Stephens