Archive for the ‘Uncategorized’ Category

Gepard – Part 8: The 3rd life of the Gepard

May 23, 2020

Somewhat unexpectedly another person contacted me and told the story of the 3rd life of the Gepard. This person is Hans Carlos Hofmann. I already read his name before as it appears in copyright notices of some of the later versions of GDOS. As it turns out, he can shed some interesting light on the history of the Gepard after the phases I explained earlier. So, in the following, please find his information (translated from German by me). In the following, “I” means Hans Carlos Hofmann.

I received at that time the source code of the compiler from Mr. Müller as well as license to distribute it as a binary for computers of the Gepard architecture. The reason for that was that modifications of the compiler were needed in order to support MMUs (for the Motorola 68030) and FPUs (for the 68020 and 68030).

I, together with another student, then also developed GDOS further as I had a need for computational power. This other student was Harald Hellmann who developed the data processing for the measuring system for the ion drive at the University in Gießen.

I then used the finished system for my theses in Math and Physics so the system was also represented in the “Experimental Physics II” department (Ion drives were and are a topic in the Experimental Physics I department, translator’s note). At that time I validated a program written by Martin Berz, today a professor (at MSU, translator’s note) that calculated ion optics. The validation took place by comparing the results from his program with the ones from my independant implementation in Modula 2. Thanks to Modula, my implementation was more readable, but could not be run on a CRAY. I’m still a little bit proud in that the most errors could be found in his implementation.

The improved operating system that we called “OS/Science” (you will see in a moment why) received many, partially spectacular modules.

The first module was the interrupt handler. The original Gepards did not do interrupt handling, all the PCBs had was a simple jumper to order the CPU to get an auto vector. A program had to handle interrupts itself. If a program exited, e.g. due to an exception, an active interrupt jumped into nowhere, and you had to reboot the computer. All these problems were solved by my interrupt handler by dynamically creating machine code for the current situation. Using this handler, all the drivers were updated, one by one, so no polling was necessary anymore. This ended up that later applications could stand up to 3000 interrupts per second.

Exploiting this ability a “virtual processor” module (nowadays these would be called threads) was developed that ended up in a preemptive multitasking scheduler offering cooperative multi-user management. The latter features was added due to Modula-2 because else the compiler would have needed modification.

After the Gepard Computer company had ceased to exist, not only HS Computer built Gepard clones, but also the MediSyst company of Prof. Dr. Dimpfel (which existed until September 2005, translator’s note).

With my metrological applications I helped a lot of people to get their PhD, enabling quite spectacular presentations like these ones:

The technology of representing data by dynamically generated code was then used in other modules and applications. One of these applications was a Raytracing program from the begin of the 1990s. It computed an entire day for a single picture and heavily swapping data in and out using the MMU as there was 20 times more memory needed as existed physically. Here are some examples of the generated graphics:

Spectrum
Info Graphics
Visualisation of Atomic Force Microscopy

The “Gepards” were then built until the beginning of the 2000s. New cards were added, e.g. better graphic cards. One Atari (ST)-compatible graphics card could be used both for text and graphics, one that could switch between 1 byte color for every pixel and having 8 different, monochrome pixel layers, and one based on an Intel GDP chip that could execute graphics command in hardware. One big strength of the system was that, already in the 1990s, I could use up to four displays with realtime graphics.

Other things added were a SCSI subsystem for hard disks, tapes, floppy disk drives, optical drives, ZIP drives, CD and DVD drives, photo typesetters, a relational DB, a video subsystem, and a NFS V2 server.

Unfortunately, there was no new CPU/memory board among the new things. HS Computer did develop a Motorola 68040 prototype card, but the design turned out to be unusable due to problems that could not be solved in software. In a system like the Gepard where the bulk of the software is compiled by the onboard compiler, there is this chance to compensate for hardware bugs by centrally providing suitable code generation. The same problems occurred when a 68060 prototype was tried out. MediSyst wanted even to develop a 3 x 68030 + memory card but failed out of economic reasons.

The successor company of MediSyst, MEWICON CATEEM-Tec had the last generation of Gepard-like computers in production until early May of 2020(!). Due to the economic consequences of the Corona virus the now 75-year-old owner of MEWICON (and MediSyst), Prof. Dimpfel has now decided to close his company. Therefore, only a few weeks ago I had the honor to switch off the probably last of the Gepards in production – after over 30 years of Gepards still being used at the one or the other location.

BURP – Basic Using Reverse Polish

March 21, 2020

Recently, I did not buy a new old computer. I did not buy it because I was outbid in a real auction in the UK (by twice the amount I was ready to pay, not to mention the 33% fee on that price for the auction house and the VAT, nor the additional cost to package and ship the whole thing). However, I am very ok with not having bought it, because it would have been a kit computer of unknown state, there wasn’t any documentation with it, and it featured only a Z80 CPU. The only three redeeming qualities of this model are its rarity, its use of a mathematical co-processor, and its unusual programming language. So, I decided to proceed as if I had bought the computer, and write about the programming language.

psicomp80

The computer was a Powertran PSI COMP 80 computer (sold for 420 GBP + commission). It is a relatively early (1979) design published by the British magazine Wireless World and used as a basis for a singleboard computer sold as a kit by a British company called Powertran. Z80 CPU, 8 kB of RAM and EPROM, 2 kB of video RAM, monochrome graphics of 128×64 pixels or 64×32 characters: not an usual design for that time. What made this model a little bit special was the use of a mathematical co-processor, a National Semiconductor MM57109N.

But let’s start at the programming language of this computer. It is called BURP, “BASIC Using Reverse Polish”. The reverse polish notation is the thing where you first specify the parameters of a function (which are pushed on a stack), and then you specify the function name. When the function is called, it takes its parameter from the stack, calculates the result, and pushes it back on the stack. This is the (still quite exotic) basic principle in Forth, some early HP pocket calculators, and Postscript. So, if you would write something like add(10,33) in any conventional programming language (requiring a parser to translate this code into something a computer understand), in reverse polish notation that would become “10 33 add” with the semantics “put a 10 on the stack, then a 33, then call the add function, who will take the two parameters from the stack and put the result (43) back on the stack for the next function to use”. This notation allows for quite compact interpreters, but the programmer has to manage the stack herself.

I like Forth a lot so I thought, ok, this is funny, a BASIC with a reverse polish notation should be quite quirky, ending up in programs like ’10 “Hello, World” print 20 10 goto’ if this type of basic also supports line numbers. However, BURP is even more strange than that because not all commands use the reverse polish notation, but only expressions. The rest of the syntax is still conventional infix notation.

All this strangeness has a reason: the mathematical co-processor. As [Carver] puts it, “The constraints of the MM57109, which was essentially a dedicated calculator chip with a 4-bit microcontroller interface bus, strongly affected the design of the language. Significant features of the language include a fixed set of 26 numeric variables (A-Z), a maximum of 256 lines of code, a three-deep hardware stack for expressions, a limit of one for-loop at a time (so no nesting, not even in GOSUBs) and no string processing (except implicit concatenation of static text and numbers during output.)” Oh yes, plus the MM57109 talks to the world in reverse polish notation.

Ok, so the number calculating part of this BASIC by and large represents the format which the math processor needs. So, how does a BURP program looks like?

Example: LET C = 3 SQ 4 SQ + ROOT

Here, we assign a value to a variable C. This value is SQRT(3^2 + 4^2). First, the 3 is put on the stack. Then, a “squared” operation is called on the 3, replacing it by 9. Then, the 4 is put on the stack, and then replaced by 16. Now, and add function adds the 16 and the 9, replacing it by 25. Finally, the square root is taken, so in the end, the only number of the stack is 5, which is assigned then to the variable C (actually put in register C of the math chip).

The National Semiconductor MM57109 (the original data sheet titles it as a “Number Cruncher Unit”) is from 1977. It is the mask-programmed derivate of the MM5799 chip, which is the 2-chips-in-1-version of the 5781/2 chip set, the calculator chip family of National Semiconductor. It added 70 mathematical functions to the MM5799 design. From the viewpoint of a computer manufacturer, this is very attractive, because a) you don’t have to write all this math code yourself, b) it is efficiently executed. However, the MM57109 was not really an FPU (floating point unit) like modern math co-processors (which are nowadays integrated into the CPUs). First, the unit processed numbers that came in up-to-8 decimal digit packets (coded as 4-bit BCDs). Second, “Instruction execution times range from 1 ms to 1 second” (according to the data sheet). ONE second. That makes total sense for a calculator, but not too much sense for a computer. However, “real” FPUs did not exist much before 1977, with AMD’s AM9511 being one of the first.

So, here you have it. An early kit computer with a calculator chip as a mathematical co-processor and a crazy BASIC that makes complete sense in this design. Burp. Happy digesting.

References

Unusual Sony Notebook Drive Bay Modules

February 29, 2020

It is not completely unheard of to have a modular bay system for notebook computers, having the possibility for the user to chose whether to have an optical drive there, or maybe an additional battery, or the like.

But I think that there was a decision meeting missing after a brainstorming session at a Sony computer department when they came up with these additional bay modules:

PCGA-CWN1 Compact Woofer

Yes, this is a woofer. It works because it seems that the bays were open at the bottom:

sonywoofer

PCGA-TKN1 Number Pad

Yes, it is exactly what you think it is – an additional number pad you can flip out of the bay:

sony10key

And, no, these were actual products, no photoshopped fakes.

Not crazy, but also quite unusual is this bay module:

PCGA-MDN1 Net MD drive

Yes, that’s a MiniDisc drive for a notebook.

sonymd

Western Digital Pascal MicroEngine, an Update

February 16, 2020

Yesterday, I received a 2nd MicroEngine board, unfortunately in a worse state than my first one. Also, probably an earlier patch level as there is less patch cableing on the board. Nevertheless, nice to have.

Also, if you look for images for boot floppy disks, you can find them under ftp://ftp.dreesen.ch/WD9000/MicroEngine.zip.

VGA explained Hands On

July 13, 2019

If you are like me you do not know much about hardware. In case you wonder how all this (old school) video interface is working, say in case of VGA for example, you are in luck. In this video (and its part II) a Youtube channel called Ben Eater explains the basic VGA signal by freaking building a simple graphics card using breadboards and simple circuitry. He does this, layer by layer, in order to fulfill the different aspects of the VGA specification. And afterwards even I have the impression to have understood how the thing basically works.

The (arguably) most pleasing Floppy Disk Drive

February 24, 2019

SordA73

I saw recently in an Ebay auction the most pleasing floppy disk drive subsystem ever. Ever! Unfortunately it was too expensive to buy just as a conversation piece.

I am not sure what the designer usually did. Maybe tape drives? Hifi devices? Mainframe peripherals?

Also, seems to be a very rare thing. Google knows nothing about a SORD FD Processor A73…

Once upon a time

April 29, 2018

DSC_0007[1]

I recently ordered audio cassettes and a DIN audio cable as new products… I take “Things that belong in the last century” for 100. #thingsourkidsdontknow #longtailproducts

Plan Informatique Pour Tous (IPT)

December 28, 2017

Apart from my exhibition on Micronique computers, at the Classic Computing 2015 in Thionville, France, I also had some slides on a French programme to introduce computing to more schools in the 80s called “Plan Informatique Pour Tous (IPT)” or, translated to English, Computer Science For All. Because of its importance in France and the notoriously rare availability of any information on old French computers in English, here they are.

Plan Informatique Pour Tous (IPT)

  • was a program by the French government to:
    • introduce the 11M French pupils to computer science
    • support the French computer industry
  • its targets were presented on 25.1.1985 by the Prime Minister:
    • put 120k computers in 50k schools
    • train 110k teachers in computer science
  • the budget of IPT was FF 1800M in total, FF 1500M of that for hardware, i.e.:
    • FF 15k for every computer system
    • FF 2700 for every teacher
  • the high-flying goals of the program were not reached; on the other hand this program exposed many pupils to computers for the first time
  • the selection of industrial partners was given to Gilbert Trigano, co-founder of the Club Méditerranée
  • originally, he intended to give the order to Apple buying specially modified Macintoshs
  • the intended agreement would have meant that instead of in Ireland, Apple would have located the European Macintosh factory in France and transferred state of the art assembly knowledge
  • instead, out of political reasons, only French manufacturers were invited
  • out of the same reasons, the finally selected partner was Thomson, a nationalized enterprise in financial troubles

And here you have all the contenders to the IPT competition (that I know of) and how they did in the competition:

Folie9

The winners were Thomson with their MO5s and TO7/70s. To a much smaller degree, also exelvision could sell some of their EXL100s.

Le nanoréseau (The Nano Network)

The IPT proposal was heavily centered around a proprietary network technology called “Le nanoreseau” that was developed prior to the competion by the Lille University of Science and Technology.

  • The Nano Network
    • a 500 kbps (RS-486-based) network connected:
    • 1 PC-compatible server (called network head) with two 5.25” floppy disk drives, 512 kB RAM, and a printer (Mannesmann-Tally MT80)
    • up to 31 Thomson (8 bit) microcomputers (called nano machines)
  • the network allowed to:
    • load programs and data onto the microcomputers
    • communicate between all computers
    • exchange screens between the computers
    • execute a program on the computers
    • use the printer at the server from all computers
  • in principle the approach was working very well, but using 8-bit machines as terminals was old-school already then

A Brief History of Mobile Computing

December 24, 2017

This is the English version of the posters at a booth I presented at VCFB+Classic Computing 2017 in Berlin Germany.

This small exhibition aims at giving an overview on the development of Mobile Computing using computer models that were the “first” implementing relevant new aspects to the field. Often, also the second models are mentioned. These computers are sometimes not the most often sold models at that time (as often, they were quite expensive because they offered something new in a time that this new feature was not commonplace and required expensive components), but, by and large, they at least sparked competition and created markets.

Let’s start in the not-mobile field.

B1981These are, of course, a small selection of the most popular models of the early home computer era (yes, there are some important models missing, but that’s not the point here).

Folie4

These are the two first representants of computers that were meant to be transported and that, therefore, made compromises in terms of e.g. screen sizes for the sake of size, compactness, and weight.

Folie5

In contrast to the computers of the last poster, these computers were also meant to be used without a need for a power socket nearby. People are often baffled by the HX-20 to be the first one that integrated a battery because it looks still quite modern by its very compact form factor and the number of features it includes. The HX-20 also was a very popular computer and you will have no problems getting one from ebay for relatively small bucks. The Data General ONE is not the second computer with batteries, but the first PC with batteries.

Folie7

These computers now are the first ones that deviate from the traditional usage-by-keyboard to a new paradigm that is more appropriate to truly mobile computers: the pen-and-notepad. The GRiDPad 1900 is (by and large, see the last poster) the first mobile computer using a pen (still with cable), and because it is so early, it is using still a keyboard-oriented Operating System (MS DOS). The pen is used more like a mouse. The NCR 3125 is the first mobile computer meant to be used like a notepad. It’s sleek, timeless design still looks good today, but it’s nowadays on the heavy side of things. Both models are very rare today, with the 1900 being especially rarely sighted.

Folie8

1993 is the year where notepad-like mobile computers hit the market in big numbers. They differ from the previous models mainly in size and in price. They all aim at sporting a general Handwriting Recognition function in order to come from handwritten pen input to text the computer can process. Unfortunately, this is often also the problem for these early models. Either it basically does not work (PenPad), or it does not really work (Newton first model, Zoomer), at least it requires strong-for-the-time computing and memory resources (440, Newton) that make them still-too-expensive-for-many-users and still-too-heavy for shirt pockets.

Folie9

But then, one small company (called Palm) finds a recipe that compromises pen input and computing requirements by replacing general Handwriting Recognition by a special alphabet users have to learn called “Graffiti”. This allows mobile computers to use much smaller CPUs which drives the price down and requires smaller batteries. In addition, the Palm computer family uses small screens, which makes the system very lightweight.

Folie10

The pen remains the most important input device for mobile computers until Apple finds out how a mobile computer can work that uses only a finger. It implements these ideas in the first iPhone in 2007, Google copies this idea for the first Android phone in 2008 (some of you will now that the first Android prototype 2006 was keyboard-based, and that the design was switched as a reaction to the iPhone).

And that’s where we are today.

Let’s conclude with the technical data of the mobile models above.

Technical Data

Manufacturer Model Year Weight Price CPU RAM Disk Screen
Osborne 1 1981 11 Kg $1795 Z80@4 MHz 64 kB 204 kB 5“ CRT
Kaypro II 1982 13 Kg $1795 Z80@3.5 MHz 64 kB 382 kB 9“ CRT
Epson HX-20 1981 1.6 Kg $795 Hitachi 6301@0.6 MHz 16 kB 3.5“ LCD
DG ONE 1984 4.5 Kg $2895 8086@4 MHz 128 kB 1.4 MB 11“ LCD
Linus 1000 1987 4 Kg $2795 NEC V20@7.2 MHz 640 kB 512 kB 9.5” LCD
GRiD GRiDPAD 1900 1989 2 Kg $2370 8086@10 MHz 1 MB 10“ LCD
NCR 3125 1991 1.5 Kg $4795 80386SL@20 MHz 4 MB 20 MB 10“ LCD
Amstrad PenPad 1993 0.4 Kg $400 Z8S180@14.3 MHz 128 kB 4.5“ LCD
EO 440 1993 1 Kg $2000 Hobbit@20 MHz 4 MB 7.5“ LCD
Apple Newton 1993 0.4 Kg $700 ARM610@20 MHz 640 kB 5.2“ LCD
Tandy Z-PDA* 1993 0.4 Kg $700 NEC V20@10 MHz 1 MB 4.8“ LCD
USR Pilot 1996 0.2 Kg $299 Motorola 68328@ 16 MHz 128 kB 3.3“ LCD
Apple iPhone 2007 0.1 Kg $499 ARM1176@412 MHz 128 MB 4 GB 3.5“ LCD
HTC Dream 2008 0.2 Kg $495 ARM1136@528 MHz 192 MB 256 MB 3.2“ LCD

 

An IBM Museum in Germany

January 15, 2017

Lately, I was lucky to visit an IBM museum in Böblingen (near Stuttgart), Germany. I write “an IBM museum”, but actually, it is “the IBM Museum” in Germany although (as far as I know) it is not an official IBM institution.

This museum is the successor of the former “Haus zur Geschichte der IBM Datenverarbeitung” (House of the History of IBM Data Processing) in Sindelfingen, Germany. It was located in an building that once was a punch card printing factory on 600 square meters. The building and its facilities was provided by IBM. The museum itself was (and is) run by the IBM Club, the official IBM institution  that “promotes and encourages group social activities among employees, retirees and their families”. The museum did not had normal opening times, but it was open by appointment for the public. The collection was very extensive both time period-wise (starting in the punch card era of the predecessing companies like Hollerith) and model-wise (up to quite current mainframe models). The “Haus zur Geschichte der Datenverarbeitung” was opened in 1994. It had to close in 2012 as IBM wanted to sell the building.

Fortunately, the IBM Club could store its collection at the site of the IBM R&D Lab in Böblingen. There, the collection got some space in a former computing center. Since 2016, the collection can be viewed there by invitation only (mainly for IBM customers) because for anything else there are simply no resources available (in the end, the collection curators have to take care about the computers). The first four pictures of this article are from this new site.

While we were there, we were allowed to take picture for our own personal use, but were asked not to publish them in the Internet. That’s really a pity because the exhibits in this collection (most of them in working order…) are really impressive.