Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Microfocus Cobol for CP/M-80?

591 views
Skip to first unread message

Richard Deane

unread,
May 6, 2018, 12:22:18 PM5/6/18
to
Does anyone have a working copy of Microfocus Cobol for CP/M-80?

The version on Humungous seems corrupt, crashing when the run.com command is used.

I have tracked down a working copy, on Acorn Z80 coprocessor for CP/M on BBC Master, and it works on the BEEBM emulator but uses a RUNA.COM program that crashes on several other plain CP/Ms inc RC2014 and ROMWBW.

It would be good to collate a working version for generic CP/M and get it updated on Humungous.

Richard

Richard Deane

unread,
May 6, 2018, 1:29:59 PM5/6/18
to
I should mention that this is also known as CIS COBOL

Richard

Udo Munk

unread,
May 6, 2018, 6:10:30 PM5/6/18
to
Another disk image is available here:

http://www.jbox.dk/rc702/disks.shtm

Don't know if the image is intact though.

Larry Kraemer

unread,
May 7, 2018, 8:53:16 AM5/7/18
to
It appears to be intact, but the only way to know for sure is to extract
and execute the software, or do a Binary Compare.

cpmls -f rc01 -D CSCOBOL.RAW
Name Bytes Recs Attr update create
------------ ------ ------ ---- ----------------- -----------------
COBOL .COM 34K 272
COBOL .I01 8K 52
COBOL .I02 12K 91
COBOL .I03 8K 52
COBOL .I04 4K 25
FILEMARK.COM 2K 12
RUNA .COM 34K 272
7 Files occupying 102K, 208K Free.


Larry

Uwe Nass

unread,
May 7, 2018, 9:28:11 AM5/7/18
to
Hi Larry,

is there somewhere a manual, too?

Uwe.

Larry Kraemer

unread,
May 7, 2018, 12:58:39 PM5/7/18
to
I have not been able to locate the manual.

Larry

Richard Deane

unread,
May 7, 2018, 1:22:07 PM5/7/18
to
It looked good in the RC emulator but no COBOL source files given in the image. Over the next few days I shall get it to my rc2014 and try, also the version from humongous and acorn Z80 cpm and see if I can get any to work, and to ascertain if and where the humongous archive of it is corrupt. the Regencentrale one is older.

I am not a COBOL expert, prefer PLI but don't like to see broken software archived.
Richard

fritz chwolka

unread,
May 7, 2018, 1:31:11 PM5/7/18
to
Someone of my friends has the CIS Cobol Operating Guid -
for use with the CP/M and CDOS Operating system from 1979
and I'll try to get him scanning this papers.

Chris "xc8"

unread,
May 8, 2018, 4:51:23 AM5/8/18
to
On Monday, 7 May 2018 17:58:39 UTC+1, Larry Kraemer wrote:
> I have not been able to locate the manual.
>
> Larry

Is this the one that you are looking for?

http://www.computinghistory.org.uk/det/43925/CIS-COBOL-Manual/

Martin

unread,
May 9, 2018, 11:28:50 AM5/9/18
to
Richard Deane schrieb:
> I should mention that this is also known as CIS COBOL
>
> Richard
>

Take that runa.com from the Z80 coprocessor and do...

1856: CD 80 2B -> 00 00 00
2A55: CD F4 FF -> 00 00 00
2A65: CD F4 FF -> 00 00 00
2AC4: 00 -> 20

I have not bothered to search exactly what these calls do,
the code itself just tells anyone which value it expects at 2AC4.

Probably just a few Z80 coprocessor specific calls
"Read/Write I/O memory" and "Cursor Controls".

After that, the example "pi.cbl" runs...


Richard Deane

unread,
May 9, 2018, 3:00:44 PM5/9/18
to
Thank you,. Shall try that on my system

Peter Dassow

unread,
May 9, 2018, 6:09:12 PM5/9/18
to
Where can I get the cpmtools diskdefs entry for "rc01" ?
Because I do not have it, I got only "unknown format rc01" ...

Richard Deane

unread,
May 9, 2018, 6:24:42 PM5/9/18
to
The website hosting the rc cpm disk specifies these details which should be sufficient to create diskdefs:
"The CP/M disks have the following layout:
track 0, side 0: single density FM, 16 sectors, 128 bytes per sector.
track 0, side 1: double density MFM, 16 sectors, 256 bytes per sector.
track 1-34, both sides: double density MFM, 9 sectors per track, 512 bytes per sector.
The first track contains the boot sectors. The remaining tracks are formatted as a CP/M 2.2 disk, but with a 2:1 interleave, so the sector ordering on a track is 0, 2, 4, 6, 8, 1, 3, 5, 7. The block size is 2K, so there are 4 sectors per block. The directory is stored in the first two blocks on track 2. Using this information I have been able to extract all the files from the CP/M floppy disks"

Martin

unread,
May 10, 2018, 1:09:35 AM5/10/18
to
Peter Dassow schrieb:
My findings so far...

1) Add to your diskdefs (/usr/share/diskdefs):

# <http://softsector.aplaholm.se/computers/diskdefs-extra.txt>
# Rc 702 Piccolo DS 35 track (DD)
# do to mix of SD and DD You need to cut 1536 byte from start of image!
# (so that DIR starts at 3600h offset)
diskdef rc702
seclen 512
tracks 70
sectrk 9
blocksize 2048
maxdir 64
skew 2
boottrk 3
os 2.2
end

# (when will cpmtools look for, and merge, diskdefs at local user dir,...?)


#
<https://groups.google.com/forum/?_escaped_fragment_=topic/comp.os.cpm/NuTdG1M8n2M>
# Acorn CP/M Single Density
#
# Order 0,79,1,78,2,77...39,40
#
# libdskrc:
# [acornsd]
# description = Acorn CP/M Single Density
# sides=outback
# cylinders=80
# heads=2
# sectors=10
# secbase=0
# secsize=256
# datarate=SD

diskdef acornsd
seclen 256
tracks 160
sectrk 10
blocksize 2048
maxdir 128
skewtab 0,1,4,5,8,9,2,3,6,7
boottrk 3
os 2.2
end


2) The "acornsd" diskdefs entry also needs help from libdsk,
add the commented section (without the "# ") to libdskrc (~/.libdskrc):
Your cpmtools need to be compiled with libdsk support.


3) The following should now also work for you...

# <http://www.jbox.dk/rc702/disks/CSCOBOL.IMD>
imd2raw CSCOBOL.IMD CSCOBOL.raw
mkdir CSCOBOL
cd CSCOBOL
cpmcp -p -f rc702 ../CSCOBOL.raw 0:\* .



# <http://www.g7jjf.com/acornz80/CIS_Cobol_Program_Disc.zip>
unzip CIS_Cobol_Program_Disc.zip
mkdir CIS_Cobol_Program_Disc
cd CIS_Cobol_Program_Disc
cpmcp -p -f acornsd -T raw,acornsd ../CIS_Cobol_Program_Disc.dsd 0:\* .




Martin

unread,
May 10, 2018, 1:20:21 AM5/10/18
to
Martin schrieb:
> My findings so far...
>
> 1) Add to your diskdefs (/usr/share/diskdefs):
>
> # <http://softsector.aplaholm.se/computers/diskdefs-extra.txt>
> # Rc 702 Piccolo DS 35 track (DD)
> # do to mix of SD and DD You need to cut 1536 byte from start of image!
> # (so that DIR starts at 3600h offset)
> diskdef rc702
> seclen 512
> tracks 70
> sectrk 9
> blocksize 2048
> maxdir 64
> skew 2
> boottrk 3
> os 2.2
> end
>
> # (when will cpmtools look for, and merge, diskdefs at local user dir,...?)


OOPS, forgot to explain:

The comments from "diskdefs-extra.txt" seem to apply only to the special
form of the images on this site.

Inspecting "CSCOBOL.raw" with a hex-editor shows that the directory
already starts at 3600h offset.

I left the comment in as a remainder...


Larry Kraemer

unread,
May 10, 2018, 11:03:28 AM5/10/18
to
Martin,
I'm sure that the Directory is at 0x3C00 as the unedited .RAW image shows:

00003C00 00 43 4F 42 4F 4C 20 20 20 43 4F 4D 01 00 00 80 .COBOL COM....
00003C10 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 ................
00003C20 00 43 4F 42 4F 4C 20 20 20 43 4F 4D 02 00 00 10 .COBOL COM....
00003C30 12 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00003C40 00 43 4F 42 4F 4C 20 20 20 49 30 31 00 00 00 34 .COBOL I01...4
00003C50 13 14 15 16 00 00 00 00 00 00 00 00 00 00 00 00 ................

I like to use DOSBox in Linux to execute the following commands to get more
information on the .IMD file or one created from the .TD0.

IMDA CSCOBOL.IMD > CSCOBOL.TXT

CSCOBOL.TXT:
IMageDisk Analyzer 1.18 / Mar 12 2012
IMD 1.18: 27/ 7/2014 01:37:52

Required cylinders: 35
Required heads : 2
Data rate : 250kbps 500kbps
Est. maximum track: 5541 bytes

##
##The following information is missing because of drive error msg.
##
##Possible drives/options to write CSCOBOL.IMD :
##
## 5.25" DD 40-track
## Double-step: OFF
##
## 5.25" QD 80-track
## Double-step: ON
##
## 5.25" HD 80-track
## Double-step: ON
## 250 kbps -> 300 kbps
##
## 3.5" DD 80-track NOTE: *1
## Double-step: OFF
##
## 3.5" HD 80-track NOTE: *1
## Double-step: OFF
##
##*1 40 track image will use only first 1/2 of 80-track drive.
##


IMDU CSCOBOL.IMD CSCOBOL.RAW /B /E /D >> CSCOBOL.TXT
IMageDisk Utility 1.18 / Mar 07 2012
IMD 1.18: 27/ 7/2014 01:37:52

Assuming 1:1 for Binary output
0/0 250 kbps SD 16x128
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
D D D D D D D D D D D D D D D D
0/1 500 kbps DD 16x256
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
D D D D D D D D D D D D D D D D
1/0 500 kbps DD 9x512
0 1 2 3 4 5 6 7 8
D D D D D D D D D
1/1 D D D D D D D D D
2/0 D DE5 DE5 DE5 DE5 DE5 DE5 D DE5
2/1 D D D D D D D D D
3/0 D D D D D D D D D
3/1 D D D D D D D D D
4/0 D D D D D D D D D
4/1 D D D D D D D D D
5/0 D D D D D D D D D
5/1 D D D D D D D D D
6/0 D D D D D D D D D
6/1 D D D D D D D DE5 D
7/0 DE5 D DE5 D D D D D D
7/1 D D D D D D D D D
8/0 D D D D D DE5 D D D
8/1 D D D D D D D D D
9/0 D DE5 D D D D DE5 D DE5
9/1 D D D D D D D D DE5
10/0 D D D D D D D D D
10/1 D D D D D D D D D
11/0 D D D D D D D D D
11/1 D D D D D D D D D
12/0 D D D D D D D D D
12/1 D D D D D D D D D
13/0 D D D D D D D D D
13/1 D D D D D D D D DE5
14/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
14/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
15/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
15/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
16/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
16/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
17/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
17/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
18/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
18/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
19/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
19/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
20/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
20/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
21/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
21/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
22/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
22/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
23/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
23/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
24/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
24/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
25/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
25/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
26/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
26/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
27/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
27/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
28/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
28/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
29/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
29/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
30/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
30/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
31/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
31/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
32/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
32/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
33/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
33/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
34/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
34/1 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
70 tracks(35/35), 644 sectors (394 Compressed)

Notice that 70 vs 72 Tracks are located in the image.

Since the directory is at 0x3C00 (15360) I use the offset command to
get the correct data.

#BEGIN RC01 RC-702 Piccolo - DSDD 48 tpi 5.25" - 512 x 9
#DENSITY MFM LOW
#CYLINDERS 36 SIDES 2 SECTORS 9 512
#SIDE1 0 1,3,5,7,9,2,4,6,8
#SIDE2 1 1,3,5,7,9,2,4,6,8
#ORDER SIDES
#BSH 4 BLM 15 EXM 1 DSM 134 DRM 127 AL0 0C0H AL1 0 OFS 4
#END

# RC01 RC-702 Piccolo - DSDD 48 tpi 5.25" - 512 x 9
diskdef rc01
seclen 512
tracks 70
sectrk 9
blocksize 2048
maxdir 128
skew 2
#
#0x3C00 = 15360 Decimal
#
# boottrk 4
offset 15360
boottrk 0
os 2.2
end

# libdsk data below
[rc01]
description = RC01 RC-702 Piccolo - DSDD 48 tpi 5.25" - 512 x 9
sides = alt
cylinders = 70
heads = 2
secsize = 512
sectors = 9
secbase = 1

cpmls -f rc01 CSCOBOL.RAW
0:
cobol.com
cobol.i01
cobol.i02
cobol.i03
cobol.i04
filemark.com
runa.com


Larry

Larry Kraemer

unread,
May 10, 2018, 12:01:46 PM5/10/18
to
If you have cpmtools built with libdsk, then there are a couple more utilities
that allow you to get more information on the .IMD file.

From a Linux Terminal:

$man dskutil
$man dskid

The following default formats are included in libdsk.

$dskutil -formats
Disk formats supported:

pcw180 : PCW / IBM 180k
cpcsys : CPC System
cpcdata : CPC Data
pcw720 : PCW / IBM 720k
pcw1440 : PcW16 / IBM 1440k
ibm160 : IBM 160k (CP/M-86 / DOSPLUS)
ibm320 : IBM 320k (CP/M-86 / DOSPLUS)
ibm360 : IBM 360k (CP/M-86 / DOSPLUS)
ibm720 : IBM 720k (144FEAT)
ibm1200 : IBM 1.2M (144FEAT)
ibm1440 : IBM 1.4M (144FEAT)
acorn160 : Acorn 160k
acorn320 : Acorn 320k
acorn640 : Acorn 640k
acorn800 : Acorn 800k
acorn1600 : Acorn 1600k
pcw800 : PCW 800k
pcw200 : PCW 200k
bbc100 : BBC 100k
bbc200 : BBC 200k
mbee400 : Microbee 400k
mgt800 : MGT 800k
trdos640 : TR-DOS 640k
ampro200 : Ampro 40 track single-sided
ampro400d : Ampro 40 track double-sided
ampro400s : Ampro 80 track single-sided
ampro800 : Ampro 80 track double-sided
pcw1200 : PcW16 / IBM 1200k
myz80 : MYZ80 8Mb
pcpm320 : IBM 320k (CP/M-86 / DOSPLUS)
als1 : ALS1 Alspa - SSDD 8" - 1024 x 8
tos3 : TOS3 Toshiba T-250 - DSHD 8" - 256 x 26
rc03 : RC03 RC-700 Piccolo RCTELST - DSDD 48 tpi 5.25" - 512 x 9
rc02 : RC-750 Piccolo - DSHD 96 TPI 5.25" - 1024 x 8
rc01 : RC01 RC-702 Piccolo - DSDD 48 tpi 5.25" - 512 x 9
sup5 : SUP5 Superbrain - SSDD 48 tpi 5.25" - 128 x 30
sup4 : SUP4 Superbrain II - DSDD 96 tpi 5.25" - 512 x 10
sup3 : SUP3 Superbrain QD - DSDD 48 tpi 5.25" - 512 x 10
sup2 : SUP2 Superbrain 40 track - SSDD 48 tpi 5.25" - 512 x 10
sup1 : SUP1 Superbrain JR - SSDD 48 tpi 5.25" - 512 x 10
pie1 : PIE1 Pied Piper - DSDD 96 tpi 5.25" - 512 x 10
bon3 : BON3 Bondwell 2 - SSDD 3.5" - 256 x 18
bw14 : BON2 Bondwell 14 - DSDD 48 tpi 5.25" - 256 x 18
bw12 : BON1 Bondwell 12 - SSDD 48 tpi 5.25" - 256 x 10
xer2 : XER2 Xerox 820 - SSSD 48 tpi 5.25" - 128 x 18
com8x : COM8X Compupro (Viasyn) 8/16 - SSDD 8" - 1024 x 8
eag2 : EAG2 Eagle III, IV, V - DSDD 96 tpi 5.25" - 1024 x 5
eag1 : EAG1 Eagle I, II - SSDD 96 tpi 5.25" -1024 x 5
trs6 : TRS6 TRS-80, Pickles & Trout CP/M - SSDD 8" - 512 x 16
trs5 : TRS5 TRS-80, Lifeboat CP/M (1024 bytes/sector) - SSDD 8" - 1024 x 8
trs4 : TRS4 TRS-80 Lifeboat CP/M (256 bytes/sector) - SSDD 8" - 256 x 26
necc : NECC NEC APC CP/M-86 - DSHD 8" - 256 x 26
adv5 : ADV5 Advanced Digital TurboDOS 312K - DSDD 48 tpi 5.25" - 1024 x 4
ims3 : IMS3 IMS 5000 TurboDOS - SSDD 8" - 1024 x 8
zen8 : ZEN8 Zenith Z-100 - DSDD 48 tpi 5.25" - 512 x 8
exo1 : EXO1 EXO - SSDD 8" - 512 x 16
lob5 : LOB5 Lobo CP/M 2.2 - SSHD 8" - 256 x 30
mai1 : MAI1 MAI Basic Four - DSDD 96 tpi 5.25" - 256 x 16
san2 : SAN2 Sanyo MBC-1250 - DSDD 96 tpi 5.25" - 256 x 16
mm1 : MM1 Micromint SB180 Native 1 - DSDD 48 tpi 5.25" - 512 x 10
mor8 : MOR8 Morrow 5/11/34 - SSDD 48 tpi 5.25" - 1024 x 5
mor7 : MOR7 Morrow MD3...CP/M Plus - DSDD 48 tpi 5.25" - 1024 x 5
mor6 : MOR6 Morrow TurboDOS - DSDD 48 tpi 5.25" - 1024 x 4
mor5 : MOR5 Morrow 8 (1024 bytes/sector) - DSDD 8" - 1024 x 8
mor4 : MOR4 Morrow 8 (1024 bytes/sector) - SSDD 8" - 1024 x 8
mor3 : MOR3 Morrow 8 (512 bytes/sector) - SSDD 8" - 512 x 15
mor2 : MOR2 Morrow MD3, 5, 11, 16, 34 - DSDD 48 tpi 5.25" - 1024 x 5
mor1 : MOR1 Morrow MD2 - SSDD 48 tpi 5.25" - 1024 x 5
meg1 : MEG1 Megatel Quark 100 - SSDD 48 tpi 5.25" - 512 x 10
bon3 : BON3 Bondwell 2 - SSDD 3.5" - 256 x 18
bon2 : BON2 Bondwell 14 - DSDD 48 tpi 5.25" - 256 x 18
osb8 : OSB8 Osborne Vixen - DSDD 48 tpi 5.25" - 1024 x 5
osb3 : OSB3 Osborne Executive - SSDD 48 tpi 5.25" - 1024 x 5
osb2 : OSB2 Osborne 1 - SSDD 48 tpi 5.25" - 1024 x 5
osb1 : OSB1 Osborne 1 - SSSD 48 tpi 5.25" - 256 x 10
phi2 : PHI2 Philips PC-2012 - DSDD 96 tpi 5.25" - 256 x 16
phi1 : PHI1 Philips PC-2010 - SSDD 48 tpi 5.25" - 256 x 16
pmc2 : PMC2 PMC Micromate - DSQD 96 tpi 5.25" - 1024 x 5
pmc1 : PMC1 PMC Micromate - DSDD 48 tpi 5.25" - 1024 x 5
eps2 : EPS2 Epson QX-10 - DSDD 48 tpi 5.25" - 256 x 16
eps1 : EPS1 Epson QX-10 - DSDD 48 tpi 5.25" - 512 x 10
spe2 : SPE2 Spectravideo SV-328 - DSDD 48 tpi 5.25" - 256 x 17
spe1 : SPE1 Spectravideo 318/328 - SSDD 48 tpi 5.25" - 256 x 17
son1 : SON1 Sony SMC-70 - SSDD 3.5" - 256 x 16
sag2 : SAG2 Sage IV - DSDD 96 tpi 5.25" - 512 x 8
sag1 : SAG1 Sage IV - DSDD 48 tpi 5.25" - 512 x 8
tel4 : TEL4 TeleVideo 8nn/TPC-1 CP/M - DSDD 48 tpi 5.25" - 256 x 18
vis1 : VIS1 Visual 1050 - SSDD 96 tpi 5.25" - 512 x 10
alt5 : ALT5 Altos Series 5 - DSDD 96 tpi 5.25" - 512 x 9
col5 : COL5 Coleco ADAM, 360K - DSDD 48 tpi 5.25" - 512 x 9
col1 : COL1 Coleco ADAM, 40 track - SSDD 48 tpi 5.25" - 512 x 8
dec3 : DEC3 DEC VT-180 - SSDD 48 tpi 5.25" - 512 x 9
alt1 : ALT1 Altos - SSSD 8" - 128 x 26
big1 : BIG1 Big Board (512 bytes/sector) - SSDD 8" - 512 x 15
acn1 : ACN1 Acorn CP/M on Acorn Z80 second processor. - 256 x 10
sie2 : Siemens PG-675 DSDD 48 tpi 5.25" - 512 x 9
sin4 : Sinclair Spectrum ZX Lexor CP/M - DSDD 48 tpi 5.25"
sin3 : Sinclair Spectrum ZX - SSDD 48 tpi 5.25"
sin2 : Sinclair ZX Spectrum+3 CP/M 3.0 - SSDD 3.5"
elwro : Elwro Computer CP/M 3.0 - DSDD 3.5"
sin1 : Sinclair ZX Spectrum+3 DOS - DSDD 3.5"
zqq : Zorba qq - DSDD 48 tpi 5.25"
zor2 : ZOR2 Zorba - DSDD 96 tpi 5.25" - 512 x 10
zor1 : ZOR1 Zorba - DSDD 48 tpi 5.25" - 512 x 10
trsf : TRSF TRS-80 II/12/16 Aton CP/M - DSHD 8" - 1024 x 8
trse : TRSE TRS-80 II/12/16 Aton CP/M - SSHD 8" - 1024 x 8
a1 : A1 Generic CP/M - SSSD 8" - 128 x 26
trsw : TRS-80 Model 4,4P Montezuma System 400K - SSDD 96 tpi 3.5"
trsv : TRS-80 Model 4,4P Montezuma Super Data 880K - DSDD 96 tpi 5.25"
trsu : TRS-80 Model 4,4P Montezuma Super Data 440K - SSDD 96 tpi 5.25"
trst : TRS-80 Model 4,4P Montezuma Super Data 440K - DSDD 48 tpi 5.25"
trss : TRS-80 Model 4,4P Montezuma Super Data 220K - SSDD 48 tpi 5.25"
trsr : TRS-80 Model 4,4P Montezuma Extend System 790K - DSDD 96 tpi 5.25"
trsq : TRS-80 Model 4,4P Montezuma Extend System 390K - SSDD 96 tpi 5.25"
trsp : TRS-80 Model 4,4P Montezuma Extend System 390K - SSDD 48 tpi 5.25"
trso : TRS-80 Model 4,4P Montezuma Extend System 190K - SSDD 48 tpi 5.25"
trsn : TRS-80 Model 4,4P Montezuma Data 800K - DSDD 96 tpi 5.25"
trsm : TRS-80 Model 4,4P Montezuma System 710K - DSDD 96 tpi 5.25"
trsl : TRS-80 Model 4,4P Montezuma Data 400K - SSDD 96 tpi 5.25"
trsk : TRS-80 Model 4,4P Montezuma System 350K - SSDD 96 tpi 5.25"
trsj : TRS-80 Model 4,4P Montezuma Data 400K - DSDD 48 tpi 5.25"
trsi : TRS-80 Model 4,4P Montezuma System 350K - DSDD 48 tpi 5.25"
trsh : TRS-80 Model 4,4P Montezuma Data 200K - SSDD 48 tpi 5.25"
trsg : TRS-80 Model 4,4P Montezuma System 170K - SSDD 48 tpi 5.25"
ampro800 : Ampro800 - DSDD 96 tpi 3.5"
amp6 : Ampro - DSDD 96 tpi 3.5"
amp5 : Ampro - SSDD 96 tpi 3.5"
amp4 : Ampro - DSDD 96 tpi 5.25"
amp3 : Ampro - SSDD 96 tpi 5.25"
amp2 : Ampro - DSDD 48 tpi 5.25"
amp1 : Ampro - SSDD 48 tpi 5.25"
kay3 : KAY3 Kaypro 2X/4/10 (Alternate) - DSDD 48 tpi 5.25" - 512 x 10
kay2 : KAY2 Kaypro 2X/4/10 - DSDD 48 tpi 5.25" - 512 x 10
kpiv : Kaypro 2X/4/10 - DSDD 48 tpi 5.25"
kpii : KAY1 Kaypro II/2 - SSDD 48 tpi 5.25" - 512 x 10
kay1 : KAY1 Kaypro II/2 - SSDD 48 tpi 5.25" - 512 x 10
ibm3740 : IBM3740 SS SD 77T 8" 26x128 b/s


$dskutil --help
Syntax:
dskutil {options} image

Options are:
-type <type> type of input disc image
'dskutil -types' lists valid types.
-side <side> Force side 0 or side 1 of input
-retry <count> Set number of retries on error
-dstep Double-step
-format Force a specified format name
'dskutil -formats' lists valid formats.

Default type is autodetect.

eg: dskutil /dev/fd0
dskutil -format pcw720 /dev/fd1


$dskutil -type IMD CSCOBOL.IMD
LibDsk Disk Utility v1.5.7

Type ? for help
Type X to exit

:?
Operands in brackets [...] are optional
Numeric values: 'n' are decimal, 'x' hex
Prefixing numeric entry with '#' accepts the alternate notation

+[x] step in [x] sectors
-[x] step out [x] sectors
# print disk parameters for current drive
=Abc search for ASCII Abc from current sector
This is a case-sensitive search.
Use <xx> for hex, eg: =NEW<D><A>LINE
< save current sector into memory buffer
> restore saved sector
? help (displays this guide)
A[from,to] ASCII dump (from/to are in hex)



[Press Return to continue]

#
Statistics for CSCOBOL.IMD:
Cylinders: 40 28
Heads: 2 02
Tracks: 80 50
Sec/cyl: 16 10
Sec/track: 32 20
1st sec: 0 00
Sec size: 512 0200
Data rate: 500
Encoding: MFM

:x


$dskid -type IMD CSCOBOL.IMD
CSCOBOL.IMD:
Driver: IMD file driver
Sidedness: Alt
Cylinders: 40
Heads: 2
Sectors: 16
First sector: 0
Sector size: 512
Data rate: HD
Record mode: MFM
Complement: No
R/W gap: 0x2a
Format gap: 0x52

Drive status: 0x28


Larry

Martin

unread,
May 10, 2018, 12:45:51 PM5/10/18
to
Larry Kraemer schrieb:
> Martin,
> I'm sure that the Directory is at 0x3C00 as the unedited .RAW image shows:
> [...]

You are right, my fault. I *DID* cutoff the 1536 bytes.

Also thank you for the very interesting writeup,
"diskdefs" can be confusing sometimes.

Updated procedure to extract:
# <http://www.jbox.dk/rc702/disks/CSCOBOL.IMD>
imd2raw CSCOBOL.IMD CSCOBOL.tmp
dd if=CSCOBOL.tmp of=CSCOBOL.raw bs=1536 skip=1
mkdir CSCOBOL
cd CSCOBOL
cpmcp -p -f rc702 ../CSCOBOL.600 0:\* .



In the meantime I have played with runa.com a little bit...

The terminal configuration seemed to be for an ADM3A.

Cursor positioning:
00A7: 01 #bytes before
00A8: 58 'X' or 'Y': coordinate #1 selector (binary)
00A9: 00 #bytes between
00AA: 59 'Y' or 'X': coordinate #2 selector (binary)
00AB: 00 #bytes after
00AC: 00 X coordinate offset
00AD: 00 Y coordinate offset
00AE: 1F 00 ... bytes before/between/after concatenated
Clear screen:
00C0: 01 0C 00 00 #bytes, bytes
Cursor home:
00C4: 01 1E 00 00 #bytes, bytes


Changed that to "Wyse 60", so I could use the "wy60"-emulator:
00A7: 02 59 00 58 00 20 20 1B 3D
00C0: 02 1B 59 00
00C4: 02 1B 7B 00


A screenshot....
=======================


CALCULATION OF PI

NEXT TERM IS 0.000000000000

PI IS 3.141592653589



=======================

Looks really good now :-)

Peter Dassow

unread,
May 10, 2018, 2:08:27 PM5/10/18
to
This does NOT work, with or without "sides outback".
Does anybody have a correct diskdefs entry for the image
http://www.g7jjf.com/acornz80/CIS_Cobol_Program_Disc.zip ?

I tried this, and some files are listed correctly using cpmls, but
others not (so it's partly correct only):

diskdef acornsd
seclen 512
tracks 160
sides outback
sectrk 10
blocksize 4096
maxdir 256
skewtab 0,2,4,6,8,1,3,5,7,9

Steven Hirsch

unread,
May 10, 2018, 2:29:59 PM5/10/18
to
On 05/10/2018 11:03 AM, Larry Kraemer wrote:

> I like to use DOSBox in Linux to execute the following commands to get more
> information on the .IMD file or one created from the .TD0.

FWIW: I have the IMD utilities ported to Linux (only the ones that do not talk
with the disk controller, e.g. IMDA, IMDU, etc). Unfortunately, Dunfield's
license prevents me from starting a GitHub project (or anything else public,
for that matter).

Contact me privately if interested and I'll get you a Git archive of the
sources and Makefile.

Richard Deane

unread,
May 10, 2018, 4:29:44 PM5/10/18
to
There is a Java utility cputils.jar which converts the acorn dsd file to aore standard non skewed format, then cpmtools can copy.

I will post more info shortly

Richard Deane

unread,
May 10, 2018, 4:44:56 PM5/10/18
to
You can extract from the acorn cpm dsd images by a two step process

covert the dsd image to more standard skew:

"java -jar cpmutils.jar a2s oldfile newfile" - this strips the strange skewing out.

then use cpmtools with this diskdef:

diskdef acorn
seclen 256
tracks 160
sectrk 10
blocksize 2048
maxdir 64
skew 0
boottrk 3
os 2.2
end


cpmutils is found on this thread at
http://stardot.org.uk/forums/viewtopic.php?t=6727&start=60
User avatarhoglet
Posts: 7029
Joined: Sat Oct 13, 2012 6:21 pm
Location: Bristol
Contact: Contact hoglet
Re: Z80 co-pro, and datacentre?
Postby hoglet » Fri Mar 06, 2015 6:32 pm

lurkio wrote:
hoglet wrote:
CODE: SELECT ALL

java -jar cpmutils.jar <A2S|S2A> <Src CPM Image> <Dst CPM Image>
This basically deals with the differences in track ordering between standard CPM images (which are sequential) and Acorn DSD images which are interleaved. Let me know if you want me to post a binary build of cpmutils.jar.

Yes, please! (I know cpmutils.jar won't help me with my Zork2 and Zork3 problems, but I'd still like to play with it.)

Here you go:
cpmutils.zip
(2.92 KiB) Downloaded 42 times


sorry to be longwinded, I had hoped to attach cpmutils to this message but can't see howe to do that in google chrome accessing google groups

I find that this extraction works and gave me the cis cobol files, but I think they need patching to work on generic cpm.

Richard

Larry Kraemer

unread,
May 10, 2018, 4:47:03 PM5/10/18
to
Peter,
The .DSD file need a bit of modification to be able to access it. I chose a little different route than Richard.

I've downloaded the *.DSD images and fountd that they are interleaved Cylinders and heads. (CHS) The Acorn IMG file I've got don't compare with these. So, I found OMNIDISK and it will change the Interleave back to HCS.

I used my DOSBox and these commands from within Omnidisk:
*DRIVE 0
*ORDER CHS
*IMAGE CPM1.DSD CHS
*BACKUP * CPM1.IMG HCS

I did this for all of these *.DSD files.

409600 Apr 1 2006 CIS_Cobol_Program_Disc.dsd (renamed to CISCOBOL.DSD)
409600 Apr 1 2006 Basic_Program_Disc.dsd (renamed to BASICPRG.DSD)
409600 Apr 1 2006 CPM_Utilities_Disc.dsd (renamed to UTILS.DSD)
409600 Apr 1 2006 cpm7.dsd
409600 Apr 1 2006 cpm6.dsd
409600 Apr 1 2006 cpm5.dsd
409600 Apr 1 2006 cpm4.dsd
409600 Apr 1 2006 cpm3.dsd
409600 Apr 1 2006 cpm2.dsd
409600 Apr 1 2006 cpm1.dsd

409600 May 8 05:01 BASICPRG.IMG
409600 May 8 05:00 CISCOBOL.IMG
409600 May 8 04:59 UTILS.IMG
409600 May 8 04:59 CPM7.IMG
409600 May 8 04:58 CPM6.IMG
409600 May 8 04:58 CPM5.IMG
409600 May 8 04:57 CPM4.IMG
409600 May 8 04:56 CPM3.IMG
409600 May 8 04:56 CPM2.IMG
409600 May 8 04:55 CPM1.IMG

Now, the CPM1.IMG compares EXACTLY with the old Acorn CPM1.IMG file on my Hard drive.

I used these definitions, but I'm using cpmtools ver 2.21 and it may have a problem as I can't extract correctly while Richard's earlier versions seem to work.
# ACN1 Acorn CP/M on Acorn Z80 second processor. - 256 x 10
diskdef acn1
seclen 256
tracks 160
sectrk 10
secbase 0
blocksize 2048
maxdir 128
skew 1
boottrk 3
os 2.2
end

# libdsk data below
[acn1]
description = ACN1 Acorn CP/M on Acorn Z80 second processor. - 256 x 10
sides = outback
cylinders = 160
heads = 2
secsize = 256
sectors = 10
secbase = 0
datarate = SD

If you need the .IMG files I have I can easily forward them with an email address.

Thanks.

Larry

Larry Kraemer

unread,
May 10, 2018, 5:38:56 PM5/10/18
to
Here is a bit of detail around Definitions for cpmtools & libdsk.


New CPMTOOLS definitions require the following information:

diskdef title
..seclen xxx.......#= Sectors xx,1024
..tracks xx........#= (Cylinders * Sides) = 80*2 = 160
..sectrk xx........#= Sectors 5,xxx
..blocksize xxxx...#= (128*(BLM+1)) = 2048
..maxdir xxx.......#= (DRM+1) = 256
..skew x...........#= may be 1 thru 6, or so
..boottrk x........#= OFS = 2
..os x.x...........#= 2.2, or 2, or 3
end


New LIBDSK definitions require the following information:

[title]
description = DESC The description of the format as shown by (for example) dskform–help.
sidedness =TREATMENT How a double-sided disk is handled. This can either be alt
...........(sides alternate – used by most PC-hosted operating systems),
...........outback (use side 0 tracks 0-79, then side 1 tracks 79-0 – used
...........by 144FEAT CP/M disks), or outout (use side 0 tracks 0-79, then
...........side 1 tracks 0-79 – used by some Acorn formats). If the disk is
...........single-sided, this parameter can be omitted.
cylinders = COUNT Sets the number of cylinders (usually 40 or 80).
heads = COUNT Sets the number of heads (usually 1 or 2 for single- or double- sided).
sectors = COUNT Sets the number of sectors per track.
secbase = NUMBER Sets the first sector number on a track. Usually 1; some Acorn formats use 0.
secsize = COUNT Sets the size of a sector in bytes. This should be a power of 2.
datarate = VALUE Sets the rate at which the disk should be accessed. This is: HD, DD, SD or ED.
rwgap = VALUE Sets the read/write gap.
fmtgap = VALUE Sets the format gap.
fm = Y or N Sets the recording mode - Y for FM, N for MFM.
multitrack = Y or N Sets multitrack mode.
skipdeleted = Y or N Sets whether to skip deleted data.


The LIBDSK Data rate will be one of:
RATE_HD, /* Rate for High-density disc - 1.2Mb in 5.25" 96 tpi drive, or 1.44Mb in 3.5" 96 tpi drive */
RATE_DD, /* Rate for Double-density disc - 360k in 5.25" 48 tpi drive, or 720K in 3.5" 48 tpi drive */
RATE_SD, /* Rate for Double-density disc - 180k in 5.25" 48 tpi drive, or 360k in 3.5" 48 tpi drive */
RATE_ED /* Data rate for 2.8Mb 3.5" in 3.5" 96 tpi drive */


So, if you know the 22DISK parameters, you can easily fill in the details for libdsk & cpmtools.


Larry

Peter Dassow

unread,
May 10, 2018, 6:21:49 PM5/10/18
to
On 10.05.2018 at 22:44 Richard Deane wrote:
>
> cpmutils is found on this thread at
> http://stardot.org.uk/forums/viewtopic.php?t=6727&start=60

Richard, I am already using since years cpmtools 2.9 Cygwin (Win32)
version. I was able to extract the RC702 files without any problems.
This was not the case for the Acorn disk images, I tested the ciscobol
image and cpmls worked as desired and showed all filenames.
With cpmcp I extracted all files, but the content is corrupted, mixed up
with empty sectors or with sectors of different, wrong file content.
So none of the files seems to a meaningful content for me.
Did you viewed the .cbl files - they looked ok for you ?

Regards
Peter

Peter Dassow

unread,
May 10, 2018, 6:36:24 PM5/10/18
to
Added later: I didn't apply the cpmutils.jar for a simple reason - I
don't have any IDE nor any Java compiler installed, so I found only the
"Convert.java" sourcecode at github and wasn't able to do anything
useful with it. Is that cpmutils.jar downloadable anywhere (readily for
use with the JRE) ?

Richard Deane

unread,
May 10, 2018, 7:31:31 PM5/10/18
to
Yes URL given in my ear

Richard Deane

unread,
May 10, 2018, 7:38:25 PM5/10/18
to
Yes, url given earlier today in this thread, on stardot.org.uk just needs java command, not javac so i suppose jre ok

Martin

unread,
May 10, 2018, 10:12:37 PM5/10/18
to
Peter Dassow schrieb:
Hi Peter.

I'm sorry, it does not work in your situation.
I posted, after I got everything extracted correctly.

I redid every step and again was able to list and extract the files.

This is the source of the disk images I used to test:
<http://www.g7jjf.com/acornz80/CIS_Cobol_Program_Disc.zip>
It also happens to be the same as "Disk 7" from the CP/M disk set:
<http://www.g7jjf.com/acornz80/cpm7.zip>

It was essential to use the ".DSD" images, I could NOT extract the
equivalent ".SSD" from: <http://mdfs.net/Mirror/Image/AcornCPM/CPM7.zip>


Your diskdefs looks not right, it seems to be for an third party Acorn
CP/M format used with DD disks and twice the capacity.

I verified again, I used the following entries, the disk has 80 tracks
with 10 single density sectors a 256 bytes and is double sided:

~/.libdskrc:
[acornsd]
description = Acorn CP/M Single Density
sides=outback
cylinders=80
heads=2
sectors=10
secbase=0
secsize=256
datarate=SD

/usr/share/diskdefs:
diskdef acornsd
seclen 256
tracks 160
sectrk 10
blocksize 2048
maxdir 128
skewtab 0,1,4,5,8,9,2,3,6,7
boottrk 3
os 2.2
end


Then listing the content (this time with option i to also display the
real location of the entries):

$ cpmls -f acornsd -T raw,acornsd -li CIS_Cobol_Program_Disc.dsd
0:
18 -rw-rw-rw- 12416 Jan 01 1970 $anim.v45
14 -rw-rw-rw- 7808 Jan 01 1970 call.asm
15 -rw-rw-rw- 384 Jan 01 1970 call.hex
16 -rw-rw-rw- 10880 Jan 01 1970 call.prn
2 -rwxrwxrwx 37760 Jan 01 1970 cobol.com
4 -rw-rw-rw- 7808 Jan 01 1970 cobol.i01
5 -rw-rw-rw- 13568 Jan 01 1970 cobol.i02
6 -rw-rw-rw- 7552 Jan 01 1970 cobol.i03
7 -rw-rw-rw- 3840 Jan 01 1970 cobol.i04
8 -rw-rw-rw- 7424 Jan 01 1970 cobol.msg
9 -rwxrwxrwx 34432 Jan 01 1970 config.com
17 -rwxrwxrwx 1536 Jan 01 1970 filemark.com
22 -rw-rw-rw- 128 Jan 01 1970 forms2.ch1
23 -rw-rw-rw- 512 Jan 01 1970 forms2.ch2
0 -rwxrwxrwx 40320 Jan 01 1970 forms2.com
24 -rw-rw-rw- 512 Jan 01 1970 forms2.gn1
25 -rw-rw-rw- 7040 Jan 01 1970 forms2.gn2
26 -rw-rw-rw- 1024 Jan 01 1970 forms2.h01
27 -rw-rw-rw- 1152 Jan 01 1970 forms2.h02
28 -rw-rw-rw- 1152 Jan 01 1970 forms2.h03
29 -rw-rw-rw- 1152 Jan 01 1970 forms2.h04
30 -rw-rw-rw- 512 Jan 01 1970 forms2.i01
31 -rw-rw-rw- 768 Jan 01 1970 forms2.i02
19 -rw-rw-rw- 2048 Jan 01 1970 forms2.i51
20 -rw-rw-rw- 6016 Jan 01 1970 forms2.i52
21 -rw-rw-rw- 5376 Jan 01 1970 forms2.i53
32 -rw-rw-rw- 896 Jan 01 1970 forms2.w01
33 -rw-rw-rw- 1152 Jan 01 1970 forms2.w02
11 -rw-rw-rw- 2432 Jan 01 1970 pi.cbl
34 -rwxrwxrwx 35200 Jan 01 1970 runa.com
12 -rw-rw-rw- 2176 Jan 01 1970 stock1.cbl
13 -rw-rw-rw- 4736 Jan 01 1970 stock2.cbl


$ mkdir CIS_Cobol_Program_Disc
$ cd CIS_Cobol_Program_Disc
$ cpmcp -f acornsd -T raw,acornsd -p ../CIS_Cobol_Program_Disc.dsd '0:*'

Here is a checksum of every file (CRC-32 as used in zip-files):

$ crc_32 *
D273D6D4 12416 $anim.v45
3990C296 7808 call.asm
B1B90B6B 384 call.hex
AF13382D 10880 call.prn
DE70AB45 37760 cobol.com
AC2268B7 7808 cobol.i01
D018964B 13568 cobol.i02
A96D4735 7552 cobol.i03
CB315178 3840 cobol.i04
F09FBA1A 7424 cobol.msg
0D65467B 34432 config.com
8F3053FB 1536 filemark.com
02084434 128 forms2.ch1
D8D14134 512 forms2.ch2
CDEF9252 40320 forms2.com
F86982CB 512 forms2.gn1
82E6D521 7040 forms2.gn2
0A2C3840 1024 forms2.h01
69C6CF7D 1152 forms2.h02
1B77C050 1152 forms2.h03
E75AAE24 1152 forms2.h04
3F458B35 512 forms2.i01
872DC72A 768 forms2.i02
F9E2C316 2048 forms2.i51
CB3B28CA 6016 forms2.i52
A31FC316 5376 forms2.i53
D997AB39 896 forms2.w01
40F31BEA 1152 forms2.w02
5C25D4F0 2432 pi.cbl
2CADDBD3 35200 runa.com
557860FF 2176 stock1.cbl
1D801781 4736 stock2.cbl


I have inspected the files with a hexeditor and paid special attention
to all the files stored on the second side e.g. runa.com.

I apologize for posting something completely wrong. Hope someone can
verify my steps.

Martin

Larry Kraemer

unread,
May 10, 2018, 10:13:39 PM5/10/18
to
Peter,
I used cpmls to extract STOCK1.CBL. It is sane. Email explains in detail.

000010 IDENTIFICATION DIVISION.
000020 PROGRAM-ID. STOCK-FILE-SET-UP.
000030 AUTHOR. MICRO FOCUS LTD.
000040 ENVIRONMENT DIVISION.
000050 CONFIGURATION SECTION.
000060 SOURCE-COMPUTER.
000070 OBJECT-COMPUTER.
000075 SPECIAL-NAMES. CONSOLE IS CRT.
000080 INPUT-OUTPUT SECTION.
000090 FILE-CONTROL.
000100 SELECT STOCK-FILE ASSIGN "STOCK.IT"
000110 ORGANIZATION INDEXED
000120 ACCESS DYNAMIC
000130 RECORD KEY STOCK-CODE.
000140 DATA DIVISION.
000150 FILE SECTION.
000160 FD STOCK-FILE; RECORD 32.
000170 01 STOCK-ITEM.
000180 02 STOCK-CODE PIC X(4).
000190 02 PRODUCT-DESC PIC X(20).
000200 02 UNIT-SIZE PIC 9(4).
000210 WORKING-STORAGE SECTION.
000220 01 SCREEN-HEADINGS.
000230 02 ASK-CODE PIC X(21) VALUE "STOCK CODE < >".
000240 02 FILLER PIC X(59).
000250 02 ASK-DESC PIC X(16) VALUE "DESCRIPTION <".
000260 02 SI-DESC PIC X(21) VALUE " >".
000270 02 FILLER PIC X(43).
000280 02 ASK-SIZE PIC X(21) VALUE "UNIT SIZE < >".
000290 01 ENTER-IT REDEFINES SCREEN-HEADINGS.
000300 02 FILLER PIC X(16).
000310 02 CRT-STOCK-CODE PIC X(4).
000320 02 FILLER PIC X(76).
000330 02 CRT-PROD-DESC PIC X(20).
000340 02 FILLER PIC X(60).
000350 02 CRT-UNIT-SIZE PIC 9(4).
000360 02 FILLER PIC X.
000370 PROCEDURE DIVISION.
000380 SR1.
000390 DISPLAY SPACE.
000400 OPEN I-O STOCK-FILE.
000410 DISPLAY SCREEN-HEADINGS.
000420 NORMAL-INPUT.
000430 MOVE SPACE TO ENTER-IT.
000440 DISPLAY ENTER-IT.
000450 CORRECT-ERROR.
000460 ACCEPT ENTER-IT.
000470 IF CRT-STOCK-CODE = SPACE GO TO END-IT.
000480 IF CRT-UNIT-SIZE NOT NUMERIC GO TO CORRECT-ERROR.
000490 MOVE CRT-PROD-DESC TO PRODUCT-DESC.
000500 MOVE CRT-UNIT-SIZE TO UNIT-SIZE.
000510 MOVE CRT-STOCK-CODE TO STOCK-CODE.
000520 WRITE STOCK-ITEM; INVALID GO TO CORRECT-ERROR.
000530 GO TO NORMAL-INPUT.
000540 END-IT.
000550 CLOSE STOCK-FILE.
000560 DISPLAY SPACE.
000570 DISPLAY "END OF PROGRAM".
000580 STOP RUN.


diskdef acornsd
seclen 256
tracks 160
sides outback #= Order of Cylinders
sectrk 10
blocksize 2048
maxdir 128
datarate DD
fm YES
skewtab 0,1,4,5,8,9,2,3,6,7
secbase 0
# skew 3
#0x1E00 = 7680 = DIR listing
offset 7680
boottrk 0
#= 2, 2.2, or 3 (NO comment on next line)
os 2.2
end


Larry

Martin

unread,
May 11, 2018, 6:05:17 AM5/11/18
to
Martin schrieb:
UPDATE:

The cursor keys were not working, oversight from me, the demo
needs no input...

But you absolutely *want* working cursor movement keys, they are
absolutely essential!

So a little bit more digging later, found the following in runa.com:

The keys were configured for the BBC Keyboard left, right, up, down and
copy.

Cursor movement keys:
0097: 88 89 8B 8A 87 left/right/up/down/home

Change that to, also for "Wyse 60":
0097: 08 0C 0B 0A 1E


Now, want to try out FORMS2?
Make the same modifications to "forms2.com"!

Really useful manuals are at
<http://bitsavers.trailing-edge.com/pdf/apple/lisa/xenix/cobol/>

Try the tutorial inside "FORMS-2_Utility_Manual_Version_1.3_Jul83.pdf"

Have fun!

Al Kossow

unread,
May 13, 2018, 2:28:23 PM5/13/18
to
On 5/6/18 9:22 AM, Richard Deane wrote:
> Does anyone have a working copy of Microfocus Cobol for CP/M-80?
>

I just uploaded a zip file that may be worth looking at

http://bitsavers.org/bits/CIS/CIS_COBOL.zip

Mr. Emmanuel Roche, France

unread,
May 13, 2018, 4:27:22 PM5/13/18
to
Al Kossow wrote:

> I just uploaded a zip file that may be worth looking

I had a quick look.

There are pictures of 3 floppy disks, but only 2 directories.

DM080 contains, obviously, FORMS-II, a mask generator for CIS COBOL (like Digital Research's Display Manager, just much smaller). Below are some strings that it contains.

COPYRIGHT (C) 1978 MICRO FOCUS LTD

CIS COBOL RUN TIME SYSTEM (RTS) CONFIGURATOR.
THE RTS IS SUPPLIED WITH AN INTERACTIVE CRT PACKAGE
DESIGNED TO BE USED VIA THE "ACCEPT" AND "DISPLAY" VERBS
IN CIS COBOL. THIS PROGRAM ENABLES YOU TO TAILOR THE RTS
TO YOUR CRT. THE FOLLOWING CRTS ARE PREDEFINED:

A - ADM3A
B - HAZELTINE 1500
C - INTEL
D - CIFER 127A
E - NEWBURY N08

YOUR RUN TIME SYSTEM HAS BEEN CONFIGURED

DM081 contains an old version of CBASIC:

CBASIC.CPM --> 1977 CBASIC VER 1.01
CRUN.CPM --> 1977 CRUN VER 1.03

Yours Sincerely,
Mr. Emmanuel Roche, France

Al Kossow

unread,
May 13, 2018, 4:58:12 PM5/13/18
to
I included the wrong extracted files. The zip has been replaced

DM079/CALL.ASM
DM079/CALL.HEX
DM079/CALL.PRN
DM079/COBOL.CPM
DM079/COBOL.OV1
DM079/COBOL.OV2
DM079/COBOL.OV3
DM079/COBOL.OV4
DM079/CONFIG.CPM
DM079/PI.CBL
DM079/RUNA.CPM
DM079/STOCK1.CBL
DM079/STOCK2.CBL

Richard Deane

unread,
May 14, 2018, 3:12:08 AM5/14/18
to
Thank you, I shall download and play.
Richard

Nathanael

unread,
Aug 3, 2018, 4:03:35 AM8/3/18
to
OK, I’ve dl’ed the file Al made available, but where is the corrupted version on *HUMONGOUS*?

Nathanael
*HUMONGOUS* CP/M Archives

Richard Deane

unread,
Aug 7, 2018, 3:58:33 AM8/7/18
to
My mistake that I did not correctly identify the location of the cobol files, late at night browsing humongous I was passed out to http://www.cpm.z80.de/binary.html where the DRI Cobol 80 is (a rebadged Microfocus Cobol). That seemed corrupt, at least not functional under generic cp/m screen handling. It may be that it can be patched to function, but a working version and various patches surfaced so I am very happy that posterity now has a working Microfocus Cobol.

Thanks for all your efforts to maintain the archive and its links.
Richard

Nathanael

unread,
Aug 31, 2018, 6:45:43 PM8/31/18
to
On Tuesday, August 7, 2018 at 3:58:33 PM UTC+8, Richard Deane wrote:
> My mistake that I did not correctly identify the location of the cobol files

No problem. Do let me know if you ever do find something amiss, or come across something I don't have. Glad to correct or add it.

On *HUMONGOUS*'s main page, a site's title bar will always link to the original site if it's still online. When the site disappears I'll switch to *HUMONGOUS*'s most recent mirror.

> Thanks for all your efforts to maintain the archive and its links.

My pleasure. A big shout-out to ClassicCmp for hosting the site!

--Nathanael
0 new messages