Talk:HP 2100

From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Computing (Rated Start-class)
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 ???  This article has not yet received a rating on the project's importance scale.

Removed x86 comparison[edit]

I removed the x86 comparison (again), because the naming of the AX and BX registers is surely a complete coincidence. On the 8080 and 8085, the registers weren't very general, and in particular A was available for a lot more operations than B. But on the 8086, AX, BX, CX, and DX are fully general-purpose registers, and there's nothing special about AX and BX to make them similar to A and B of the 2100. It's natural when naming four general registers to call them either A, B, C, and D, or 0, 1, 2, and 3. Given that there is no substantive similarity between the 2100 A and B registers and the x86 AX and BX registers (or EAX and EBX), a comparison or even mention is far too speculative for the main page. --Brouhaha 22:34, 20 July 2006 (UTC)

As someone who programmed both the HP2116A in assembly, and the 8080, I agree. Its only a coincidence, that only a novice would assume. Like having buildings that have first floors copy each other. — Preceding unsigned comment added by (talk) 00:21, 25 August 2011 (UTC)


I can't verify that the 2114C ever existed. It's true there are specs and literature advertising it, but I've not been able to find anyone that actually had/has one.

I'm working on restoring an HP-2116A in my spare time. Feel free to use any pictures from the gallery that you like and/or link to it. HP-2116A Gallery

It might make sense to list the memory sizes in kilobytes as that's what most people expect to read these days. The listing is correct though, all HP literature at the time listed kilowords instead.

If anyone has more old HP hardware they want to get rid of, I'm happy to take it off their hands. (grin)

A more prominent link to some of the simulators would be nice. SIMH is probably the most popular free one.

The claim is that 2114-6 machines stopped being sold in 1970? My HP-2116A was installed in January of 1970, so I would imagine B and C models could have been sold for a few years after that.

TimRiker 07:48, 28 March 2007 (UTC)

Well... this is Wikipedia... feel free to edit the article. I don't think anyone will revert a comment like "Although HP also developed the 2114C model, but it did not appear to be sold before the line was retired" or something like that. I added the sole SIMH link because it's the only emulator that I've personally used, but again, feel free to edit the article. Articles like this one are tough because proper "Wikipedia"-proper references are tough to find on the web and lots of libraries seem to throw away any pre-1980 computer books (that's my experience anyway) which might be used to reference old architectures like this. Maybe Jay West (or yourself) needs to put up a HP 2100 history web page on that can be referenced by Wikipedia. Thomas Dzubin Talk 13:13, 28 March 2007 (UTC)
I used at least 6 of these machines, in and around Berkeley, CA in the early and late 1970s. I had read a lot about the HP2116C CPU, and like the author of this post, I have never seen one either.

Tandem Link[edit]

