Post recenti

Pagine: 1 [2] 3 4 ... 10
11
Aiuto & Domande / Re:collisioni sprite/sprite
« Ultimo post da input il 12 Maggio 2021, 19:36:34 »

lo so che è molta spartana , per questo volevo una vostra opinione.
ho provato e riprovato, ma non resta intrappolato, l unico piccolo difetto è che in due direzioni lo sprite quando collide con un altro sprite ,  penetra  di 5 pixel  l altro ( che sarebbero i pixel di incremento o decremento ) se riduco  l incremento riduco la velocita ma riduco anche la penetrazione .  ( per poi ritornare alla posizione iniziale prima della  collisione,  mentre con i caratteri la collisione e perfetta  .
se vuoi darmi una soluzuione  piu  elegante e meno spartana  te ne sarai molto grato. anche perche non mi servirebbe per copiarla, ma solo per studiarla e capire meglio la loro funzionalita . comunque provero ancora domani, se riesco bene, altrimenti dovro rassegnarmi.  ciao e grazie di tutto buonaserata
12
Aiuto & Domande / Re:collisioni sprite/sprite
« Ultimo post da 0scur0 il 12 Maggio 2021, 19:15:19 »
Citazione
chiedevo un vostro consiglio sul risultato
Direi che è una soluzione piuttosto spartana e poco precisa; in effetti, può capitare che lo sprite mobile penetri nello sprite fisso e ne resti intrappolato, anche se per un semplice giochino in BASIC può andare.
13
CBM Hardware / Re:Commodore 64 ver. 250425 Problema: caratteri impastati
« Ultimo post da giobbi il 12 Maggio 2021, 17:23:42 »
Visto che la ROM dei caratteri (cioè quella che hai sostituito) non ha risolto, direi che più probabilmente è il PLA. Se lo cambi con uno originale, metti un dissipatore perché scalda parecchio ed è il chip che più frequente va a putt... si guasta.
Sul web si trovano parecchi sostituti moderni che non hanno bisogno di dissipatore; però guarda che sia compatibile con il tuo modello perché non tutti i PLA funzionano con tutti i C-64.
14
CBM Hardware / Ho installato un LCD nel Commodore SX-64
« Ultimo post da giobbi il 12 Maggio 2021, 17:17:40 »
ciao tutti,

mentre riparavo uno dei miei due SX-64, il monitor CRT ha deciso di spegnersi per sempre. Per farla breve, dopo aver invano cercato il problema, ho deciso di accantonarlo per il momento e di sostituirlo con un LCD. Se e quando riuscirò a riparare il CRT, lo rimetterò a posto.

Sul web si trova più di un modo per installare un LCD (magari in formato 4:3) che consente un risultato perfetto; però di norma si parla di spendere magari più di 100 euro. Inoltre abito in Brasile ed i tempi e le spese di spedizione mi hanno fatto desistere.

Ho comprato un monitor da 5" (formato widescreen) in China per l'equivalente di 20 €, spedizione compresa, ed ho così scoperto che il segnale composite video del Commodore 64 (e SX-64) non funziona con questi monitor. Con sto maledetto SX-64 sembra che niente vada a posto al primo colpo, ho già avuto tanti di quei problemi...

Ad ogni modo, dopo un full immersion sul web, ho scoperto che il firmware del chipset AMT630A - usato dalla maggior parte di questi monitor - può essere patchato; tuttavia la patch è al di là delle mie capacità attuali, così ho scelto invece di correggere il segnale video tramite un circuito che ho trovato on-line, basato sul circuito integrato LM 1881 più altri componenti (occhio: non è il solito sync-splitter, è un circuito diverso, apposta per questo problema).

Montato alla bene e meglio il circuito con discutibili metodi artigianali (era tanto semplice che in un tracollo di pigrizia per fare il PCB non ho neppure acceso la stampante laser, l'ho tracciato direttamente con il pennarello prima del bagno nell' "acido") e testato che funzionasse, ho fatto una piccola modifica alla main board (facilmente reversibile) in modo da avere il composite video originale sul pin #1 del connettore INT VIDEO a cui è normalmente collegato il CRT. Questo perché il circuito ha bisogno del composite video e non sono riuscito in nessun modo a combinare i due segnali Chroma e Luma del connettore per avere un composite video decente.

Dato che la circuiteria del CRT ospita anche l'amplificatore audio (sul connettore sopra citato c'è anche l'uscita audio ai pin #4 e #5), ho raccattato un vecchio amplificatore stereo che avevo tempo fa realizzato per altri scopi e che giaceva abbandonato nella scatola-purgatorio dei circuiti non più usati e l'ho adattato usando un solo canale. Ho anche collegato il potenziometro originale del volume (quello sul pannello frontale) all'amplificatore in questione, risolvendo almeno la parte relativa al controllo del volume.
Ovviamente, invece, non sono disponibili le regolazioni video; il display LCD ha un suo meno con i controlli di luminosità, contrasto, colore e tinta, ma non ho ritenuto necessario forare in alcun modo il SX-64 (che spero un giorno di poter ripristinare con il suo CRT) per renderli disponibili. Li ho lasciati all'interno, sono accessibili solo smontando il coperchio superiore.
 
Stabilito che tutto funzionava, ho provveduto a stampare in 3D la frame per il montaggio e ad assemblare il tutto.

Ho deciso di lasciare l'immagine in 16:9... non è così terribile e modificarla in 4:3 dal menu del monitor la rende davvero troppo piccola per i miei stanchi e pigri occhi di over 50...

Qui c'è il link al video su youtube, dove potete trovare anche tutti i link alle pagine che ho usato (vedi descrizione del video):

https://www.youtube.com/watch?v=1Zzk851vAZs

Guardando il video potrete altresì notare che difficilmente diventerò uno youtube professionale  ;)
15
Aiuto & Domande / Re:collisioni sprite/sprite
« Ultimo post da input il 12 Maggio 2021, 16:43:29 »
chiedevo un vostro consiglio sul risultato, e comunque voglio ringraziarvi di aver perso del vostro tempo per me
16
Aiuto & Domande / Re:collisioni sprite/sprite
« Ultimo post da input il 12 Maggio 2021, 16:32:02 »
sono riuscito a rsolverlo , anche se funziona non sono soddisfatto, 
non mi piace la ripetizione dei tasti, non lo trovo elegante

40 POKEV+0,x                :REM coordinate  x  sprite 0
42 POKEV+1,y                :REM coordinate  Y  sprite 0
44 POKEV+4,xx               :REM coordinate  Y  sprite 2
46 POKEV+5,yy               :REM coordinate  Y  sprite 2

53 REM PUNTEGGIO
54 print "{home}",t,b
 
56 B=peek(v+30): REM lettura del rgistro 53278
57 if B=5 then gosub 200

59 REM CONTROLLO MOVIMENTO
69  geta$: ifa$=" " then  69
71  if a$=chr$(157) then x=x-5 :REM SINISTRA
80  if a$=CHR$(29 ) then x=x+5  : rem DESTA               IDEM
86  if a$=chr$(17)  then y=y+5  : REM GIU                 IDEM
95  if a$=CHR$(145) then y=Y-5  :REM SU                  IDEM


175  goto 40

200 print "collisione{home}"
250 REM POSIZIONI DELLO SPRITE 0  PRIMA DELLA COLLISIONE
260 REM  SCRITTURA NUOVE COORDINATE
270  rem x= px
280 if a$=chr$(157) then x=x+5
285 if a$=chr$(29) then x=x-5
286 if a$=chr$(17) then y=y-5
287 if a$=chr$(145) then y=y+5
 
297 t=t+1
300 return
17
Segnalazione News / Videoblog Vintage con molti riferimenti al Commodore
« Ultimo post da Corvo il 11 Maggio 2021, 19:48:33 »
Ciao.  :)

Stavo cercando tutt'altro argomento (riguardante Windows 10) e così mi sono casualmente imbattuto in questo sito che mi dava le risposte che cercavo ma... oplà... era pure pieno zeppo di immagini del Commodore...
Ovviamente mi sono palesemente distratto dall'argomento che mi aveva condotto a tale sito e mi sono totalmente fatto prendere dalla curiosità per il Commodore...
Ho così scoperto che lui è un appassionato e sta creando parecchi video che mi stanno piacendo molto.  :)

