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

⟦52f37d333⟧ TextFile

    Length: 2048 (0x800)
    Types: TextFile
    Names: »PLAS2«

Derivation

└─⟦954fa3634⟧ Bits:30001792 SG0012 Floppy
    └─ ⟦this⟧ »/PLAS2« 

TextFile

.RDXO 10
PRDE1
CAMUL
.TXT 'MULTIPLY'
KVARD
.TXT PKVARDRATP
0
CAMUL:

2
REAL+REFERENCE
REAL+REFERENCE
SUBZL 0,0
LDA @  1,+0,2
LDA 2,CUR
A.GDOU
STA 0,AD02
STA 1,AD02+1
SUBZL 0,0
LDA 3,U.STK,3
LDA @ 1,+1,3
STA 1,AD01
A.GDOU
LDA 2,AD03
BCALL FMPY
LDA 2,CUR
A.PDOU
1
AD01:0
RET1
AD02:0
0
AD03: AD02

  
.RDXO 10 
; HANS THOMSEN/QQ 29.03.82. 
; CALL-RUTINE TIL AT UDDRAGE KVARDRATRODEN AF ET 16 BIT HELTAL 
; DEN BENYTTER NEWTONS-METODE 
; 
; U.STK+0 : ADR. OF REAL 
;      +1 : ADR. REAL+REFERENCE 
;      +2 : 1.WORD OF REAL 
;      +3 : 2.WORD OF REAL 
;      +4 : ADR. OF 1.WORD IN REAL+REFERNECE 
; 
; CALL'KVARDRAT',A,B ,A:START INTEGER, B:RESULT 
; 
KVARD:2 
      REAL 
      REAL+REFERENCE 
      STA 3,BRUGE      ; STORE USER IN BRUGE 
      LDA 0,+4,2       ; LOAD ADR. OF 1.WORD IN REAL+REFERENCE 
 
      STA 0,WARDS      ; STORE AC0 IN WARDS 
      LDA 0,+86,0      ; LOAD 10 FROM PAGE ZERO TO AC0 
      STA 0,TALLE      ; STORE AC0 IN TÆLLE 
      LDA 0,+2,2       ; LOAD 1.WORD OF REAL 
      LDA 1,+3,2       ; LOAD 2.WORD OF REAL 
      BCALL FIX        ; FIX OF REAL AC0/AC1 
      STA 1,BEGIN      ; STORE RESULT OF FIX IN BEGIN 
 LOOP:LDA 0,BEGIN      ; LOAD START-INTEGER TO AC0 
      DIVIDE           ; AC0 DIV AC1, RESULT TO AC0 
      ADD 0,1          ; AC0+AC1 TO AC1 
      MOVZR 1,1        ; AC1 DIV 2 
      DSZ TALLE        ; COUNT TÆLLE ONE DOWN, SKIP IF TÆLLE=0 
      JMP LOOP         ; JUMP TO LOOP IF TÆLLE>0 
      SUB 0,0          ; AC0=0 
      LDA 3,BRUGE      ; LOAD USER TO AC3, FROM BRUGE 
      BCALL FLOAT      ; FLOAT OF RESULT AC0/AC1 
      LDA 2,CUR        ; LOAD CUR TO AC2 
      A.PDOUBLE        ; PUT AC0/AC1 TO DATA-SEGMENT 
      1                ; SEGMENT NO. 1:DATA-SEGMENT 
WARDS:0                ; WORD ADR. IN DATA-SEGMENT OF REAL+REFERENCE 
      RET1             ; RETURN TO BASIC 
TALLE:0                ; COUNTER 
BEGIN:0                ; START-INTEGER 
BRUGE:0                ; USER 
PRDE2 RC 
«ff»
«nul»