The following warnings occurred:
Warning [2] Undefined array key 77020 - 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 77049 - 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 77051 - 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 77054 - 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 77060 - 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 77061 - 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 77062 - 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 77064 - 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 77065 - 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 77068 - 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 77072 - 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 77073 - 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 77075 - 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 77076 - 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 77078 - 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 77267 - 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 77061 - 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 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 77076 - 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 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 77062 - 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 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 77068 - 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 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 77267 - 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 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





Printing Scientific Calculators



#17

Has any company made a printing scientific calculator in recent years? I haven't seen one since the HP-97. There are a large number of printing basic calculators that are still in production.


#18

I haven't seen printing scientific calcs on the shelves in years.

There are a few however, from the very late 70s, and into 80s.

Canon has produced a couple - I have an FP10 on my desk, has flourescent VFD ('green tube') display, basic sci functions (log, trig, P<->R, basic stats, along with a tape printer. This is certainly not a handheld calc but is not a full desktop either - it can be held/used in hand easily.

Canon produced a later version that had, as I recall, an LCD display and smaller printer. It was slightly smaller but still was not really 'pocketable' and was still best for desk use. I recall seeing these somewhere around 1982-1984 for some time. (They seemed to stay on stores' shelves, too!)

I believe TI had a printing version of something like a TI30. It was, as I recall, an LCD calc. Joerg's Datamath museum might have a pic/description of it.

Sharp produced a printing ELSImate scientific calc, EL550, in the 80s too. I have this and need to put some new thermal paper tape in it. This calc has an LCD, usual log/trig funcs, hyperbolics, P/R conversions, D.MS<>D.d conversions, and basic stats - along with a thermal printer. Its physical appearance and KB layout is very similar to the early 80s EL506P, which was a fairly thin-profile 'shirt pocket' LCD calc that came in a folding vinyl wallet. The EL550 printing calc is just 1/4" thicker (so as to take AA batteries and contain print unit) and about 1.6" longer (for printer unit above LCD).

Do remember that various Sharp, Casio (and thus Radio Shack) LCD 'pocket computers' that were programmed in BASIC but that also offered calculator modes sometimes had accesory printers for them - much like the HP41C. The TI95 calculator (as well as its sister, the TI74 pocket computer w/BASIC) had an accessory printer as well, as did its predecessor, the CC40 computer.


Bill Wiese

San Jose, CA USA


#19

All the HP48's (possibly excepting the 48GII?) can print via IR. The 49G+ has IR, but I don't know if it will print that way.

I know it's not the same. I posted my opinion in an earlier thread that HP lost something when they went to the systems approach with the 41C. The HP-97 is still my favorite machine to do calculation on, due to it's nice big buttons, gorgeous display and great printed output. I like the 41C, don't get me wrong. It's much nicer to program than the 97, and it has networking that's almost recognizable as such from today's perspective. But I'm not aware of any small desktop machine that comes anywhere near the HP-97 for usability as a calculator.


#20

Hmmm... Maybe it would be fun to design an upgrade module for the HP-97 to add memory and make it (mostly) compatible program-wise with the HP-41C family. :-)


#21

Hey Eric,

Your HP9x mod ideal would be wonderful and a good shortcut to reality.

All this talk here of building our wonderful supercalc has gotten into the minutiae of this vs. that CPU, C vs. assembly for emulation layers, what kinda display, etc. - when the bottom line is that the above is absolutely irrelevant, as any even 4-bit CPU today could emulate an HP. (Well, maybe that's pushing it for a 49, but then I'm only into 'real' RPN calcs up to, say 42S - no 48/49 for me.) And to have a daily-use calculator, you don't want it in a hokey RadioShack or Serpac 'project box'.

Folks here don't realize the ergonomics, look and feel of a good calc will be hard to duplicate by the midnight engineers unless we can pony up at least $100K for molds, keytops, etc. And that would just be for prototypes for a few of us. Wouldn't be in shape for sale. This has been the problem for the OpenRPN group.

Using existing HP desk calcs - whose KBs and cases and displays are often still in good shape - would be wonderful. For an HP9X desk calc, power and space are nonissues.

Dot-matrix alphanumeric red LED display sticks are available and are easy to 'talk to' - that way, we can have a 41C or even 42S-grade display. Dead or hard-to-talk-to printers can be replaced with printers from scrapped other new $15 four-banger accounting calcs (and small printers can be purchased from DigiKey, Mouser, etc. though it's prob cheaper to rape some new calcs.)

No need for card reader. Combined with scrap 32MB SD or CompactFlash storage, this hack calc will hold every known HP library program in existence plus data tables, text, etc. - plus whatever programs the owner has dreamed up. RS232 + GPIO parallel I/O is trivial.

Running a 41C or 42S emulator is entirely possible using a $1 8051 - with C code written in SDCC. The emulator code would have 'escapes' in it to translate to new display, I/O units, etc.

[I have a Rockwell 350 sci desk calc with a great fullsize KB and green VFD display. The accuracy of this calc is terrible, though. Time for some new brainpower - this would be a good HP45 candidate due to key labelling. Since this has 'normal' keys a la those on quality terminals, I'm sure I can find a keycap that says "ENTER" on it (replacing 2 keys, but then parentheses are not needed w/RPN!).]


Bill Wiese

San Jose CA USA

#22

Someone mentioned in another thread that you had been thinking along those lines. It's very interesting to me. My question in that thread ("Last of the Topcats?") was what if HP had retained the Topcat form-factor into the HP-41C generation? Since that beautiful display is one of the HP-97's strong points, let's also assume they somehow decided not to go to an LCD display on the desktop version of the 41C (HP-98C?) Then they might have come up with something like you envision.

Mike's comments echo things that others have said in that he'd like modern I/O and memory options. I'm torn on that point. I'd like to be able to easily talk to the 21st century with a hybrid calculator. But I'd also want to be able to talk to my ancient machines, like the HP-41, 75 and 71. That means HP-IL. That also appeals to me since I think it's a cinch that HP would have included that if they had decided to build a high-end 41 in the Tomcat form factor.

On the other hand, there's nothing wrong with providing an SD or CF slot or two. I fear I risk displeasure from some of the purists when I suggest USB, but it's a widely adopted standard that would ease communication with a wide variety of modern platforms.

So, the guts could be a high-end StrongARM or PPC platform running an OS that could host a variety of emulations, one of which could be the stock 97, and another the souped up 41C. I wonder where we could get such an OS and such flexible software. Any thoughts? 8)

The primary UI would be the physical calculator, but you could also run X11. 8) 8)


Edited: 22 Aug 2005, 8:41 p.m.


#23

Quote:
I fear I risk displeasure from some of the purists when I suggest USB, but it's a widely adopted standard that would ease communication with a wide variety of modern platforms.

Unless it has a USB device that looks like a serial device or bulk/mass storage, there's the issue of USB drivers on PC.

[quite]
...the guts could be a high-end StrongARM or PPC platform running an OS that could host a variety of emulations, one of which could be the stock 97, and another the souped up 41C. I wonder where we could get such an OS and such flexible software. [/quote]

This is the problem w/OpenRPN - why high-end? ARM, PPC? Are we trying to run a cruise missile?

... wasting time with all the theoreticals and being good little CompSCI students when ANY $0.50 CPU (say, 8051, 6805, PIC, TI MSP430, fast Z80 CPUs, etc) with some banked ROM can emulate any and all HPs except maybe the (useless to many of us) 48/49 series.

Some of these faster CPUs can really blaze, tools are free & easy to use. Emulation layer per calc/architecture would prob take under 8KB in addition to native firmware of calc to be emulated, plus another 2-4 KB for changed I/O (different display, KB handling, external serial and/or storage device). That's if the code were written in nicely structured C. A mix of C & assembly and some dirty programming would collapse that nicely.

No OS is needed. The calc's firmware, in emulation, is essentially the "OS". An interrupt routine might do some timekeeping stuff or aid in KB scans due to different instruction cycle times (faster).

A dot-matrix LED stick array could simulate HP41C or 42S displays which fit in nicely w/HP97 display housing + red filter.

Bill Wiese

San Jose CA


#24

Quote:
why high-end?

Why not? 8)

Yes, it's more costly. But remember you are starting out with the shell of an HP-97. Those aren't cheap, so we are definitely talking a high-end system here, before we even start with the computing platform.

Since you are going to switch emulations, that implies some sort of OS, even if it's just DIP switch settings. I know that Eric's software runs on embedded Linux because I've ported it to pdaXrom on a clamshell Zaurus. So if I were doing the work, Linux would save me time and effort.

But what really is attractive to me about a fully modern platform housed in a well loved high-end antique case is the possibility of the wizardry being invisible on the one hand, and very obvious on the other. What I mean is that an HP-97 emulation running on this platform could be nearly indistinguishable from a "real" 97. A low end system could achieve that too, I concede your point. But the high-end system could serve out the same calculator software over an integrated network to my desktop. Eric has some really, really cool software in Nonpareil. It all works with an X11 interface. I have no doubt that he could adapt most of it to run with physical keys instead of virtual ones, but the graphical whiz-bang could come along for free!

