<div dir="ltr">Bruce,<div><br></div><div>I am going over the LUN files in great detail, and I'm finding a pattern, with some discrepancy.</div><div><br></div><div>Could you confirm one thing for me before I continue, please?</div><div><br></div><div>According to the chart you sent below, it appears that LUN0 and LUN1 overlap. If LUN0 ends on <b style="font-family:'Courier New',Courier,monospace">15,4,31 </b>and LU0 begins on <b style="font-family:'Courier New',Courier,monospace">15,0,0 </b>isn't this overlapping? Could it be that LU1 begins on 16,0,0 ?</div><div><br></div><div>Could there be any other anomalies in this table? I just want to confirm before I hunt too much further. Going through these files block-by-block is fairly arduous.</div><div><br></div><div>Thanks for all your help on this!</div><div>-AJ</div><div><br></div><div><b style="font-family:'Courier New',Courier,monospace">LUN CYL HD SEC</b><br></div><div>
<span style="font-family:'Courier New',Courier,monospace"><b>---- --- -- ---</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b><br></b></span>
<span style="font-family:'Courier New',Courier,monospace"><b>LUN 0: 0, 0, 0 disk start address</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b> 15, 4, 31 disk end address</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b><br></b></span>
<span style="font-family:'Courier New',Courier,monospace"><b>LUN 1: 15, 0, 0</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b> 111, 4, 31</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b><br></b></span>
<span style="font-family:'Courier New',Courier,monospace"><b>LUN 2: 112, 0, 0</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b> 223, 4, 31</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b><br></b></span>
<span style="font-family:'Courier New',Courier,monospace"><b>LUN3: 224, 0, 0</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b> 335, 4, 31</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b><br></b></span>
<span style="font-family:'Courier New',Courier,monospace"><b>LUN4: 336, 0, 0</b></span><br>
<span style="font-family:'Courier New',Courier,monospace"><b> 441, 4, 31</b></span><br></div><div><span style="font-family:'Courier New',Courier,monospace"><b><br></b></span></div><div><span style="font-family:'Courier New',Courier,monospace"><b><br></b></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 18, 2015 at 11:29 AM, Bruce Ray <span dir="ltr"><<a href="mailto:Bruce@wild-hare.com" target="_blank">Bruce@wild-hare.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">G'day AJ -<br>
<br>
There is only one program on the 'MinicomDiskUtility.bin' file - there is no data beyond the 8KB (the file size is only). There is no "filemark" or other pseudo-/meta- data that I detect in the file, just a single stream of 4096 words (as appropriate for the DG word-oriented architecture [big-endian]). What other file(s) am I missing?<br>
<br>
<br>
Regardless, dissecting and running the utility reveals further program assumptions:<br>
<br>
The 40 MB disk drive has a geometry of 442 cylinders, 5 heads, 32 sectors/track (head).<br>
<br>
The IRIS logical unit to physical disk address assignments are:<br>
<br>
<br>
LUN CYL HD SEC<br>
---- --- -- ---<br>
<br>
LUN 0: 0, 0, 0 disk start address<br>
15, 4, 31 disk end address<br>
<br>
LUN 1: 15, 0, 0<br>
111, 4, 31<br>
<br>
LUN 2: 112, 0, 0<br>
223, 4, 31<br>
<br>
LUN3: 224, 0, 0<br>
335, 4, 31<br>
<br>
LUN4: 336, 0, 0<br>
441, 4, 31<br>
<br>
<br>
Total disk formatted size: 36,308,640 bytes<br>
<br>
Data is transferred to/from the disk to the tape drive in 4KB records during backup/restore operations.<br>
<br>
Only logical units 0, 1 and 2 can fit on a tape; a second tape was required for backing up logical units 3 and 4.<br>
<br>
Next step: obtain data files that contain the LUNx information...<br>
<br>
<br>
Bruce<br>
<br>
<br>
<br>
On 11/18/2015 2:21 AM, Microtech Dart wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Bruce! This is very exciting...you actually RAN the file! I'm so<br>
excited to know that this is possible.<br>
<br>
I received the screen shots in my MightyFrame email, thank you for those.<br>
<br>
Most of what you are talking about is still Greek to me, but I'll catch up.<br>
<br>
"The tape file itself needs to be created in the SimH tape if it is to<br>
be used with the default SimH tape driver. The QIC format may exist as a<br>
single large data record of 16,384 bytes, or of multiple 512-byte<br>
records followed by a file mark. (I can not tell its original format<br>
given only the .bin file to work with.)"<br>
<br>
OK, so I know exactly how the data format was written to this tape.<br>
(For detail on the format itself, I outline it in exhaustive detail on<br>
this page: <a href="http://bit.ly/1RhcdK2" rel="noreferrer" target="_blank">http://bit.ly/1RhcdK2</a> ) The format is neither QIC-11 nor<br>
QIC-24, but some very weird format that I've traced back to a specific<br>
model of Kennedy QIC tape drive.<br>
<br>
The Minicom Disk Utility file that you ran was in one single block of<br>
data, which was 8192 bytes long. It was, as you indicate, the very<br>
first block of data on the tape. This block was followed by a filemark.<br>
<br>
The next block after the filemark was also 8192 bytes (with nearly, but<br>
not exactly the same content as this Minicom utility file), but<br>
thereafter, every other block on the tape was only 4096 bytes long, as<br>
was all of the other blocks on the entire tape. (Notice that this is<br>
either 8 or 16 times the length of a "normal" QIC-11 or QIC-24 512-byte<br>
data block).<br>
<br>
This tape was marked "LU0, position 1; LU1, position 2; LU2, position<br>
3", so I expect this tape to have those 3 logical units on it.<br>
<br>
It seems that there are 3 more filemarks on this tape (if I counted<br>
correctly), so then this tape has 4 files, one file for the Minicom Disk<br>
Utility, and one file for each of the Logical Units.<br>
<br>
I can tell you right now that the LU0 file (if that is really what it<br>
is), is 1,331,200 bytes, or exactly 1,300 Mb (if I did the math right).<br>
The other 2 files I need to study more deeply to tell for sure, as they<br>
span the tape tracks, and are more complicated for me to assemble.<br>
<br>
Would it be best to just work with those as files, or do they need to be<br>
kept in their original "Kennedy" block formation, or another block<br>
formation or format?<br>
<br>
Bruce, it is my goal to restore these tapes, and get a machine to run<br>
again as close as possible to the way it would have when these backups<br>
were made. With your ability to run the Minicom file, it gives me great<br>
hope that this is possible.<br>
<br>
What would be my next steps to get myself working on a system that has<br>
the capability of doing this? I'm open to whether that is SimH,<br>
reNOVAte, or other.<br>
<br>
Thank you again, Bruce, this is very exciting news!<br>
<br>
-AJ<br>
<br>
<br>
<br>
<br>
<br>
On Wed, Nov 18, 2015 at 1:42 AM, Bruce Ray <<a href="mailto:Bruce@wild-hare.com" target="_blank">Bruce@wild-hare.com</a><br>
<mailto:<a href="mailto:Bruce@wild-hare.com" target="_blank">Bruce@wild-hare.com</a>>> wrote:<br>
<br>
G'day AJ -<br>
<br>
Briefly...<br>
<br>
The tape contains a disk/tape backup/restore utility that is<br>
somewhat representative of those used with Point 4, and other<br>
3rd-party DG lookalike systems. It is a stand-alone utility that is<br>
bootable if it exists as the first record of the first file of a mag<br>
tape or cartridge.<br>
<br>
The usual procedure is to bootstrap the tape using the Nova APL<br>
function (or just toggling in simple 2-instruction 'fat-finger'<br>
program). Once the program is read into memory, it starts execution<br>
and displays its introductory message. At this point another<br>
tape/cartridge may be loaded onto the tape drive for backup or<br>
restore purposes.<br>
<br>
I used our reNOVAte software for doing my investigations rather than<br>
SimH due to convenience, and was able to run the program and<br>
exercise its various functions. (Screen shots are attached.)<br>
<br>
This particular utility is very specific regarding the type of disk<br>
drive and IRIS logical units it supports.<br>
<br>
The utility assumes two devices exist: a tape controller using<br>
device code <022> and a disk controller using device code <027>. The<br>
tape controller may or may not perform QIC to DG-style file handling<br>
emulation since the original tape is not available to me.<br>
The disk controller appears to use the standard DG "Zebra"<br>
controller (Model 6060/6061/6067) programming model. However, it<br>
assumes a non-standard disk geometry of 16 cylinders, 5 heads, and<br>
32 sectors.<br>
<br>
The tape file itself needs to be created in the SimH tape if it is<br>
to be used with the default SimH tape driver. The QIC format may<br>
exist as a single large data record of 16,384 bytes, or of multiple<br>
512-byte records followed by a file mark. (I can not tell its<br>
original format given only the .bin file to work with.)<br>
<br>
The utility also makes assumptions about tape read timing and CPU<br>
instruction execution speed. Horrible programming technique, but<br>
unfortunately not uncommon practice. Any such timing dependencies<br>
must be found and compensated for in the device driver or<br>
instruction emulation.<br>
<br>
Since there is no disk backup tape to load onto the disk, I used<br>
dummy disk data for testing the disk-to-tape and tape-to-disk<br>
functions. Real backup tape(s) would obviously be needed to restore<br>
the original system.<br>
<br>
<br>
Bruce<br>
<br>
<br>
<br>
On 11/14/2015 3:35 PM, Microtech Dart wrote:<br>
<br>
Thank you, Dell, and Sandy Strain, both of your responses were<br>
EXTREMELY<br>
helpful to me, and these all worked!<br>
<br>
Do either of you have any additional thoughts about how I could make<br>
what I believe to be a bootable file (extracted from a<br>
Microtech/Point4<br>
QIC tape) into a bootable device for the Nova?<br>
<br>
I'll start with the Minicom Disk To Tape Utility:<br>
<br>
<a href="http://microtechm1.blogspot.com/2015/09/minicom-disk-to-tape-copy-utility.html" rel="noreferrer" target="_blank">http://microtechm1.blogspot.com/2015/09/minicom-disk-to-tape-copy-utility.html</a><br>
<br>
I've attached a .zip of the binary file that I extracted from<br>
this tape<br>
for reference. It's very small, so I zipped it up only so that the<br>
emailing process didn't interfere with or reject it.<br>
<br>
Thanks, all!<br>
<br>
-AJ<br>
<br>
On Sat, Nov 14, 2015 at 7:23 AM, Dell Setzer <<a href="mailto:dsetzer@panix.com" target="_blank">dsetzer@panix.com</a><br>
<mailto:<a href="mailto:dsetzer@panix.com" target="_blank">dsetzer@panix.com</a>><br>
<mailto:<a href="mailto:dsetzer@panix.com" target="_blank">dsetzer@panix.com</a> <mailto:<a href="mailto:dsetzer@panix.com" target="_blank">dsetzer@panix.com</a>>>> wrote:<br>
<br>
It's actually pretty easy. After booting RDOS, press ^E to<br>
return to<br>
the sim> prompt. Then, attach a host file to the MTA0 unit.<br>
If you<br>
give a host filename that doesn't yet exist, SIMH will<br>
create an<br>
empty tape file and attach it to MTA0:<br>
<br>
sim> attach mta0 testtape.tap<br>
MTA: creating new file<br>
sim><br>
<br>
Then, give the simh G command to return to RDOS and init/f<br>
the MT0<br>
tape unit. Note that at the sim> prompt, the unit is called<br>
"MTA0"<br>
(or MTA1, MTA2, etc), while in RDOS the unit is called<br>
"MT0" (or<br>
MT1, MT2, etc):<br>
<br>
sim> g<br>
<presss return to get the RDOS prompt again><br>
R<br>
init/f mt0<br>
CONFIRM? <press Y to confirm><br>
R<br>
<br>
Now you can dump or copy files to the MT0 device:<br>
dump/v mt0:0 -.sr<br>
<a href="http://LITMACS.SR" rel="noreferrer" target="_blank">LITMACS.SR</a> <<a href="http://LITMACS.SR" rel="noreferrer" target="_blank">http://LITMACS.SR</a>> <<a href="http://LITMACS.SR" rel="noreferrer" target="_blank">http://LITMACS.SR</a>><br>
<a href="http://OSID.SR" rel="noreferrer" target="_blank">OSID.SR</a> <<a href="http://OSID.SR" rel="noreferrer" target="_blank">http://OSID.SR</a>> <<a href="http://OSID.SR" rel="noreferrer" target="_blank">http://OSID.SR</a>><br>
<a href="http://NSID.SR" rel="noreferrer" target="_blank">NSID.SR</a> <<a href="http://NSID.SR" rel="noreferrer" target="_blank">http://NSID.SR</a>> <<a href="http://NSID.SR" rel="noreferrer" target="_blank">http://NSID.SR</a>><br>
<a href="http://PARS.SR" rel="noreferrer" target="_blank">PARS.SR</a> <<a href="http://PARS.SR" rel="noreferrer" target="_blank">http://PARS.SR</a>> <<a href="http://PARS.SR" rel="noreferrer" target="_blank">http://PARS.SR</a>><br>
<a href="http://ALMSPD.SR" rel="noreferrer" target="_blank">ALMSPD.SR</a> <<a href="http://ALMSPD.SR" rel="noreferrer" target="_blank">http://ALMSPD.SR</a>> <<a href="http://ALMSPD.SR" rel="noreferrer" target="_blank">http://ALMSPD.SR</a>><br>
<etc.><br>
R<br>
dump/v mt0:1 -.sv<br>
<a href="http://BURST.SV" rel="noreferrer" target="_blank">BURST.SV</a> <<a href="http://BURST.SV" rel="noreferrer" target="_blank">http://BURST.SV</a>> <<a href="http://BURST.SV" rel="noreferrer" target="_blank">http://BURST.SV</a>><br>
<a href="http://INITIALIZE.SV" rel="noreferrer" target="_blank">INITIALIZE.SV</a> <<a href="http://INITIALIZE.SV" rel="noreferrer" target="_blank">http://INITIALIZE.SV</a>> <<a href="http://INITIALIZE.SV" rel="noreferrer" target="_blank">http://INITIALIZE.SV</a>><br>
<a href="http://SEDIT.SV" rel="noreferrer" target="_blank">SEDIT.SV</a> <<a href="http://SEDIT.SV" rel="noreferrer" target="_blank">http://SEDIT.SV</a>> <<a href="http://SEDIT.SV" rel="noreferrer" target="_blank">http://SEDIT.SV</a>><br>
<a href="http://MACXR.SV" rel="noreferrer" target="_blank">MACXR.SV</a> <<a href="http://MACXR.SV" rel="noreferrer" target="_blank">http://MACXR.SV</a>> <<a href="http://MACXR.SV" rel="noreferrer" target="_blank">http://MACXR.SV</a>><br>
<a href="http://EDIT.SV" rel="noreferrer" target="_blank">EDIT.SV</a> <<a href="http://EDIT.SV" rel="noreferrer" target="_blank">http://EDIT.SV</a>> <<a href="http://EDIT.SV" rel="noreferrer" target="_blank">http://EDIT.SV</a>><br>
<etc.><br>
R<br>
release mt0<br>
R<br>
<br>
After releaseing the tape, press ^E again to get to the<br>
sim> prompt<br>
and detach the tape file:<br>
^E<br>
sim> detach mta0<br>
sim><br>
Now you can inspect the testtape.tap tape image.<br>
<br>
Attaching an existing tape file is similar, except that at<br>
the RDOS<br>
prompt you'd do INIT rather than INIT/F:<br>
<br>
sim> attach mta0 testtape.tap<br>
sim> g<br>
R<br>
init mt0<br>
R<br>
load/n mt0:0<br>
<a href="http://LITMACS.SR" rel="noreferrer" target="_blank">LITMACS.SR</a> <<a href="http://LITMACS.SR" rel="noreferrer" target="_blank">http://LITMACS.SR</a>> <<a href="http://LITMACS.SR" rel="noreferrer" target="_blank">http://LITMACS.SR</a>><br>
10/20/83<br>
<a href="http://OSID.SR" rel="noreferrer" target="_blank">OSID.SR</a> <<a href="http://OSID.SR" rel="noreferrer" target="_blank">http://OSID.SR</a>> <<a href="http://OSID.SR" rel="noreferrer" target="_blank">http://OSID.SR</a>> 01/10/84<br>
<a href="http://NSID.SR" rel="noreferrer" target="_blank">NSID.SR</a> <<a href="http://NSID.SR" rel="noreferrer" target="_blank">http://NSID.SR</a>> <<a href="http://NSID.SR" rel="noreferrer" target="_blank">http://NSID.SR</a>> 10/20/83<br>
<a href="http://PARS.SR" rel="noreferrer" target="_blank">PARS.SR</a> <<a href="http://PARS.SR" rel="noreferrer" target="_blank">http://PARS.SR</a>> <<a href="http://PARS.SR" rel="noreferrer" target="_blank">http://PARS.SR</a>> 01/31/85<br>
<etc><br>
R<br>
load/n mt0:1<br>
<a href="http://BURST.SV" rel="noreferrer" target="_blank">BURST.SV</a> <<a href="http://BURST.SV" rel="noreferrer" target="_blank">http://BURST.SV</a>> <<a href="http://BURST.SV" rel="noreferrer" target="_blank">http://BURST.SV</a>> 05/09/85<br>
<a href="http://INITIALIZE.SV" rel="noreferrer" target="_blank">INITIALIZE.SV</a> <<a href="http://INITIALIZE.SV" rel="noreferrer" target="_blank">http://INITIALIZE.SV</a>> <<a href="http://INITIALIZE.SV" rel="noreferrer" target="_blank">http://INITIALIZE.SV</a>><br>
05/02/85<br>
<a href="http://SEDIT.SV" rel="noreferrer" target="_blank">SEDIT.SV</a> <<a href="http://SEDIT.SV" rel="noreferrer" target="_blank">http://SEDIT.SV</a>> <<a href="http://SEDIT.SV" rel="noreferrer" target="_blank">http://SEDIT.SV</a>> 05/02/85<br>
<etc><br>
R<br>
release mt0<br>
R<br>
<br>
Hope this helps,<br>
...dell<br>
<br>
On Sat, 14 Nov 2015, Microtech Dart wrote:<br>
<br>
Hi, I am completely new here, although I recognize the<br>
names of<br>
several who<br>
post here.<br>
<br>
I am trying to resurrect an extinct Microtech machine<br>
from 1982,<br>
which<br>
likely used the Point 4 processor, and the SimH DG Nova<br>
simulator *should*<br>
be compatible with the Point 4.<br>
<br>
I'm running the NOVA simulator now, with:<br>
<br>
NOVA simulator V4.0-0 Beta git commit id: 3be5125d<br>
sim> ATTACH DKP0 *rdos_d31.dsk*<br>
sim> set tti dasher<br>
sim> boot DKP0<br>
<br>
I'm teaching myself RDOS now with the<br>
RDOS_Command_Line_Interpreter Manual.<br>
<br>
<<a href="http://www.mirrorservice.org/sites/www.bitsavers.org/pdf/dg/software/rdos/093-000109-01_RDOS_Command_Line_Interpreter.pdf" rel="noreferrer" target="_blank">http://www.mirrorservice.org/sites/www.bitsavers.org/pdf/dg/software/rdos/093-000109-01_RDOS_Command_Line_Interpreter.pdf</a>><br>
<br>
Would anybody here be able to suggest some methods by<br>
which I could<br>
*create* a magnetic tape device on this SimH Nova<br>
simulator, and<br>
how I<br>
might write some files to that?<br>
<br>
I think that would be an excellent experiment for me to<br>
attempt. Then I<br>
can inspect the binary file in a hex editor, and see<br>
what it<br>
looks like,<br>
then compare to the binaries I've pulled off my<br>
Microtech/Point<br>
4 tapes.<br>
<br>
--<br>
<br>
Thanks,<br>
-AJ<br>
<a href="http://MicrotechM1.blogspot.com" rel="noreferrer" target="_blank">http://MicrotechM1.blogspot.com</a><br>
<br>
<br>
<br>
<br>
--<br>
<br>
Thanks,<br>
-AJ<br>
<a href="http://MicrotechM1.blogspot.com" rel="noreferrer" target="_blank">http://MicrotechM1.blogspot.com</a><br>
<br>
<br>
_______________________________________________<br>
Simh mailing list<br>
<a href="mailto:Simh@trailing-edge.com" target="_blank">Simh@trailing-edge.com</a> <mailto:<a href="mailto:Simh@trailing-edge.com" target="_blank">Simh@trailing-edge.com</a>><br>
<a href="http://mailman.trailing-edge.com/mailman/listinfo/simh" rel="noreferrer" target="_blank">http://mailman.trailing-edge.com/mailman/listinfo/simh</a><br>
<br>
_______________________________________________<br>
Simh mailing list<br>
<a href="mailto:Simh@trailing-edge.com" target="_blank">Simh@trailing-edge.com</a> <mailto:<a href="mailto:Simh@trailing-edge.com" target="_blank">Simh@trailing-edge.com</a>><br>
<a href="http://mailman.trailing-edge.com/mailman/listinfo/simh" rel="noreferrer" target="_blank">http://mailman.trailing-edge.com/mailman/listinfo/simh</a><br>
<br>
<br>
<br>
<br>
--<br>
<br>
Thanks,<br>
-AJ<br>
<a href="http://MicrotechM1.blogspot.com" rel="noreferrer" target="_blank">http://MicrotechM1.blogspot.com</a><br>
<br>
<br>
_______________________________________________<br>
Simh mailing list<br>
<a href="mailto:Simh@trailing-edge.com" target="_blank">Simh@trailing-edge.com</a><br>
<a href="http://mailman.trailing-edge.com/mailman/listinfo/simh" rel="noreferrer" target="_blank">http://mailman.trailing-edge.com/mailman/listinfo/simh</a><br>
<br>
</blockquote>
_______________________________________________<br>
Simh mailing list<br>
<a href="mailto:Simh@trailing-edge.com" target="_blank">Simh@trailing-edge.com</a><br>
<a href="http://mailman.trailing-edge.com/mailman/listinfo/simh" rel="noreferrer" target="_blank">http://mailman.trailing-edge.com/mailman/listinfo/simh</a></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><br><div>Thanks,</div><div>-AJ</div><div><a href="http://MicrotechM1.blogspot.com" target="_blank">http://MicrotechM1.blogspot.com</a></div></div></div>
</div>