cosa ci va nelle parentesi? o magari il tutto va programmato in altro modo?
Grazie 1000
http://www.devili.iki.fi/Computers/Commodore/C64/Programmers_Reference/Chapter_6/page_343.html
Vado a memoria e non vorrei dire delle fregnacce (sono piů di 20 anni fa....
:), ma il joystick in porta 1 sul C64 non simula la pressione di alcuni
tasti sulla tastiera?
Hai provato ad inserire:
105 print a$
e vedere se muovendo il joystick (collegato alla porta 1) scrive qualcosa?
......
Mi rispondo da solo: ho provato con Winvice e si, il joystick in porta 1
simula la tastiera.
Aggiungi la riga
105 print asc(a$)
e puoi vedere il codice ascii da testare nelle if successive.
Ciao.
Roberto
Oooohhh... scusa.... non avevo notato che ti serve il joystick in porta 2.
In questo caso devi usare la peek().
Ciao.
Roberto
ciao
> Con delle Peek() in date posizioni di memoria . Dovresti trovare
> istruzioni specifiche ne programmers reference . Vedi :
>
> http://www.devili.iki.fi/Computers/Commodore/C64/Programmers_Reference/Chapter_6/page_343.html
Mamma mia quanti ricordi. Però sul C16 e il C128 me la passavo meglio,
avevo il comando joy(n)
IF JOY(n) = valore TEN do_something
con 1, 3, 5, e 7 le direzioni alto, destra, basso e sinistra, e 2, 4, 6,
8 le direzioni diagonali composte. Con i peek se non ricordo male
occorreva controllare i valori di un paio di bit di due locazioni di
memoria. Quasi quasi me lo vado a rileggere...
p.bes
> IF JOY(n) = valore TEN do_something
'azz, la H.
p.bes
> Vado a memoria e non vorrei dire delle fregnacce (sono più di 20 anni
> fa.... :), ma il joystick in porta 1 sul C64 non simula la pressione di
> alcuni tasti sulla tastiera?
Vado un po' a memoria anche io... si, è corretto, il joystick della porta 1
è mappato come i tasti in alto a sinistra della tastiera: la freccetta
sinistra "<-", 1, 2 e control. Lo sparo è invece mappato sulla barra
spazio.
Il metodo da te suggerito non va bene perchè la sola pressione del tasto
"control" non riproduce niente a video, tranne che quando è abbinato a
qualcos'altro...
Vado sempre a memoria ma ricordo che facendo la diagonale corrispondente ai
tasti control ed 1, cambia colore il cursore
La PEEK è il solo metodo affidabile.
Per Paolo Besser: gran cosa il comando JOY, anche se fondamentalmente altro
non è che una subroutine ASM che combina la PEEK sulla locazione
incriminata, una OR logica ed un confronto sul valore... certamente dal lato
BASIC è meglio la JOY (che almeno è ottimizzata in ASM) piuttosto che la
stessa routine BASIC, usando PEEK, dichiarazione con OR, e IF-THEN. :-)
Il comando JOY c'è anche sul creatiVision ma fortunatamente non richiede le
dichiarazioni con le OR, in quanto i comandi IF PEEK(129)=32+X e IF JOY(1)=X
(vado a memoria sulle locazioni e sui valori) sono assolutamente identici
:-)
MADrigal
--
---------------------------------------------------------------------
- Dr. Eng. Luca Antignano, Sassari, Italy
- freeware handheld simulators at www.madrigaldesign.it/sim/
- CreatiVision emulation central at www.madrigaldesign.it/creativemu/
- Game & Watch shrine at www.madrigaldesign.it/gwmania/
- Zzap!Raine web-magazine at www.rainemu.com/zzapraine/
---------------------------------------------------------------------
Eh... i typo.... In genere il mio codare consiste in 15 minuti per
typare il codice seguito da 1 ora a capire dove sta il bug, che
invariabilmente risulta essere un typo, e questo con qualsiasi
linguaggio....
Saluti,
Dott. Piergiorgio.