Data General One

This machine came from Craig M of the ARC group. It is a Data General One from 1984. It is often credited as being the first battery powered IBM compatible(ish) laptop.

The impressively large LCD screen with its unimpressively low contrast is its Achilles heel. If not for that, it probably would have been a very successful machine.

The machine arrived with an expansion box, some disks, and lots of old-school manuals. Much of the software was packaged specifically for the One.

The Data General One Systems Programmer’s Manual contains a lot of technical detail about the machine include specific compatibility issues.

I also found this comprehensive and well-written article very helpful:

https://oldvcr.blogspot.com/2024/03/refurb-weekend-data-generalone-and.html

My story is different in that the machine came with a battery and an expansion unit, but did not come with a power supply. Somewhere along the way i also acquired the external 5.25″ drive unit but not the attachment cable.

Looking at the images in the article and comparing with my unit, i think the screen on mine seems to be somewhat clearer. It does seem to have what looks like some dust behind the panel, and it certainly needs good light (a camping headlamp works quite well) but it is quite useable if that’s all you have. It’s so much better, and clearly has a shade of green, that i wonder if the LCD is the same.

The expansion unit includes a floppy disk controller and 5.25″ floppy disk, a hard disk controller and a IMI hard disk built like a brick dunny, and a printer card. The manual indicated that it was possible for the system to use a CGA card in the expansion unit together with a CGA monitor to provide an external display – a blessed relief from the built-in LCD although far from portable.

The battery is charged from an external power pack, but it came as a surprise to learn that this was not intended to power the computer as well – although, as it transpired, it did do that job with some help from the battery. I couldn’t see this being sustainable.

Without an external supply or even the mating connector, i was forced to jump start it using a bench supply and some croc cables. Later i made up a power supply using an old laptop power supply and an adjustable DC/DC converter. The connector is a bit rough at present.

With power, the computer gave a beep and then, after a delay, it gave a further two beeps. The screen was blank initially but could be adjusted with the contrast buttons (command page-up and page-down). A carriage return allowed the system to boot from the front floppy drive.

Both symptoms were related to the backup battery being very flat. The battery was just a 2025 in a battery holder under the internal modem card.

The system reported a full 464kB of RAM – sadly, 48kB of the physical 512kB is lost to graphics memory. I have no idea whether another 128k can be added in the expansion unit.

I can confirm that the LCD screen is quite awful. It’s curious to me that Amstrad used a similar screen in its PPC512 a couple of years later. It was similarly awful, but at least external CGA was available on the Amstrad base machine.

The expansion unit connects to the computer via a cable and “dock”. The dock plugs into the expansion connector on the back of the computer and is held in place by two screws. When i tried to mount the dock, one of the mating nutserts released itself from the computer, and being worried that some debris may have been fallen inside the machine, i decided to open the unit. I had to anyway, to replace the battery.

Through this process, i learned that it is not necessary to remove the floppy disk drive screws or the keyboard screws.

<picture>

The remainder do need to be removed, together with the 6 metal clips – three on each side. The LCD cable can be released via the battery compartment by pulling up on the top half of the connector. Then the top half of the computer can be lifted and completely removed if the power switch is disconnected.

You have to be impressed with the amount of electronics crammed into the unit. There is a lot of surface mount technology for 1984 and the line sizes on the PCBs are very small.

The top card in the stack is the internal modem card. This seems to be controlled through a parallel interface and seems only to be available to the ROM resident terminal program.

The next card is the I/O card with floppy disk controller, real time clock, and the two serial ports. There’s a ton of surface mount on the back, which i neglected to photograph. The offending 2025 real-time clock battery was replaced.

And that’s the main board with the 8088. Most of the cabling has been done with a flexible PCB which is very space efficient. I fear for its longevity, though, as the bends are quite severe.

The memory expansion unit is very cute with three 128MB cards.

After all that, there was no debris, and i cannot see any way to restore the nutsert. I did a full disassembly to clean the keyboard and to have a look at the innards.

Care has to be taken with the main board – the ground springs need to hook under the plastic insulating layer.

