Topics

HP9826/36 PowerFail option RTC?


Anders
 

Does anyone have any info how the realtime clock in the powerfail option for those computers worked and how it was interfaced to the BIOS? Option 050 as it was called. There is an article in an old issue of the HP Systems Journal that talks a bit about it but not in much detail.


rmb_guru
 

We had a HP9826 setup with the Powerfail option on the HP8566 production line.  It worked very well in keeping the HP9826 running during AC blackouts and to allow the hpl software to have a controlled shutdown of the system at the appropriate time, when the blackout continued almost beyond the battery capacity.

NOTE: The HP9826 we had ran 24/7 for over 100,000 hours (11+ years) along with a HP9134A 5MB Hard Disk, with a minimal amount of shutdowns along the way due to power-outages and/or maintenance.  The HP9826 was the data server in a HPIB based network that we used to connect all the HP8566 Test stations together, running hpl.  I still have the HP9134A and it still runs fine even after 30+ years.  Its internal 5 MB Hard Disk was built by the HP Disk Memory division and it is built like a tank.

If memory serves, you would see the Powerfail option listed in the hardware portion of the HP9826 boot screen.  But that is the extent of the "BIOS" knowing anything about it.  The individual language (i.e. hpl and HPBASIC) had the knowledge/commands on how to use the Powerfail option.

The option consisted of installing a battery/board/module into the bottom of the HP9826 / HP9836.  I've attached an image showing the panel on the bottom of these computers where the hardware would be  installed.

I've attached an excerpt from the Hpl operating/programming manual, which talks a bit about the option and how to use it.
I have the installation manual for the option and probably HPBASIC usage info as well, but I will need to dig around for the paper copies.


 

The Power fail board.
I've never mounted it.


-Rik



On Wed, Jan 8, 2020 at 7:10 PM +0100, "rmb_guru via Groups.Io" <rmb_guru@...> wrote:

We had a HP9826 setup with the Powerfail option on the HP8566 production line.  It worked very well in keeping the HP9826 running during AC blackouts and to allow the hpl software to have a controlled shutdown of the system at the appropriate time, when the blackout continued almost beyond the battery capacity.

NOTE: The HP9826 we had ran 24/7 for over 100,000 hours (11+ years) along with a HP9134A 5MB Hard Disk, with a minimal amount of shutdowns along the way due to power-outages and/or maintenance.  The HP9826 was the data server in a HPIB based network that we used to connect all the HP8566 Test stations together, running hpl.  I still have the HP9134A and it still runs fine even after 30+ years.  Its internal 5 MB Hard Disk was built by the HP Disk Memory division and it is built like a tank.

If memory serves, you would see the Powerfail option listed in the hardware portion of the HP9826 boot screen.  But that is the extent of the "BIOS" knowing anything about it.  The individual language (i.e. hpl and HPBASIC) had the knowledge/commands on how to use the Powerfail option.

The option consisted of installing a battery/board/module into the bottom of the HP9826 / HP9836.  I've attached an image showing the panel on the bottom of these computers where the hardware would be  installed.

I've attached an excerpt from the Hpl operating/programming manual, which talks a bit about the option and how to use it.
I have the installation manual for the option and probably HPBASIC usage info as well, but I will need to dig around for the paper copies.


Anders
 

I guess the powerup sequence identifies it pretty much like in identifies all the other peripherals, by scanning the "slots" in memory, looking for a signature. A bit like the way the old IBM PC scanned memory looking for 55 AA. Does anyone know if this scanning is documented anywhere? In this scenario, I am just interested in the RTC part.


Dave McGuire
 

On 1/8/20 1:10 PM, rmb_guru via Groups.Io wrote:
We had a HP9826 setup with the Powerfail option on the HP8566 production
line.  It worked very well in keeping the HP9826 running during AC
blackouts and to allow the hpl software to have a controlled shutdown of
the system at the appropriate time, when the blackout continued almost
beyond the battery capacity.

NOTE: The HP9826 we had ran 24/7 for over 100,000 hours (11+ years)
along with a HP9134A 5MB Hard Disk, with a minimal amount of shutdowns
along the way due to power-outages and/or maintenance.  The HP9826 was
the data server in a HPIB based network that we used to connect all the
HP8566 Test stations together, running hpl.  I still have the HP9134A
and it still runs fine even after 30+ years.  Its internal 5 MB Hard
Disk was built by the HP Disk Memory division and it is built like a tank.

If memory serves, you would see the Powerfail option listed in the
hardware portion of the HP9826 boot screen.  But that is the extent of
the "BIOS" knowing anything about it.  The individual language (i.e. hpl
and HPBASIC) had the knowledge/commands on how to use the Powerfail option.

