Il nome della periferica in realtà è senza il prefisso VIC. Nella prima metà degli anni ’80 la Commodore ha prodotto controller di gioco “paddle” da utilizzare con il VIC-20. Queste periferiche portatili erano semplici manopole rotanti a portata limitata con un singolo pulsante “fuoco” o “azione”. I paddle del VIC-20 sono un controller analogico contenente un potenziometro che viene letto dal chip VIC della tecnologia MOS e convertito in una gamma di valori digitali. Il potenziometro viene utilizzato per caricare un condensatore all’interno del VIC-20 collegato ad un pin sulla porta del controller di gioco del VIC-20.
In sostanza, il VIC-20 controlla molte volte al secondo questo pin per vedere quanto tempo impiega il condensatore a caricarsi completamente e utilizza quel valore di tempo per determinare la posizione della manopola del controller del paddle.
I giochi con i paddle di solito comportano lo spostamento del personaggio del giocatore (astronave, sottomarino, racchetta da tennis) orizzontalmente o verticalmente sullo schermo. Generi popolari di giochi con i paddle sono i giochi di tipo tennis “Pong” e i giochi di tipo “Breakout” che sfondano i muri.
Il nome “paddle controller” ha avuto origine nelle console per videogiochi da ping pong degli anni ’70 in cui la manopola spostava una rappresentazione di una racchetta da ping-pong sullo schermo televisivo. In questi tipi di giochi, i paddle controller offrono un vantaggio rispetto ai joystick perché la velocità con cui viene ruotata la manopola si traduce direttamente nella velocità del movimento del personaggio sullo schermo.
Come il primo joystick per VIC-20 anche i controller paddle originali erano copie fisiche quasi esatte di quelli sviluppati per la console per videogiochi Atari 2600. Anche i pin-out del VIC-20 sono identici a quelli dell’Atari.
Esistono, tuttavia, due differenze significative:
1) La metà superiore è stampata in plastica bianca per abbinarsi all’alloggiamento del VIC-20 e presenta il logo e il nome Commodore in rilievo color argento.
2) Il potenziometro all’interno dei paddle controller del VIC-20 utilizza una resistenza da 470kOhm mentre quello dell’Atari 2600 è da 1000kOhm. Usando i paddle Atari 2600 con il VIC-20 sarai in grado di utilizzare solo la metà della portata dopo che ha raggiunto il valore estremo. Un set di paddle Atari 2600 utilizzato in un VIC-20 ha una risposta più rapida ma una “zona morta” più ampia.
I paddle bianchi originali sono state infine sostituiti con un modello dall’aspetto unico (che era funzionalmente lo stesso). Questo secondo tipo non si abbinava più al case del VIC-20 (la manopola grigia suggerisce che fosse stato fatto per abbinare il C16 o il Commodore 64) e ha un pulsante di fuoco allungato posizionato centralmente per la comodità dei giocatori mancini e destrorsi.
I controller paddle sono stati prodotti in coppia con entrambi i controller che condividono un singolo connettore di gioco. Ciò consente giochi a due giocatori simultanei anche se il VIC-20 ha solo una singola porta per controller di gioco.
I pin-out del controller paddle sono:
Paddle | Fire button | Potentiometer |
---|---|---|
A | pins 3 and 8 | pins 9 and 7 |
B | pins 4 and 8 | pins 5 and 7 |
Sebbene nessun numero di modello fosse stampato sulla confezione dei paddle Commodore, i paddle bianchi stile Atari hanno ricevuto la designazione VIC-1312 in alcuni elenchi di prodotti.
Curiosità: La maggior parte dei VIC-20 ancora in uso oggi soffre di “paddle jitter“. Questo si manifesta come un rapido scuotimento del personaggio sullo schermo del giocatore. Nella minoranza dei casi, ciò è causato da un potenziometro sporco all’interno della paletta stessa con conseguenti valori di resistenza errati. Questo può essere risolto aprendo la paletta e spruzzando il potenziometro con un detergente per contatti elettrici (detergente / lubrificante per sintonizzatore TV).
Tuttavia, nella maggior parte dei casi il problema è causato da qualcosa all’interno del VIC-20 stesso, quindi anche i paddle nuovi e freschi soffriranno di jitter. Nessuna soluzione è attualmente nota. È stato teorizzato che questo problema sia il risultato di un invecchiamento e deterioramento del condensatore sulla scheda madre del VIC-20 associato al pin “paddle” sulla porta del controller di gioco. Fino a quando non viene trovato un rimedio hardware, i programmatori intelligenti hanno implementato una routine software anti-jitter (debouncing) che elimina quasi completamente il problema (come usato per la conversione VIC-20 di “PONG” dagli utenti di Denial Nicola Battista e Nino Porcino).
Elenco dei giochi con controller Paddle pubblicati per VIC-20:
- Clowns
- Omega Race (Paddle or Joystick)
- Pinball Spectacular
- Sea Wolf
- Skibbereen
- Space Snake
- Star Post
- Super Smash
- The Sky is Falling
Reading the paddles
Two registers of the VIC chip contain the current position of the two paddle potentiometers, called POT X, and POT Y. They can be read out like in these examples:
1 V=36864
2 X=PEEK(V+8):Y=PEEK(V+9)
3 PRINT X,Y
4 GOTO 2
To counteract the paddle jitter, a low-pass filter can be applied. Increasing the value in A (usable range between 0, and strictly less than 1), further reduces noise, but also decreases the responsiveness.
1 V=36864:A=.1:B=1-A
2 XF=AXF+BPEEK(V+8):X=INT(XF+.5)
3 YF=AYF+BPEEK(V+9):Y=INT(YF+.5)
4 PRINT X,Y
5 GOTO 2
Paddle A (POT X) fire corresponds to joystick left, paddle B (POT Y) fire corresponds to joystick right:
1 S=PEEK(37151):POKE37154,127:T=PEEK(37152):POKE37154,255
2 IF (16ANDS)=0 THEN PRINT “PADDLE A FIRE”
3 IF (128ANDT)=0 THEN PRINT “PADDLE B FIRE”
4 GOTO 1