1 REM *************************** 2 REM * BINUT.BAC * 3 REM * VER 1.0 / 1982-09-08 * 4 REM * Gjort o. ins{nt av 2415 * 5 REM * Stig Rosenlund * 6 REM * V{stmannagatan 93 * 7 REM * 113 43 Stockholm * 8 REM * Tel. 08/331736 * 9 REM *************************** 10 F%=PEEK(34443%)+256%*PEEK(34444%) : IF PEEK(32768%)<>42% OR PEEK(35656%)<>177% OR PEEK(36626%)<>201% STOP 20 N=PEEK(36523%)+256%*PEEK(36524%) : A0=PEEK(36538%)+256*PEEK(36539%) 30 ; "Inmatning eller Utmatning av Ri p} bin{rflyttalsform (I/U)? " : GET F$ 40 ; "i"; : INPUT I : I=FIX(I) : A=A0+I*(N+3) : B=A-N-2 : DIM A$=8*(N+1) : IF I<8 OR I>F% THEN ; "Fel i!" : GOTO 40 50 IF F$="I" OR F$="i" THEN 110 60 IF F$<>"U" AND F$<>"u" THEN 30 70 A$="" : FOR I=B TO A-3 : C=PEEK(I) : B$="" : FOR K=0 TO 7 : D=C/2-INT(C/2) : B$=RIGHT$(NUM$(2*D),2)+B$ : C=INT(C/2) 80 NEXT K : A$=B$+A$ : NEXT I 90 A$="0."+A$ : C$="*2^"+NUM$((256*PEEK(A-1)+PEEK(A-2))*(1-(2% AND PEEK(A)))) : IF (PEEK(A) AND 1%)=1% THEN A$="-"+A$ 100 ; A$+C$ : GOTO 40 110 ; "Tecken (+ eller -)"; : INPUT G$ : IF G$="-" THEN POKE A,1 ELSE POKE A,0 120 ; "Mantissans absolutbelopp (0.1___ avslu-tande nollor anges ej)" : INPUT A$ : IF LEFT$(A$,3)<>"0.1" THEN 120 130 A$=RIGHT$(A$,3)+STRING$(8*N-LEN(A$)+2,48) : FOR I=A-3 TO B STEP -1 : B$=MID$(A$,1+8*(A-3-I),8) : C=1 : D=0 140 FOR K=0 TO 7 : D=C*VAL(MID$(B$,8-K,1))+D : C=2*C : NEXT K : POKE I,D : NEXT I : ; "Exponenten decimalt"; : INPUT F 150 IF F<0 THEN POKE A,2+PEEK(A) 160 POKE A-2,ABS(F),SWAP%(ABS(F)) : GOTO 40