I was somewhat aghast to see some scratching on the main board. This is caused by a metal cable retaining clip under the DC/DC converter on the rear panel. I inspected this pretty thoroughly to make sure that no tracks had broken. I added some tape to the metal clip to protect the board. Not great design.

I have not resolved the issue with the dock mechanics, but i pressed on.

DG One Power Supply

The power arrangements for the machine are a little unusual. It can run from mains power adapter or from a large nicad battery pack. The battery pack is charged in the machine from a separate battery charger – not from the mains supply.

The mains supply, is according to ?????, a 30W 5.8V DC supply provided on a two pin connector of unknown type. I initially “jump started” the machine with a bench supply and some alligator clips.

The actual power drawn by the unit seemed to be no more than a couple of amps – perhaps the optional thermal printer takes power from the machine.

That seemed to be easily within the realms of a DC/DC converter. I found a simple one that could take a wide input voltage and could be adjusted to 5.8V. I’m yet to put it in a box, but it should be easy enough.

The DG One power connector is probably impossible to find but i did find some contacts that were close enough. I’ll need to craft a shell for the contacts.

As for the Nicad battery and charger – well, i think they can be relegated to exhibits.

DG One Expansion Unit

With the base machine seemingly working well, it was time to try my luck with the expansion unit. I really should have inspected the power supply first because it let out quite a lot of smoke from a line filter capacitor self emolliating.

Accessing it involved removing the cover, removing the fan cowling, and then releasing the supply which, conveniently, has connectors at both the mains and DC ends. I replaced both line filter caps.

The hard disk drive did spin up, but that seemed to be all it did. There didn’t seem to be any calibration activity. On power-down it sounded like it ground to a halt. I think it’s unlikely to be viable. I removed it – a very chunky full height IMI 18MB unit.

The floppy disk drive did work, which was good because that meant that the link to the expansion box was working and, of course, the floppy disk controller was also working. The 5.25″ drive appears as drive C. The CMOS settings need to be changed to 3 drives for it to work.

The expansion unit also had a printer card to accommodate a centronics style printer. The printer port on the computer is serial and maybe specifically set up for the data general printer. Both the serial ports on the computer are incompatible with IBM ports.

I added a spare CGA card and connected a CGA monitor. With the computer settings set to MONO the external CGA monitor becomes the default screen. The mode can be set to BW40, BW80, CO40, and CO80. If the mode is set to MONO the LCD is reactivated. Without the expansion unit connected, all of these modes work with the LCD. The external monitor makes life much easier.

I thought that an XTIDE card might work with the One. I just took one from an XT and plugged it into the expansion unit. DOS 5.0 booted, but there were some issues during the autoexec. That was enough to show the potential, though.

The system will also boot from the 5.25″ drive in the expansion unit. It will not boot from the rear floppy disk drive, which unfortunately doesn’t seem capable of formatting, although i have been able to write with it. Perhaps a gotek candidate.

I have been able to boot later generic versions of MS-DOS but they may have incompatibilities, eg the real time clock does not work.

I added an XTIDE card and programmed it with the large XT BIOS. The behaviour was a little unexpected, probably because the floppy disk implementation is not 100% compatible with an IBM PC. The Universal BIOS has trouble associating the drive with drive letters often confusing the flash disk with the third floppy. Selecting floppy drives by letter at startup also resulted in boot failures.

The XTIDE Universal BIOS does seem to be a little befuddled by the machine. Selecting the boot drive by typing a letter sometimes worked, but at other times produced baffling results. Curiously, invoking the menu and then using the arrow keys to select the boot drive from that menu worked fine. Perhaps the relevant data is reread at that point; only a universal BIOS expert would know.

Also, fortunately, the Universal BIOS will allow the system to boot from any of the floppy drives – as long as it is selected from the Universal BIOS menu.

MS-DOS 3.2 is limited to 32MB partitions, which is a little tight. This is probably not a major issue for this machine which is likely to have only occasional use. I could not get the card to boot, but it worked fine otherwise.

I set up a second CF card with DOS 5.0. I was able to make this one bootable and i could set up a full 512kB partition. There is no specific version of MS-DOS 5.0 for the One, so there are a few places where IBM incompatibility rears its head. Firstly the battery backed real time clock does not work, and secondly MS-DOS 5 seems to politely ignore the incompatible serial ports.

With XTIDE and Universal BIOS there are a variety of oucomes depending on the operating system and the boot drive:

OSBoot DriveNotes
MS-DOS 2.1A 3.5″ Front InternalBoots. Can access floppy drives A(front), B(rear), C(5.25″). Appears to not have hard disk support. Was unsuccessful formatting C.
MS-DOS 2.1B 3.5″ Rear InternalBoots. Can access floppy drives A(rear), B(front), C(5.25″). Appears to not have hard disk support. Was unsuccessful formatting C.
MS-DOS 2.1C 5.25″ ExternalNot attempted.
MS-DOS 2.1CF CardAppears to not have hard disk support.
MS-DOS 3.2A 3.5″ Front InternalBoots. Can access CF card with 32MB disk as D. Can access floppy drives A(front), B(rear), C(5.25″). Can write to rear drive but not format. Can format 5.25″ drive and write.
MS-DOS 3.2B 3.5″ Rear InternalBoots. Can access CF card with 32MB disk as D. Can access floppy drives A(rear), B(front), C(5.25″). Can write to rear drive but not format. Can format 5.25″ drive and write.
MS-DOS 3.2C 5.25″ ExternalBoots. Can access CF card with 32MB disk as C. Can access floppy drives A (5.25″), B(front), D(rear). Can write to rear drive but not format. Can format 5.25″ drive and write.
MS-DOS 3.2CF CardDoes not boot. Have to boot from floppy. Then card can be accessed. See above.
MS-DOS 5A 3.5″ Front InternalBoots. Can access CF card with 512MB disk as C. Can access floppy drives A(front), B(rear), D(5.25″). Can write to rear drive but not format. Can format 5.25″ drive and write.
MS-DOS 5B 3.5″ Rear InternalBoots. Can access CF card with 512MB disk as C. Can access floppy drives A(rear), B(front), D(5.25″). Can format 5.25″ drive and write.
MS-DOS 5C 5.25″ ExternalBoots. Can access CF card with 512MB disk as C. Can access floppy drives A(5.25″), B(rear), C(front). Can format 5.25″ drive and write.
MS-DOS 5CF CardBoots. Can access CF card with 32MB disk as C. Can access floppy drives A(front), B(rear), D(5.25″). Can format 5.25″ drive and write.

The rear drive seems to have a strange fault that allows writes but prevents format. May just be in the detail of the format program. The drive system is not 100% IBM compatible.

When formatting DOS 5 seems to treat all drives as 360kB by default. It may be possible to use format options to override but i found it very reluctant. Use driver.sys in config.sys to create new drives E and F that are 720k. Required on any DOS 5 boot disk.I thought that an XTIDE card might work with the One. I just took one from an XT and plugged it into the expansion unit. DOS 5.0 booted, but there were some issues during the autoexec. That was enough to show the potential, though.

The system will also boot from the 5.25″ drive in the expansion unit. It will not boot from the rear floppy disk drive, which unfortunately doesn’t seem capable of formatting, although i have been able to write with it. Perhaps a gotek candidate.

I have been able to boot later generic versions of MS-DOS but they may have incompatibilities, eg the real time clock does not work.

All up, it’s a pretty complex picture!

I thught there may be a performance hit from using the expansion unit so i ran the performance test that is in checkit. The video speed is a little faster on the internal screen. Of course this may be due to the graphics implementation.

DG One XTIDE

I added an XTIDE card and programmed it with the large XT BIOS. The behaviour was a little unexpected, probably because the floppy disk implementation is not 100% compatible with an IBM PC. The Universal BIOS has trouble associating the drives with drive letters often confusing the flash disk with the third floppy. Selecting floppy drives by letter at startup also resulted in boot failures.

Curiously, invoking the menu and then using the arrow keys to select the boot drive from that menu worked fine. Perhaps the relevant data is reread at that point; only a XTIDE Universal BIOS expert would know.

But, fortunately, the Universal BIOS will allow the system to boot from any of the floppy drives – as long as it is selected from the Universal BIOS menu.

MS-DOS 3.2 is limited to 32MB partitions, which is a little tight. This is probably not a major issue for this machine which is likely to have only occasional use. I could not get the card to boot, but it worked fine otherwise.

I set up a second CF card with DOS 5.0. I was able to make this one bootable and i could set up a full 512kB partition. There is no specific version of MS-DOS 5.0 for the One, so there are a few places where IBM incompatibility rears its head. Firstly the battery backed real time clock does not work, and secondly MS-DOS 5 seems to politely ignore the incompatible serial ports.

With XTIDE and Universal BIOS there are a variety of outcomes depending on the operating system and the boot drive:

OSBoot DriveNotes
MS-DOS 2.1A 3.5″ Front InternalBoots. Can access floppy drives A(front), B(rear), C(5.25″). Appears to not have hard disk support. Was unsuccessful formatting C.
MS-DOS 2.1B 3.5″ Rear InternalBoots. Can access floppy drives A(rear), B(front), C(5.25″). Appears to not have hard disk support. Was unsuccessful formatting C.
MS-DOS 2.1C 5.25″ ExternalNot attempted.
MS-DOS 2.1CF CardAppears to not have hard disk support.
MS-DOS 3.2A 3.5″ Front InternalBoots. Can access CF card with 32MB disk as D. Can access floppy drives A(front), B(rear), C(5.25″). Can write to rear drive but not format. Can format 5.25″ drive and write.
MS-DOS 3.2B 3.5″ Rear InternalBoots. Can access CF card with 32MB disk as D. Can access floppy drives A(rear), B(front), C(5.25″). Can write to rear drive but not format. Can format 5.25″ drive and write.
MS-DOS 3.2C 5.25″ ExternalBoots. Can access CF card with 32MB disk as C. Can access floppy drives A (5.25″), B(front), D(rear). Can write to rear drive but not format. Can format 5.25″ drive and write.
MS-DOS 3.2CF CardDoes not boot. Have to boot from floppy. Then card can be accessed. See above.
MS-DOS 5A 3.5″ Front InternalBoots. Can access CF card with 512MB disk as C. Can access floppy drives A(front), B(rear), D(5.25″). Can write to rear drive but not format. Can format 5.25″ drive and write.
MS-DOS 5B 3.5″ Rear InternalBoots. Can access CF card with 512MB disk as C. Can access floppy drives A(rear), B(front), D(5.25″). Can format 5.25″ drive and write.
MS-DOS 5C 5.25″ ExternalBoots. Can access CF card with 512MB disk as C. Can access floppy drives A(5.25″), B(rear), C(front). Can format 5.25″ drive and write.
MS-DOS 5CF CardBoots. Can access CF card with 32MB disk as C. Can access floppy drives A(front), B(rear), D(5.25″). Can format 5.25″ drive and write.

The rear drive seems to have a strange fault that allows writes but prevents format. May just be in the detail of the format program. The drive system is not 100% IBM compatible.

When formatting DOS 5 seems to treat all drives as 360kB by default. It may be possible to use format options to override but i found it very reluctant. Use driver.sys in config.sys to create new drives E and F that are 720k. Required on any DOS 5 boot disk.

All up, it’s a pretty complex picture!

My XTIDE card does not have a rear facing slot to allow the CF cards to be easily changed. Often, i have to make do with what we can economically get in Australia. XTIDE does support two cards though, and there is plenty of space in the hard drive bay to house them. MS-DOS 3.2 does not see the 32MB drive, but DOS 5 sees both.

With a large hard disk, the first directory listing can take a long time. This is particularly noticeable on my PCs that have 2GB partitions. This effect seems accentuated on this machine and is very noticeable with the 512MB partition. I suspect that the bandwidth using the expansion unit is much lower than with the built-in expansion bus of the IBM PC and similar machines. Nevertheless, it is quite useable.

