Any way to undo SECURE of HP BASIC .PROG files?

Torfinn Ingolfsen tingox at
Fri Jun 9 02:39:50 CDT 2017


On Fri, Jun 9, 2017 at 3:46 AM, Glen Slick via cctalk
<cctalk at> wrote:
> I have a 3.5-inch LIF format floppy with some HP BASIC .PROG files
> which I can load on an HP 82321B Viper card running HP BASIC 6.2
> Unfortunately the majority of the program lines appear to have been
> SECURE'd. When doing a LIST or a SAVE the majority of the program
> lines appear as just an '*' character.
> Is there some way to undo the effect of the SECURE so that the .PROG
> files can be SAVE'd back to the complete ASCII source version before
> they were SECURE'd?

Back in the old days (ok, 1985) I faced the same challenge. At $work
we were using a HP9826 (or another model from the HP98xx series) as an
ATS (automatic test station). It had a custom made rig with stepper
motors to turn knobs on the DUT (device under test). It also had
connectors to the control (think wired remote control) sockets for the
various DUT's, connectors to the instruments (HP-IB controlled), and a
printer. The whole thing ran a set of test programs written in Basic
(I think HP-BASIC 2.0). My colleagues soon found out that the test
programs could use some improvements, but unfortunately they were
secured. I was the go-to guy for anything that required programming a
computer, so I was asked to have a look at it. Luckily, I found the
program that the vendor (ok, the company that had put together the
ATS, this was a custom job) had used to secure the programs on one of
the floppies. And it wasn't secured. So it was quite easy for me to
understand what the program did, and change it. Then we had a way to
unsecure secured programs.
On my HP9826 page[1], in the 1985-11-22 entry (yes, the page is
written many years later) you will find a link to a PDF copy of a
printout of the program (I no longer have the program itself) and
these instructions:

Requirements: HP 9826 or HP 9836 with Basic 2.0 (or perhaps later)
This unsecures the whole program. If you just want to unsecure a range
of line numbers, use UNSECURE(A, B), where A is starting line number
and B is ending line number.

So you will have to type in the program from the printout.
Also, it has not been tested on anything else than that machine which
ran Basic 2.0 (IIRC), so if HP changed anything in later versions, it
might not work.

Torfinn Ingolfsen

More information about the cctech mailing list