So what I see is a calculation appliance that could be the best of all possible worlds. It would have a desktop PC interface as well as the physical one. It would have enough computational power to make it a serious contender for the kinds of problems that are solved on PCs nowadays. (Matlab, R and many other such apps run fine on Linux, of course.) But it would also have the simplicity, tactile feedback and pure joy of using a wonderfully designed and executed piece of calculating hardware, the HP-97, the likes of which does not exist on the shelf today.

That's my "blue sky."

Edited: 22 Aug 2005, 10:11 p.m.


#25

Quote:
Yes, it's more costly. But remember you are starting out with the shell of an HP-97. Those aren't cheap, so we are definitely talking a high-end system here, before we even start with the computing platform.

I'm only building this because I have a 97 or two hanging around, one prob broken, can't recall.

Quote:
Since you are going to switch emulations, that implies some sort of OS, even if it's just DIP switch settings.

Why would you think that? Not at all.

You're making the situation way too complex. Your whole baseline system without the application or emulation layer is 100X more complex than the calc emulation and original application!

On power-up, say, one could hold down [2] and [1] keys for HP21, [2] and [5] for HP25, etc. (Or any kinda variation on a similar theme.)
This could simply latch a CPU GPIO pin in turn connected to encoder to select, say, an 8K bank of EPROM containing emulation code. The keyscan software, external to emulated firmware, would monitor for an "emulation switch" and change contexts. Or, just loads a few pointers to new code body and opcode decode/opcode emulation routines. Either way, this is maybe 50 bytes of code or a dozen lines of C code.

My definition of OS includes task switches, semaphores/mutexes, etc. even for a tiny 2-4KB RTOS. None of this is not needed here. We have one thread of operation w/occasional interrupt (if even necessary).

Quote:
I know that Eric's software runs on embedded Linux because I've ported it to pdaXrom on a clamshell Zaurus. So if I were doing the work, Linux would save me time and effort.

I have not seen the code lately but the core of Eric's emulation would be at least nearly platform independent. It's just moving data around in some emulated registers and performing some very very simple operations upon them. It wouldn't be hard to recast that to entirely neutral platform if necessary. The Linuxy stuff is only for display and KB traps and probably quite separable.

Quote:
But what really is attractive to me about a fully modern platform housed in a well loved high-end antique case is the possibility of the wizardry being invisible on the one hand,
and very obvious on the other. What I mean is that an HP-97 emulation running on this platform could be nearly indistinguishable from a "real" 97.

So would mine. And that's what Eric is probably talking about too - doing a 41C-like project on a 97 platform.

[quoteA low end system could achieve that too, I concede your point. But the high-end system could serve out the same calculator software over an integrated network to my desktop. [/quote]

Why go to that grief? Just run the regular Ericware emulation. No need for 'server'.

Quote:
Eric has some really, really cool software in Nonpareil. It all works with an X11 interface. I have no doubt that he could adapt most of it to run with physical keys instead of virtual ones, but the graphical whiz-bang could come along for free!

It is very cool - for a PC Win or Linux box. On raw native simple hardware it's not needed, and I'd bet he'd agree with me.

Quote:
So what I see is a calculation appliance that could be the best of all possible worlds.

Ooooh, statements like that scare me ;)

Quote:
would have a desktop PC interface as well as the physical one.

I'd think at best just squirting text files over RS232 or onto a CF or SD card would be fine.

Quote:
It would have enough computational power to make it a serious contender for the kinds of problems that are solved on PCs nowadays. (Matlab, R and many other such apps run fine on Linux, of course.)

The only reason calcs had higher-order stuff like that was because calcs came of age when minicomputer time was valuable. As calcs evolved, PCs were too expensive for late HS and also colleget math students.

Anyone doing 'big math' on a calc has my sympathies. For that I use Matlab/Maple, etc.

Calcs are good for general 'playing with numbers'. Don't even need Solve & Integrate (unless it were for core of a calc-based application that I wanted - for example, ballistics for me.)

The HP48, 49 got so complex, to me, that they're lost causes. They solve problems that can be more appropriately solved elsewhere. I had a 48SX and gave it away. Someone else gave me another 48 and I gave that one away too.


Bill Wiese

San Jose, CA USA


#26

This discussion may indicate why it's difficult to actually bring one of these projects to fruition. There are divergent views on what makes an ideal machine. I'll try to lay out my value system for you, to give you an idea of why I make proposals like the one above.

I hear your complexity argument. I also think the HP48 is overkill for a calculator. It seems to me that the complexity issue might have been as or more important a factor than cost in the loss of the education market to T.I. for example. I like the simple interface of the HP-97 and the HP-41.

But while I think the HP48 missed the mark of usability, I have lots of fun playing with its power. If I'm near my desk and I need to run a quick calculation, I use the 97. If I'm elsewhere, the 15C is handy. But if I sit down to have fun playing with a fascinating calculating machine, the HP-48 competes on an equal footing with any machine in my collection. So I appreciate a "gee-whiz" factor in my work, and in my hobbies.

But still there's the fact that I would choose the 97 over any machine I know to do strictly numeric computation. The great, easy to read display, the big fat keys that are perfect for all ten of my thumbs, the convenience and audit trail of the printer and the simple but powerful programming model I can call on if there's repetitive work all combine to make the machine seem ideal for that sort of stuff.

So here I have what might at first glance seem to contradictory values: simplicity in form and function, and complexity in pursuit of computational power and elegance. But they aren't contradictory. Complexity can be hidden from the user. Well crafted interfaces can do that. Now,

Quote:
Using existing HP desk calcs - whose KBs and cases and displays are often still in good shape - would be wonderful. For an HP9X desk calc, power and space are nonissues.

Oh, yeah! What is more elegant, more ergonomic, better designed or more appropriate for its task than the zenith of HP small desktop calculators? So I'm enthusiastic about that aspect. But why stop in the late 80's with the technology upgrade? If we want to implement a modern memory architecture, why not go all the way? I mean, cannabalizing (hopefully non-working) Topcat calculators to turn them into "frankencalcs" (In Luiz Vieira's memorable words) is never going to be a production effort. These would all be custom jobs to greater or lesser degree.

A digression about PDAs. They make lousy calculators, I'm sure we can agree. The reason is they aren't designed for that sort of thing, and so lack appropriate features like good keyboards. I have a Treo 600 smart phone. It's a PalmOS device with a keyboard that is fully alphanumeric, but so incredibly cramped that I'd rather chew glass than have to type on it for very long. Why do I put up with it? Well, combining the phone and the PDA means I only have to carry one device instead of two. But put the guts of the PDA into an HP97, and I think you have something that is greater than the sum of its parts.

So if you are going to do a custom job, why not customize to the hilt? What could you gain from that? Well, emulators like Nonpareil could run pretty much unchanged, for one thing. A new UI class or three would have to be written, but if that's done carefully, then it wouldn't have to be repeated for each new simulation. (I know that there are dependencies on the UI that Eric would like to remove. This could be the opportunity to do that.) You'd also gain instant compatibility with the 21st century. Forget USB, go for WiFi. Or just implement a CF slot or two and let the user decide how to fill them. Finally, there are oceans, mountains, planetoids of code out there being written for Linux, and most of it available for inspection and use under the GPL. Maybe 1/100th of 1% would be relevant to a project like this, but the total amount is really, staggeringly huge, so those end up not being bad odds.

Which also means I can't really tell you all the benefits that might accrue from making the hardware and software more capable than they need to be for the job at hand. My imagination, like everyone else's has limits. But those limits aren't the same for everyone. that means someone else could easily imagine something I'd struggle with, and vice versa. Making the machine as programmable as possible means you have a better chance of accomodating the next really good idea, whatever it might be.

#27

Agreed, being able to print to a separate printer isn't quite the
same, but it can be quite useful, especially when the printer is
"handheld" sized.

The 48gII and 49g+ can print via "RedEye" IR to the HP 82240A/B
printers, and some Martel Instruments printers, but the range is
greatly reduced. Of course the 28C/S and 48S/SX/G/GX/G+ will print
to these via IR. Note that the 49G doesn't have any IR capability.

The 49g+ will also print via IrDA if you set it to print "via
wire" and transfer via IR. Conn4x's "screen capture" capability
depends on setting the calculator to both print and transfer via
wire (meaning USB for the 49g+), and then doing a PRLCD operation.

The 48S/SX/G/GX/G+/gII and 49G can print via "RS-232 compatible"
wire too, if set to both print and transfer via wire. If set to
print "via wire" and transfer via IR, these models (except the
49G) will print via "Serial IR", which can be captured on another
calculator using the INPRT program or one of its variants. It
shouldn't be too terribly difficult to build a Serial IR to RS-232
adapter; maybe such adapters are commercially available?

In all cases of "via wire" printing, "special characters" can be
translated, depending on the setting in the reserved variable
IOPAR (which can be set with the TRANSIO command). In general,
printing of the 48 and 49 series is affected by the reserved
variables PRTPAR and IOPAR, and system flags -33, -34, -37, and
-38.

Regards,
James


#28

I'd heard the 49G lacked the IR port, but I wasn't sure about the 48GII.

To me, the appeal of the 48/49 machines is the sheer geek glory of hundreds of built in functions and a powerful programming model. (Models, actually.) I would never use the keyboard on one of those machines, even one of the well-built 48s, as a matter of preference to do ordinary calculation with. The keyboards cram too much into a small space for them to be easy to use.

#29

Yes, my Sharp EL-5520 "Scientific Computer" can print to the Sharp
CE-102 "Printer and Cassette Interface", and, with various level
shifters, can communicate via RS-232 as well.

No doubt if the calculator is to be used only at a desk, a
built-in printer is preferable, but if you want to also carry the
calculator around, a separate printer seems better.

It's been a long time since I've really used the EL-5520, but if I
recall correctly, in "CAL" mode, it's a non-programmable
"scientific" calculator, and in "BASIC" mode it's programmable.

Regards,
James

#30

That would be nice to see printing calculators again. The only ones I know of were produced in the 70s. I have a TI-58C attached to a printer.

HP produced two printing calculators, HP19C and HP29C.


#31

Quote:
HP produced two printing calculators, HP19C and HP29C.

The HP-29C didn't have a printer. It was the non-printing equivalent of a 19C.

HP's calculators with built-in printers (standard or optional) were:

  • HP-10 (but not the 10B or 10C)
  • HP-19C
  • HP-46
  • HP-81
  • HP-91
  • HP-92
  • HP-95C (allegedly still in "production hold")
  • HP-97
  • HP-97S
  • HP 9805
  • HP 9810
  • HP 9815
  • HP 9820
  • HP 9821
  • HP 9825

Strictly speaking, only the HP-10 and HP-19C qualify as "handheld", although the HP-9x (Topcat) series are close. I've used an HP-97 as a handheld, but it's awkward.


#32

This is quite sideways to topic (hp) but in 1985
I used to repair Canon desktop computers (in Brisbane,
Queensland, Australia).

The BX-10 (IIRC) had a built-in thermal printer as well
as a small CRT. Nice old machine with BASIC and all
trig and transcendentals (not sure about the accuracy).

The beast packed a motorola MC6800 clocked at 2 MHz with
32 kB ram and similar amount of inb-oard firmware. One
could load and dump to in-built mini-cassette for storage.
CRT did dot and line graphics.

One of our cleints did custom roof truss design with them.

On the subject of coconut elulation, this subject interests me.
I wonder how many people (if any) would be interested in a
custom engineered pin-for-pin replacement for the coconut CPU.
I am not sure, but such a thing (with really massive enhancements)
might be do-able with QFP (quad flat pack) components. That puts it at but within the limit of something which could be made by hand...

Dreaming for a minute, one could clock a nice 8 or 16 bit CPU
at 64 times the native speed (24 MHz) or down at 16 x (5.7 MHz)
for lower power consumption. Doing the emulation in a high end
PIC with flash rom and flash ram would give you a very, very
nice "calculator".

Custom 30 pin "chip" could be retro-fitted into old coconut PCBs...

Just a thought...

Anyone interested, let me know (write to me)

Don W
donwallace63@yahoo.com.au


Possibly Related Threads…
Thread Author Replies Views Last Post
  Printing the HP Prime manual BobVA 3 1,735 10-25-2013, 09:53 PM
Last Post: BobVA
  Availability of scientific HPs Matt Agajanian 4 1,537 08-28-2013, 07:40 AM
Last Post: Eddie W. Shore
  JOT scientific calculator Richard Berler 4 1,716 08-21-2013, 05:25 PM
Last Post: Richard Ottosen (Denver, CO, USA)
  3D printing custom molds Han 3 1,633 08-02-2013, 03:26 AM
Last Post: Bruce Larrabee
  Our 11C Scientific Calculator Android app is on launch sale, 0.99$ only John 1 1,165 06-22-2013, 01:38 PM
Last Post: Marcus von Cube, Germany
  Vicinno 11C Scientific Calculator app is on Android now John 0 931 06-14-2013, 02:28 PM
Last Post: John
  Great news - Vicinno's HP 15C Scientific Calculator iPhone app is FREE now John 21 5,905 06-07-2013, 05:49 AM
Last Post: Mike (Stgt)
  Printing HP 9825 data Norman Pillsbury 3 1,510 06-01-2013, 10:08 PM
Last Post: David Ramsey
  Does IR printing not work on your converted WP34s? Then read on... Harald 3 1,601 04-04-2013, 05:46 PM
Last Post: Harald
  HP35s scientific calculator GREG W THOMAS 4 1,860 03-22-2013, 06:49 AM
Last Post: Thomas Radtke

Forum Jump: