From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=HTML_MESSAGE, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 22830 invoked from network); 1 Jun 2020 22:55:26 -0000 Received: from minnie.tuhs.org (45.79.103.53) by inbox.vuxu.org with ESMTPUTF8; 1 Jun 2020 22:55:26 -0000 Received: by minnie.tuhs.org (Postfix, from userid 112) id 6E2DD9CA80; Tue, 2 Jun 2020 08:55:22 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id 1FB959C5F1; Tue, 2 Jun 2020 08:54:43 +1000 (AEST) Received: by minnie.tuhs.org (Postfix, from userid 112) id 3D3999C5F1; Tue, 2 Jun 2020 08:54:40 +1000 (AEST) Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) by minnie.tuhs.org (Postfix) with ESMTPS id 6166C93D46 for ; Tue, 2 Jun 2020 08:54:38 +1000 (AEST) Received: by mail-pl1-f169.google.com with SMTP id g12so515969pll.10 for ; Mon, 01 Jun 2020 15:54:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=/SX00ut/UCt8IfbvSI2fnPUedclQWs4qD4mD4a5/kfk=; b=XjJi4PSomZNnW+pstoiaMaJ435KuLoh63Z6u3WgumS4gCB/I39LDFQ1zXJHlCJDHta HqaZSBLXMOkboNNXzqM0A1OvK/7Q3mTlWHy+NWlMKKsXagvZnMn4vzgDe1drFppd4s0G Wn5mQKXlbv0TXqZGcXyCD0zl6ljFXmQYpjmsW3LH6pKLju5dxxtoENuG5UB6B6WW0JTl SemwQoDp2nxpyWqHNn9Y2DRxEODC+t6Z5SuVdSCkdNYWJxfilHycscE4ceZXy+VqW9FZ /LFA6/FtYuHy6MxMJGjkp2EKFgGicv0AQex4KjcihPPQDVaHHlERNiln+n7J/WgnhU9p tS1w== X-Gm-Message-State: AOAM530kHoscdQRQot9bPofuk2noDqJlboN4QC7g9qh/ZI0J3QZg2CV6 1Zt5NXMnqMjyTHNupJozt8GHEeaphcCqOeTH5sUmmNPN X-Google-Smtp-Source: ABdhPJxJIDX3e959HEIfGR/hmTwaTOG80QY/NEd6B5wGWBSpogeiZ8PXbJHS6S8Uw7iRTfsU26cZlIiYjq+NqOh/D54= X-Received: by 2002:a17:90b:706:: with SMTP id s6mr1878295pjz.11.1591052077845; Mon, 01 Jun 2020 15:54:37 -0700 (PDT) MIME-Version: 1.0 References: <94C31414-D9DF-41C5-B0D9-9FB92994B513@planet.nl> In-Reply-To: <94C31414-D9DF-41C5-B0D9-9FB92994B513@planet.nl> From: Paul Riley Date: Tue, 2 Jun 2020 06:54:28 +0800 Message-ID: To: Paul Ruizendaal Content-Type: multipart/alternative; boundary="000000000000eb541405a70dad5a" Subject: Re: [TUHS] DEC RL01/RL02 RX01/RX02 Disk Image Creator X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: TUHS main list Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" --000000000000eb541405a70dad5a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Paul, Many thanks for your detailed reply, it=E2=80=99s much appreciated. I=E2=80=99ll start with the Bkunix utility and see if SimH can use the outp= ut, then move on to your other suggestions if not. Paul On Mon, 1 Jun 2020 at 11:04 pm, Paul Ruizendaal wrote: > > Team Unix, Is there a Windows or Linux utility to create a disk image i= n > any of the above formats, from a local folder tree? Paul *Paul Riley* > > It seems you are asking for two tools in the BK-UNIX toolbox, fsutil and > dskutil > https://github.com/sergev/bkunix/tree/master/fsutil > https://github.com/sergev/bkunix/tree/master/diskutil > > The first generates a Unix 6th edition file system from a local directory > tree. The result is a binary file with the 512 byte disk blocks stored in > sequence. Maybe this is what SIMH needs, I=E2=80=99m not into the details= of SIMH. > > The second appears to be a tool to take the a file generated by the fsuti= l > tool and split that into sectors and tracks. I=E2=80=99m not familiar wit= h this > tool, but it looks like you might need something similar (I assume that y= ou > have some way to hook up a 8=E2=80=9D drive to your PC?). Sector interlea= ving may > be an issue to look out for. > > When preparing a LSX system disk, you will need to think carefully about > the layout: > > Presumably the disk works with 128 byte sectors and 4 sectors are grouped > together to create a 512 byte unix block. Check out the disk driver code > for details: > https://www.tuhs.org/cgi-bin/utree.pl?file=3DLSX/sys/decfd.c > > Block 0 contains bootstrap code which is loaded/called from the monitor > rom (or from a short code sequence keyed in on a =E2=80=9Cblinkenpanel=E2= =80=9D console). > > The filesystem itself starts at block 1 and runs up to a block N (you nee= d > to tell fsutil how big the filesystem needs to be). > > After block N up to the end of the disk is space to contain 2 swapped out > programs plus 1 block for the return code of the third (default LSX has a > maximum of 3 processes). You have to figure out how many 512 blocks are o= n > your floppy and subtract out the swap space to arrive at a figure for N. > > In the LSX source code =E2=80=99N=E2=80=99 is known as the define SWPLO, = see param.h for > details: > https://www.tuhs.org/cgi-bin/utree.pl?file=3DLSX/sys/param.h > > In this file, 99 blocks are reserved for swap, corresponding to processes > with 24KB memory; total disk size is defined as 500 blocks, 250KB - note > that this slightly exceeds the 241KB offered by the standard IBM 77 track > 26 sector formatting for 8=E2=80=9D disks. Probably you will need to twea= k the > values in param.h > > Be careful with size units in the source code. Often sizes are expressed > in words (2 bytes). Where memory is concerned it is often expressed in > =E2=80=98clicks=E2=80=99, 64 bytes. > > > > > -- *Paul Riley* Mo: +86 186 8227 8332 Email: paul@rileyriot.com --000000000000eb541405a70dad5a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Paul,

Many thanks for your detailed reply, it=E2=80=99s much appreciated.

I=E2=80=99ll start with th= e Bkunix utility and see if SimH can use the output, then move on to your o= ther suggestions if not.

Paul

On Mon, 1 Jun 2020 at 11:04 pm, Paul Ruizendaal <pnr@planet.nl> wrote:
> Team Unix, Is there a Windows or Linux utility to create a disk = image in any of the above formats, from a local folder tree? Paul *Paul Ril= ey*

It seems you are asking for two tools in the BK-UNIX toolbox, fsutil and ds= kutil
https://github.com/sergev/bkunix/tree/master/fsut= il
https://github.com/sergev/bkunix/tree/master/di= skutil

The first generates a Unix 6th edition file system from a local directory t= ree. The result is a binary file with the 512 byte disk blocks stored in se= quence. Maybe this is what SIMH needs, I=E2=80=99m not into the details of = SIMH.

The second appears to be a tool to take the a file generated by the fsutil = tool and split that into sectors and tracks. I=E2=80=99m not familiar with = this tool, but it looks like you might need something similar (I assume tha= t you have some way to hook up a 8=E2=80=9D drive to your PC?). Sector inte= rleaving may be an issue to look out for.

When preparing a LSX system disk, you will need to think carefully about th= e layout:

Presumably the disk works with 128 byte sectors and 4 sectors are grouped t= ogether to create a 512 byte unix block. Check out the disk driver code for= details:
https://www.tuhs.org/cgi-bin/utree.pl?fi= le=3DLSX/sys/decfd.c

Block 0 contains bootstrap code which is loaded/called from the monitor rom= (or from a short code sequence keyed in on a =E2=80=9Cblinkenpanel=E2=80= =9D console).

The filesystem itself starts at block 1 and runs up to a block N (you need = to tell fsutil how big the filesystem needs to be).

After block N up to the end of the disk is space to contain 2 swapped out p= rograms plus 1 block for the return code of the third (default LSX has a ma= ximum of 3 processes). You have to figure out how many 512 blocks are on yo= ur floppy and subtract out the swap space to arrive at a figure for N.

In the LSX source code =E2=80=99N=E2=80=99 is known as the define SWPLO, se= e param.h for details:
https://www.tuhs.org/cgi-bin/utree.pl?fi= le=3DLSX/sys/param.h

In this file, 99 blocks are reserved for swap, corresponding to processes w= ith 24KB memory; total disk size is defined as 500 blocks, 250KB - note tha= t this slightly exceeds the 241KB offered by the standard IBM 77 track 26 s= ector formatting for 8=E2=80=9D disks. Probably you will need to tweak the = values in param.h

Be careful with size units in the source code. Often sizes are expressed in= words (2 bytes). Where memory is concerned it is often expressed in =E2=80= =98clicks=E2=80=99, 64 bytes.




--
<= div>
Paul Riley

Mo: +86 186 822= 7 8332

--000000000000eb541405a70dad5a--