I cannot seem at this time to edit the article, so although the idea that the Tandem Non-Stop architecture was developed based upon the HP2100 series, I would disagree, having known two of the system engineers who worked for Tandem. They used a lot of the bus arbitration, and signal ideas, they got to start from scratch as far as the main architecture, and fixed all the short comings of the architecture, i.e. avoided all the mistakes made in hindsight. ( a significant change was having 4 CPU interrupt lines, later expanding to 8 vs 1. ( The HP2116A could run a co-processor, and the 2~16 CPU version of the Non-stop initially could run all but the main processors as co-processors, it was later implemented in software, by Guardian that *any* CPU could act as master processor, so that Procssor #1 could be serviced/upgraded -> While the machine was running <- ). Also the Non-stop machines were stack based.

I digress: Tandem was started by former HP engineers: And there are actually many other citations: "Today it is still known as NonStop, a separate product line offered by Hewlett-Packard, the company that the original founders left to form Tandem in the" — Preceding unsigned comment added by (talk) 00:42, 25 August 2011 (UTC)

Descendants and variants[edit]

I've added a disputed notice for that section. That relatively long section not even a single reference. I am particularly concerned about this statement:

In 1975, HP introduced the BPC, the world's first 16-bit microprocessor

I've been unable to find any source for this information. In fact, I've found multiple sources that says the National Semiconductor PACE is the first 16-bit microprocessor. Such as this, this, this, this or TI's because of this, this

--CyberXReftalk 05:36, 24 December 2013 (UTC)

None of the above sources you listed are correct, and many contradict each other. The earliest reported date for PACE that I know of is that it was "announced" in December 1974. HP finished the BPC mask designs in April 1973, and already had a working BPC by late 1974 when PACE was announced. Note that the Wikipedia page for PACE says it's the first "commercial" 16-bit microprocessor. HP never sold the standalone BPC commercially - it was only available in HP products. This fact has led to a great amount of confusion regarding the BPC, as it was a virtually undocumented device prior to Steve Leibson's extensive research into the development of the HP 9825 computer, which began sometime around 2004. As a result, the PACE myth has been widely disseminated for the past 40 years, and it will probably take some time for various sources to catch up to reality. The TMS9900 was introduced in 1976, and isn't even a contender. Accutron (talk) 06:26, 12 January 2014 (UTC)

Basic operating system[edit]

In 1979 in my High School they had an (already obsolete) HP 2100A, but it was running something they called "Dartmouth basic". However that seems to be a generic name for Basic and does not specify the actual operating system. This system could run 4 teletypes and ran Basic programs, you typed them in with line numbers and typed "run", there was no direct execution. You saved programs by punching them on paper tape, there was a command that was exactly the same as list but it sent a lot of nulls before/after so you had paper tape leader. A fifth teletype was the console and the only thing I remember you could do from it is load from the high-speed paper tape reader. The Basic was very limited, there was not strings or characters, only floating-point numbers, and the only input possible was typing numbers with commas between them. Does anybody have any hint as to what this was, and whether it was an HP product?

The machine itself had 16K words of core memory, the panel with the small white square lights, and was in a rack with the photo reader (which looked different than the pic in the article), and a punch/marked card reader which I think required running Fortran to use.

This was probably one of the HP timeshared BASIC systems. These were turnkey systems, sold with all necessary peripherals. They were indeed built on the HP 2100A (which is the one with the small white square lights) but the model number for the whole system was e.g. 2000A, 2000B, etc. Later versions did support Basic with strings and other improvements. The last in the series was the 2000F, which used a whole separate 2100A to run a couple of communications multiplexer cards, handling up to 32 terminals. [1] Jeh (talk) 08:22, 14 November 2015 (UTC)

Page addressing[edit]

Recent edits added the idea that there was page addressing, apparently with 10 bit offsets into the current page and a 5-bit opcode.

I really do not recall this. As I remember instructions with addresses were accompanied by an entire address as a second word. Thus there was no page addressing (at least when memory was limited to the original design of 32K words).

I believe the editor may be confusing the instruction set with some other system, but it is possible I am wrong. Can anybody confirm this?

Only a few instructions (the "four extended arithmetic memory reference instrucitons") supported a full address in a second word. These details are in the manual that's linked from the article. I'll add page-number-specific refs later today, but for now, see section 2.2.1, and sections 3.2 (the "oridinary" memory reference instructions, which work as I described) and 3.5, the four extended memory reference instructions which did support the second full-address word. Those instructions were: multiply with 32-bit product, divide with 32-bit dividend, and 32-bit load and store.
If you're not happy with the typed transcript of the 2100A manual, try this: It's a scan of the 2116 manual. You want section 2-25. The 2116 had only the single-word memory reference instructions. The "long multiply and divide" instructions were new with the 2100A.
In other words, sorry, no... I'm not remembering some other system.
It's a four-bit opcode, btw, not five. 10 bits are taken for the offset, one for the current/zero page bit, and one for the indirect bit. That leaves four bits.
By the way, please sign your talk page posts? Thanks. Jeh (talk) 18:58, 15 September 2015 (UTC)
Yes I believe you are right. I wrote some assembler for these things a long long time ago, but I sure don't remember it clearly. I think I was confusing it with PDP-11 assember, which I worked with next. I have no idea why I don't remember this with the HP2100A. One possibility is a lot of my programs were small enough to fit in page 0 and 1. Thanks for the links they are really good.Spitzak (talk) 00:45, 16 September 2015 (UTC)
Yep, it's an interesting quirk that if your program fits in the first two pages - not just one as a "first glance" understanding might lead one to believe - you can ignore this entire issue. Just treat bit 10 in the instruction as bit 10 of the address, which is right where it needs to be for that to work! One of many examples of "beauty" in this machine's design. I kinda wish I had one to play with! Now, I really need to get to those refss. Jeh (talk) 21:10, 12 November 2015 (UTC)