The following warnings occurred:
Warning [2] Undefined array key 34067 - 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 34121 - 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 34166 - 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 34174 - 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 34175 - 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 34186 - 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 34216 - 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 34227 - 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 34216 - 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 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 34227 - 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 34174 - 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 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





Re: Why II, que?



#2

I can see how the HP calculator suffix thing can be confusing, but it's all really quite straightforward, if you understand the big picture.

'II' just means 'second edition' or 'second version'. Hence, the 32SII followed the 32S just as the 19BII followed the 19B and the 10BII followed the 10B.

Early machines' part numbers did end in 'A', but they weren't designated that way on the calculator faceplates, mainly due to the Great Alphabet Famine of 1973.

Of course, 'C' started to be used when the miracle of continuous memory first arose as a magic distinguishing feature. The Spice models were originally 'E' for "it's the Economy, stupid", but even they got some 'C's eventually; so the 33E become the 33C, the 38E became the 38C, and 'Mel E' became 'Mel C'.

After the 41C, everything got continuous memory, so 'C' lost its differentiating purpose. This allowed various bits of early plot-losing to happen: the 75C has a variant called the 75D, but it doesn't have some amazing distinguishing feature beginning with 'D', it was just the letter after 'C'. Similarly (but more obscurely), the 71B was so-called because there was a 71A (with less RAM) in the works along with the 71B, but the 'A' version got canned. So, by the miracle of retro-active continuity, 'B' came to mean 'BASIC'.

I have heard it rumoured that the true meaning of the 94F is too disgusting to report in polite society. So if any of you know about it, please post it in a follow-up to this message.

Always the early pioneer, the 41C begat the 41CV,
which had fives times as much RAM as the 41C, hence 'V', which is Roman for '5', which is Arabic for 'five' (except apparently it's really Indian, but that's not important right now). The 41CV then begat the 41CX, which incorporated eXtended functions and memory, thus starting the great 'E'-avoidance tradition that continues to this day, due mainly to the War on Drugs.

Then the real Pioneers came along with the 'B' 'S', and ran off with the 'X' for their piece-de-resistance, the 48SX, which was both 'Scientific' and 'eXpandable'. Wooo.

By the early 1990s, HP seem to have settled on 'II' for all their second editions. So, the second edition of the 48S was the 48G, the second edition of that was the 48G+, the second edition of the 12C is the 12C Platinum, and the second edition of the already-second-edition 19BII looks like it'll be the 19BII+.

Seems all pretty consistent to me, at least compared with things like 'V42 bis', where 'bis' is International Standard Lingo(*) for "second edition, but in a smug, smartypants kind of way".

I hear that the second edition of the 9S will be the 'Richard Feynman special quantum edition 9S+ Unobtanium turbo, with extra bongos too'. How all this will be printed on the face of the calculator is left as an exercise for the reader. God knows, the designer won't get it right. At least it will finally allow the support staff who run HP's price list system to forget about the long-standing bug that prevented the entry of hyphens in calculator product names.

-----
(*) Strictly speaking, this should be "International Lingo for Standardisation", but I just worked out the number of people who actually care about this on my new 12C Platinum, and the answer was 0.000000000000531, which is pretty close to zero, even for accountants.


#3

"I hear that the second edition of the 9S will be the 'Richard Feynman special quantum edition 9S+ Unobtanium turbo, with extra bongos too'. How all this will be printed on the face of the calculator is left as an exercise for the reader."

Maybe the name will be molded into the slide-on cover.

Thanks for explaining the 71B and 75C, I didn't know where they fit in the discussion. Could it be there was a 75B (for Basic) that was scrapped when they added the slot for the 8K memory upgrade behind the battery?


#4

>> Thanks for explaining the 71B and 75C, I didn't know where they fit in the discussion. Could it be there was a 75B (for Basic) that was scrapped when they added the slot for the 8K memory upgrade behind the battery? <<

Frank asked me to comment...

First, the "C" designation on the "75C" actually did refer to continuous memory -- the design goal for the HP-75 was to package the features of the HP-85 (a desktop BASIC computer with tape backup that lost all memory when turned off) in a portable form which kept everything in memory even when off. Further, HP-75 development was well underway when the 41C came out and "C" designation was still a big deal.

Anyway -- as far as I know there were never any serious plans for a "B" version (altho I remember a few prototypes floating around with that label). And, again AFAIK, the 8K memory expansion module was part of the plan, not added later (remember the days when 8K was considered a big enough perk to bother making it an option).

On the other hand, minor changes such as "B" vs "C" and adding 8K memory modules don't stick in my memory like watching the design concept evolve from a palmtop/docking-station to the final product that hit the shelves.

Speaking with some authority, but probably not enough...


#5

Maybe you can comment on this: I have been struck by the "terseness" of the 75 OS, for example the inability to catalog ROM modules or display program lines containing non-present XROM references, both of which I believe the 71 can do. Is this because of the limited addressing range of the Series 80 type CPU in the 75 vs. the 512 KB addressing range of the 71's CPU? In other words, is that distinction the reason the 75 didn't have a bigger OS ROM (possibly via page swapping) or is it the fact that it's design took place earlier, when larger ROMs would have had a big impact on cost? Or is it just that the 75 is meant to be a computer user's system as opposed to an engineer's system (as the 71 can certainly be described).


#6

Boy, you are really testing the old memory cells. I think most of this is correct, but that was 20-odd years ago.

By today's standards, "terse" is an understatement. The HP-75 had a maximum address space of 64KB -- you can't sneeze in that much space these days, let alone write an entire OS. And that space includes the RAM!

The address space was allocated thusly -- 32K of fixed ROM for all those "gotta be there" routines. 8K of swappable ROM, 16K of RAM and 8K of optional RAM. The final system had 48K of ROM, so two 8K segements swapped in and out of the 8K window -- along with every plugin ROM (all of those having 1 or more 8K chunks).

When code in a swap ROM wanted to call something in the 32K block things worked pretty easily. When code in the 32K block wanted to call a routine in a swap ROM, it had to make sure the right ROM was enabled, but it still wasn't too bad. But when a swap ROM wanted to call another swap ROM things started to get interesting -- there's a reason why we had routines with names like xyzzy and plugh. I'll leave it as an exercise to the reader to imagine what it's like when you are several layers deep into this swapping business.

So -- yes, the limited address space caused a lot of problems and yes, fixing that in hardware was outside the realm of yesterday's reality, because of costs, scheduling and so on -- it would have required redesigning the CPU (which was a custom chip). Physical size was another big issue -- an 8K ROM was a LOT bigger in those days.

The 71 project started about 3 years after the 75, with all the benefits of improved technology and learning from previous mistakes.

As far as listing program lines linked to missing ROMS -- the 75 ROMS had the parse table (ASCII listing of keywords, used to parse input and "decompile" tokens for listings) stored at the head of each ROM. As a result, it was pretty much impossible to display a program line if the ROM wasn't plugged in.

As far as a ROM catalog, that could have been done, but wasn't because we needed the room for more important things.
Somewhere, floating around the internet, there are copies of the HELP LEX file I wrote long ago, which does do a catalog of any and all ROMS in the machine. (No, I can't send you a copy, I have yet to get that old stuff into a form that is communicable in today's world -- it's on my todo list, just after ...)


#7

Thanks for all the answers! I understand Dave Hicks has lots of notes detailing the 75 design that are very interesting and fun to read, maybe they will make their way onto the CD's - or DVD - or ExD! - one day.

Regarding the missing ROM references, I understand why they can't be listed explicitly but the 41 (at least, I'm not sure about the 71) displays them as "XROM xxyy" so you can figure out which ROM is missing. Not only does the 75 not do this, it won't display any part of a program line that contains such a reference (it just beeps and says there's a ROM missing). Since the line might contain other statements, you can miss a lot if a ROM is missing!

I think your HELP LEX file is on the SwapDisks and one way or another, I'm going to get them so I can use them! (I have a few that I got from EduCalc years ago.) The SwapDisks are on the HP Museum FTP site in two forms: separate LIF files, and images of the complete disks that Tony Duell made, along with Linux utilities to reconstitute the disks.

It's the files on the SwapDisks that prompt my question about missing ROMs: many of the HP75 programs on the SwapDisks and the PPC Journal need the I/O ROM and when it is missing, it is very hard to work around it because of the "quiet". But if all goes well, I'll have an I/O ROM soon and all will be revealed!

I'm not complaining, just curious. I like all the calculating machines HP made and I understand nothing is perfect, the world is full of limitations. I think the uniqueness of each HP model (along with the consistency of the RPN operation in those models) is what makes them so interesting - you get the feeling that people sweated over the details trying squeeze in a little more value. I applaud the effort!

Thanks again.

#8

I seem to recall that the 75 (which I love, by the way) was pretty much compatible (at leas tin thinking about doing stuff) with the series80 machines.

If maintaining some - if not code compatibility, at least style compatiblity- with the series 80 machines was desirable, it would help to explain some of the design choices.

#9

Maybe the name will be molded into the slide-on cover.

I doubt it. According to my grapevine, for environmental reasons, and not at all in order to keep costs low, the RFsqe9S+UoTweb2 will come with three sheets of multi-coloured Saran Wrap (a.k.a. 'cling film') in place of a cover.

Unless they're planning to use the documentation that will be printed on these sheets as the identification for the calculator, of course.


Possibly Related Threads…
Thread Author Replies Views Last Post
  The HP Prime saga - Part II Michael de Estrada 21 5,745 11-30-2013, 01:04 PM
Last Post: Michael de Estrada
  HP-32S II Expansion Matt Agajanian 14 3,654 07-21-2013, 10:19 PM
Last Post: Matt Agajanian
  Classpad II fx-CP400 emulator Namir 0 1,050 07-07-2013, 08:07 AM
Last Post: Namir
  HP 32S-II Vertical Curve Program Ron Cardwell 2 1,353 05-20-2013, 07:54 AM
Last Post: Thomas Klemm
  HP-39g II Acquistion Matt Agajanian 54 11,843 07-21-2012, 02:31 AM
Last Post: Gilles Carpentier
  Closest thing to a 42S-II Matt Agajanian 17 4,752 06-27-2012, 01:00 PM
Last Post: Matt Agajanian
  HP-41CV System II aj04062 1 1,126 06-22-2012, 08:49 PM
Last Post: Allen
  HP-41's ARCL on the 32S-II Matt Agajanian 2 1,157 05-04-2012, 04:45 PM
Last Post: Matt Agajanian
  Where does the 17B-II fit in? Matt Agajanian 22 5,351 03-25-2012, 10:52 AM
Last Post: Don Shepherd
  Just how tough is a 32S-II ? Matt Agajanian 12 3,239 03-11-2012, 05:36 AM
Last Post: Thomas Radtke

Forum Jump: