石原 博の覚書

電子工作に関する日々の覚書を記載します

CPMUGのソフトを展開する

2021-04-11 10:07:59 | 日記
ハードウエアを作成したのだから、ソフトを動かさないともったいない。
そこでCPMUGで興味のあるものをインストールし動かしてみる。
まずは圧縮されているものを展開しようとした。古いアーカイバARCが使われているが、幸いなことにDebianにはarcパッケージがあり展開出来る。
# sudo apt install arc

ところが展開出来ないものがある。どうもファイル名にスラッシュ (/)が入っている。
(こんなエラーメッセージ ARC: cpmug003.ark contains illegal filename S/TREK.BAS)

===調べてみるとこんなに展開出来ないものがある===
3.32 5K S/TREK.BAS BASIC-E PROGRAM. SEE DOC'S
11.1 76K BASIC/5.ASM PRO TECH 5K DISKIFIED BASIC
11.2 8K BASIC/5.COM 5K BASIC IN 8K (SIGN OF THE TIMES)
11.3 7K BASIC/5.DOC CP/M VERSION AND OTHER MAJOR EXTENSIONS
13.1 7K 15/PUZ.ASC PROGRAM IN MICROSOFT BASIC
20.14 33K STRTRK/1.BAS PROG IN BASIC-E/CBASIC. SEE ZOSO.20
21.21 21K STRTRK/2.ASC PROGRAM IN MICROSOFT BASIC. SEE ZOSO21.DOC/TOP
21.22 20K STRTRK/3.ASC PROGRAM IN MICROSOFT BASIC. SEE ZOSO21.DOC/TOP
21.27 4K W/SEARCH.ASC PROGRAM IN MICROSOFT BASIC. SEE ZOSO21.DOC/TOP
22.4 21K STRTRK/2.ASC A SECOND APPEARENCE OF PROGRAM 21.21
23A.11 4K STOICD/A.STC GRAPHICS FOR D/A HARDWARE
40.1 1K /.COM Quickie submit; Example:
40.2 1K /.DOC / asm foo.bbz;load b:foo
46.8 16K DU-8/12.ASM Disk dump/patch, supports many controllers.
46.9 29K DU-V61.ASM version of CPMUG 40.20,single density only
46.10 2K DU/MAP.DOC Doc. on CP/M directory format
46.12 10K MDIR8/17.ASM Fancy directory list program,
46.13 1K MDIR8/17.COM CP/M 1.4 (or 2.X, all users)
46.23 20K XD-7/4.ASM Fancy directory list program
46.24 2K XD-7/4.COM COM of above
47.2 10K BMAP7/11.ASM Bit Map program.
47.6 22K DIAL6/23.ASM Modem program with autodial for PMMI.
47.7 2K DIAL6/23.DOC DOC of above.
47.8 8K DIRS9/8.ASM Sorted directory program.
078.1 4K /.ASM Quickie SUBMIT from command
078.2 1K /.COM line.
078.3 1K /DUP.COM Same as /.ASM but produces a second copy
83.20 1K PAR/SER.SRT Parallel to serial impedance convert
83.21 1K POL/REC.SRT Complex polar to rectangular convert
83.22 1K REC/POL.SRT Complex rectangular to polar convert
83.23 1K REFC/Z.SRT Reflection coefficient to Z conv
83.24 1K SER/PAR.SRT Serial to parallel impedance convert
83.28 1K Z/REFC.SRT Z to reflection coefficient convert

やむなく、arcのソースを修正して、ファイル名の '/' を '-' に変更して展開するようにした。

$ sudo apt-get source arc
$ cd arc-5.21q
$ sudo vi arcext.c

115行目あたり、(CUTOFFには / が入っている)
if (strchr(hdr->name, CUTOFF) != NULL)
// arcdie("%s contains illegal filename %s", arcname, hdr->name);
*(strchr(hdr->name, CUTOFF)) = '-';

$ sudo make
$ sudo make install

arcで圧縮されたファイルを、フォルダを作成し展開
$ find cpmug -name *.ark | xargs -i sh -c 'mkdir `basename {} .ark` && cd `basename {} .ark` && arc x {}'

その他
 CP/Mのunarcで展開出来るかと思ったのだがエラーになる。
(RunCPMでのエミュレーションの場合)
Linuxなのでファイル名に / は駄目。AVRCPMでは展開出来ました。
 ====
 S/TREK .BAS 5007 8k Crunched 8 2684 47% 29 Apr 84 3:03p 8B1A

 Directory full
 UNARC aborted!
 ====


最新の画像もっと見る

コメントを投稿