The Museum of HP Calculators

HP Forum Archive 14

[ Return to Index | Top of Index ]

Voyager Hexadecimal tests
Message #1 Posted by bill platt on 8 Oct 2004, 2:43 p.m.

(Thanks to Jordi Hidalgo for the 12c ON-PMT key sequnce info below. I have added what I noticed on the 11c. Have at it--what do you think of this? Try it on the 15c, and 10c and 16c, too, if you can). I don't know if this sequence "messes up" operation, requiring master clear--doesn't seem to).

FASCINATING! try "ON-PMT" simultaneously on the 12c. (put the number three in the x-register first. Then, go f-prefix and hold, and you will see: 0000000o000 )

Now, the ON-PMT also toggles the "BEGIN" annunciator--in an interesting way: start with machine on, do ON-PMT. Nothing different.

Now, start with the machine off, and do ON-PMT, and you get the "BEGIN" annunciator. now do PMT-ON and the BEGIN goes off, now do it again--no change.now do it the other way, and the "BEGIN" is back.

Actually, do the ON-PMT, then push PMT and hold, and toggle the ON button, and you see the begin come on--and you also see the x-register start toggling through previous values of some sort---

There is also a scrolling or toggling (not sure which) with the ON-PMT or PMT-ON sequence, which brings back older x-register contents--but it does not seem to be R-down--something else entirely!

Are we onto something hackable?

BTW, try the same thing with the 11c, except use ON-Y^x, and you get exactly the same thing as the 12c! (use f-prefix again to see the hex code). Except you cannot get the BEGIN annunciator behavior :-( (the y^x function does its thing).

Actually, there is something strange on the 11c here, too:

Do exactly this:

2 ENT ENT ENT 3 Y^X and hold the button push on and release, leaving your button still depressing the Y^X.

You get 1.000046053

Sometime, I get the "USER" annunciator hfter these sequences on teh 11c, but I am not able to reliably reproduce it----maybe it is because I have a program labelled "D"

Lots of food for thought here.

Regards,

Bill Platt

Edited: 8 Oct 2004, 2:48 p.m.

      
Re: Voyager Hexadecimal tests
Message #2 Posted by Nelson M. Sicuro on 8 Oct 2004, 3:56 p.m.,
in response to message #1 by bill platt

Take a look at this page, it is a description of this behaviour on the HP-15C and using it to "browse" its internal registers!

The same key-sequence on the 15C is ON/D, this is a RESET procedure and actually changes some bits on the X register, showing some very weird numbers on the display. He said something about hex digits on it, but I'm not so certain about it - I think that our friend Erik Smith can explain it better.

Best regards,

Nelson

      
Re: Voyager Hexadecimal tests (short)
Message #3 Posted by Vieira, Luiz C. (Brazil) on 8 Oct 2004, 7:50 p.m.,
in response to message #1 by bill platt

The HP16C gives interesting results as well...

            
Re: Voyager Hexadecimal tests (longer)
Message #4 Posted by Cameron on 10 Oct 2004, 8:55 p.m.,
in response to message #3 by Vieira, Luiz C. (Brazil)

Hello Luiz. Interesting, yes! Very curious too. Let me quote from the source code of my 16C simulator:

	  // Believe it or not, this is the effect of ON/A and ON/D on the X
	  // register. I cannot fathom what really goes on under the bonnet
	  // but I can observe that this is the manifest result. What we're
	  // doing here is converting the first bit pattern into the second.
	  // The values of the bits are not relevant. Focus on the positions.
	  //    6         5         4         3         2         1         0
	  // 3210987654321098765432109876543210987654321098765432109876543210
	  // ########HHHHHHHHHHHHHHHHHHHHHHhhhhhhhhhhhhLLLLLLLLLLLLLLLLLLLLLL
	  //
	  // ########LLLLLLLLLLLLLLLLLLLLLLHHHHHHHHHHHHHHHHHHHHHHhhhhhhhhhhhh
	  //
	  // For example, the value on the left is transformed into the value
	  // on the right.
	  //
	  //		0x88fffffc003fffff ==> 0x88fffffffffff000
	  //
	  // Excuse the profligate use of intermediate values. This won't get
	  // run too often and they allow me to see what's going on in the
	  // debugger.
	  //
	  WDINT64 mask = 0xff;
	  mask <<= 56;
	  WDINT64 HH = xval;
	  WDINT64 hi = HH & mask;
	  HH = HH & ~mask;
	  mask = (1 << 22) - 1;
	  WDINT64 LL = HH & mask;
	  HH >>= 22;
	  LL <<= 34;
	  WDINT64 result = hi | LL | HH;
	  xval = result;
	  dispval = xval;

That's what I observe that it does. The real question in my mind is "why"?

Cameron

      
Re: Voyager Hexadecimal tests
Message #5 Posted by Jordi Hidalgo on 9 Oct 2004, 2:52 p.m.,
in response to message #1 by bill platt

Hi Bill,

Make sure you read the article "HP-15C Synthetics" by Allyn F. Tennant, published in the Jan/Feb 1983 issue of the PPC Calculator Journal (V10N1pp49-53), which, as you all know, is available online on the other site.

Regards,

Jordi

PS: See also Allyn's letter in V9N8p4.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall