DataMuseum.dk

Presents historical artifacts from the history of:

RegneCentralen RC3600/RC7000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RegneCentralen RC3600/RC7000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦00fad7d93⟧ TextFile

    Length: 8704 (0x2200)
    Types: TextFile
    Names: »LKCPL«

Derivation

└─⟦92491b7d7⟧ Bits:30001772 UDVIKLING AF CALLRUTINER ETC NR 2
    └─ ⟦this⟧ »/LKCPL« 
└─⟦ee9e554ad⟧ Bits:30001809 SG0107 Floppy
    └─ ⟦this⟧ »/LKCPL« 

TextFile

«ff»
PRDE1                                ; PROCESS HEAD 
CDR11                                ; ADDRESS OF CARDREAD REV 1.03 
.TXT @CARDREAD@                      ; NAME OF     -------''------- 
«ff»
; SUBRUTINETABEL


GME00				; GMEM-ADRESSE
.TXT "GMEM<0><0><0><0>"		; NAVN


KSP00
.TXT "KODESPEC"

SME00
.TXT "SMEM<0><0><0><0>"

FIX00
.TXT "FIX<0><0><0><0><0>"

FLO00
.TXT "FLOAT<0><0><0>"

0
«ff»
GME00:	2
	REAL
	REAL+REFERENCE
	LDA  	2,+0,2		; AC1=A-ADRESSE
	EXECUTE
	GSM00
	RET1
	LDA	1,+0,2		; JA: AC1=INDHOLD AF ADRESSE
	BCALL FLOAT		; AC1 -> KOMMATAL
	LDA	2,U.STK,3
	LDA @	2,+1,2		; AC2=B-ADRESSE
	STA	2,GME01		; GEM B-ADRESSE
	LDA	2,CUR
	A.PDOUBLE		; GEM ADRESSEINDHOLD(A) I B
	1
GME01:	0
	RET1			; END GMEM

«ff»
GSM00:	LDA 	0,+0,2		; HENT A
	LDA	1,+1,2
	BCALL FIX		; FIX A
	ADCZR	2,2		; AC2=1B0-1
	MOV	0,0,SNR		; 0<=AC1<=1B0-1
	SNG	1,2
	JMP  ERR90		; NEJ: ERROR UDSKRIV MEDD.
	MOV	1,2		; AC1-->AC2
	RET1			; RETURN

ERR90:	ERROR
	90

ERR91:	ERROR
	91
KSP00:	0
	READS	0
	STA	0,KSP01
	RET1
KSP01:	0
«ff»
SME00:	2			; 2 VARIABLE
	REAL		; A (=A-ADRESSE)
	REAL		; B (=DATA)
	LDA	0,KSP01		; SE GME00
	LDA	1,KSP02
	SUB	1,0,SZR
	JMP  ERR90
	LDA 	2,+1,2		; AC2(!)=B-ADRESSE
	LDA	0,+0,2		; HENT REAL(!) B
	LDA	1,+1,2
	BCALL FIX		; FIX B
	MOV	0,0,SZR		; 0<=B<=65535 ?
	JMP  ERR91		; NEJ ERROR-RETURN
	STA	1,U.S00,3	; GEM AC1(B) I U.S00.USER
	LDA@	2,U.STK,3
	EXECUTE			; EXEC GSM00(A-ADRESSE)
	GSM00
	RET1
	LDA	1,U.S00,3	; AC1=F(UDA+U.S00)=B
	STA	1,+0,2		; AC1-->ADR.AC2
	RET1			; END STOREMEMORY
KSP02:	42798
«ff»
FIX00:	3
	REAL+REFERENCE
	REAL+REFERENCE
	REAL+REFERENCE
	SUBZL	0,0		; AC0=1
	LDA @ 	1,+0,2		; AC1=A-ADRESSE
	LDA	2,CUR		; AC2=CUR
	A.GDOUBLE		; HENT A
	STA	0,U.S00,3	; GEM ORD 1 AF A
	SUBC	0,0		; AC0=0
	BCALL FLOAT		; FLOAT ORD2 AF A
	LDA	2,CUR		; AC2=CUR
	LDA	3,U.STK,3	; AC3=F(F(USER)+U.STK)
	LDA @	3,+2,3		; AC3=C-ADRESSE
	STA	3,FIX01		; GEM C-ADRESSE
	A.PDOUBLE		; GEM FLOAT AF ORD2 AF A I B
	1
FIX01:	0
	LDA	1,U.S00,3	; HENT ORD1 AF A
	SUBC	0,0		; AC0=0
	BCALL FLOAT		; FLOAT ORD1 AF A
	LDA	2,CUR		; AC2=CUR
	LDA	3,U.STK,3	
	LDA @	3,+1,3		; AC3=B-ADRESSE
	STA	3,FIX02		; GEM B-ADRESSE
	A.PDOUBLE		; GEM FLOAT AF ORD2 AF A I C
	1
FIX02:	0
	RET1			; END FIX
«ff»
FLO00:	3
	REAL
	REAL
	REAL+REFERENCE
	LDA  	2,+0,2		; AC1=A-ADRESSE
	EXECUTE			; EXEC FLO02
	FLO02
	RET0			; HVIS ERROR
	STA	1,U.S00,3	; GEM DEL 1 AF C
	LDA	2,U.STK,3
	LDA  	2,+1,2		; AC1=B-ADRESSE
	EXECUTE
	FLO02
	RET0
	LDA	0,U.S00,3	; HENT DEL 1 AF C
	LDA	2,U.STK,3
	LDA @	2,+2,2		; AC2=C-ADRESSE
	STA	2,FLO01		; GEM C-ADRESSE
	LDA	2,CUR
	A.PDOUBLE		; AC0,AC1-->C
	1
FLO01:	0
	RET1
FLO02:	LDA	0,+0,2
	LDA	1,+1,2		; ** CB RET **
	BCALL FIX		; LAV OM TIL HELTAL
	MOV	0,0,SNR		; 0=<A/B=<32K ???
	RET1			; JA: RETURN
	ERROR			; NEJ: RETURN MED ERROR 90
	90.
«ff»
CDR11:    2                          ; INCLUDE TWO PARAMETERS 
          REAL                       ; INFORMATOR 
          REAL+ARRAY                 ; DATA STORAGE 
          LDA   1,RSTAT              ; LOAD RESERVATION STATUS 
          SZ    1,1                  ; SKIP ON ROUTINE IDLE 
          JMP   .-2                  ; BY REPEATING 
          LDA   1,+5,2               ; LOAD MAX. NO OF ROWS 
          LO    0,0                  ; 0=1 
          SEQ   0,1                  ; SKIP IF NO OF ROWS=1 
          JMP   ERR31 
                                     ; JMP TO 'INDEKSFEJL' 
          LDA   1,DMADR              ; LOAD ADDRESS OF CORE DUMP AREA 
          DOB   1,.CDR               ; INSTRUCT CDR CONTROLLER 
          DOAS  0,.CDR               ; READ A BINARY CARD 
          SKPBZ .CDR                 ; WAIT UNTIL BUSY=0 
          JMP   .-1                  ; REPEAT 
          DIBC  0,.CDR               ; 0=LAST ADDRESS AND CLOSE DEVICE
                   STA   0,U.S05,3             ; STORE LAST CORE ADDRESS
 
          SUB   1,0                  ; NUMBER OF COLUMNS READ 
          LZ    1,1                  ; 1=0 
          SNZ   0,0                  ; SKIP IF NOT ZERO 
          JMP   ERR10                ; IF ZERO JMP TO 'KORTLÆSNINGSFEJL' 
        LZ     0,0                   ; 0=0 
        DOA    0,.CDR                ; READ STATUS WORD 
        DIA    0,.CDR                ; INPUT STATUS WORD 
        STA    0,ERRCODE             ; SAVE ERROR CODE 
        SZ     0,0                   ; SKIP IF 0=0 
        JMP    ERR10                 ; JUMP TO 'KORTLÆSNINGSFEJL' 
        ;«ff»
            
; ***** READY FOR CONVERTING & TRANSFER  ****** 
        LDA    2,0,2                 ; 2=ADDRESS OF REAL 
        LDA    0,0,2                 ; 0= 1. WORD OF REAL 
        LDA    1,1,2                 ; 1= 2. WORD OF REAL 
        BCALL  FIX                   ; FIX REAL 
        SNZ    1,1                   ; SKIP IF NOT ZERO 
        JMP    ASCII                 ; JUMP TO ASCII CONVERSION 
        LO     0,0                   ; 0=1 
        SNE    1,0                   ; SKIP IF 0 NOT EQUAL TO 1 
        JMP    NUMBER                ; JUMP TO NUMBER CONVERSION 
SNART:  LDA   2,U.STK,3              ; LOAD STACKPOINTER
        LDA   2,+1,2                   ; LOAD ADDRESS OF FIRST VECTOR ELEMENT
        LDA   2,+0,2                  ; LOAD ARRAY ADDRESS

        STA   2,APD03                 ; STORE VECTOR ADDRESS IN APD03
LOOPE:  LDA   0,DMADR                ; LOAD CURRENT CORE ADDRESS 
        LDA   1,0,0                  ; LOAD CONTENTS OF CORE ADDRESS 
        INC   0,0                    ; INCREMENT ADDRESS BY ONE 
        STA   0,DMADR                ; SAVE DMADR 
        LZ    0,0                    ; 0=0 
        BCALL FLOAT                  ; CONVERT COLUMN DATA TO FLOATING POINT 
        LDA   2,CUR                  ; LOAD ZONE ADDRESS 
        A.PDOUBLE                    ; PUT CARD DATA INTO VECTOR ELEMENTS 
        1                            ; SEGMENT NO. 1=DATA SEGMENT 
APD03:  0                            ; ADDRESS OF REAL(INDEX) 
        LDA   1,U.S05,3              ; LOAD LAST DUMP ADDRESS 
        LDA   0,DMADR                ; LOAD CURRENT DATA LOCATION IN CORE 
        SNE   1,0                    ; SKIP IF NOT EQUAL 
        JMP   OUT00                  ; EXIT FROM ROUTINE 
        LDA   2,APD03                ; LOAD VECTOR ELEMENT ADDRESS 
        INC   2,2                    ; INCREMENT  
        INC   2,2                    ; INCREMENT 2. TIME 
        STA   2,APD03                ; STORE VECTOR ELEMENT ADDRESS AGAIN 
        JMP   LOOPE                  ; CONTINUE TO LOOPE 
        .EJEC   
; **** FINISH CARDREAD PROGRAM **** 
OUT00:  LDA   1,DMOMR               ; LOAD FIRST CORE ADDRESS 
        STA   1,DMADR                ; RESTORE DMADR 
        LZ    1,1                    ; 1=1 
        STA   1,RSTAT                ; RESTORE RESERVATION STATUS 
        RET1                         ; ORDINARY RETURN TO COMAL 
; 
; **«so»KORTLÆSNINGSFEJL 
ERR10:  STA   1,RSTAT                ; RESTORE RESERVATION STATUS 
        ERROR 
        10                           ; ERRORNOUS RETURN 
; 
; **«so»INDEKSFEJL 
ERR31:  STA   1,RSTAT                ; RESTORE RESERVATION STATUS 
        ERROR 
        31                           ; ERRORNOUS RETURN 
; 
; **L 
; **«so»LABEL DECLARATION 
; 
RSTAT:  0                            ; RESERVATION STATUS 
ERRCO:  0                            ; SAVED ERROR CODE FROM CDR CONTROLLER 
«ff»
DMADR:  DMADD                        ; ADDRESS OF CORE DUMP AREA 
.CDR=   14                           ; CARDREADER NUMBER 
;  ** AT THE MOMENT DUMMIES 
NUMBE:  JMP SNART                    ; NUMBER CONVERSION 
ASCII:  JMP SNART                    ; ASCII  CONVERSION 
DMOMR:  DMADD                      ; ADDRESS OF CORE DUMP AREA AGAIN
DMADD:  .BLK 41                        ; CORE DUMP AREA
; 
; 
; 1. INDTASTNING AFSLUTTET DEN 14.09.81 KL. CA 14.30 VED Torben Tambo 
; 
        .EJEC    
PRDE2                                  ; END PROCESS DESCRIBTOR 
«ff»
«ff»
«nul»