Lampioni – MSX – Basic

Rivista: MSX Magazine – Anno: 1985 – Numero 1 – Trascrizione: Francesco Fiorentini

Era l’ora che l’MSX facesse il suo ingresso nella nostra rubrica RetroLiPS. Quello che vi proponiamo e’ un breve listato ripreso da una rivista spagnola dedicata all’MSX.

Peccato che ai giorni nostri non ci siano più i lampioni nelle strade da accendere, anche se servirebbero a poco, visto che si accendono da soli. Ma se qualche volta senti la nostalgia di quei tempi, siediti con il tuo MSX ed esegui questo programma.

Prima di tutto, però, è consigliabile bere una tazza di tiglio, visto che per accendere i 9 lampioni che appaiono bisogna trovare la combinazione corretta e accenderli uno alla volta. Dopo 500 tentativi può diventare frustrante, quindi ci vuole pazienza: solo con la pratica riuscirai ad accenderli tutti. Ciononostante, e per dimostrarvi che non siamo così cattivi, vi daremo qualche indizio.

Per alcuni potrebbe non essere un’idea brillante, ma scommettiamo che più di uno se la vedrà brutta e rimpiangerà di averci provato. In ogni caso, bisogna procedere nel seguente modo: per accendere il quarto lampione, devono essere accesi i tre precedenti. Per esempio, il secondo lampione si accende solo dopo che il primo è già acceso, altrimenti non se ne fa nulla. Con queste due idee in mente, bisogna procedere per accendere tutti e 9. A ogni lampione corrisponde un numero da 1 a 9.

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: Lampioni (Farolas)
Piattaforma: MSX1
Linguaggio: Basic
Versione originale: 1985
Pubblicazione: MSX Magazine
Anno: 1985
Trascrizione: Francesco Fiorentini
Anno: 2026
Download: N/A
Note: Il testo all’interno del gioco e’ stato tradotto in Italiano.

Istruzioni
Accendete tutti i lampioni indovinando la giusta sequenza. Utilizzate i tasti da 1 a 9 per accendere la luce corrispondente.
Buona fortuna e buon divertimento.

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 ‘&gt’ e ‘&lt’. Nel caso, sostituite questi valori nel listato prima di copiarlo sull’emulatore.

Listato: Lampioni – 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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
10 REM FAROLAS --> LAMPIONI
20 GOSUB 730
30 DIM L(9):CC=0
40 FOR I=1 TO 9
50 L(I)=0
60 NEXT I
70 OPEN"GRP:"FOR OUTPUT AS #1
80 SCREEN 2,0,0
90 COLOR 4,1,14: CLS
100 READ X1,Y1
110 FOR Z2=1 TO 31
120 READ X2,Y2
130 LINE (X1,Y1)-(X2,Y2)
140 X1=X2:Y1=Y2
150 NEXT Z2
160 DATA 0,50,20,50,20,37,45,37,45,70,55,70,60,60,65,60,65,50,70,50,70,60,80,60,80,45,90,30,115,30,125,45,125,50,130,50,140,40,155,55,155,65,175,65,175,45,195,45
170 DATA 195,55,205,55,215,25,220,40,240,40,245,50,245,65,255,65.
180 PAINT(0,0),4,4
190 FOR I=28 TO 228 STEP 25
200 CIRCLE(I,175),5
210 LINE(I-2,115)-(I-4,171)
220 LINE(I+2,115)-(I+4,171)
230 LINE(I-4,179)-(I-8,188)
240 LINE(I+4,179)-(I+8,188)
250 LINE(I-4,182)-(I+4,182)
260 LINE(I-6,185)-(I+6,185)
270 LINE(I-8,188)-(I+8,188)
280 LINE(I-7,103)-(I+7,103)
290 LINE(I-5,96)-(I+5,96)
300 LINE(I-5,96)-(I-7,103)
310 LINE(I+5,96)-(I+7,103)
320 PAINT(I,100),4,4
330 CIRCLE(I,108),7
340 CIRCLE(I,108),4,10
350 NEXT I
360 CIRCLE(190,20),11,10,4.1,1.65
370 CIRCLE(186,19),10,10,4.3,1.4
380 PAINT(198,20),10,10
390 FOR ZZ=0 TO 25
400 READ YY
410 PSET(ZZ*10,YY),10
420 NEXT ZZ
430 DATA 10,0,18,15,2,10,40,28,1,17,20,1,5,26,35,8,48,14,6,40,37,0,20,34,5,39
440 COLOR 15
450 FOR I=1 TO 9
460 PSET(I*25-7,172),1
470 PRINT#1,I
480 NEXT I
490 DRAW"bm90,00":PRINT#1,"LAMPIONI"
500 A$=INKEY$:IF A$="" THEN 500
510 IF ASC(A$)<49 OR ASC(A$)>57 THEN 500
520 CC=CC+1:LINE(83,60)-(154,66),1,BF:DRAW"bm83,60":PRINT#1,CC;"int."
530 N=VAL(A$)
540 IF N=1 THEN 600
550 IF L(N-1)=0 THEN 500
560 IF N=2 THEN 600
570 FOR ZZ=1 TO N-2
580 IF L(ZZ)=1 THEN 500
590 NEXT ZZ
600 IF L(N)=0 THEN PAINT(N*25+3,108),10,10:GOTO 630
610 CIRCLE(N*25+3,108),3,1
620 PAINT(N*25+3,108),1,1
630 L(N)=1-L(N)
640 IF L(1)+L(2)+L(3)+L(4)+L(5)+L(6)+L(7)+L(8)+L(9)=9 THEN 660
650 GOTO 500
660 DRAW"BM70,71":PRINT#1,"Hai acceso tutto!!"
670 IF CC=341 THEN DRAW "bm70,82":PRINT#1,"Hai stabilito un record":GOTO 700
680 IF CC>341 AND CC<360 THEN DRAW "bm70,82":PRINT#1,"Molto bene!!":GOTO 700
690 DRAW "bm70,82":PRINT#1,"Stai migliorando"
700 DRAW "bm65,140":PRINT#1,"Un'altra partita (s/n)?"
710 A$=INKEY$:IF A$="" THEN 710
720 IF A$="n" THEN END ELSE IF A$="s" THEN RUN ELSE 710
730 REM INSTRUCCIONES
740 CLS:PRINT"          ISTRUZIONI":PRINT"          ---"
750 PRINT" Cerca di accendere tutti i lampioni uno alla volta nell'ordine corretto.":PRINT
760 PRINT" Daremo un indizio dato che non e' cosi' facile come sembra.":PRINT
770 PRINT" Per accendere il secondo lampione, il primo deve essere gia' acceso."
780 LOCATE0,20:PRINT"    Premi un tasto per continuare"
790 A$=INKEY$:IF A$="" THEN790
800 RETURN

Share

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

This site uses Akismet to reduce spam. Learn how your comment data is processed.