|
|
DataMuseum.dkPresents historical artifacts from the history of: RegneCentralen RC3600/RC7000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RegneCentralen RC3600/RC7000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 32768 (0x8000)
Types: TextFile
Names: »CAD25«
└─⟦99bc78d90⟧ Bits:30001771 CALL-RUTINER under DP4-DOMAC
└─⟦this⟧ »/CAD25«
«ff»
0001 UCA01 DOMUS MACRO ASSEMBLER REV 02.00
01 ;CB RET I BUF OG FIND 27.8.81 KL 13 *** FNAVN CAA25 ***
02 ; CA24 (1 FEJL) /CA23 (2 FEJL) /CA22 (CA 12 FEJL+MAGL
03 ;
04 ; FIL CA22 SOM YDERL. ER RETTET TIL CA23 PÅEXPL2/$FD1:3
05 ;OG DEREFTER KOPIERET TILBAGE TIL EXPL6/$FD0 > DOMAC
06 ; DETTE ER EN PROGRAM SAMMENLÆGNING TIL BRUG VED I-DAG-SYSTEMET.
07 ;; STUMPERNE ER HENTET FRA CA15 OG FLG. ER FØJET TIL :
08 ; CB 2/8-80 KL 12'43:30
09 ; PL 12 RETTELSER JFR CB + FIX OG FLOAT FRA CA15 PÅ DOMUS EXPL 2
10 ; $FD1:3 + UDSMIDNINGER AF GENTAGELSER VEDR GMEM / SMEM
11 ; RETTET PÅ BASIS AF CA21 PÅ EXPL2 $FD1:3 //PL 14.9.80 KL 24
12
13 PRDE1 ; MACRO PROGRAMHOVED
14
.TITL UCA01 ; USER-CODED SUBROUTINES 78.05.01
16 .NREL
17 000012 .RDX 10 ; RADIX 10
18 000001 .TXTM 1 ; PACKED FROM LEFT TO RIGHT
19 000001 .TXTN 1 ; NO NULL-BYTES IF EVEN NUMBER OF BYTES
20
21 PP00: ; PROGRAM START
22 00000'100001 1B0+1B15 ; DESCRIPTOR
23 00001'000007' PP05 ; START
24 00002'000000 0 ; CHAIN
25 00003'000625 PP10-PP00 ; SIZE
26 00004'052503 .TXT .UCALL. ; NAME
27 040514
28 046000
29
30 PP05: ;
31 00007'006013 STOPPROCESS ;
32 00010'000777 JMP PP05 ;
33
«ff»
!0002 UCA01
01 ; <STN> CALL"BUF",<EXPR>,<EXPR>,<VAR>
02 ; <STN> CALL"GMEM",<VAR>,<VAR>
03 ; <STN> CALL"SMEM",<VAR>,<VAR>
04 ; <STN> CALL"KODESPEC"
05 ; <STN> CALL"FIND",<EXPR>,<MVAR>,<EXPR>,<VAR>
06 ; <STN> CALL"FLYTMAT",<MVAR>,<EXPR>,<EXPR>,<EXPR>
07
08 ; SUBRUTINETABEL
09
10 00011'000062'BUF00
11 00012'041125 .TXT "BUF<0><0><0><0><0>"
12 043000
13 000000
14 000000
15
16 00016'000155'GME00 ; GMEM-ADRESSE
17 00017'043515 .TXT "GMEM<0><0><0><0>" ; NAVN
18 042515
19 000000
20 000000
21
22 00023'000253'FIN00 ; FIND ADRESSE
23 00024'043111 .TXT "FIND<0><0><0><0>" ; NAVN
24 047104
25 000000
26 000000
27
28 00030'000402'FLM00 ; FLYTMAT ADREESE
29 00031'043114 .TXT "FLYTMAT<0>" ; NAVN
30 054524
31 046501
32 052000
33
34 00035'000217'KSP00
35 00036'045517 .TXT "KODESPEC"
36 042105
37 051520
38 042503
39
40 00042'000224'SME00
41 00043'051515 .TXT "SMEM<0><0><0><0>"
42 042515
43 000000
44 000000
45
46 00047'000527'FIX00
47 00050'043111 .TXT "FIX<0><0><0><0><0>"
48 054000
49 000000
50 000000
51
52 00054'000566'FLO00
53 00055'043114 .TXT "FLOAT<0><0><0>"
54 047501
55 052000
56 000000
57
58 00061'000000 0
«ff»
!0003 UCA01
01 00062'000003 BUF00: 3 ; 3 VARIABLE
02 00063'000000 REAL ; A
03 00064'000000 REAL ; OG B
04 00065'100000 REAL+REFERENCE ; OG C
05 00066'024454 LDA 1,RESCH ; HENT RESERVATIONSSTATUS (RESCH)
06 00067'102520 SUBZL 0,0 ; AC0=1
07 00070'122415 SUB# 1,0 ,SNR ; RESCH=AC0??
08 00071'000775 JMP .-3 ; JA: PRØV IGEN
09 00072'040450 STA 0,RESCH ; NEJ: SÆT RESCH=1
10 00073'027002 LDA @ 1,+2,2 ; AC1=F(F(USER.U.STK)+1)=C-ADRESSE
11 00074'044433 STA 1,BADRE ; GEM C-ADRESSE
12 00075'031001 LDA 2,+1,2 ; AC2=B-ADRESSE
13 00076'021000 LDA 0,+0,2 ; HENT B=VARBUFNR
14 00077'025001 LDA 1,+1,2
15 BCALL FIX
16 00100'035515 LDA 3 U.S21,3
17 00101'007400 JSR@ +0,3
18 00102'152460 SUBC 2,2 ; AC2=0
19 00103'151540 INCOL 2,2 ; AC2=3
20 00104'101005 MOV 0,0,SNR ; LIGGER 0<=VARBUFNR<=3 ?
21 00105'132433 SNG 1,2
22 00106'000503 JMP ERR90-2 ; NEJ: RETURN MED ERROR 90 ** CB RET
23 00107'125120 MOVZL 1,1 ; AC1=1
24 00110'030433 LDA 2,BUFAD ; AC2=BUFFERADRESSE
25 00111'147000 ADD 2,1 ; AC1=AC1+AC2
26 00112'044442 STA 1,ADRES ; GEM ADRESSE(VARNR)
27 00113'102520 SUBZL 0,0 ; AC0=1
28 00114'033467 LDA @ 2,U.STK,3
29 00115'021000 LDA 0,+0,2 ; HENT A(1. ORD)
30 00116'030040 LDA 2,CUR
31 00117'101004 MOV 0,0,SZR ; A=0???
32 00120'000411 JMP PART2 ;
33 00121'034433 LDA 3,ADRES ; HENT BUFADRESSE
34 00122'021400 LDA 0,+0,3 ; AC0=F(ADRES)
35 00123'025401 LDA 1,+1,3 ; AC1=F(ADRES+1)
36 00124'030040 LDA 2,CUR
37 00125'007106 A.PDOUBLE ; AC'S-->B
38 00126'000001 1 ; SEGMENT NUMBER
39 00127'000000 BADRE: 0 ; B-ADRESSE
40 00130'000407 JMP UD ;
41 00131'102520 PART2: SUBZL 0,0
42 00132'024775 LDA 1,BADRE ; NEJ: HENT B-ADRESSE
43 00133'007102 A.GDOUBLE ; HENT B-->;AC'S
44 00134'034420 LDA 3,ADRES ; AC3=BUFADRESSE(VARNR)
45 00135'041400 STA 0,+0,3 ; AC'S-->BUF(VARNR)
46 00136'045401 STA 1,+1,3
47 00137'102400 UD: SUB 0,0 ; AC0=0
48 00140'040402 STA 0,RESCH ; RESCH=0
49 00141'002242 RET1 ; END BUF
50 ;
51 00142'000000 RESCH: 0 ; RESERVERINGSSTATUS
52 00143'000144'BUFAD: BUFTB
53 00144'000010 BUFTB: .BLK 8 ; VARBUF OMRÅDE
54 00154'000000 ADRES: 0
«ff»
!0004 UCA01
01 00155'000002 GME00: 2
02 00156'000000 REAL
03 00157'100000 REAL+REFERENCE
04 00160'031000 LDA 2,+0,2 ; AC1=A-ADRESSE
05 00161'006240 EXECUTE
06 00162'000177' GSM00
07 00163'002242 RET1
08 00164'025000 LDA 1,+0,2 ; JA: AC1=INDHOLD AF ADRESSE
09 BCALL FLOAT ; AC1 -> KOMMATAL
10 00165'035515 LDA 3 U.S21,3
11 00166'007401 JSR@ +1,3
12 00167'031467 LDA 2,U.STK,3
13 00170'033001 LDA @ 2,+1,2 ; AC2=B-ADRESSE
14 00171'050404 STA 2,GME01 ; GEM B-ADRESSE
15 00172'030040 LDA 2,CUR
16 00173'007106 A.PDOUBLE ; GEM ADRESSEINDHOLD(A) I B
17 00174'000001 1
18 00175'000000 GME01: 0
19 00176'002242 RET1 ; END GMEM
20
«ff»
!0005 UCA01
01 00177'021000 GSM00: LDA 0,+0,2 ; HENT A
02 00200'025001 LDA 1,+1,2
03 BCALL FIX ; FIX A
04 00201'035515 LDA 3 U.S21,3
05 00202'007400 JSR@ +0,3
06 00203'152220 ADCZR 2,2 ; AC2=1B0-1
07 00204'101005 MOV 0,0,SNR ; 0<=AC1<=1B0-1
08 00205'132433 SNG 1,2
09 00206'000405 JMP ERR90 ; NEJ: ERROR UDSKRIV MEDD.
10 00207'131000 MOV 1,2 ; AC1-->AC2
11 00210'002242 RET1 ; RETURN
12 00211'102400 SUB 0,0
13 00212'040730 STA 0,RESCH
14
15 00213'006244 ERR90: ERROR
16 00214'000132 90
17
18 00215'006244 ERR91: ERROR
19 00216'000133 91
20 00217'000000 KSP00: 0
21 00220'060477 READS 0
22 00221'040402 STA 0,KSP01
23 00222'002242 RET1
24 00223'000000 KSP01: 0
«ff»
!0006 UCA01
01 00224'000002 SME00: 2 ; 2 VARIABLE
02 00225'000000 REAL ; A (=A-ADRESSE)
03 00226'000000 REAL ; B (=DATA)
04 00227'020774 LDA 0,KSP01 ; SE GME00
05 00230'024422 LDA 1,KSP02
06 00231'122404 SUB 1,0,SZR
07 00232'000761 JMP ERR90
08 00233'031001 LDA 2,+1,2 ; AC2(!)=B-ADRESSE
09 00234'021000 LDA 0,+0,2 ; HENT REAL(!) B
10 00235'025001 LDA 1,+1,2
11 BCALL FIX ; FIX B
12 00236'035515 LDA 3 U.S21,3
13 00237'007400 JSR@ +0,3
14 00240'101004 MOV 0,0,SZR ; 0<=B<=65535 ?
15 00241'000754 JMP ERR91 ; NEJ ERROR-RETURN
16 00242'045470 STA 1,U.S00,3 ; GEM AC1(B) I U.S00.USER
17 00243'033467 LDA@ 2,U.STK,3
18 00244'006240 EXECUTE ; EXEC GSM00(A-ADRESSE)
19 00245'000177' GSM00
20 00246'002242 RET1
21 00247'025470 LDA 1,U.S00,3 ; AC1=F(UDA+U.S00)=B
22 00250'045000 STA 1,+0,2 ; AC1-->ADR.AC2
23 00251'002242 RET1 ; END STOREMEMORY
24 00252'123456 KSP02: 42798
«ff»
!0007 UCA01
01 00253'000004 FIN00: 4 ; 4 VARIABLE :
02 00254'000000 REAL ; B = DET DER SØGES PLACERET
03 00255'000100 REAL+ARRAY ; A = DET DER SØGES I
04 00256'000000 REAL ; MAX(A) = MAX BRUGT I A
05 00257'100000 REAL+REFERENCE ; INDEX = STED TIL RESULTAT
06 00260'021007 LDA 0,+7,2 ; DIM(A)-->US00
07 00261'041470 STA 0,U.S00,3
08 00262'027003 LDA @ 1,+3,2 ; FLYT INDEX OVER I FEN05 ** CB RET **
09 00263'044463 STA 1,FIN05
10 00264'021011 LDA 0,+9,2 ; HENT MAX(A)
11 00265'025012 LDA 1,+10,2
12 BCALL FIX ; FIX MAX(A)
13 00266'035515 LDA 3 U.S21,3
14 00267'007400 JSR@ +0,3
15 00270'031470 LDA 2,U.S00,3 ; AC2=DIM(A)
16 00271'101005 MOV 0,0,SNR ; ER MAX(A)>=0 OG
17 00272'132433 SUBZ# 1,2,SNC ; ER MAX(A)<=DIM(A)
18 00273'000455 JMP ER31 ; NEJ - INDEXFEJL
19 00274'125005 MOV 1,1,SNR ; ER MAX=0
20 00275'000441 JMP FIN03 ; JA - HOP (LAD INDEX=1)
21 00276'045471 STA 1,U.S01,3 ; US01=MAX(A)=MAX
22 00277'102520 SUBZL 0,0
23 00300'041470 STA 0,U.S00,3 ; US00=MIN=1
24 00301'031467 LDA 2,U.STK,3
25 00302'027000 LDA@ 1,+0,2 ; FLYT B-ADRESSE OVER I NÆRVÆRENDE LAGER
26 00303'044447 STA 1,BADR
27 00304'025006 LDA 1,+6,2 ; FLYT STARTADR PÅ MATRIX OVER I US12
28 00305'045504 STA 1,U.S12,3
29 00306'004462 JSR BEADR ; AC0 ER HER 1
30 00307'004444 JSR TESTB ; ER B<A(1) ?
31 00310'000427 JMP FIN04 ; JA - HOP (LAD INDEX=1)
32 00311'021471 LDA 0,U.S01,3 ; NEJ - AC0=MAX
33 00312'004456 JSR BEADR
34 00313'004440 JSR TESTB ; ER B>=A(MAX)
35 00314'000402 JMP .+2
36 00315'000421 JMP FIN03 ; JA - HOP (LAD INDEX=MAX+1)
37 00316'021470 FIN01: LDA 0,U.S00,3 ; AC0=MIN
38 00317'025471 LDA 1,U.S01,3 ; AC1=MAX
39 00320'123220 ADDZR 1,0 ; AC0=MIDT=(MIN+MAX) DIV 2
40 00321'004447 JSR BEADR
41 00322'004431 JSR TESTB ; B>=A(MIDT)
42 00323'000411 JMP FIN02 ; NEJ HOP
43 00324'101400 INC 0,0 ; AC0=MIDT+1
44 00325'004443 JSR BEADR
45 00326'004425 JSR TESTB ; B<A(MIDT+1)
46 00327'000410 JMP FIN04 ; JA - HOP SLUT (INDEX=MIDT+1)
47 00330'100400 NEG 0,0 ; AC0=AC0-1=MIDT
48 00331'100000 COM 0,0
49 00332'041470 STA 0,U.S00,3 ; MIN=MIDT
50 00333'000763 JMP FIN01 ; FORFRA
51 00334'041471 FIN02: STA 0,U.S01,3 ; MAX=MIDT
52 00335'000761 JMP FIN01 ; FORFRA
«ff»
!0008 UCA01
01 00336'101400 FIN03: INC 0,0 ; INDEX=INDEX+1
02 00337'105000 FIN04: MOV 0,1 ; AC0,AC1=0,INDEX IE FIXTAL INDEX
03 00340'102400 SUB 0,0
04 BCALL FLOAT ; AC0,AC1=FLOAT INDEX
05 00341'035515 LDA 3 U.S21,3
06 00342'007401 JSR@ +1,3
07 00343'030040 LDA 2,CUR
08 00344'007106 A.PDOUBLE ; GEM INDEX
09 00345'000001 1
10 00346'000000 FIN05: 0
11 00347'002242 RET1 ; SLUT
12
13 00350'006244 ER31: ERROR
14 00351'000037 31
15
16 00352'000000 BADR: 0
17
«ff»
!0009 UCA01
01 ; DENNE RUTINE SAMMENLIGNER DET TAL (X)
02 ; DER LIGGER PÅ ADRESSEN ANGIVET I AC1
03 ; MED B, DER ER ANGIVET VED BADR
04
05 00353'030017 TESTB: LDA 2,USER
06 00354'041103 STA 0,U.S11,2 ; GEM AC0 VÆK
07 00355'055102 STA 3,U.S10,2 ; GEM RETADR I US10
08 00356'102520 SUBZL 0,0 ; AC0=1
09 00357'030040 LDA 2,CUR
10 00360'007101 A.GWORD
11 00361'030771 LDA 2,BADR ; AC2=B'S ADRESSE
12 00362'142033 ADCZ# 2,0,SNC ; (RETTET! /NU KUN CKECK PÅ 1.ORD)
13 00363'011502 ISZ U.S10,3 ; HVIS X>B RETURN TIL LINK+0
14 00364'021503 LDA 0,U.S11,3 ; HENT AC0 TILBAGE
15 00365'003502 JMP @ U.S10,3 ; RETURN
16 ; ! CALL ! RET
17 ;-------------------
18 00366'000401 JMP +1,1 ; AC0 ! ? ! =
19 ; AC1 !ADR.X ! %
20 ; AC2 ! ? ! %
21 00367'000401 JMP +1,1 ; AC3 ! ? ! UDA
22
23
24
25 ; DENNE RUTINE BEREGNER DEN EFFEKTIVE
26 ; ADR PÅ ET INDEX I EN MATRIX, HVIS
27 ; FØRSTE ELEMENTS ADR ER ANGIVET VED
28 ; US12.
29 ; BEREGNINGEN ER MED LOWBOUND=1
30
31 00370'165000 BEADR: MOV 3,1 ; AC1=AC3, AC0=INDEX VED START
32 00371'034017 LDA 3,USER
33 00372'045502 STA 1,U.S10,3 ; GEM RET-ADR VÆK
34 00373'051503 STA 2,U.S11,3 ; GEM AC2
35 00374'031504 LDA 2,U.S12,3 ; AC2=ADR(MAT(1))
36 00375'104400 NEG 0,1
37 00376'124120 COMZL 1,1 ; INDEX=(INDEX-1)*2
38 00377'147000 ADD 2,1 ; AC1=ADR(MAT(1))+INDEX
39 00400'031503 LDA 2,U.S11,3 ; HENT AC2 IGEN
40 00401'003502 JMP @ U.S10,3 ; RETURN
41 ; ! CALL ! RET
42 ;-------------------
43 ; AC0 !INDEX !INDEX
44 ; AC1 ! ? ! ADR
45 ; AC2 ! ? ! =
46 ; AC3 ! ? ! UDA
47
48
«ff»
!0010 UCA01
01 00402'000004 FLM00: 4
02 00403'000100 REAL+ARRAY ; A = DET DER SKAL FLYTTES I
03 00404'000000 REAL ; INDEX = HVORFRA DER SKAL FLYTTES
04 00405'000000 REAL ; ANTAL = HVORLANGT ..
05 00406'000000 REAL ; MAX = SIDSTE ELEMENT BRUGT I A
06 00407'021004 LDA 0,+4,2
07 00410'041504 STA 0,U.S12,3 ; GEM ADR(A(1)) I US12
08 00411'021007 LDA 0,+7,2
09 00412'025010 LDA 1,+8,2 ; HENT INDEX
10 BCALL FIX ; FIX INDEX
11 00413'035515 LDA 3 U.S21,3
12 00414'007400 JSR@ +0,3
13 00415'101005 MOV 0,0,SNR ; ER 0<=INDEX<=32767 OG
14 00416'125005 MOV 1,1,SNR ; ER INDEX<>0 ?
15 00417'000731 JMP ER31 ; NEJ
16 00420'045471 STA 1,U.S01,3 ; GEM INDEX I US01
17 00421'031467 LDA 2,U.STK,3
18 00422'021013 LDA 0,+11,2
19 00423'025014 LDA 1,+12,2 ; HENT MAX
20 BCALL FIX ; FIX MAX
21 00424'035515 LDA 3 U.S21,3
22 00425'007400 JSR@ +0,3
23 00426'031467 LDA 2,U.STK,3
24 00427'031005 LDA 2,+5,2 ; HENT DIM(A)
25 00430'132432 SUBZ# 1,2,SZC ; ER MAX<=DIM(A) OG
26 00431'101004 MOV 0,0,SZR ; ER MAX>=0 ?
27 00432'000716 JMP ER31 ; NEJ
28 00433'021471 LDA 0,U.S01,3 ; AC0=INDEX
29 00434'045472 STA 1,U.S02,3 ; GEM MAX I US02
30 00435'125400 INC 1,1 ; AC1=MAX+1
31 00436'106423 SUBZ 0,1,SNC ; AC1=MAX+1-INDEX, ER AC1>=0 ?
32 00437'000711 JMP ER31 ; NEJ
33 00440'125005 MOV 1,1,SNR ; ER AC1=0 ?
34 00441'002242 RET1 ; JA SLUT
35 00442'045470 STA 1,U.S00,3 ; GEM ANT=MAX+1-INDEX I US00
36 00443'031467 LDA 2,U.STK,3
37 00444'021011 LDA 0,+9,2 ; HENT ANTAL
38 00445'025012 LDA 1,+10,2
39 BCALL FIX ; FIX ANTAL
40 00446'035515 LDA 3 U.S21,3
41 00447'007400 JSR@ +0,3
42 00450'101122 MOVZL 0,0,SZC ; ER ANTAL POSITIV ?
43 00451'000417 JMP FLM01 ; NEJ
44 00452'031467 LDA 2,U.STK,3
45 00453'031005 LDA 2,+5,2 ; AC2=DIM(A)
46 00454'021472 LDA 0,U.S02,3 ; AC0=MAX
47 00455'123000 ADD 1,0 ; AC0=ANTAL+MAX
48 00456'112423 SUBZ 0,2,SNC ; AC2=DIM(A)-ANTAL-MAX ER AC2>=0 ?
49 00457'000671 JMP ER31 ; NEJ
50 00460'152120 ADCZL 2,2 ; AC2=-2
51 00461'051473 STA 2,U.S03,3 ; GEM -2 I US03
52 00462'125120 MOVZL 1,1 ; ANTAL=ANTAL*2
53 00463'045477 STA 1,U.S07,3 ; GEM ANTAL*2 I US07
54 00464'021472 LDA 0,U.S02,3 ; AC0=MAX
55 00465'004703 JSR BEADR ; AC1=ADR(A(MAX))
56 00466'045474 STA 1,U.S04,3 ; GEM AC1 I US04
57 00467'000422 JMP FLM03 ; KLAR TIL LOOP
«ff»
!0011 UCA01
01 00470'021471 FLM01: LDA 0,U.S01,3 ; HVIS ANTAL NEGATIV: AC0=MAX
02 00471'123022 ADDZ 1,0,SZC ; ER ANTAL+MAX>=0 OG
03 00472'101005 MOV 0,0,SNR ; ER ANTAL+MAX<>0 ?
04 00473'000655 JMP ER31 ; NEJ
05 00474'102400 SUB 0,0
06 00475'101520 INCZL 0,0 ; AC0=2
07 00476'041473 STA 0,U.S03,3 ; GEM 2 I US03
08 00477'125120 MOVZL 1,1 ; AC1=ANTAL*-2
09 00500'045477 STA 1,U.S07,3 ; GEM ANTAL*-2 I US07
10 00501'021471 LDA 0,U.S01,3 ; AC0=INDEX
11 00502'004666 JSR BEADR ; AC1=ADR(A(INDEX))
12 00503'045474 STA 1,U.S04,3 ; GEM AC1 I US04
13 00504'000405 JMP FLM03 ; KLAR TIL LOOP
14 00505'021474 FLM02: LDA 0,U.S04,3 ; US04=US04+US03 DVS ADRESSEN BLIVER
15 00506'025473 LDA 1,U.S03,3 ; JUSTERET PASSENDE +/-2 ALT EFTER OM
16 00507'107000 ADD 0,1 ; LØKKEN KØRER FORLÆNS EL. BAGLÆNS
17 00510'045474 STA 1,U.S04,3
18 00511'030040 FLM03: LDA 2,CUR
19 00512'102520 SUBZL 0,0
20 00513'007102 A.GDOUBLE ; HENT A(ADR-US04)=X
21 00514'031474 LDA 2,U.S04,3 ; BEREGN DEPOSIT ADRESSE :
22 00515'035477 LDA 3,U.S07,3 ; LAD D.ADR=FLM04=US04+US07
23 00516'157000 ADD 2,3
24 00517'054404 STA 3,FLM04
25 00520'030040 LDA 2,CUR
26 00521'007106 A.PDOUBLE ; GEM X I A(ADR.US04+US07)
27 00522'000001 1
28 00523'000000 FLM04: 0
29 00524'015470 DSZ U.S00,3 ; TÆL LØKKETÆLLER(=ANT) EN NED. ANT=0?
30 00525'000760 JMP FLM02 ; NEJ FLRTSÆT
31 00526'002242 RET1 ; JA SLUT
32
33 ; HELE LOOPRUTINEN KAN SES SOM FLG:
34 ; REPEAT
35 ; LET A(ADR.US04+US07)=A(ADR.US04)
36 ; LET US04=US04+US03 ; US00=US00-1
37 ; UNTIL US00=0
38
«ff»
!0012 UCA01
01 00527'000003 FIX00: 3
02 00530'100000 REAL+REFERENCE
03 00531'100000 REAL+REFERENCE
04 00532'100000 REAL+REFERENCE
05 00533'102520 SUBZL 0,0 ; AC0=1
06 00534'027000 LDA @ 1,+0,2 ; AC1=A-ADRESSE
07 00535'030040 LDA 2,CUR ; AC2=CUR
08 00536'007102 A.GDOUBLE ; HENT A
09 00537'041470 STA 0,U.S00,3 ; GEM ORD 1 AF A
10 00540'102460 SUBC 0,0 ; AC0=0
11 BCALL FLOAT ; FLOAT ORD2 AF A
12 00541'035515 LDA 3 U.S21,3
13 00542'007401 JSR@ +1,3
14 00543'030040 LDA 2,CUR ; AC2=CUR
15 00544'035467 LDA 3,U.STK,3 ; AC3=F(F(USER)+U.STK)
16 00545'037402 LDA @ 3,+2,3 ; AC3=C-ADRESSE
17 00546'054403 STA 3,FIX01 ; GEM C-ADRESSE
18 00547'007106 A.PDOUBLE ; GEM FLOAT AF ORD2 AF A I B
19 00550'000001 1
20 00551'000000 FIX01: 0
21 00552'025470 LDA 1,U.S00,3 ; HENT ORD1 AF A
22 00553'102460 SUBC 0,0 ; AC0=0
23 BCALL FLOAT ; FLOAT ORD1 AF A
24 00554'035515 LDA 3 U.S21,3
25 00555'007401 JSR@ +1,3
26 00556'030040 LDA 2,CUR ; AC2=CUR
27 00557'035467 LDA 3,U.STK,3
28 00560'037401 LDA @ 3,+1,3 ; AC3=B-ADRESSE
29 00561'054403 STA 3,FIX02 ; GEM B-ADRESSE
30 00562'007106 A.PDOUBLE ; GEM FLOAT AF ORD2 AF A I C
31 00563'000001 1
32 00564'000000 FIX02: 0
33 00565'002242 RET1 ; END FIX
«ff»
!0013 UCA01
01 00566'000003 FLO00: 3
02 00567'000000 REAL
03 00570'000000 REAL
04 00571'100000 REAL+REFERENCE
05 00572'031000 LDA 2,+0,2 ; AC1=A-ADRESSE
06 00573'006240 EXECUTE ; EXEC FLO02
07 00574'000615' FLO02
08 00575'002241 RET0 ; HVIS ERROR
09 00576'045470 STA 1,U.S00,3 ; GEM DEL 1 AF C
10 00577'031467 LDA 2,U.STK,3
11 00600'031001 LDA 2,+1,2 ; AC1=B-ADRESSE
12 00601'006240 EXECUTE
13 00602'000615' FLO02
14 00603'002241 RET0
15 00604'021470 LDA 0,U.S00,3 ; HENT DEL 1 AF C
16 00605'031467 LDA 2,U.STK,3
17 00606'033002 LDA @ 2,+2,2 ; AC2=C-ADRESSE
18 00607'050404 STA 2,FLO01 ; GEM C-ADRESSE
19 00610'030040 LDA 2,CUR
20 00611'007106 A.PDOUBLE ; AC0,AC1-->C
21 00612'000001 1
22 00613'000000 FLO01: 0
23 00614'002242 RET1
24 00615'021000 FLO02: LDA 0,+0,2
25 00616'025001 LDA 1,+1,2 ; ** CB RET **
26 BCALL FIX ; LAV OM TIL HELTAL
27 00617'035515 LDA 3 U.S21,3
28 00620'007400 JSR@ +0,3
29 00621'101005 MOV 0,0,SNR ; 0=<A/B=<32K ???
30 00622'002242 RET1 ; JA: RETURN
31 00623'006244 ERROR ; NEJ: RETURN MED ERROR 90
32 00624'000132 90.
«ff»
!0014 UCA01
01 ; FILNAVN CA22 PÅ DOMUS EXPL6 $FD0
02 ; MÅSKE FEJL: ERR90 ER DOBBELTDEF, SÅ FILEN SKAL RETTES FØR OVERS
03 ; ERR90 SLETTET, FILEN HEDDER NU CA23
04 ; OG LIGGER PÅ DOMUS EXPL 2 $FD1:3 SAMT HEREFTER PÅ EXPL6 $FD0
05 ;
06 ; FILPROD: CA21 RETTET FOR 12 EGL FEJL + NOGET PYNT
07 ; + CA15 FIX OG FLOAT (ERR90-PROBLEM)
08 ; NB BEGGE FILER FRA DOMUS EXPL2 I-DAGSYSTEM 14.9.80
09 ; LAVET AF PL EFTER CB-DIREKT 14.9.80 KL CA 25
10
11 ; CB RET 27.8.81 KL 13.30
12 PRDE2
13
14 PP10: ; PROCESSDESCRIPTOR:
15 00625'000000 0 ; NEXT
16 00626'000000 0 ; PREV
17 00627'000000 0 ; CHAIN
18 00630'000025 PP15-PP10 ; SIZE
19 00631'052503 .TXT .UCALL. ; NAME
20 040514
21 046000
22 00634'000634' .+0 ; FIRST EVENT
23 00635'000634' .-1 ; LAST EVENT
24 00636'000000 0 ; BUFFE
25 00637'000000' PP00 ; PROGRAM
26 00640'000000 0 ; STATE
27 00641'000000 0 ; TIMER
28 00642'000001 1 ; PRIORITY
29 00643'000007' PP05 ; BREAK
30 00644'000625' PP10 ; AC0
31 00645'000000 0 ; AC1
32 00646'000625' PP10 ; AC2
33 00647'000000 0 ; AC3
34 00650'000016" PP05*2 ; PSW
35 00651'000000 0 ; SAVE
36
37 PP15: ;
38 .END PP10
0000 SOURCE LINES IN ERROR
«ff»
0015 UCA01
ADRES 000154' 3/26 3/33 3/44 3/54
BADR 000352' 7/26 8/16 9/11
BADRE 000127' 3/11 3/39 3/42
BCALL 000000 MC 3/15 4/09 5/03 6/11 7/12 8/04 10/10
10/20 10/39 12/11 12/23 13/26
BEADR 000370' 7/29 7/33 7/40 7/44 9/31 10/55 11/11
BUF00 000062' 2/10 3/01
BUFAD 000143' 3/24 3/52
BUFTB 000144' 3/52 3/53
ER31 000350' 7/18 8/13 10/15 10/27 10/32 10/49 11/04
ERR90 000213' 3/22 5/09 5/15 6/07
ERR91 000215' 5/18 6/15
FADD 177775 3/16 3/18 4/10 4/12 5/04 5/06 6/12
6/14 7/13 7/15 8/05 8/07 10/11 10/13
10/21 10/23 10/40 10/42 12/12 12/14 12/24
12/26 13/27 13/29
FDIV 177772 3/16 3/18 4/10 4/12 5/04 5/06 6/12
6/14 7/13 7/15 8/05 8/07 10/11 10/13
10/21 10/23 10/40 10/42 12/12 12/14 12/24
12/26 13/27 13/29
FIN00 000253' 2/22 7/01
FIN01 000316' 7/37 7/50 7/52
FIN02 000334' 7/42 7/51
FIN03 000336' 7/20 7/36 8/01
FIN04 000337' 7/31 7/46 8/02
FIN05 000346' 7/09 8/10
FIX 177777 3/16 3/18 4/10 5/04 5/06 6/12 6/14
7/13 7/15 8/05 10/11 10/13 10/21 10/23
10/40 10/42 12/12 12/24 13/27 13/29
FIX00 000527' 2/46 12/01
FIX01 000551' 12/17 12/20
FIX02 000564' 12/29 12/32
FLM00 000402' 2/28 10/01
FLM01 000470' 10/43 11/01
FLM02 000505' 11/14 11/30
FLM03 000511' 10/57 11/13 11/18
FLM04 000523' 11/24 11/28
FLO00 000566' 2/52 13/01
FLO01 000613' 13/18 13/22
FLO02 000615' 13/07 13/13 13/24
FLOAT 177776 3/16 3/18 4/10 4/12 5/04 5/06 6/12
6/14 7/13 7/15 8/05 8/07 10/11 10/13
10/21 10/23 10/40 10/42 12/12 12/14 12/24
12/26 13/27 13/29
FMPY 177773 3/16 3/18 4/10 4/12 5/04 5/06 6/12
6/14 7/13 7/15 8/05 8/07 10/11 10/13
10/21 10/23 10/40 10/42 12/12 12/14 12/24
12/26 13/27 13/29
FSUB 177774 3/16 3/18 4/10 4/12 5/04 5/06 6/12
6/14 7/13 7/15 8/05 8/07 10/11 10/13
10/21 10/23 10/40 10/42 12/12 12/14 12/24
12/26 13/27 13/29
GME00 000155' 2/16 4/01
GME01 000175' 4/14 4/18
GSM00 000177' 4/06 5/01 6/19
IDIV 177767 3/16 3/18 4/10 4/12 5/04 5/06 6/12
6/14 7/13 7/15 8/05 8/07 10/11 10/13
10/21 10/23 10/40 10/42 12/12 12/14 12/24
12/26 13/27 13/29
IMPY 177771 3/16 3/18 4/10 4/12 5/04 5/06 6/12
«ff»
0016 UCA01
6/14 7/13 7/15 8/05 8/07 10/11 10/13
10/21 10/23 10/40 10/42 12/12 12/14 12/24
12/26 13/27 13/29
IMPYA 177770 3/16 3/18 4/10 4/12 5/04 5/06 6/12
6/14 7/13 7/15 8/05 8/07 10/11 10/13
10/21 10/23 10/40 10/42 12/12 12/14 12/24
12/26 13/27 13/29
IOERR 177766 3/16 3/18 4/10 4/12 5/04 5/06 6/12
6/14 7/13 7/15 8/05 8/07 10/11 10/13
10/21 10/23 10/40 10/42 12/12 12/14 12/24
12/26 13/27 13/29
KSP00 000217' 2/34 5/20
KSP01 000223' 5/22 5/24 6/04
KSP02 000252' 6/05 6/24
PART2 000131' 3/32 3/41
PP00 000000' 1/21 1/25 14/25
PP05 000007' 1/23 1/30 1/32 14/29 14/34
PP10 000625' 1/25 14/14 14/18 14/30 14/32 14/38
PP15 000652' 14/18 14/37
PRDE1 000211 MC 1/13
PRDE2 000276 MC 14/12
RESCH 000142' 3/05 3/09 3/48 3/51 5/13
SME00 000224' 2/40 6/01
TESTB 000353' 7/30 7/34 7/41 7/45 9/05
UD 000137' 3/40 3/47
«ff»
«eof»