DG One Multifunction Card

The Expansion unit only has 6 slots and one of those is occupied by the connection to the One. One is required for the Floppy Disk Drive controller and another was occupied by the Hard Disk Controller, but that has been swapped for an XTIDE. Another was occupied by a printer card. Then i added a CGA card. One slot remained.

I really wanted to add a game port and a couple of IBM compatible serial ports (ideally one for a mouse and one for Kermit serial communication); the native com ports are not compatible. The easiest way to do this is to replace the original printer card with a multifunction card and an additional I/O panel. It may be possible to use the multifunction card’s floppy disk controller in place of the original, but i have disabled it for now.

I have used a CA9342 multifunction card. This card is 16 bit, but i expect that the 16 bit operation is limited to IDE, which i won’t be using. I disabled IDE and FDC. Obviously it is from a later era, but so is the XTIDE card. It could be replaced with an older card – one that could provide another 128kB of RAM would be interesting.

The Serial Ports were set to COM3 and COM4. This will provide two PC compatible com ports. The printer is set to LPT1 and the game port is also enabled. The second serial port and the game port connectors are mounted on a second I/O panel.

Parallel port enabledJP2
pins 1 & 2 closed
Parallel port disabledJP2pins 2 & 3 closed
Serial port 1 address 3F8 – 3FFh selectJP3pins 1 & 2 closed
Serial port 1 address 3E8 – 3EFh selectJP3pins 2 & 3 closed
Floppy drive interface enabledJP4

pins 1 & 2 closed
Floppy drive interface disabledJP4pins 2 & 3 closed
Serial port 2 enabledJP5pins 1 & 2 closed
Serial port 2 disabledJP5pins 2 & 3 closed
Parallel port address 378 – 37Fh selectJP6pins 1 & 2 closed
Parallel port address 278 – 27Fh selectJP6pins 2 & 3 closed
Serial port 2 address 2F8 – 2FFh selectJP7pins 1 & 2 closed
Serial port 2 address 2E8 – 2EFh selectJP7pins 2 & 3 closed
Game port enabledJP8pins 1 & 2 closed
Game port disabledJP8pins 2 & 3 closed
Serial port 1 enabledJP9pins 1 & 2 closed
Serial port 1 disabledJP9pins 2 & 3 closed
IDE interface enabledJP10pins 1 & 2 closed
IDE interface disabledJP10pins 2 & 3 closed
Serial port 1 interrupt is IRQ3JP11pins 2 & 3 closed
Serial port 2 interrupt is IRQ3JP11pins 1 & 2 closed
Serial port 2 interrupt is IRQ4JP12pins 1 & 2 closed
Serial port 1 interrupt is IRQ4JP12pins 2 & 3 closed
Serial port 1 interrupt is IRQ5JP13pins 2 & 3 closed
Serial port 2 interrupt is IRQ5JP13pins 1 & 2 closed
Serial port 1 interrupt is IRQ2JP14pins 2 & 3 closed
Serial port 2 interrupt is IRQ2JP14pins 1 & 2 closed
Parallel port interrupt is IRQ7JP15pins 1 & 2 closed
Parallel port interrupt is IRQ5JP15pins 2 & 3 closed

I ran checkit to check the configuration.

MS-DOS 5 does support COM3 and COM4 but can’t see the native One ports, so it labels COM3 and COM4 as COM1 and COM2, respectively. Checkit calls them by names based on their addresses. COM4 (that’s what you type into Kermit) works under MS-DOS 5 but COM3 does not. It only transmits.

MS-DOS 3.2 does not support COM3 and COM4 but Kermit still allows them to be selected, albeit with assumptions about addresses. I found the COM3 worked fine, but curiously COM4 would only transmit.

Once again the IBM incompatibility makes everthing flaky. Checkit reports a missing interrupt. It is what it is.

The joystick shows up and tests fine in Checkit. It does not always work in practice. It works great, for example, with Cosmic which is a space invaders style game.

DG One Software

The software situation is quite amazing – not so much for the quantity of it, but for the associated manuals which are substantial.

All the original disks have been imaged. The Flight Simulator II disk is copy protected so an IMD/IMG is not good enough; an SCP is required. The Overhead Express disk that i grabbed from the web needs to be written from the IMD; it is not enough to just grab the files.

PackageDisksManualNotes
MS-DOS 2.1 OEM2 original disks2 manuals
1 key overlay
Tested and works.
Diagnostics1 original diskTested an works. Has a hard disk formatter.
MS-DOS 3.2 OEMDisk images available on internet3 manualsTested and works.
GW-Basic OEMOn OS Disk1 manual
Micropro Wordstar 3.3 OEM3 original disks6 manuals,
2 reference cards
Tested and works but limited to mono display. A generic copy of wordstar works with CGA as well.
Sorcim/IUS Supercalc 31 original disk1 manual,
3 reference cards
Tested and works.
Sorcim/IUS Easywriter II1 original disk1 manualTested and works.
Ashton-Tate Framework 1.1 OEM5 original disks2 manuals,
1 key overlay
Micropro Infostar+Only a Sanyo MBC 550 OEM version downloaded4 manuals
2 reference cards
BPS Overhead ExpressData General Version downloaded1 manual, 1 reference cardTested and works. The floppy disk must be in drive A even when running from hard disk.
subLogic Flight Simulator II OEM1 Original diskmanual, maps, reference cardTested and works. Run from a floppy written from SCP.
SSI WordPerfect OEMOnly a generic version 3 download.1 manualTested and works.
Digital Research CP/M OEM1 manual

A full list of software is here, but it is not easy to tell if all of these are OEM versions and to what degree they may have been modified to work with the One:

The DG OEM version of wordstar always changes to the MONO screen mode when it executes which means it can’t be used on the external CGA screen. The non-OEM version works in either mode.

I have not found a CP/M-86 disk although i have seen it mentioned in forums. There is a CP/M programmers guide amongst the manuals that i have.

Some of the Data General communications mention a version of Unix but i have not found that either.

Most of the manuals do not seem to be online so i have some scanning to do!

Many generic IBM compatible apps work fine.

IBM PC XT Number 2

One of my favourite machines is the PC XT that landed on my desk in 1986. I really didn’t need another one, but this one came to me together with a couple of other machines.

The machine had been poorly stored and had suffered some corrosion.

I pulled it all down for inspection. The damage was fairly superficial, which was good news. I treated the corrosion on the case and resprayed with a colour that is “close enough”. One day somebody may like to better replicate the original finish, but cosmetics are not my priority.

The power supply had some water stains on the exterior, but inside it looked to be in good shape. I have previously recapped an xt power supply due to capacitor leakage, but i have left this one as-is for now.

The seller had a couple of monitors that i bought at the same time. One turned out to be quite specific to an Olivetti machine, so i passed it on to an Olivetti owner. The other was a Taxan amber MDA screen, which was curious because this machine had a CGA card. The screen works well.

There were several RAM errors from the motherboard, but they were quickly resolved. With that, the system booted up using the Tandon TM262 21MB hard disk.

Initially i used a spare monochrome adapter and then i tried the CGA adapter with a CGA screen. This also worked fine.

The Persyst Time Spectrum multifunction card included a battery for the real-time clock. Alas, the leakage had been quite severe.

With several sockets to be replaced and many more possibly hiding corroded tracks, and programmable logic that has potentially been penetrated, i considered this card a write-off. I put out a call to the Adelaide Retro Computer Group for a suitable replacement and Andrew came through as he so often does.

The system worked fine with a spare 360k drive, but the TM100 was not playing the game. Checking with an oscilloscope, there was no data output during a read and this was traced to the LM311 5B at I9.

This had clearly seen some water but, curiously, the rest of the drive seemed fine. Replacing it did not resolve the problem; the inductor L4 on the power line was open. Perhaps it had acted as a fuse. Once the inductor was replaced, the drive was fine.

Although the hard drive is still functioning, there is a certain inevitability about its failure. In this situation, i always add a XTIDE solid state drive for normal use. With DOS 5.0 an 8GB card can be used, yielding 4x 2GB drives. That allows a bucket load of software to be loaded. For whatever reason, though, i have not been able to access the original drive from DOS 5.0 – a surprise given that i have similar setups where this works fine.

The case cleaned up well despite the water ingress.

I settled on using a monochrome display for now, but because the IBM monochrome adapter is a little limited, i swapped it out for Hercules style card which gives nice sharp graphics and also maintains the crisp text mode. I squeezed it all back into the enclosure.

Autocad 2 provides a nice demonstration of the graphics.

Hewlett-Packard HP 150

The HP 150 is a remarkable machine that never fails to impress, even though commercially it did not do well. The computer itself includes the very sharp green monitor and makes provision for a printer as well.

It runs MS-DOS 2, but it is not an IBM compatible machine.

The most surprising features are the touch screen and program enhancements that use it. This was a significant investment by HP.

This machine was a FB marketplace purchase all the way from Bundaberg. The seller was the original owner. He purchased it back in the early eighties to support his surveying business. He said that he wanted a quality machine, and that meant HP.

If you look carefully, there’s a child’s sticker near the 150 at the bottom right of the monitor. Perhaps from a now adult child. I’ve left it there.

I knew it had a video RAM fault when i bought it and that took a little work to resolve. The disk drives are Sony single sided 3.5″ units – a very early adoption of this technology – that needed a good clean to operate. Apart from those issues, this machine was good to go.

HP 150 Getting Started

This machine had been powered up recently, so a felt ok about switching it on. The power on self test had given an error code: 1040. I had grabbed the service manual and looked up this code before i purchased.

The Service Manual has info on interpreting the code and on the LED readout visible through the back panel.

1000 means keyboard or touchscreen problems.

0040 means a graphics RAM problem.

It took a couple of power cycles to get the error codes from the LEDs at the back of the unit. Each error has four nibbles that are shown one at a time.

The LEDs gave the following:

  • EC40: GRAM Travelling test failed
  • E840: GRAM Marching test failed
  • 9120: Keyboard did not identify as being present.

Clearly, there were two quite separate problems.  There were no batteries, so I expected 0001 error – but didn’t get it. 

The Graphics RAM tests look like they have 512 slots.  It has 512 horizontal resolution.  390 vertical.  Curious number.  The number might be a column or a row.  (Other clues point to a column.)

The graphics card pulls out fairly easily from the “front plane”. As is often the case with card cages, it is almost impossible to instrument the card without an extender – which i don’t have.

The manual doesn’t go down to the chip level, but the error code looked like it might.  Probably an error bit for each of the 8 bits of GRAM and 1 bit for the bank.  That made it the 6th bit of bank 0.

I could see two bad vertical lines on the screen – one was flickering, and the other was solid.  They were repeated across the screen.  I wired up quite a wide ribbon with alternating signal and ground to bring the RAM outputs to a scope so I could check with the board in place.  I found two lines that were different from the others – bit 6 on both banks.

I cut out the first RAM and replaced with a socket and 6164 DRAM.  The 16k DRAMs are compatible with 6164 64kb DRAM.  The error codes changed on the 9th bit – the second bank failure.  I repeated the exercise and the GRAM errors were cleared.

The manual said that part of the GRAM was used for variables, so I was hopeful that clearing the fault might allow the machine to the boot stage.  And it did. I had some work to do on the drives before i could try to boot.

By this stage, the keyboard error had magically cleared. It did re-occur some years later, but i think it was due to a corruption of the configuration data, either due to a program crash or a power cycle. The computer automatically reloaded the defaults after the self test.

The main processor board is fairly easy to remove from the “front plane”. It has a mezzanine RAM card RAM with 256k of memory.

Touch panel:

CRT, chassis, and power supply:

I didn’t see anything that particularly worried me.

HP 150 Drive and Disks

