In my prior post, Instructions for Emulating an HP3000 with SIMH, my enclosed PDF of instructions discusses getting files onto the SIMH HP3000 using Reflections or creating a SIMH format tape.
Both of these options have limitations if you want to move files from a real HP3000 or a Stromasys VM HP3000.
Keven Miller, of http://www.3kranger.com, gave me a better way. I will document his procedure here.
You are going to need a couple of programs written by Keven to convert files between tape formats.
Installing the Tape Conversion Programs
To handle the tape conversions, you will need 2 programs: tapecpyv and tapesim.
Download the proper File
If you want to transmit the file to your real/stromasys HP3000 via ftp, download taputilt.std.bin.
If you want to transmit the file to your real/stromasys HP3000 via WRQ Reflections, download taputilt.std.wrq.
Uploading tapeutilt.std.bin via FTP
Transfer the tapeutilt file to the PUB.SYS directory of your HP3000. If you have FTP running on your HP3000, this is probably the easiest method:
C:\tmp>ftp hp3000 Connected to hp3000.xxxxxxx.net. 220 HP ARPA FTP Server [A0010A02] (C) Hewlett-Packard Co. 1990 User (hp3000.xxxxxxx.net:(none)): manager.sys 331 Password required for MANAGER.SYS. Syntax: userpass,acctpass Password: 230 User logged on ftp> bin 200 Type set to I. ftp> put taputilt.std.bin taputilt.pub.sys;rec=128,,f,binary;code=store 200 PORT command ok. 150 File: taputilt.pub.sys;rec=128,,f,binary;code=store opened; data connection will be opened 226 Transfer complete. ftp: 178944 bytes sent in 0.41Seconds 440.75Kbytes/sec. ftp> quit 221 Server is closing command connection
Uploading taputilt.std.wrq via Reflections
- Connect to your HP3000 and login as manager.sys.
- File | Transfer and setup the transfer as follows:
Local name is the file on your PC to be uploaded. Host file name is the name of the file on your HP3000. Make sure you use the WRQ protocol and Labels.
Restore the TAPUTILT Store to Disk File
- The taputilt file should now be on PUB.SYS:
HP3000 Release: C.65.00 User Version: C.65.00 SAT, JUL 6, 2019, 1:14 PM MPE/iX HP31900 C.25.06 Copyright Hewlett-Packard 1987. All rights reserved. :listf tap@.pub.sys,2 ACCOUNT= SYS GROUP= PUB FILENAME CODE ------------LOGICAL RECORD----------- ----SPACE---- SIZE TYP EOF LIMIT R/B SECTORS #X MX TAPUTILT STORE 128W FB 699 16776959 1 1024 3 32 :
- Verify tape contents:
:file t=taputilt;dev=disc :restore *t;@.@.@;listdir >> TURBO-STORE/RESTORE VERSION C.65.05 B5152AA << (C) 1986 HEWLETT-PACKARD CO. RESTORE *t;@.@.@;LISTDIR SAT, JUL 6, 2019, 1:18 PM MPE/iX MEDIA DIRECTORY MEDIA NAME : STORE/RESTORE-HP/3000.MPEXL MEDIA VERSION : MPE/iX 08.50 FIXED ASCII MEDIA NUMBER : 1 MEDIA CREATION DATE FRI, JUL 5, 2019, 6:20 PM STORE tape@;*t;show MEDIA CREATED WITH THE FOLLOWING OPTIONS MEDIA RECORD SIZE : 32768 INTERLEAVE DEPTH : 1 FILENAME GROUP ACCOUNT CREATOR MEDIA SET TAPECOPY.PUB .SYS MANAGER .SYS >= 1 TAPECPYV.PUB .SYS MANAGER .SYS >= 1 TAPESIM .PUB .SYS MANAGER .SYS >= 1 TAPESIMC.PUB .SYS MANAGER .SYS >= 1 :
- Restore Files to PUB.SYS:
:restore *t;@.PUB.SYS;olddate;show;keep >> TURBO-STORE/RESTORE VERSION C.65.05 B5152AA << (C) 1986 HEWLETT-PACKARD CO. RESTORE *t;@.PUB.SYS;OLDDATE;SHOW;KEEP SAT, JUL 6, 2019, 1:25 PM WILL RESTORE 4 FILES ; NUMBER OF FILES ON MEDIA 4 FILENAME GROUP ACCOUNT VOLUME RESTRICTIONS SECTORS CODE MEDIA TAPECOPY.PUB .SYS DISC :C 192 NMPRG 1 TAPECPYV.PUB .SYS DISC :C 176 PROG 1 TAPESIM .PUB .SYS DISC :C 128 NMPRG 1 TAPESIMC.PUB .SYS DISC :C 192 1 FILES RESTORED : 4 :
The Procedure
In this example, I’m going to move my TREK73 program from my Stromasys VM HP3000 to my SIMH HP3000. Here is the actual file as it exists on the Stromasys VM:
:listf trek@,2 ACCOUNT= XXXXXXXX GROUP= PUB FILENAME CODE ------------LOGICAL RECORD----------- ----SPACE---- SIZE TYP EOF LIMIT R/B SECTORS #X MX TREK73 PROG 128W FB 516 516 1 528 1 1
Store Files to Physical Tape in TRANSPORT Format
A classic HP3000 can only restore classic formatted tapes which are created using the STORE command with the TRANSPORT option. Unfortunately you can only use the TRANSPORT option when creating a physical tape.
So, if you have a real HP3000 you are going to create a physical tape. For the Stromasys VM we will do a normal store to tape which will create a file in the VMWare VM called /home/a202/ldev7.img.
- Examine any existing ldev7.img file and move it as necessary. This procedure will overwrite any existing ldev7.img file.
- Mount the tape using loadtape or online:
:x loadtape 7 LoadTape.A.05 Loading LDEV 7... Putting LDEV 7 online... LDEV 7 is (or soon will be) online. END OF PROGRAM :showdev 7 LDEV AVAIL OWNERSHIP VOLID DEN ASSOCIATION 7 AVAIL (W) (Nolabel) 1600
- Set up file equation for tape drive:
:file t;dev=tape
- Store the file to tape using the transport option:
:store trek73.pub.xxxxxxx;*t;transport;show MPE-XL Transport Store-Restore, C.45.05 (C) Hewlett-Packard Co., 1988. STORE TREK73.PUB.XXXXXXX;*T;TRANSPORT;SHOW FRI, JUN 14, 2019, 3:57 PM FILENAME.GROUP .ACCOUNT LDN ADDRESS REEL SECTORS CODE TREK73 .PUB .XXXXXXX * 1 $0000C537 1 517 PROG FILES STORED: 1
Convert Physical Tape to SIMH formatted Tape
- Reload the tape:
:x loadtape 7 LoadTape.A.05 Loading LDEV 7... Putting LDEV 7 online... LDEV 7 is (or soon will be) online. END OF PROGRAM :
- The tape now contains trek73.pub.xxxxxxx, stored in a format that MPE/V can read. Now we copy that back to disk using tapecpyv:
:file tapein;dev=tape :file diskout=trek73s :tapecpyv td TapeCopy 3.0s !! Control-Y enabled Opening tape "TAPEIN" Tape: TAPEIN Recsize 32760 Dev 7 Data: CMSTORE FRI, JUN 14, 2019, 3:57 PM Reel 1 Maxbuf 4096 File: TREK73S.PUB.XXXXXXX Recsize 256 EOF 0 Fcode CMSTR Limit 16776959 20 blks 10 marks min/max 24/8192 519 diskrec Closing files ... done. END OF PROGRAM :listf trek@,2 ACCOUNT= XXXXXXX GROUP= PUB FILENAME CODE ------------LOGICAL RECORD----------- ----SPACE---- SIZE TYP EOF LIMIT R/B SECTORS #X MX TREK73 PROG 128W FB 516 516 1 528 1 1 TREK73S 2504 128W FB 519 519 1 528 3 *
- TREK73S now contains a disk image of a classic STORE tape.
- Now use the tapesim program to convert the classic store tape to a SIMH formatted tape:
:tapesim "trek73s trek73t" TAPESIM 1.02 Convert STD file to SIMH Open trek73s read Open trek73t write !! Control-Y interrupt enabled. !! Endian Big Size 00020700 (519 records) Posn 00020700 Closing trek73t Closing trek73s :listf trek@,2 ACCOUNT= XXXXXXX GROUP= PUB FILENAME CODE ------------LOGICAL RECORD----------- ----SPACE---- SIZE TYP EOF LIMIT R/B SECTORS #X MX TREK73 PROG 128W FB 516 516 1 528 1 1 TREK73S 2504 128W FB 519 519 1 528 3 * TREK73T 2508 128W FB 519 1519 1 768 3 8
- TREK73T contains the SIMH tape image.
- Download the TREK73T file from the HP3000. Since mine is running FTP server, I will use FTP:
C:\>ftp hpdude Connected to hpdude.xxxxxxx.net. 220 HP ARPA FTP Server [A0012H15] (C) Hewlett-Packard Co. 2000 [PASV SUPPORT] User (hpdude.xxxxxx.net:(none)): dan.xxxxxxx 331 Password required for DAN.XXXXXXX. Syntax: [,]acctpass Password: 230 User logged on ftp> bin 200 Type set to I. ftp> get trek73t trek73t.tap 200 PORT command ok. 150 File: trek73t opened; data connection will be opened 226 Transfer complete. ftp: 132864 bytes received in 0.09Seconds 1413.45Kbytes/sec. ftp> quit 221 Server is closing command connection C:\>dir trek* Volume in drive C is c180104 Volume Serial Number is D6EF-2751 Directory of C:\ 07/05/2019 03:45 PM 132,864 trek73t.tap 1 File(s) 132,864 bytes 0 Dir(s) 351,378,993,152 bytes free C:\>
Restore Files on the SIMH HP3000
Important: The Classic HP3000 RESTORE command can only restore files back to the same group/account they were stored from. Not only must you have the same group and account, but the user that created the original file as well.
- Make sure you have the appropriate account structure implemented on the SIMH HP3000 before attempting to restore.
- On the SIMH HP3000, attach the file to the tape drive:
<control-E> Simulation stopped, P: 071264 (PAUS 0) sim> attach -r ms0 c:\trek73t.tap MS: unit is read only Tape Image 'c:\trek73t.tap' scanned as SIMH format. contains 132536 bytes of tape data (20 records, 8 tapemarks) 136 bytes of unexamined data remain in the tape image file sim> go 15:51/10/Vol (unlabelled) mounted on LDEV# 7 :
- Now restore the file to the SIMH HP3000:
:RESTORE *T;@.@.XXXXXXX;OLDDATE;SHOW;KEEP ?15:56/#S3/22/LDEV# FOR "T" ON TAPE (NUM)? =REPLY 22,7 FRI, JUL 5, 1991, 3:57 PM FILES RESTORED = 1 FILE .GROUP .ACCOUNT LDN ADDRESS TREK73 .PUB .XXXXXXX 1 %603300 FILES NOT RESTORED = 0 :LISTF TREK73,2 ACCOUNT= XXXXXXX GROUP= PUB FILENAME CODE ------------LOGICAL RECORD----------- ----SPACE---- SIZE TYP EOF LIMIT R/B SECTORS #X MX TREK73 PROG 128W FB 516 516 1 517 1 1 :RUN TREK73 TREK73! DO YOU WANT INSTRUCTIONS ? N CAPTAIN: MY LAST NAME IS
Pingback: Instructions for Emulating an HP3000 with SIMH | Big Dan the Blogging Man
Hi…if you’re interested, I have a method (combined CM program & CM SL) that lets me effectively run CMSTORE on MPE/iX and create SIMH-format tape image files … no real tape drive needed.
Sample run:
run simhstor.pub;info=”?;*fum;show”
SIMHSTOR 20170301
Note: changed ‘tape’ name to SIMHFUM
PIN = 115
MPE-XL Transport Store-Restore, C.45.05 (C) Hewlett-Packard Co., 1988.
STORE ?;*SIMHFUM;SHOW
TUE, OCT 15, 2019, 11:12 AM
SIMHtape 20160713. (c) Allegro Consultants, Inc.
Contact: sieler@allegro.com
Creating new SIMH-format ‘tape’ file: SIMHFUM
FILENAME.GROUP .ACCOUNT LDN ADDRESS REEL SECTORS CODE
P .SOURCE .SIELER * 1$00009558 1 20
FILES STORED: 1
‘Tape’ image SIMHFUM is 5,372 bytes.
—
One could then FTP the bytestream file SIMHFUM to your SIMH host, mount it as
a tape, and restore from it.
sieler@allegro.com