8 ! SEKVUTIN.800 9 NO EXTEND : INTEGER 10 IF PEEK(32768)<>42 OR PEEK(35656)<>177 OR PEEK(36626)<>201 GOTO 65000 20 N.=PEEK(36523)+256*PEEK(36524) : A0.=PEEK(36538)+256.*PEEK(36539) 30 F=PEEK(34443)+256*PEEK(34444) : ; "Inmatning eller Utmatning av Ri (I/U)? " : GET F$ : IF F$="U" OR F$="u" 220 40 IF F$<>"I" AND F$<>"i" 30 50 REM Inmatning 60 ; "Ge Ri p} decimal form." 70 ; "i"; : INPUT I : GOSUB 80 : GOTO 70 80 IF I<8 OR I>F ; "Fel i!" : RETURN 90 ; "Ri?"; : C=0 : GET F$ : G=-(F$="-") : IF F$="+" OR G=1 ; F$; : GET F$ 100 ; F$; : IF F$="." C=1 : F$="0" 110 S=CALL(35365,3)+CALL(33619,10)+CALL(35362)+CALL(33619,VAL(F$)) : B=0 : E=0 120 GET F$ : A$="" : S=ASCII(F$) : IF S<46 GOTO 180 130 ; F$; : IF S=69 OR S=101 GOTO 170 140 IF S=46 B=0 : C=1 : GOTO 120 150 S=CALL(35365,4)+CALL(33619,VAL(F$))+CALL(35362)+CALL(35131)+CALL(35355,3)+CALL(33669)+CALL(35131) 160 S=CALL(35355,4)+CALL(33032) : B=B+1 : GOTO 120 170 GET F$ : IF ASCII(F$)>42 ; F$; : A$=A$+F$ : GOTO 170 ELSE E=VAL(A$) 180 E=E-C*B : S=CALL(35365,4)+CALL(35345,3)+CALL(36544,ABS(E)) 190 S=CALL(35365,I)+CALL(35355,2)+CALL(35345,4) : IF E<0 S=CALL(34017) ELSE S=CALL(33669) 200 ; : IF G=0 RETURN ELSE S=CALL(32813) : RETURN 210 REM Utmatning 220 ; "i"; : INPUT I : GOSUB 230 : GOTO 220 230 A.=A0.+I*(N.+3) : IF PEEK(A.-3)<128 ; " 0" : RETURN 240 E=INT(.30103*(1.-(2. AND PEEK(A.)))*(PEEK(A.-2)+256.*PEEK(A.-1))) : S=CALL(35362)+CALL(33619,10) 250 IF E<5 AND E>-3 E=0 260 S=CALL(35131)+CALL(35365,4)+CALL(36544,ABS(E)) 270 S=CALL(35131)+CALL(35365,3)+CALL(35355,I) : IF E>0 S=CALL(34017) ELSE S=CALL(33669) 280 S=CALL(35131)+CALL(35362)+CALL(32944) : A.=A0.+2*(N.+3) 290 C.=256.*PEEK(A.-1)+PEEK(A.-2)-12 : IF (PEEK(A.) AND 1)=1 ; "-"; ELSE ; " "; 300 F$=NUM$(FIX((-(C.>0.)*FIX(2.^C.)-(C.<1.)*2.^C.)*(16.*PEEK(A.-3.)+PEEK(A.-4)/16.+(PEEK(A.-5.)/16.)/256.)+.5)) : ; F$+"."; 310 S=CALL(33540)+CALL(35365,4)+CALL(33619,10000)+CALL(35362) 320 FOR B=0 TO INT((2.4*N.-LEN(F$))/4) : S=CALL(35131)+CALL(35355,4)+CALL(33669) AND 0 330 IF (2 AND PEEK(A.))=0 S=(64*PEEK(A.-3)+PEEK(A.-4)/4)/2^(14-PEEK(A.-2)) 340 F$="000"+NUM$(S) 350 ; RIGHT$(F$,LEN(F$)-3); : S=CALL(35131)+CALL(33540) : NEXT B : ; "E"; : ; NUM$(E) : RETURN 360 END 65000 ; CHR$(12) 'Du m}ste k|ra PROG1 f|rst' 65010 ; 'f|r att mata in assembler-rutinerna.'