DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

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

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦54844fd05⟧ TextFile

    Length: 2304 (0x900)
    Types: TextFile
    Names: »lmitxt079«

Derivation

└─⟦2c55ea56f⟧ Bits:30001844 SW-save af projekt 1000, Alarm-system
    └─⟦093e2ad1c⟧ 
        └─⟦this⟧ »lmitxt079« 

TextFile

;;
;; begin lmitxt079
;;
;;
                              ;
;;unsigned div
;; time: 52 step
;;w1q=op1 (unsigned)
;;w2=op2  (unsigned)
;;r,ir,c,s used
;;q:=quotient (op1//op2)
;;w1:=remainder
                              ;
unsdiv: ;;
   ir:=60,,,                  ;prepare double shift left
   w1:<<c<w1,,ldct 0f         ;
unsdiv0:                      ;
   q:=q--,,                   ;q15:=0
unsdiv1: ;;
   w1-w2,s,cjp cry unsdiv2    ;
   ,,cjp not acy unsdiv3      ;
                              ;
unsdiv2: ;;
   w1:<<c<w1-w2,,rpct unsdiv0 ;
   swp,q:=-q,,cjp unsdiv4     ;q15:=0; q:=compl q
unsdiv3: ;;
   w1:<<c<w1,,rpct unsdiv1    ;
   swp,q:=q equ 0,,           ;q:=compl q
unsdiv4:                      ;
   w1:=swp,,crtn              ; w1:=remainder
.p                            ;
;;unsigned mult
;; time: 55 + ones(w3) = 55 thru 71 step
;;w3=op1
;;w2=op2
;;w1=op3
;;r,ir,c used
;;w1w3:=op1*op2+op3=w3*w2+w1
                              ;
unsmult: ;;
   ir:=c:=,,ldct 10           ;prepare rotate, c:=0
   ,,cjp unsmult3             ; c is considered bit00 of w1
                              ;
unsmult1: ;;
   ,,cjp not cry unsmult2     ;
   w1:=c:w1+w2,,              ; c:=bit00
unsmult2: ;;
   w1:=>c>w1,,                ;
unsmult3: ;;
   w3:=>c>w3,,rpct unsmult1   ; c:=multiplicant bit
   ,,crtn                     ;
.p                            ;
;;dyadic compare, fetch operands
                              ;
prepdyad:                     ;
   w4:=,,cjs readluc          ;
   w2:=bd,h w s,cjs readluct  ;
   w3:=bd,h w s,cjs terror    ;
   bus:=w2 xor w3,s,jmap not 8 ;
arit2t: ;;
   w3:=w3++,,cjp wrfetch      ;
arit2boo: ;;         
   w3:=0,,cjp not cry wrfetch ;
   w3:=w3++,,cjp wrfetch      ;
                              ;
;;conditional jump, fetch
                              ;
prepbranch:                   ;
   ,,cjs readcont             ;
   w0:=w3,,cjs readluc        ;
   w3:=bd,h w s,ldct fetch    ;
   ,h ,cjp pty errlu          ;
   w3,s,jmap not 8            ;
jmt: ;;
   sic:=rd+w0,,cjp fetch      ;
                              ;
.p                            ;
                              ;
;;
;; end lmitxt079
;;
.p                            ;
▶EOF◀