Li segnalo anche per voi:

Playlist: "Basic con il Commodore, GwBasic, QB64" - "Domotica con il Commodore 64" e altre playlist

Il canale è molto attivo, infatti l'ultimo video è stato caricato 4 giorni fa, il 7 maggio.

Ciao a tutti !  :)
18
Aiuto & Domande / Re:collisioni sprite/sprite
« Ultimo post da input il 11 Maggio 2021, 16:48:33 »
credo che dovcra fare proprio cosi,  magari creando prima un diagramma di flusso e seguirlo psso passo
19
Aiuto & Domande / Re:collisioni sprite/sprite
« Ultimo post da 0scur0 il 11 Maggio 2021, 00:40:09 »
Codice: [Seleziona]
200 print "collisione{home}"
250 REM POSIZIONI DELLO SPRITE 0  PRIMA DELLA COLLISIONE
260 REM  SCRITTURA NUOVE COORDINATE
280 x=px
281 y=py

Qui non stai scrivendo le nuove coordinate nei registri, stai semplicemente aggiornando delle variabili interne.

Citazione
ho provato ad inserire un ritardo un po piu alto di 1/50 s , con un ciclo for m= 1 to 50, il tempo che impiega lo schermo a ridisegnare tutto lo schermo.

Come fai ad esserne sicuro? Cerca qualcosa di più affidabile, ad esempio l'orologio di sistema (TI$).
Ribadisco l'utilità di prendere carta e penna.

Saluti
20
Aiuto & Domande / Re:collisioni sprite/sprite
« Ultimo post da input il 10 Maggio 2021, 23:47:33 »
ho provato ad inserire un ritardo un po piu alto di 1/50 s , con un ciclo for m= 1 to 50, il tempo che impiega lo schermo a ridisegnare tutto lo schermo.  pensavo che sarebbe  stato sufficiente. ma no va lo stesso,  ho provato vari valori  piu  e piu bassi ma senza alcun risultato. il ciclo lo inserito , subito dopo la scrittuira della nuova coordinata e prima   della lettura della locazione 53728, ma il risultato rimane invariato.
avevo provato con il joystick, ma rimane lo stesso problema , si muove in tutte le direzione, appena avviene lo scontro, si incolla e non si stacca piu.
 questo è uno stralcio. questo è uno stralcio di listato della parte  interessata del listato, dove sicuramente si annida il problema che non riesco ancora a  risolvere

17  print chr$(147)                     
40 POKEV+0,x                :REM coordinate  x  sprite 0
42 POKEV+1,y                :REM coordinate  Y  sprite 0
44 POKEV+4,xx               :REM coordinate  Y  sprite 2
46 POKEV+5,yy               :REM coordinate  Y  sprite 2

49  px=x              :REM posizione  x prima della collisione
50  py=y              :REM posizione  y prima della collisione

53 REM PUNTEGGIO
54 print "{home}",t,b

   
56  B=peek(v+30): REM lettura del rgistro 53278

59 REM CONTROLLO MOVIMENTO
69  geta$: ifa$=" " then  69
71  if a$=chr$(157) then x=x-5 :REM SINISTRA
80  if a$=CHR$(29 ) then x=x+5  : rem DESTA               IDEM
86  if a$=chr$(17)  then y=y+5  : REM GIU                 IDEM
95  if a$=CHR$(145) then y=Y-5  :REM SU                  IDEM


150 REM conserva il valore letto in B
157 print x
162 if B=5 then gosub 200 

164  form = 1 to 5 :nextm   :REM  ritardo
165  goto 40

200 print "collisione{home}"
250 REM POSIZIONI DELLO SPRITE 0  PRIMA DELLA COLLISIONE
260 REM  SCRITTURA NUOVE COORDINATE
280 x=px
281 y=py
282
297  t=t+1
300 return
Pagine: 1 [2] 3 4 ... 10