10 REM ++++++++++++++++++++++++++++++++
20 REM + Program....      DIMFIX.SUB
30 REM + Version 1.0
40 REM + (c) Copyright S-] ABRAHAMSSON 
50 REM + Minne 16 Kbytes
60 REM + Ins{nt av 105  S-] A.
70 REM + F\R ANV[NDNING INOM ABC-KLUBBEN
80 REM ++++++++++++++++++++++++++++++++
90 ; CHR$(12%);
100 ; ' *********************************'
110 ; : ; '             D I M F I X' : ; 
130 ; ' *********************************' : ; 
140 ; ' OMDIMENSIONERING AV A$( ) MELLAN'
150 ; ' A$(20%)=10% OCH A$(10%)=19%' : ; 
160 ; ' PROGRAMMET M]STE I B\RJAN HA'
170 ; ' SATSEN  DIM A$(20%)=10%'
180 ; ' DVS DET ST\RSTA ANTALET ELEMENT'
190 ; ' I STR[NGVEKTORN' : ; 
200 ; ' (20+1)*10 M]STE VARA >= (10+1)*19' : ; 
210 ; ' ********************************'
220 GET \$
230 K7%=20% : REM ANTAL VARIABLER
240 K4%=10% : REM VARABELL[NGD
250 C%=33% : REM ASC-V[RDE I VARIABELN
260 DIM A$(K7%)=K4%
270 ; 'STARTV[RDEN' : ; 'A$() L[NGD','VARIABEL'
280 FOR I%=0% TO K7%
290 A$(I%)=STRING$(K4%,C%)
300 C%=C%+1%
310 ; I%'  'LEN(A$(I%)),A$(I%)
320 NEXT I%
330 ; 'ANTAL VARIABLER (10/20) '; : INPUT K7%
340 IF K7%<>10% AND K7%<>20% THEN 330
350 IF K7%=10% THEN K4%=19% ELSE K4%=10%
360 GOSUB 430
370 ; 'A$() L[NGD','VARIABEL'
380 FOR I%=0% TO K7%
390 ; I%'  'LEN(A$(I%)),A$(I%)
400 NEXT I%
410 GOTO 330
420 REM K1%=VARIABELROTEN
430 K1%=PEEK(65065%)+PEEK(65066%)*256%
440 REM LETA R[TT P] VARIABELN A$()
450 IF PEEK(K1%)=246% AND PEEK(K1%+1%)=65% THEN 480
460 K1%=PEEK(K1%+2%)+PEEK(K1%+3%)*256%
470 IF K1%=0% THEN END ELSE 450
480 POKE K1%+6%,K7%
490 K1%=PEEK(K1%+4%)+PEEK(K1%+5%)*256%
500 K6%=PEEK(K1%+2%)+PEEK(K1%+3%)*256%
510 FOR K5%=0% TO K7%
520 POKE K1%+6%*K5%,K4%,SWAP%(K4%),K6%+K4%*K5%,SWAP%(K6%+K4%*K5%),K4%,SWAP%(K4%)
530 NEXT K5%
540 RETURN 
