10 ! KLOSS3D.BAC
20 ! Program f|r ABC806 + f{rgsk{rm + 512Kb
30 ! 3D Vector grafik av Magnus <8042> 1991
40 EXTEND : FLOAT
50 ; CHR$(12%)
60 DIM X(6,4),Y(6,4),X3(8),Y3(8),Z3(8)
70 DIM X2(8),Y2(8)
80 FGCTL BLK+RED+GRN+YEL+BLU+MAG+CYA
90 FGPOINT 0,0,0 : FGFILL 255,239
100 DEF FNZ2(X,Z,V) LOCAL F,Nz
110 F=(2*PI/360)
120 Nz=SIN(F*V)*X+COS(F*V)*Z
130 RETURN Nz
140 FNEND
150 DEF FND2(X,Z,V) LOCAL F,Nx
160 F=(2*PI/360)
170 Nx=COS(F*V)*X-SIN(F*V)*Z
180 RETURN Nx
190 FNEND
200 DEF FNY2(Y,Z,V) LOCAL F,Ny
210 F=(2*PI/360)
220 Ny=COS(F*V)*Y-SIN(F*V)*Z
230 RETURN Ny
240 FNEND
250 FOR B=0 TO 15
260 FGPICTURE B,B,16
270 V=B*(360/16)
280 Yv=B*(360/16)
290 GOSUB 560
300 RESTORE 540 : FOR W=1 TO 8
310 READ X3(W),Y3(W),Z3(W) : NEXT W
320 FOR W=1 TO 8
330 X2(W)=FND2(X3(W),Z3(W),V)
340 Nz=FNZ2(X3(W),Z3(W),V)
350 Y2(W)=FNY2(Y3(W),Nz,Yv)
360 X2(W)=X2(W)+128 : Y2(W)=Y2(W)+120
370 NEXT W
380 ! P1=1 : P2=2 : P3=3 : P4=4 : GOSUB 700
390 IF X2(1)>X2(7) AND Y2(2)>Y2(1) THEN P1=1 : P2=2 : P3=8 : P4=7 : F=5 : GOSUB 730 : ! sida 5
400 IF X2(5)