Hidden Value details commands and procedures in MPE (and some in Vesoft’s MPEX) that can improve your productivity with HP 3000 systems. Get a free NewsWire HP 3000 Always Online cap — submit your MPE tip directly to us here at the NewsWire. Send your tips to editor@3000newswire.com, or fax them to 512.331.3807.

I've just restored a database into a different group/account than the original. Unfortunately, the database was attached to an IMAGESQL DBE and the TC file still points to that DBE being in the original location - looks like the filename is held fully-qualified.

Now I have a database that I can't do anything with. How do I recover this situation given that I really don't want to restore the DBE to the original location?

Tony Furnivall replies:

Use DBUTIL and detach the IMAGE database. This will apparently give you some errors, but will detach the database from all DBEs. (It also purges the TC file.). Now you can attach to any DBEs you want and continue!

David Rutherford replies:

If the filename is fully-qualified, you can just issue a file equation like

File dbe.group.acct=dbe.realgroup.realacct.

Ken Vickers replies:

DETACH in DBUTIL will clean up the IMAGE end in a flash, but cleaning up the DBE can be a lot more tedious.

So long as you have IMAGESQL scripts for re-creating the attachments, life is not too bad. DBTSQL is great for those who don’t keep up the scripts as they go along. [And DBTSQL author Denys Beauchemin pointed out that the program is available for free at www.hicomp.com/dbtune.htm.]

Is there an easy way to determine if today is the last day of the current month?

Glenn Cole replies:

Call CALENDAR to get today's date (it's in that wacky compressed format). Add 1. Pass the result to ALMANAC, and look at the returned MONTH. If the current month is different from the returned MONTH, then today is the last day.

Hmmm, better yet, it looks like you can get away with: Add 1 to the day-of-month, call HPDATEFORMAT or HPDATEVALIDATE (you need to be on MPE/iX 5.5 PowerPatch 4).

I have got to boot my system several times again this weekend to install software.The system checks memory every time. Is there a command that will 'stop' this check but continue with the reboot ?

Fred Metcalf replies:

I would change the fastsize value to 0 at the ISL prompt. This will reduce the memory tested to 256 Kb. Just remember to set it back to 'F' when you are done. I believe the automatic memory page deallocation process relies on the full memory being tested.

Stan Sieler adds:

Although this may work, it's somewhat risky. Be very very sure to reset it to F as soon as possible. I wouldn't want to risk a boot-up after a power off if FASTSIZE isn't F.

Another option (if the performance impact isn't too much) is to pull some memory boards from your machine for awhile. I've done that on some models of HP 3000 when I was doing some R&D that required frequent crashes/reboots. The secondary advantage is that memory dumps are smaller (if you're taking memory dumps .... otherwise it doesn't matter).

On one machine, I used the PDC commands to disable five of the six CPUs, to dramatically speed up reboot times.

How can I reset the Job Numbers and Spoolfile ID Numbers without a system restart?

John Zoltak replies:

Use SETCOUNTER and specify BASE= This immediately sets the counter to BASE.

Are there Native Mode patch programs similar to the CM programs PATCH, SLPATCH?

Stan Sieler replies:

AVATAR, in the Programmer's Toolbox from Lund Performance Solutions, allows you to patch/modify NM programs.

For example, turning a "COMIB" instruction into a NOP at offset $40 in procedure foo:

mc foo+$40, NOP

Note that you can use Debug/iX for free...it's just much harder!

mc foo+$40
$8000240

Lars Appel adds:

Yes, but the GNU gcc package (also free) can help with creating machine hex code from PA-RISC assembler instructions (which seems much more convenient than assembling by hand from the tables in the PA RISC instruction set manual.

I need to identify the MAC addresses of the Lanic boards in our HP3000. How do I do it?

Lee Gunter replies:

Enter the command, "LINKCONTROL <linkname>, C", from the CI prompt. This will display the current and default station address of the link card (LANIC). Just supply your link name as configured in NMMGR where <linkname> is indicated.

Yesterday HP and I reset my Hardware clock during a hardware maintenance call. Today, we are getting dates from Speedware's date call that are 29 hours behind! How do I see what time my hardware clock is set for?

Richard Bayly replies:

You wouldn't be the only one to be confused by this. To solve your problem, try the following to set the time to 2 Nov 1998 at 10:00am

:setclock date=10/02/98;time=10:00 /* System clock Gradual change */

:setclock timezone=W5:00 /* Set correct Timezone */
:setclock ;cancel /* Cancel System clock change */
:setclock date=10/02/98;time=10:00;now /* Reset System & GMT clocks Now */

The showclks.pubxl.telesup will now look like:

:showclks.pubxl.telesup
SHOWCLKS/XL A.10.00
DEBUG/iX C.05.08

HPDEBUG Intrinsic at: 6a8.00007258 PROGRAM+$198
PRIV=$3 := $0
Greenwich Mean Time : FRI, OCT 2, 1998, 3:03 PM ***
GMT/MPE offset : -5:00:00 ***
MPE System Time : FRI, OCT 2, 1998, 10:03 AM ***

This shows the GMT to be five hours in front of your time, which is correct. Once this is setup correctly, you then only have to change the timezone to change the system time for daylight savings, as a 3600 second correction will then be in place to change the system time back or forward an hour.


Copyright 1998, The 3000 NewsWire. All rights reserved.