The following warnings occurred:
Warning [2] Undefined array key 9180 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9186 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9200 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9201 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9204 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9206 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9263 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9274 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9275 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9289 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $thread - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $fid - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9186 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9275 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 9289 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $lang - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Attempt to read property "messages_in_thread" on null - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks





HP-41 Synthetic Programming Conspiacy Theory



#2

I was thinking today (Yeah, dangerous, I know).

If we think back to the release of the HP-41C and how this was reported in PPC, it seems possible to me that HP lent a hand in the "discovery" if not the creation of synthetic programming.

Some time ago I thought I would re-read PPC articles just to see how HP-41C synthetic programming was discovered and developed. Imagine my surprise to find that quite detailed knowlege of it was evident right from the first review of the calculator.

As I think back to that time, it was a point when TI and HP were going hammer and tong (as were their users) to prove that they had the better calculator.

Calculator owners back then were pretty technically minded, a bit like the first computer owners, the first internet users, etc. What better way to attract them than provide a host of interesting and dangerous features? What better way to make them the subject of cult following by officially denying, if not their existance, certainly any support.

But did they REALLY deny support? It would have been quite easy for HP in one of their ROM revisions to make many of these synthetic functions (such as RCL c, or STO M) result in a NONEXISTANT error, but they didn't.

Some calculator bugs were fixed quite soon. But these were ones that could cause strange (and perhaps destrucive) behaviour in normally written code. These included the STO IND, and SF/CF IND bugs, and the non-decompiling when switching out of program mode. But those bugs that gave access to synthetic programming (Deleting program lines in CAT mode and strange key assignments were never touched.

So, I wonder.... Who was it who made the policy decision? Who in HP either briefed users as to what these instructions were, or who provided information in such a way as to allow its easy "discovery"?

Hmmmmmmmmmmmmm.....


#3

Well, in the August 1979 issue of PPC, HP published (if my memory is correct) the HP41 Byte Table with a discussion of how functions were formed.

Surely, it must have occurred to some of our PPC forefathers that if these two bytes came together to form STO Y, then if they went down the line they might get other STO d type functions.

All that remained was finding out how to put the bytes together.

Also, since bug 2 allowed arbitrary storage of data into program registers (and more), strange functions showed up there too.

The most-fun bug, IMO, was the bug 3 allowing a SF IND 01 to turn on someone's BAT indicator. Quite fun for a high school student to do that to someone's HP41..."Darn it! I just put new batteries in this thing yesterday..." :-)

#4

What I would like to know is how the SP pioneers discovered just WHAT those odd byte combinations did. Creating the combinations was a feat all by itself, but finding out the meaning of the new instructions is way more complicated.

Consider, for example, how they found out that register c had a '169' smack in the middle, and that messing with it was a sure-fire way to get MEMORY LOST. And this knowledge seems to have come really early in the game.

On the other hand, there were odd "catalogs" full of mysterious functions (remember eG0BEEP?) that were never fully understood.

If Richard Nelson or Roger Hill are lurking, how about commenting, pretty please?

-EM


#5

I think discoveries like eGOBEEP were the "real" discoveries of synthetic programming.

The rest were pretty much known from the release of the first HP-41. Hence my initial posting.


#6

Just out of curiosity, do you know if the HP-42S recognizes SP instructions? That machine was advertised as being able to run HP-41 programs. I have never as much as seen a 42, so I don't know from personal experience.

Regards,
-EM


#7

The HP42S will recognize only a limited number of "synthetic" instructions.

By entering the Debugger on the 42S, you can actually type in the exact byte sequences that you want to construct any HP41 synthetic instruction.

Unfortunately, for most of them, the HP42S will reset them to "normal" type instructions when you exit the debugger.

What CAN you do synthetic-wise on the HP42S?

Well, one of the last issues of HPX devoted most of it's space to this topic. My memory is that you can make long labels LBL 'ThisIsAnExampleOfALongLabel' and other things, but nothing overly useful. No STO d, etc.

That's one reason why investigations into it on the 42s died off.

Gene


#8

On early HP-42S revisions, you could change the 'speed constant' (or delay) to a different value.
This way the machine worked faster until the next shutdown.
On those machines, you could write a program to speed it up, and call it whenever you needed it. On newer machines, you had to change the value inside the memory browser by hand, and every time you needed it.

AFAIK, the program for changing the constant uses some kind of X<> IND xx with an illegal value for xx, which doesn't work on the newer machines.

Regards,

Raymond


#9

What was the advantage of running the HP42S at anything slower than maximum speed?

Was this a way of HP equalising the performance of different machines or making sure they worked over the full temperature and voltage range?

Anybody know the instructions for speeding the HP42S up?


#10

Here it is:

http://members.aol.com/hpgene/hp42fast.htm

Other useful stuff there too.

Gene

#11

Would a speeded-up machine would take a hit in battery life, too? Perhaps HP chose a balance? Perhaps the test labs had a mother-in-law going, "That's too fast! Slow down!!"?


Possibly Related Threads…
Thread Author Replies Views Last Post
  HP-41(CL): The easiest way to transfer FOCAL programs from a Linux PC to the HP-41 Geir Isene 13 5,555 12-05-2013, 02:40 AM
Last Post: Hans Brueggemann
  HP 41 Advanced Programming Tips Michael Fehlhammer 0 1,148 11-28-2013, 06:11 PM
Last Post: Michael Fehlhammer
  OT--Found!!! An HP reference on 'The Big Bang Theory' Matt Agajanian 0 1,093 11-08-2013, 10:23 PM
Last Post: Matt Agajanian
  Non-Prime question alert: Hp-41 and synthetic instructions Marcel Samek 11 3,953 11-04-2013, 09:31 PM
Last Post: sjthomas
  OT--'The Big Bang Theory' and RPN/HP--Any connections? Matt Agajanian 19 5,163 09-05-2013, 08:27 AM
Last Post: Adrien Bertrand
  Programming CMT EPROM modules for HP-41 Paul Berger (Canada) 4 1,871 01-22-2013, 06:04 PM
Last Post: Paul Berger (Canada)
  HP-41 CMT EPROM & ZEPROM Programming Dan Grelinger 3 1,437 11-26-2012, 02:42 AM
Last Post: Diego Diaz
  HP-67 and Synthetic Programming Matt Agajanian 3 1,458 05-11-2012, 04:37 AM
Last Post: Olivier De Smet
  OT: "The Big Bang Theory" actress visits the Datamath Calculator Museum Joerg Woerner 8 2,537 03-07-2012, 03:15 AM
Last Post: Johnny Bjoern Rasmussen
  hp 41 synthetic programming Sok-khieng Chum Hun 7 2,529 05-15-2011, 01:09 AM
Last Post: Sok-khieng Chum Hun

Forum Jump: