Rivista: MSX Magazine – Anno: 1985 – Numero 1 – Trascrizione: Francesco Fiorentini
Dopo il gioco lampioni e l’applicazione Generatore di musica si esaurisco gli interessanti listati ripresi dalla rivista spagnola MSX Magazine numero 1.
Vi ricordate il listato di Wire Frame Graphics Plotter in Locomotive Basic per Amstrad CPC pubblicato su queste pagine un paio di anni fa? Questo listato utilizza un algoritmo simile per disegnare un oggeto tridimensionale. Niente di assolutamente eclatante, ma e’ carino vedere come il nostro MSX e’ in grado di disegnare, con poche istruzioni, oggetti tridimensionali complessi.
Il listato e’ stato estratto dalla rivista spagnola MSX Magazine – Anno: 1985 – Numero 1, edizioni PUBLINFORMATICA. Link diretto alla rivista su archive.org: https://archive.org/details/msxmagazine06_201412/msx_magazine-01

Titolo: Coppa
Piattaforma: MSX1
Linguaggio: Basic
Versione originale: 1985
Pubblicazione: MSX Magazine
Anno: 1985
Trascrizione: Francesco Fiorentini
Anno: 2026
Download: N/A
Note: N/A

Istruzioni…
N/A.
Qui di seguito trovate il codice da copiare sul vostro MSX oppure su un emulatore, noi suggeriamo BlueMSX.
Vi suggeriamo di creare un dischetto con MSX Disk-Manager (http://www.lexlechz.at) e di copiare il listato all’interno di esso per poi caricare il file nell’emulatore. Se avete problemi, contattateci!
Attenzione – Ci siamo resi conto che nel listato i caratteri ‘>’ e ‘<‘ potrebbero venir sostituiti dai rispettivi encoding html ‘>’ e ‘<’. Nel caso, sostituite questi valori nel listato prima di copiarlo sull’emulatore.
Listato: Coppa – MSX – Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 10 SCREEN 2: COLOR 4,15,5
20 CLS
30 DIM X(9)
40 DIM Y(9)
50 DIM Z(33,9,2)
60 FOR Q=1 TO 9
70 READ X(Q),Y(Q)
80 NEXT Q
90 FOR D=1 TO 32
100 DRAW "bm125,170"
110 S=SIN(D*.2)
120 C=COS(D*.2)
130 FOR A=1 TO 9
140 Z(D,A,1)=S*X(A)
150 Z(D,A,2)=C*X(A)
160 LINE -(Z(D,A,1)+125,Y(A)+170),1
170 NEXT A:PSET(125,170),15:NEXT D
180 FOR B=.5 TO 1.8 STEP .3
190 CLS
200 PSET(125,170),15
210 N=COS(B): J=SIN(B)
220 FOR D=1 TO 32
230 PSET(125,170),15
240 FOR A=1 TO 9
250 PX=Z(D,A,1)
260 PY=Y(A)*N+Z(D,A,2)*J
270 IF Y(A)<-79 THEN LINE -(PX+125,PY+170),9 ELSE LINE -(PX+125,PY+170),4
280 NEXT A:NEXT D
290 NEXT B
300 DATA 40,0,4,6,4,-30,10,-45,4,-55,4,-70,30,-80,35,-106,55,-150
310 RUN
