{{htmlmetatags>metatag-robots=() metatag-title=(EVERY...CALL | ugBASIC User Manual) metatag-keywords=(ugBASIC,Commodore 64,Commodore PLUS/4,ZX Spectrum) metatag-description=(Pagina del manuale per EVERY...CALL) metatag-media-og:image=(:ugbasic:logo-ugbasic-fb.png) metatag-og:title=(EVERY...CALL | ugBASIC User Manual) metatag-og:description=(Pagina del manuale per EVERY...CALL) }} ====== ugBASIC Manuale Utente ====== ===== EVERY...CALL ✓ ===== ===== SINTASSI ===== EVERY value[,timer] TICKS CALL identifier ==== SCOPO ==== Introduce la chiamata di una procedura a intervalli regolari, senza interferire con il programma principale. È necessario specificare l'intervallo di tempo tra ogni chiamata, misurato in ''TICKS''. Il compilatore ugBASIC passa alla procedura ogni ''value''/''TICKS PER SECOND'' secondi. Si noti che il tempo di esecuzione della procedura dovrebbe essere inferiore al tempo dell'intervallo, altrimenti i tempi del programma principale verranno influenzati. Vi sono 8 timer di ritardo da 0 a 7 che possono essere specificati con ''timer''. Se omesso, il valore predefinito ''timer'' è 0. Nel caso di attività parallela, 0 ha la priorità più alta e 8 la priorità più bassa. Con ''EVERY OFF'' e ''EVERY ON'' è possibile disabilitare o abilitare le chiamate temporizzate. Le procedure vengono eseguite finché viene eseguito il ciclo/programma principale, anche se il programma principale è in pausa. È importante sapere o realizzare che le procedure a bassa priorità che si verificano contemporaneamente alle procedure a priorità più alta non vanno perse. Il loro compito rimane o viene gestito nuovamente dopo aver terminato l'interruzione con priorità più alta. ==== ESEMPIO ==== EVERY 50 TICKS CALL changeBorderColor EVERY 50,2 TICKS CALL changeBorderColor Si vedano anche i seguenti file di esempio: * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/control_periodic_02.bas|control_periodic_02.bas]]'' * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/control_periodic_03.bas|control_periodic_03.bas]]'' ==== ABBREVIAZIONE ==== Ev...Ca ==== DISPONIBILE SU ==== * Dragon 32 * Commodore 128 (MOS 8502) * SEGA SG-1000 * Commodore 64 * Commodore VIC-20 * Atari (400/800) * * Commodore PLUS/4 * VG-5000 * Olivetti Prodest PC128 * Dragon 64 * Thomson MO5 * SEGA SC-3000 * ColecoVision * TRS-80 Color Computer 3 * MSX * TRS-80 Color Computer ==== PROBLEMI? ==== Se si riscontra un problema nell'utilizzare questo comando, se si ritiene che vi sia un bug oppure che la spiegazione sia poco chiara, è possibile [[https://github.com/spotlessmind1975/ugbasic/issues/new?title=SEGNALAZIONE SU EVERY...CALL|aprire una segnalazione]] per questa parola chiave su GitHub. Grazie!===== POWERED BY ===== [[:it:ugbasic:user:index|{{ :ugbasic:user:logo-ugbasic.png?nolink&600 |}}]]