Vous êtes sur la page 1sur 2

Architetture dei Sistemi a Elaborazione a.a.

2014/15
Progetto di Architetture dei Sistemi di Elaborazione
Si realizzi una console di gioco basata su scheda uCdragon ed in grado di permettere a due giocatori
di sfidarsi al gioco Quoridor utilizzando la porta di comunicazione seriale.
Quoridor: un gioco da tavolo astratto pubblicato nel 1997 dalla Gigamic. Ogni giocatore ha in
dotazione una pedina e dieci barriere di lunghezza pari a 2 caselle della scacchiera. Nel gioco da
tavola, il tavoliere un quadrato di legno di 9x9 caselle, con la particolarit che le linee che
dividono e formano le caselle sono scanalate, per cui possibile inserirvi i muri.
Regole: Ogni giocatore parte dal centro della sua linea perimetrale, e l'obiettivo arrivare con la
propria pedina alla linea perimetrale opposta. Vince chi consegue per primo l'obiettivo.
Al proprio turno il giocatore pu scegliere se muovere orizzontalmente o verticalmente la propria
pedina, oppure se inserire un muro. Il muro non pu essere scavalcato ma deve essere aggirato.
Se due pedine si trovano faccia a faccia, colui che deve muovere pu scavalcare l'avversario e
porsi alle sue spalle (se alle spalle dellavversario non posizionata una barriera).
Non possibile "chiudere" un giocatore con l'aiuto dei muri; bisogna sempre lasciargli la
possibilit di arrivare alla meta, pena la sconfitta.
Occorre scegliere una mossa entro 20s, pena la sconfitta.

Fig1: scacchiera reale

Fig2: indicazioni di massima per uso pulsanti e schermo

Avvio del gioco: allavvio la pedina bianca viene assegnata al primo tra i due giocatori a premere il
tasto s4 (funzione disabilitata in seguito). La pressione corrisponde allinvio del carattere b sulla
linea seriale, confermata dallinvio del carattere n da parte della scheda avversaria.
In caso di pressione contemporanea (entrambe le schede ricevono il carattere b) il sistema richiede
una nuova pressione, altrimenti il gioco inizia con il giocatore bianco che muove per primo.
Comandi per giocatore umano (vedi figura):
- S5: selezione pedina (default) o barriera
- S3: UP S7: DOWN S6: LEFT S8: RIGHT permettono di muovere
provvisoriamente la pedina o la barriera (durante la mossa pedina o barriera lampeggiano)
- S2: permette di ruotare la barriera (posizione orizzontale o verticale)
- S9: fissa ed invia la mossa allavversario secondo la seguente convenzione
o In caso di pedina, invia la terna: p+ i + j (vedi matrice pedine)
o In caso di barriera, invia la quaterna: b + i + j + v/o (vedi matrice barriere)

Nota bene: il ricevitore DEVE controllare se la mossa trasmessa dallavversario valida


- Spostamento pedina o o o
- Spostamento pedina compatibile con disposizione attuale barriere
- Inserimento barriera
o Non sovrapposta ad altre barriere
o Non impedisca alla pedina di arrivare alla meta
In caso di verificata irregolarit, il ricevitore mette in pausa il sistema:
- Mostrando un messaggio a schermo
- Bloccando il tempo
- Inviando il carattere e al sistema trasmettitore il quale a sua volta
o Si metter in pausa
o Mostrer un messaggio di errore.
In caso di segnalata irregolarit, qualora sia confermata da controllo arbitrale, verr decretata la
sconfitta a tavolino per il trasmettitore, altrimenti, in caso di segnalazione non confermata, al
ricevitore.

Fig3: matrice delle pedine in configurazione iniziale

Fig4: matrice delle barriere in configurazione casuale

Vous aimerez peut-être aussi