Digital Research
This commit is contained in:
2020-11-06 18:50:37 +01:00
parent 621ed8ccaf
commit 31738079c4
8481 changed files with 1888323 additions and 0 deletions

View File

@@ -0,0 +1,222 @@
*/*
* Copyright 1981
* Alcyon Corporation
* 8716 Production Ave.
* San Diego, Ca. 92121
**/
R0: .equ 0,r
R1: .equ 1,r
R2: .equ 2,r
R3: .equ 3,r
R4: .equ 4,r
R5: .equ 5,r
R6: .equ 6,r
R7: .equ 7,r
R8: .equ 8,r
R9: .equ 9,r
R10: .equ 10,r
R11: .equ 11,r
R12: .equ 12,r
R13: .equ 13,r
R14: .equ 14,r
R15: .equ 15,r
D0: .equ 0,r
D1: .equ 1,r
D2: .equ 2,r
D3: .equ 3,r
D4: .equ 4,r
D5: .equ 5,r
D6: .equ 6,r
D7: .equ 7,r
A0: .equ @10,r
A1: .equ @11,r
A2: .equ @12,r
A3: .equ @13,r
A4: .equ @14,r
A5: .equ @15,r
A6: .equ @16,r
A7: .equ @17,r
USP: .equ 18,r
SP: .equ 15,r
CCR: .equ 16,r
SR: .equ 17,r
r0: .equ 0,r
r1: .equ 1,r
r2: .equ 2,r
r3: .equ 3,r
r4: .equ 4,r
r5: .equ 5,r
r6: .equ 6,r
r7: .equ 7,r
r8: .equ 8,r
r9: .equ 9,r
r10: .equ 10,r
r11: .equ 11,r
r12: .equ 12,r
r13: .equ 13,r
r14: .equ 14,r
r15: .equ 15,r
d0: .equ 0,r
d1: .equ 1,r
d2: .equ 2,r
d3: .equ 3,r
d4: .equ 4,r
d5: .equ 5,r
d6: .equ 6,r
d7: .equ 7,r
a0: .equ @10,r
a1: .equ @11,r
a2: .equ @12,r
a3: .equ @13,r
a4: .equ @14,r
a5: .equ @15,r
a6: .equ @16,r
a7: .equ @17,r
usp: .equ 18,r
sp: .equ 15,r
ccr: .equ 16,r
sr: .equ 17,r
.b: .equ 19,r
.B: .equ 19,r
.w: .equ 20,r
.W: .equ 20,r
.l: .equ 21,r
.L: .equ 21,r
pc: .equ 22,r
PC: .equ 22,r
abcd: .opd 4,@140400
add: .opd 1,@150000
adda: .opd 15,@150000
addi: .opd 2,@003000
addq: .opd 17,@050000
inc: .opd 16,@050000
addx: .opd 27,@150400
and: .opd 1,@140000
andi: .opd 2,@001000
asl: .opd 8,@160400
asr: .opd 8,@160000
bcc: .opd 6,@062000
bcs: .opd 6,@062400
beq: .opd 6,@063400
bze: .opd 6,@063400
bge: .opd 6,@066000
bgt: .opd 6,@067000
bhi: .opd 6,@061000
bhis: .opd 6,@062000
bhs: .opd 6,@062000
ble: .opd 6,@067400
blo: .opd 6,@062400
bls: .opd 6,@061400
blos: .opd 6,@061400
blt: .opd 6,@066400
bmi: .opd 6,@065400
bne: .opd 6,@063000
bnz: .opd 6,@063000
bpl: .opd 6,@065000
bvc: .opd 6,@064000
bvs: .opd 6,@064400
bchg: .opd 7,@000100
bclr: .opd 7,@000200
bra: .opd 6,@060000
bt: .opd 6,@060000
bset: .opd 7,@000300
bsr: .opd 6,@060400
btst: .opd 7,@000000
chk: .opd 26,@040600
clr: .opd 24,@041000
cmp: .opd 26,@130000
cmpa: .opd 15,@130000
cmpi: .opd 2,@006000
cmpm: .opd 10,@130410
dbcc: .opd 11,@052310
dbcs: .opd 11,@052710
dblo: .opd 11,@052710
dbeq: .opd 11,@053710
dbze: .opd 11,@053710
dbra: .opd 11,@050710
dbf: .opd 11,@050710
dbge: .opd 11,@056310
dbgt: .opd 11,@057310
dbhi: .opd 11,@051310
dbhs: .opd 11,@051310
dble: .opd 11,@057710
dbls: .opd 11,@051710
dblt: .opd 11,@056710
dbmi: .opd 11,@055710
dbne: .opd 11,@053310
dbnz: .opd 11,@053310
dbpl: .opd 11,@055310
dbt: .opd 11,@050310
dbvc: .opd 11,@054310
dbvs: .opd 11,@054710
divs: .opd 5,@100700
divu: .opd 5,@100300
eor: .opd 23,@130000
eori: .opd 2,@005000
exg: .opd 12,@140400
ext: .opd 13,@044000
jmp: .opd 9,@047300
jsr: .opd 9,@047200
illegal:.opd 0,@045374
lea: .opd 30,@040700
link: .opd 19,@047120
lsr: .opd 8,@160010
lsl: .opd 8,@160410
move: .opd 3,@000000
movea: .opd 3,@000100
movem: .opd 20,@044200
movep: .opd 21,@000010
moveq: .opd 22,@070000
muls: .opd 5,@140700
mulu: .opd 5,@140300
nbcd: .opd 25,@044000
neg: .opd 24,@042000
negx: .opd 24,@040000
nop: .opd 0,@047161
not: .opd 24,@043000
or: .opd 1,@100000
ori: .opd 2,@000000
pea: .opd 29,@044100
reset: .opd 0,@047160
rol: .opd 8,@160430
ror: .opd 8,@160030
roxl: .opd 8,@160420
roxr: .opd 8,@160020
rte: .opd 0,@047163
rtr: .opd 0,@047167
rts: .opd 0,@047165
sbcd: .opd 4,@100400
scc: .opd 25,@052300
shs: .opd 25,@052300
scs: .opd 25,@052700
slo: .opd 25,@052700
seq: .opd 25,@053700
sze: .opd 25,@053700
sf: .opd 25,@050700
sge: .opd 25,@056300
sgt: .opd 25,@057300
shi: .opd 25,@051300
sle: .opd 25,@057700
sls: .opd 25,@051700
slt: .opd 25,@056700
smi: .opd 25,@055700
sne: .opd 25,@053300
snz: .opd 25,@053300
spl: .opd 25,@055300
st: .opd 25,@050300
svc: .opd 25,@054300
svs: .opd 25,@054700
stop: .opd 14,@047162
sub: .opd 1,@110000
suba: .opd 15,@110000
subi: .opd 2,@002000
subq: .opd 17,@050400
dec: .opd 16,@050400
subx: .opd 27,@110400
swap: .opd 28,@044100
tas: .opd 25,@045300
trap: .opd 18,@047100
trapv: .opd 0,@047166
tst: .opd 24,@045000
unlk: .opd 13,@047130
.end

View File

@@ -0,0 +1,17 @@
$ !
$ ! Get the latest with the greatest into current directory
$ !
$ copy bin:AR68.EXE []
$ copy bin:AS68.EXE []
$ copy bin:C068.EXE []
$ copy bin:C168.EXE []
$ copy bin:CP68.EXE []
$ copy bin:LO68.EXE []
$ copy bin:NM68.EXE []
$ copy bin:PRTOBJ.EXE []
$ copy bin:RELOC.EXE []
$ copy bin:SENDC68.EXE []
$ copy bin:SIZE68.EXE []
$ copy bin:XDUMP.EXE []
$ copy bin:as68symb.dat []
$ copy [--.as68]as68init. []

View File

@@ -0,0 +1,270 @@
CP/M-68K Cross Software for VMS
-------------------------------
Revision 01.04
--------------
August 28, 1983
---------------
Digital Research, Inc
P.O. Box 579
Pacific Grove, CA 93950
(408) 649-3896
TWX 910 360 5001
************************
* Company Confidential *
************************
Note: This document contains Digital Research proprietary infor-
mation, and must not be copied or distributed for any purpose
whatsoever, without prior written permission of Digital Research,
Inc.
Address Comments to: Steve Williams, x6082
CP/M-68K Cross Software for VMS Page 2
Introduction
1.0 Introduction
This document describes the installation and execution
procedures for the Digital Research 68000 cross development
software for VAX/VMS. This software includes the C compiler,
assembler, linker, archiver, symbol table print utility, object
module size utility, and S-Record conversion utility. These
tools execute in much the same fashion as they do under CP/M-68K,
as documented in the CP/M-68K Programmer's Guide.
2.0 Installation Procedures
The tools are distributed on a 9-track FLX format mag tape
(either 800 or 1600 bpi is available). To bring up the software
on VMS, perform the following steps:
1. Login to a valid account.
2. Create directories for four ersatz devices: "bin:" (.exe
files), "com:" (command files), "lib:" (library files),
and "cpm:" (CP/M-68K files).
3. Enter VMS "ASSIGN" commands for these directories in
LOGIN.COM, e.g:
$ assign drb0:[c.bin] bin:
$ assign drb0:[c.com] com:
$ assign drb0:[c.lib] lib:
$ assign drb0:[c.cpm] cpm:
Note that the full path name must be specified.
4. Perform the above assignments manually, re-login or
re-execute LOGIN.COM to make the device names valid.
5. Read the tape as follows:
$ allocate mt:
$ mount mt:/foreign
$ set def lib:
$ mcr flx /rs=mt:[1,1]*.*/do/im
$ mcr flx /rs=mt:[1,2]*.*/do
$ set def bin:
$ mcr flx /rs=mt:[1,3]*.*/do
$ set def cpm:
$ mcr flx /rs=mt:[1,4]*.*/do/im
$ mcr flx /rs=mt:[1,5]*.*/do
$ set def com:
$ mcr flx /rs=mt:[1,6]*.*/do
$ @install
$ dismount mt:
$ deallocate mt:
CP/M-68K Cross Software for VMS Page 3
Installation Procedures
You may need to replace the "mt:" device name above with a
different device name, depending on the type of tape drive
you have. Consult your system administrator for details.
6. Add the statements in the file "xlogin.com" to LOGIN.COM
so that the proper command definitions are performed at
login time.
Once the above steps have been performed, the software is ready
to use on VMS.
3.0 Operating Instructions
The following sections describe how to run the installed
cross software on VMS.
3.1 C compilation
A C compilation is performed using the 'c68' command as
follows:
$ c68 file
The ".c" extension is implied and must not be specified. The
'c68' command is extremely similar to the 'C' SUBMIT file on
CP/M-68K. Default floating point format is Motorola FFP using
the "c68" command. The "ce68" command causes the compiler to use
IEEE format floating point numbers.
3.2 Assembly
The assembler is invoked in exactly the same manner as on
CP/M-68K. The output (listing and errors) can be redirected to a
file or device using the ">filename" construct. A sample command
is:
$ as68 -l -u -p file.s >file.lis
This command assembles "file.s" and places the object in
"file.o". The listing is output to "file.lis". All assembler
options valid under CP/M-68K may be used on VMS as well.
3.3 Linking
The LO68 program is used with the same options and command
line syntax as on CP/M-68K. For example,
$ lo68 -r -o file.rel file1.o file2.o
links "file1.o" with "file2.o", creating "file.rel", a relocat-
able format file.
CP/M-68K Cross Software for VMS Page 4
Operating Instructions
C programs are linked using the "clink" command, as with
CP/M-68K:
$ clink file1
This links "file1.o" with the C runtime software to produce
"file1.rel", a relocatable format 68000 load module. Separately
compiled modules may be linked in the following way:
$ clink file1 file2 file3 file4 ...
All of the object files are linked to produce "file1.rel". A
limit of 9 such files is imposed by the command file.
The "clink" command procedure assumes that the program being
linked does not use floating point. To link a program using FFP
floating point, use "clinkf" instead of "clink". IEEE floating
point programs (those compiled with the "ce68" command) are
linked using "clinke".
3.4 Archive Files
The CP/M-68K archive program (AR68) can be used under VMS
exactly in the same fashion as under CP/M-68K. For example, to
create a library file:
$ ar68 r lib a.o b.o c.o
This command creates a library called "lib" containing the three
files "a.o", "b.o", and "c.o".
4.0 Building CP/M-68K
Using the VAX cross tools to build CP/M-68K is similar to
building the operating system on CP/M. You link the BIOS with
CPMLIB to produce a relocatable image file (CPM.REL). Use the
RELOC utility to create the absolute load image (CPM.SYS). The
CP/M-68K SUBMIT files "LCPM.SUB" and "RELCPM.SUB" have been
adapted to VMS procedure files to make this process easier.
For example, to create the EXORmacs distribution system, use
the following sequence of commands:
$ set def cpm:
$ @normbios !Create "bios.o"
$ @lcpm !Create "cpm.rel"
$ @relcpm 15000 !Create CPM.SYS at 15000 hex.
The boot loader for CP/M-68K is generated in a similar fashion,
as documented in the CP/M-68K System Guide.
CP/M-68K Cross Software for VMS Page 5
File Transfer Techniques
5.0 File Transfer Techniques
5.1 S-records
The normal method of transferring files to a 68000 target is
via Motorola S-records. The SENDC68 program converts a load
module file from binary format to S-record format. The command
syntax for this program is:
SENDC68 [-] file.68k >file.sr
Where "file.68k" is an absolute format CP/M-68K load module, and
"file.sr" is the created S-record file. This form of the load
module may be created using the linker "-t" switch or the reloc
utility. The RELCPM command used in the CP/M-68K generation
procedure generates an absolute file. The "-" option specifies
that S-records are not to be created for the ".bss" segment. The
default is to create S-records that zero all locations in the
".bss".
The resulting S-record file may be downloaded via the VMS
"TYPE" command into a target system with a PROM debugger, such as
the MACSbug program on the EXORmacs.
5.2 Other Transfer Techniques
Other techniques such as binary download utilities or CP/M
file transfer utilities may be used to transfer CP/M-68K load
modules to the 68000 target. When such a technique is used, the
bytes in the file must be swapped, and the words of all longword
quantities in the load module header must be swapped. Library
modules may not be transferred using this technique without
extensive rearrangement of the headers. The symbol table in
object and load module files will have the symbol names byte
swapped in this type of transfer.
6.0 Trademarks