Rivista: PC Personal Computer Club – Anno: 1983, Novembre – Numero 6 – Trascrizione: Francesco Fiorentini
Continuano i listati ripresi dalla rivista PC Personal Computer Club, questa volta si tratta del numero 7: https://www.retromagazine.net/pc-personal-computer-club-anno-i-numero-7
Fa ritorno nella nostra rubrica RetroLiPS il Radio Shack TRS-80 prodotto dall’azienda texana Tandy Corporation e venduto attraverso la catena di negozi Radio Shack dal 1977 fino ai primi anni ’80.
Questo gioco simula una corsa di cavalli in cui il giocatore deve scommettere sul cavallo che pensa arriverà per primo al traguardo. Prima dell’inizio della gara vengono mostrati diversi cavalli, ognuno con una quota diversa: quote più basse indicano cavalli considerati più forti, mentre quote più alte rappresentano cavalli meno favoriti ma con vincite potenzialmente maggiori. Il giocatore sceglie su quale cavallo puntare e decide quanto scommettere, cercando di bilanciare rischio e possibile guadagno.
Una volta iniziata la corsa, ogni cavallo avanza con una velocità determinata casualmente, ma influenzata dalla sua quota: i cavalli favoriti hanno in media prestazioni migliori, mentre quelli con quote alte possono sorprendere grazie alla casualità. Durante la simulazione i cavalli avanzano passo dopo passo fino al traguardo. Se il cavallo scelto dal giocatore arriva primo, la scommessa viene vinta e la vincita è calcolata in base alla quota; altrimenti la puntata viene persa. Il gioco combina quindi strategia, probabilità e fortuna.
Attenzione – rispetto alla versione originale il programma è stato leggermente modificato per correggere alcuni errori nell’assegnazione delle quote.

Titolo: Horse Race
Piattaforma: TRS 80 Model I
Linguaggio: Basic
Versione originale: N/A
Pubblicazione: PC Personal Computer Club
Anno: 1983, Novembre
Trascrizione: Francesco Fiorentini
Anno: 2026
Download: N/A
Note: Il programma è stato modificato per correggere alcuni nell’assegnazione delle quote.

Istruzioni
Puntate sul cavallo vincente e lasciate che la fortuna faccia il suo lavoro per voi!
Va da se’ che il mio cavallo non e’ risultato il vincente…
Qui di seguito trovate il codice da copiare sul vostro TRS 80 oppure su un emulatore, noi suggeriamo trs80gp.
Istruzioni per copiare il file nell’emulatore:
1 – avviate l’emulatore trs80gp
2 – assicuratevi di aver selezionato MODEL I in File – Change Model
3 – assicuratevi di avere il disco TRDOS23 per avviare il DOS del TRS 80
4 – una volta avviato il DOS scrivete BASIC per lanciare l’interprete Basic
5 – battete invio alla richieste del numero dei file e della memoria (non ci servono per il momento)
6 – incollate il codice di cui sotto
Informazioni aggiuntive sul TRDOS23:
DIR :0 – mostra la directory del disco
KILL <nomefile> – elimina un file dal disco
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: Horse Race – TRS 80 – 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 10 CLEAR1000:CLS:PRINTCHR$(23):S$=STRING$(32,42):PRINTS$:PRINT"********** HORSE RACE **********":PRINTS$:PRINT"********************************":PRINTS$:PRINT"************* 1983 *************":PRINTS$
12 FORI=1TO1500:NEXT:CLS:PRINTTAB(30)"HORSE RACE"
15 GOSUB440
16 V=15359:RA=1
17 FORK=1TO5:L(K)=60:Z=INT(50*RND(0))
18 X(K)=350+Z:NEXTK
19 FORU=1TO5:L=INT(5*RND(0)+1):D=X(L):X(L)=X(U):X(U)=D:NEXTU
20 GOSUB340
21 GOSUB500
22 CLS:POKEV+1,32
23 FORK=2TO1022STEP64:POKEV+K,191:POKEV+K+59,191:NEXTK
24 RESTORE:FORK=1TO5:READH(K):NEXTK
25 DATA129,321,513,705,897
100 FORK=1TO5:POKEV+H(K),156:POKEV+H(K)+1,150:NEXTK
105 FORK=1TO3:FORH=1TO5
110 GOSUB210
115 NEXTH,K
160 FORK=2TO1022STEP64:POKEV+K,191:NEXTK
170 FORK=1TO5:R=500*RND(0):IFR<X(K)THENH=K:GOSUB210
180 IFL(K)=0THEN240
190 NEXTK
200 GOTO170
210 POKEV+H(H),32:H(H)=H(H)+1
220 POKEV+H(H),156:POKEV+H(H)+1,150
230 L(H)=L(H)-1:RETURN
240 FORK=1TO5:IFL(K)=0THENQ=K:GOTO260
250 NEXTK
260 FORK=1TO1500:NEXTK:CLS
270 PRINT"IL VINCITORE DELLA CORSA";RA;"E' IL CAVALLO N,";Q
280 RA=RA+1:FORK=1TO1000:NEXT
290 FORK=1TOX:IFW(K)=QTHENC(K)=C(K)+((Z(Q)+1)*G(K))
300 NEXTK
310 Z1=0:FORK=1TOX:IFC(K)>=0THENZ1=Z1+C(K):NEXTKELSENEXTK
315 IF Z1<1THENPRINT"COME SEMPRE AVETE PERSO TUTTO !!!":END
320 GOTO17
340 PRINT"LE VALUTAZIONI SONO :"
350 FORK=1TO5:Z(K)=500-X(K)
360 Z(K)=Z(K)/52
370 Z(K)=(Z(K)*10)-6
380 Z(K)=INT(Z(K)*100+.5)/100
390 NEXTK
410 FORK=1TO5
420 PRINTTAB(10)"CAVALLO N.";K;" "Z(K);"TO 1"
430 NEXTK:RETURN
440 PRINT"QUANTI GIOCATORI PARTECIPANO";:INPUT" (MAX 10)";X
450 IFX<1ORX>10THEN440
460 CLS
470 FORK=1TOX:C(K)=100:NEXTK
480 RANDOM:RETURN
500 FORK=1TOX:PRINT@640,CHR$(31);:PRINT@640,;:C(K)=INT(C(K)+.5):IFC(K)<1THEN530
510 PRINT"GIOCATORE N.";K;"TU HAI ";C(K)
530 IFC(K)<1THENW(K)=2.5:G(K)=0:GOTO590
540 PRINTTAB(11)"CHE CAVALLO";:INPUTW(K)
550 IFW(K)>5ORW(K)<1THEN540
560 PRINTTAB(10);:INPUT"QUANTO PUNTI";G(K)
570 IFG(K)<1ORG(K)>C(K)THEN560
580 G(K)=INT(G(K)+.5)
590 C(K)=C(K)-G(K):NEXTK:RETURN
600 END