The HP 150 uses an external 9121 2x Floppy Drive Unit that connects via HP-IB. The drives are Sony OA-D30V-1 3.5″ single-sided double-density 70 track units. HP was a very early adopter of the 3.5″ disk format.

The drives were quite gummed up. I cleaned and lubricated them, and they were good to go.

The unit came with several disks, but it wasn’t necessary to use them.  There are lots of disk images available at the HP Museum:

http://hpmuseum.net/display_item.php?hw=43

The images are in either Teledisk or HPI format.  I had limited success writing Teledisk images using Teledisk on a PC. Perhaps the drive wasn’t configured for double density disks.

I did better using HPdrive (also used with the HP 85).  HPDrive uses HPI files rather than TD0. These seem to be similar to raw image files. The TD0 files were converted to HPI format using a utility, TD2HPI

I found that the 9121 drive option seemed to not work very well. The 9122 supports double-sided disks and uses the SS-80 protocol rather than the Amigo protocol. Perhaps a little incompatibility in the amigo protocol. 

HPDrive reported that all the images were the wrong size – perhaps because it’s a double side drive. They worked though.

Devices need to be configured using “Device_Config” on the system disk. The boot drive is fixed as HPIB address 0 drive 0.  This is drive A:. For the 9121 unit, drive 1 is B:.

The HP150 can also use the 82901M drive unit that i use with the HP 85. I’ve set the 82901M drives at HPIB address 2.  These are drives C: and D:.

The 82905B Printer is set to HPIB address 1.

The following creates a -9122 drive at HPIB address 3. 

Hpdrive -l 3 -a 3 -9122 <filename>.hpi

The system disks use MS-DOS 2.01, but don’t have the full collection of programs that would normally come with the OS. The Owner’s Guide indicates that some programs are relegated to the Programmer’s Pac disk. This disk image does appear to be on the HP Computer Museum site, but the image is corrupt.

The disks need to be formatted before use, and that seems to be the only way to set the disk label – so you can’t just format a batch and label later.

Amongst the disk images on the museum site was a hard disk image with MS-DOS 3.2.  I was able to boot from that and create an MS-DOS 3.2 boot disk with a few more programs. 

To boot from the image, the hpdrive has to be at address 0 and the physical 9121 drive unit must be reconfigured to a different address. eg:

hpdrive -l 3 -a 0 -9134D 150loaded.hpi

The system needs to be completely restarted if the drive address is changed.

There is no way to copy a complete disk track by track.

It seems that distributed disks are “uninstalled”.  There is an installation program on the Applications disk, that allows programs to be installed from the distribution disk on to a formatted floppy disk.   The installation copies the files over and sets up files for the Personal Application Manager (PAM). This is a program which acts as a shell and activates programs by touching soft function keys.

Some of the disk images on the HP Computer Museum site seem to be installed and some not.  Some of the disks don’t follow the HP 150 “formula” and just have software on disk that can be copied over.  

In some cases, it seems to be possible to install from an “installed” disk, but in other cases it seems not.  Generally it’s possible to copy over the files and they will work. They won’t appear in PAM, though. You have to go to the DOS command prompt to execute them.

HP seems to have used hidden files to manage copy control.  The hidden files can be revealed with chkdsk /v but there seems to be no program on the system disk to unhide them.

This brings us to the subject of transferring files to and from the HP 150. The usual suspects are disappointing. Greaseweazle and FluxEngine don’t support the format but can read and write fluxes. Many of the HP formats can be manipulated by HPDir, but it seems that the HP 150 file system is quite different from the HP 9845 file system.

Both the HP 85 and the HP 150 have a curious disk layout where each track has 16x 256 byte sectors and 1x 128 byte sector. Others have commented that the 128 byte sector is not used.

There is an MS-DOS driver, HP150SYS, for IBM compatibles that allows manipulation of an HP 150 disk in much the same way as IBM disks. This driver was written by the author of Teledisk, Sydex. It works well.

Files can also be transferred over a serial line using Kermit. The disk image for Kermit is a 720kB image, but i could access it by setting the drive type on HPDrive to a double-sided disk unit. Then the files could be copied over to some single-sided disks.