A large commit.
[pdp8.git] / sw / os8 / v3d / sources / devext / dectapes / dectape1 / cclcdx.ma
diff --git a/sw/os8/v3d/sources/devext/dectapes/dectape1/cclcdx.ma b/sw/os8/v3d/sources/devext/dectapes/dectape1/cclcdx.ma
new file mode 100644 (file)
index 0000000..a00954e
--- /dev/null
@@ -0,0 +1,134 @@
+/
+/
+/
+/COPYRIGHT  (C)  1979 BY DIGITAL EQUIPMENT CORPORATION
+/
+/
+/
+/THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE
+/AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
+/CORPORATION.  DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY
+/FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT.
+/
+/THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO THE PURCHASER
+/UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED
+/(WITH INCLUSION OF DIGITAL'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH
+/SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY DIGITAL.
+/
+/DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE
+/OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY
+/DIGITAL.
+/
+/
+/
+
+\f
+/VERSION=V3A (D.H.)
+\f/1    CCL CD EXTENSION
+       .ENTRY POUND,NUMBER,EQLPRM,DNUMB
+       .EXTERNAL GCH
+       .EXTERNAL LV
+       MPARAM=7643
+       T=20
+       DELIM=32
+       NAME1=23
+       NAME2=24
+       NAME3=25
+       NAME4=26
+       LXR=34
+       .EXTERNAL PRMESG
+\f      .RSECT CCLCDX
+       FIELD 1
+
+BADNUM,        TEXT    /#BAD NUMBER/
+
+EQLPRM,        0
+       DCA NUMFUJ
+       JMS NUMBER
+       DCA I (MPARAM+3
+       CLA CLL CML RAR
+       AND I (MPARAM-1 /PRESERVE  ALTMODE
+       TAD HIORD
+       DCA I (MPARAM-1
+       JMP I EQLPRM
+\fNUMBER,       0
+       SZA CLA
+       TAD (<TAD NUM>-SKP
+       TAD (SKP
+       DCA NUMADD      /SET NUMADD TO EITHER "SKP" OR "TAD NUM"
+       DCA HIORD
+NUMLP, DCA NUM
+       JMS I (GCH
+       ISZ NUMKNT
+       SKP
+       JMP EONUM2
+       CMA
+       TAD NUMFUJ
+       TAD ("8         /TEST INPUT CHARACTER FOR RANGE
+       CLL CMA         /0-7 IF NUMFUJ=0
+       TAD (10         /0-9 IF NUMFUJ=2
+       TAD NUMFUJ
+       SNL
+       JMP EONUM
+       DCA T
+       CLA CLL CMA RTL
+       DCA DELIM
+       TAD NUM
+ROTLP, CLL RAL
+       DCA NUMX
+       TAD HIORD
+       RAL
+NUMSKP,        SPA             /MODIFIED BY #
+       JMP CDER5
+       DCA HIORD
+       TAD NUMX
+       ISZ DELIM
+       JMP ROTLP
+NUMADD,        TAD NUM         /SKP IF OCTAL
+       TAD NUM
+       TAD T
+       JMP NUMLP
+EONUM, TAD ("0
+EONUM2,        DCA DELIM
+       TAD NUMKNT
+       SPA CLA
+       JMP CDER5       /FEWER THAN CORRECT NUMBER OF DIGITS
+       TAD NUM
+       JMP I NUMBER
+
+NUM,   0
+NUMFUJ,        0
+NUMKNT,        0               /SET TO -N-1 TO FORCE N DIGITS
+HIORD, 0
+NUMX,  0
+\fDNUMB,        0
+       CLA CLL CML RTL
+       DCA NUMFUJ      /SET "NUMBER" TO ACCEPT
+                       /DIGITS 8 AND 9
+       STA             /ALLOW DECIMAL
+       JMS NUMBER
+       JMP I DNUMB
+\fCDER5,        JMS I (PRMESG
+       BADNUM
+POUND, 0               /USED AS FLAG INDICATING SAW #
+       TAD (SKP
+       DCA NUMSKP
+       TAD (-11
+       DCA NUMKNT
+       JMS NUMBER
+       DCA NAME2
+       TAD HIORD
+       DCA NAME1
+       STA
+       TAD LXR
+       DCA LXR
+       TAD (-11
+       DCA NUMKNT
+       JMS NUMBER
+       DCA NAME4
+       TAD HIORD
+       DCA NAME3
+       TAD (SPA
+       DCA NUMSKP
+       JMP I (LV
+       PAGE