Dopo "OK-LIST" della rivista "SUPERVIC & C64" per la correzione di errori è nato un altro sistema chiamato "STOPBUG".
Funzionava nella stessa maniera del primo ed utilizzava il "checksum" per la verifica della linea inserita.
La rivista presentava il software con questo articolo:
"Hai mai sentito parlare di "bug"? Il termine in inglese significa "insetto", ma nel linguaggio dell'informatica indica gli error che infestano spesso un programma impedendone il funzionamento. Eccoti allora un buon "insetticida". che ti permetterà di digitare i nostri listati senza commettere errori. Sappiamo tutti quanto sia difficile digitare correttamente un programma. Errori di battitura anche banali possono provocare il malfunzionamento del programma stesso O anche il blocco completo del sistema, obbligandoci a rifare il lavoro. Ma il punto di forza dei calcolatori è che essi eccellono nei compiti noiosi e che richiedono precisione. Scoprire un errore nella battitura di un listato è appunto un compito noioso, quindi perché non sfruttare il tuo computer per controllare i li- stati da te digitati? È proprio questo lo scopo di Stop Bug, il programma che a partire da questo numero di Papersoft Commodore ti permetterà di risparmiare tempo e fatica. Annidato all'interno del tuo computer, Stop Bug controlla automaticamente ogni riga battuta, mostrandoti un numero in cima allo schermo ogni volta che premi il tasto Return. Un numero corrispondente nel listato del programma pubblicato ti permette il confronto, ed uno sguardo è sufficiente per avere la conferma di aver digitato la linea correttamente. Stop Bug è un breve programma in linguaggio macchina residente Subito dopo la memoria RAM destinata ai programmi Basic. Esso rimane in tale zona finché non spegni il computer.
Come digitare Stop Bug
Vi sono due versioni di Stop Bug, una per C64 e VIC 20 e l'altra per C16 e PLUS/4. Digita la versione adatta al tuo computer facendo attenzione a non commettere errori (per fortuna il listato è molto breve!). Dopo aver finito, salvalo su disco o nastro per lo meno un paio di volte prima di mandarlo in esecuzione con il comando Run, perché il programma Basic, dopo aver memorizzato la routine in linguaggio macchina (le istruzioni Data), si autocancella.
Come si usa Stop Bug
A questo punto puoi iniziare a battere il tuo primo listato "a prova di errore". Se non hai Stop Bug in memoria, caricalo e attivalo con Run. Digita quindi la prima linea di programma: come puoi vedere, in fondo ad essa c'è la parola ":rem" seguita da un numero, che si chiama checksum. Non copiare questa par- te della linea! Ora premi il tasto Return come al solito. In alto a sinistra apparirà il checksum; confrontalo con quello che vedi scritto sulla rivi- sta dopo "rem". Se due numeri sono uguali vuol dire che la linea è stata digitata correttamente, altri- menti controllala perché evidente- mente hai commesso un errore. Facile, no? Stop Bug non è pignolo per quel che riguarda gli spazi bianchi, non facendo caso alla loro presenza. Ciò torna a tuo vantaggio dal mo- mento che la spaziatura non è, in genere, importante. Ma all'interno delle istruzioni Print gli spazi spesso si rivelano necessari, quindi presta attenzione quando digiti questo ti- po di istruzione. Un'altra cosa a cui devi badare è che, usando le forme abbreviate dei comandi (ad esempio? per Print) il checksum visualizzato non coinciderà con quello presente sul listato. Ciò è tuttavia risolvibile premendo il tasto Return su una linea dopo averla Listata: le abbreviazioni saranno ricodificate nella loro forma intera e quindi Stop Bug sarà in grado di svolgere perfettamente la sua funzione. In questo modo inoltre avrai la possibilità di controllare interi gruppi di righe in una volta sola. Ovviamente nessuno è perfetto, ed anche Stop Bug ha qualche limite: se per caso ti capitasse (ma è un errore poco frequente) di "anagrammare" durante la digitazione una linea (per esempio invece di battere 10 Print "Vai" digiti per erro- re 10 Print"Via") Stop Bug non se ne accorgerebbe. Inoltre la presenza del carattere Shift-Spazio modifica il numero di checksum rispetto al carattere Spazio normale, anche se la differenza non risulta visibile sul video del tuo computer. Se intendi sospendere il lavoro di digitazione puoi salvare Su nastro o disco il tuo programma senza che Stop Bug interferisca; al momento di riprendere il lavoro ricordati però di caricare ed attivare Stop Bug PRIMA di ricaricare il tuo programma. Se vuoi disabilitare Stop Bug senza perdere il tuo programma in memOria premi Run/Stop e Restore su VIC 20 e C64, oppure Run/Stop e Reset su C16 e PLUS/4. Per riattivarlo batti: SYS PEEK(56)*256 per il VIC 20; SYS 16128 per il C16 e il PLUS/4; SYS 40704 per il C 64. Buon lavoro!"
Come l'altro software, anche questo mostrava l'attivazione del software: | Anche il checksum era uguale all'altro software |
il listato è il seguente:
100 POKE55,0:POKE56,PEEK(56)-1:R=PEEK(56)*256:PRINT"{clear}attendere prego..."
110 FORI=RTOR+132:READA:CK=CK+A:IFA=999THENA=R/256
120 POKEI,A:NEXT
130 IFCK<>22689THENPRINT"{down}errore nelle istruzioni data":END
140 SYS(R):PRINT"{clear}{down*2}{reverse on}stop bug{reverse off} attivato.":NEW
200 DATA173,36,3,201,32,208,1,96,141
210 DATA33,999,173,37,3,141,34,999,169
220 DATA32,141,36,3,169,999,141,37,3
230 DATA169,0,133,254,96,32,87,241,133
240 DATA251,134,252,132,253,8,201,13,240
250 DATA17,201,32,240,5,24,101,254,133
260 DATA254,165,251,166,252,164,253,40,96
270 DATA169,13,32,210,255,165,214,141,251
280 DATA3,206,251,3,169,0,133,216,169
290 DATA19,32,210,255,169,18,32,210,255
300 DATA169,58,32,210,255,166,254,169,0
310 DATA133,254,172,33,999,192,87,208,6
320 DATA32,205,189,76,117,999,32,205,221
330 DATA169,32,32,210,255,32,210,255,173
340 DATA251,3,133,214,76,55,999