The option consisted of installing a battery/board/module into the
bottom of the HP9826 / HP9836.  I've attached an image showing the panel
on the bottom of these computers where the hardware would be  installed.

I've attached an excerpt from the Hpl operating/programming manual,
which talks a bit about the option and how to use it.
I have the installation manual for the option and probably HPBASIC usage
info as well, but I will need to dig around for the paper copies.
An interesting option. I have one of these in one of my 9826s. It
made quite a mess when the batteries went, but I'm pretty sure I can get
it cleaned up ok.

-Dave

--
Dave McGuire, AK4HZ
New Kensington, PA


rmb_guru
 

Anders,

I dug out my HP98270F Powerfail Option Installation manual, scanned it and put it into the files section in the HP9000 S200300 folder.

The manual has a theory of operation section, block diagram and schematic of the Powerfail board.

The RTC circuit is implemented in discrete ICs with an Intel 8041A microprocessor interface.

NOTE: The main clock oscillator for the RTC is a 1813-0226 IC that has a 819200 Hz output.  The IC is very scarce and so far I haven't found any information on it, it could be a custom HP created IC.

Enjoy,


David Collins
 

Now also loaded into the hpmuseum.net website.

Thanks! 

On Tue, 14 Jan 2020 at 12:29, rmb_guru via Groups.Io <rmb_guru=yahoo.com@groups.io> wrote:
Anders,

I dug out my HP98270F Powerfail Option Installation manual, scanned it and put it into the files section in the HP9000 S200300 folder.

The manual has a theory of operation section, block diagram and schematic of the Powerfail board.

The RTC circuit is implemented in discrete ICs with an Intel 8041A microprocessor interface.

NOTE: The main clock oscillator for the RTC is a 1813-0226 IC that has a 819200 Hz output.  The IC is very scarce and so far I haven't found any information on it, it could be a custom HP created IC.

Enjoy,


Anders
 

Great! Thanks!


Anders
 

It appears that it communicates through two memory locations. Perhaps one could reverse-engineer the protocol, given enough time. Surely, a breadboard adapter would help...


rmb_guru
 

On Mon, Jan 13, 2020 at 06:26 PM, David Collins wrote:
Now also loaded into the hpmuseum.net website.
 
Thanks! 
Thank you David.  I was going to look into how to submit the PDF to the HP museum, but now it is already done.  However I just noticed that it has the wrong title.  It should say 98270F, not 98207F, the 7 and 0 were reversed :-(


David Collins
 

My apologies !  All fixed now..


On Wed, 15 Jan 2020 at 07:22, rmb_guru via Groups.Io <rmb_guru=yahoo.com@groups.io> wrote:
On Mon, Jan 13, 2020 at 06:26 PM, David Collins wrote:
Now also loaded into the hpmuseum.net website.
 
Thanks! 
Thank you David.  I was going to look into how to submit the PDF to the HP museum, but now it is already done.  However I just noticed that it has the wrong title.  It should say 98270F, not 98207F, the 7 and 0 were reversed :-(


Anders
 

Interesting circuit, very edudcational! :) Might be a bit of an overkill for what I want to do though. All I wanted was for the clock to be set to the right date/time when I start up, so I came up with this brilliant idea:

Have a disk in disk 0. On that disk is an AUTOST that just reads a file RTC.BIN that has the current time and sets the clock..

The disk is not a real disk, but my HPDisk. RTC.BIn is just a 1-sector binary file. HPDisk knows where it is (by reading the directory when mounting the image) so when the 98x6 asks for that sector, it replies with a value from an onboard RTC instead. Setting works the same way, the RTC is updated when the sector is written.

I have no RTC on HPDisk right now, but I have already prototyped one for another project.


rmb_guru
 

On Tue, Jan 14, 2020 at 11:25 PM, Anders wrote:
Interesting circuit, very edudcational! :) Might be a bit of an overkill for what I want to do though. All I wanted was for the clock to be set to the right date/time when I start up, so I came up with this brilliant idea:

Have a disk in disk 0. On that disk is an AUTOST that just reads a file RTC.BIN that has the current time and sets the clock..

The disk is not a real disk, but my HPDisk. RTC.BIn is just a 1-sector binary file. HPDisk knows where it is (by reading the directory when mounting the image) so when the 98x6 asks for that sector, it replies with a value from an onboard RTC instead. Setting works the same way, the RTC is updated when the sector is written.

I have no RTC on HPDisk right now, but I have already prototyped one for another project.
Anders,

Your RTC.Bin solution sounds good for your next generation of HPDisk.  I am definitely interested in eventually getting one of your HPDisk setups/boards.  So what writes/initializes the RTC.Bin file?
On stand-alone HP Disks (LIF, HFS) the OS (i.e. HPBASIC) supplies the file/dir timestamps.  On filesystems coming from something like SRM or SRM/UX, the server uses its own clock for setting the file/dir timestamp.

I've attached an excerpt from one of our AUTOST files that we did in the past when we had Series 200/300 machines booting from SRM or SRM/UX.  We too would create a file on the server and pick-off the timestamp from the file system catalog.

NOTE: SRM or SRM/UX stands for Shared Resource Management, which is a network that has a central server providing things like a main filesystem (for booting/reading/storing files) and central printers and/or plotters and tape backup.  The network can either be the original old 50pin serial cable version (150 feet max), 50 Ohm coax version (1000 meter max) or in the case of SRM/UX, an ethernet LAN version (unlimited distance)

I've also attached a paragraph of the TIMEDATE HPBASIC command for reference, which explains a little bit about how TIMEDATE is set initially.

I've also attached some HPBASIC tips that J-F Garnier posted concerning TIMEDATE anomalies.


Anders
 

On Wed, Jan 15, 2020 at 11:34 AM, rmb_guru wrote:
So what writes/initializes the RTC.Bin file?
I think hat one could have a small program that asks for the date/time and writes the file. The RTC on HPDisk will have a lithium battery that will keep it running for years. I originally investigated that for a printer/plotter emulation where having the correct date on the plot/printfiles. There you would set the RTC through a speciallly formatted print command from say a spectrum analyser.

I will study the material you sent me.


Anders
 

Still working on this. I skipped the idea t keep the 98x6 time value in the RTC. It is an ieee real, 64 bits that the DS2417 is 32 bits, but that is no real problem and besides is it far easier to read two integers. I will just decide on an arbitrary zero date. In my case jan 1 2000 and when I set the time I subtract that from the TIMEDATE and write the result as two integers. When reading I do the opposite, read the two integers, combine and add my zero date.

Code is ready, but I seem to have misplaced the three DS2417's I bought three years ago. Easily done as they are really small...


Anders
 

With fw 0.10 or later you just create a BDAT file on the disk (image). The file needs to be in the first part or the directory as I will only search the first sector of the directory. If that file is present and you have added "RTC 1" to the CFG-file, HPDisk will take note of that and every time you read the BDAT file you will get the data as four integers from the DS2417. If you write four integers to that file, you set the clock.

You can then have an AUTOST program that reads the time when you power up your computer and a small program to set time

Set time

10    INTEGER B1,B2,B3,B4
20    REAL Start,Now,R1,R2,R3,R4,V
30    CLEAR SCREEN
40    PRINT "WELCOME - PLEASE SET TIME"
50    !CREATE BDAT "RTC",1
60    Start=DATE("1 JAN 2000")
70    LINPUT "ENTER DATE AS 1 JAN 2020",D$
80    LINPUT "ENTER TIME AS HH:MM:SS",T$
90    SET TIMEDATE DATE(D$)+TIME(T$)
100   Now=TIMEDATE-Start
110   R4=Now DIV 16777216
120   V=Now MOD 16777216
130   R3=V DIV 65536
140   V=V MOD 655366
150   R2=V DIV 256
160   R1=V MOD 256
161   B4=R4
162   B3=R3
163   B2=R2
164   B1=R1
170   ASSIGN @File TO "RTC"
180   OUTPUT @File,1;B4;B3;B2;B1
190   PRINT "WROTE B4:";B4;" B3:";B3;" B2:";B2;" B1:";B1
200   ASSIGN @File TO *
210   PRINT Now
220   ENDN

Autost

1     INTEGER B4,B3,B2,B1
2     REAL Start,Now,R4,R3,R2,R1
10    CLEAR SCREEN
20    PRINT "WELCOME - SETTING TIME"
60    ASSIGN @File TO "RTC"
70    ENTER @File,1;B4;B3;B2;B1T
71    PRINT "READ B4..B1 ";B4;" ";B3;" ";B2;" ";B1
72    Start=DATE("1 JAN 2000")
73    R4=B4
74    R3=B3
75    R2=B2
76    R1=B1
78    Now=Start+R4*16777216+R3*65536+R2*256+R1
80    ASSIGN @File TO *
90    PRINT Now
100   SET TIMEDATE Now
101   PRINT DATE$(TIMEDATE);" ";TIME$(TIMEDATE);
110   ENDN

Note that I quite arbitrarily chose Jan 1 2000 as zero to give me a manageable 32-bit value. Internally the 98x6 stores time as a double-precision REAL. I also used four integers as the 98x6 does not have unsigned integers