documenti.gif (29661 bytes)

RUN N. 1

(Novembre / Dicembre 1983)

 

Numero 1
Novembre-Dicembre 1983
AQUARIUS Edizioni s.n.c.

RUN bimestrale su cassetta. Periodico registrato presso il Tribunale di Milano con il N. 469/83 il giorno 07/10/83. Tutti i diritti sono riservati per tutti i paesi. Programmi, manoscritti e cassette anche senon pubblicati non sono rinviati all'autore se non su richiesta.
RIGHTS RESERVED EVERYWHERE

1984 by Aquarius edizioni - RUN

direttore
SIMONE MAJOCCHI

direzione software
BEPPE ANDRIANO'

direzione diffusione
PIERO ROCCHI

direzione editoriale
MARIO MAGRONE

direttore responsabile
Simone Majocchi

Collaborano a RUN

Alex Gatti, Alessandra Angiolini, Alessandra Baretta, Alberto Bassi, Antonio Trupo, Bruno Rota, Dario Mella, Franco Tagliabue, Giancarlo Belloni, Maurizio Feletto, Mauro Scaioni Roberto Cislaghi, Sandro Serra, Stefano Prina, Tina Cerri, Viviana Angiolini.

DISTRIBUZIONE :
edicole - SO.DI.P Angelo Patuzzi - Via Zuretti 25 MILANO
computer shops - MICROSTAR V. Cagliero 17 Milano

COME UTILIZZARE RUN

I programmi sono concatenati fra loro in modo tale da permettere la lettura della rivista senza dover dare LOAD in continuazione ma sem licemente fermando il registratore quando richiesto. Per minimizzare le manovre con il registratore la rivista e' a blocchi (circa 18) da diversi K di RAM. Le dimensioni sono tali da ermettere il caricamento su Spectrum non espansi. Date le dimensioni della rivista le due facciate della cassetta contengono materiale diverso per un totale di oltre 120 KBytes .

Campagna abbonamenti 1984

Assicurati oltre mezzo Megabyte di programmi, corsi , giochi edidattica sul tuo ZX Spectrum con sole cinquantamila lire. Avrai diritto ad una cassetta di software di elevata qualita' e ad una tessera sconto valida per l'acquisto di software e hardware presso i rivenditori convenzionati. Per abbonarti devi mandare un vaglia postale di 50000 lire a Aquarius Edizioni, C.so Vittorio Emanuele 15, 20122 , Milano con il tuo indirizzo completo ed il tipo di cassetta che desideri in regalo.

SOMMARIO

1    3-5 Chi lavora per RUN
       6 Istruzioni per l'uso
2    7-8 Campagna Abbonamenti
    9-11 SOMMARIO
3  13-15 Editoriale
4     17 La vendetta della rana
5        ROADER gioco Basic e L/M
6  18-27 Corso di BASIC
7  35-39 Tutto Sinclair
8  35-39 Spectrum HARDWARE
9     41 Cosa sono gli UDG
10       UDG editor programma
11 42-45 Software TEST
12 47-50 Come ti scrollo l'hires
13       Bytes SCROLL in L/M
14 51-64 Corso di L/M
15    66 Spari tu o sparo io ?
16       RUN Invaders gioco L/M
17 67-72 Cosa c'e' sul mercato
18 73-78 Posta e risposta
19 79-82 Le occasioni di
20 83-85 Sul prossimo numero
21    87 METEORS il superGIOCO

Per facilitarvi la lettura i RUN abbiamo diviso il sommario secondo i blocchi di caricamento indicando con un numero da 1 a 18 (in giallo) il blocco a cui il pezzo appartiene. Mantenendo lo stile delle normali riviste ogni pagina ha un numero progressivo; in questo modo potrete stamparvi gli articoli che vi interessano senza confondere le pagine.

EDITORIALE
di
Simone Majocchi

Si dice sempre che rispetto agli altri noi poveri italiani siamo sempre indietro...

Questa volta pero' siamo stati capaci di fare qualcosa di buono ed interessante: avete infatti per le mani qualcosa di speciale e unico per l'Italia.

RUN e' infatti la prima rivista su cassetta che compare in edicola dando qualcosa di nuovo a tutti i possessori di Spectrum italiani. Siamo certi che questa iniziativa ottera' la vostra approvazione.

Come possessori di computer sapete bene quale sia l'annoso problema che vi assilla dal momento in cui l'avete acceso per la prima volta: si sa che il computer puo' fare tutto o quasi,ma ben pochi sanno come farlo fare al computer. E' proprio per questo che noi della Aquarius abbiamo deciso di produrre una rivista su cassetta in grado di dare tutte le informazioni necessarie per arrivare alla piena padronanza del vostro ZX Spectrum.

Su RUN troverete corsi di programmazione e articoli didattici
per insegnarvi direttamente sul computer come si programma, con tutti i trucchi e le astuzie per avere il massimo dal vostro computer. Anche i giochi saranno pero' oggetto delle nostre pagine e noterete come tutti i programmi siano gia' pronti da far girare e senza errori. Gia' su questo numero inizia il corso di Basic ed il corso di programmazione in linguaggio macchina; tre giochi ed un programma di utilita' piu' qualche altra routine sono il software che vi terra' impegnati fino al primo gennaio 84, giorno in cui uscira' il secondo numero di
RUN nelle edicole e nei computer shop. Se avete delle idee e dei commenti scriveteci...

<Pubblicità>

Sei appassionato di astronomia ?

Allora corri alla tua edicola!

E' uscita ASTRONOMIA 2000

La prima rivista di astronomia pratica, astrofisica, astronautica.

LA VENDETTA DELLA RANA
Introduzione a ROADER
di
Massimo Soncini

E' ormai un dato di fatto che i Videogames stanno diventando sempre piu' cruenti... Basta un semplice sguardo ai classici da bar per trovare Pengo che con la sua aria ingenua spiaccica a cubi di ghiaccio le Snow Bees contro il muro, oppure Q*bert che saltellando da una pedana all'altra cerca di far precipitare nel vuoto i suoi nemici ed emette una serie di strane imprecazioni come @!#* se sbaglia. Solitamente sono sempre o gli alieni o gli animaletti che vengono trucidamente uccisi, questa volta pero' siete voi (e noi) poveri umani a dover salvare la pelle dalle trappole tese dagli animali alla guida delle navi e delle macchine. Il programma e' stato realizzato da Marino Fabio seguendo le tracce del noto Frogger. Lo scopo del gioco e' quello di portare 'a casa' il povero omino utilizzando i soliti tasti del cursore: 5=sinistra, 7=su e 8=destra.

L'omino va portato a casa evitando di toccare i mezzi che popolano lo schermo; le case sono i quadrati in alto e una volta che avete riempito le prime 4 case passate al secondo muro, con due ragni e maggiore sprint. Il gioco utilizza delle routine in linguaggio macchina per il movimento 'soft' dei vari mezzi. Piu' avanti troverete un articolo sullo scroll in hires...

Corso di BASIC

Ad alcuni potrebbe sembrare poco sensato inserire un corso di BASIC in una rivista come RUN. E' infatti probabile che la maggioranza di voi conosca gia' tale linguaggio di programmazione. Non e' altresi' scontato che tutti sfruttino appieno le possibiliita', davvero notevoli, che il BASIC offre. Ecco quindi il perche' di questa rubrica, dove cercheremo di illustrarvi i concetti della programmazione evoluta.

Cercheremo di spiegarvi come scrivere programmi efficienti, privi di dozzine di inutili GOTO e documentati quanto basta per essere riletti e compresi a distanza di mesi dalla loro stesura. Qualcuno potrebbe dire che questa si chiama programmazione strutturata, ma in realta'non si puo' cosi' definire, perche' il Sinclair manca di vere e proprie strutture (leggi IF- THEN-ELSE,REPEAT-UNTIL & co.). Il nostro prediletto e' pero' fornito di un BASIC veramente potente, ed alcune delle sue caratteristiche risultano molto utili per la documentazione dei listati. Ovviamente non ci riferiamo esclusivamente alla ben nota istruzione REM, dopo la quale potete inserire qualunque commento, ma alla possibilita' di assegnare alle variabili nomi composti da piu' lettere, tutte significative. Per chi non avesse compreso l'u tilita' del poter attribuire alle variabili nomi attinenti al loro contenuto ci proferiamo in un esempio chiarificatore, che trovate nella pagina seguente. Supponiamo di voler scrivere un breve programmino che calcoli il costo totale di uno ZX Spectrum. La formula, se e' lecito cosi' chiamarla,dovra' tener conto del costo reale e della famigerata IVA. Il programma potrebbe essere del tipo :

10 INPUT x
20 INPUT y
        30 LET p=x+x/100*y
40 PRINT p

Per il ruolo che deve svolgere questa procedura e' perfetta,ma volendola riutilizzare dopo un mese vi rendereste conto della incomprensibilita' di un listato privo della minima documentazione. Perche' risulti 'leggibile' anche dopo mesi e ad altri che voi, basta modificarlo cosi'

  10 INPUT "Costo ";costo
20 INPUT "IVA % ";iva
          30 LET prez=costo+costo/100 iva
  40 PRINT "Prezzo ";prez

I piu' smemorati, o i formalisti avrebbero inserito anche un bel

5 REM calcolo costo SPECTRUM

ma in un simile programma sembra quasi superfluo. Finita questa bella e interessante chiaccherata (brusio di fondo) possiamo continuare cercando di essere un tantino piu' pratici, cosicche' nessuno abbia a dire che RUN e' una rivista di poco pratici.

Prima dobbiamo spendere ancora qualche parola a riguardo dell teoria, la quale dice che ogni problema, per quanto complesso esso sia, e' scomponibile in diversi sottoproblemi. E' facile intuire quanto sia piu' conveniente ai fini della programmazione scomporre un problemone in problemini piuttosto che tentare di risolvere tutto assieme. Cio'che si deve attuare e' quindi la scomposizione di ogni programma in diverse procedure, partendo da quella piu' lontana alla soluzione finale. Daltronde questa operazione viene normalmente compiuta da tutte le massaie. Si! Avete letto bene, abbiamo scritto massaie. Queste infatti prima di cuocere la pasta preparano tutti gli ingredienti necessari, in modo da non dover correre per la cucina durante la fase piu' delicata, la cottura. Cosi' come le donne di casa, anche i programmatori devono rendere le loro azioni, in termini di programmi, il piu' lineari possibile. Per chi e' abituato a programmare in top-down, senza cioe' analizzare il problema che si vuole risolvere prima di iniziare a battere i tasti, puo' risultare abbastanza difficile strutturare un programma, ma ovviamente i vantaggi offerti dalla strutturazione, leggibilita' del listato e linearita' in esecuzione, valgono qualche sforzo.

Dovete inoltre tenere conto del fatto che i vantaggi della programmazione strutturata si sentono solo su programmi di un certo peso, e questo e' il motivo principale per cui non ci siamo esibiti in un esempio pratico. In questa rubrica tratteremo argomenti sempre piu' interessanti e, anche se non molto semplici, alla portata di tutti. Chi e' interessato a migliorare il proprio stile di programmazione non si lasci sfuggire questo corso, MAI !!!

COSA C'E' DI NUOVO TARGATO ZX

E' finalmente arrivato il tanto atteso momento in cui la Sinclair ha messo in vendita il latitante microdrive. Da quando e' stato annunciato per la prima volta e' passato piu' di un anno e le caratteristiche sono state modificate in abbondanza. E'ormai certo che si tratta di uno stringy-floppy e non un floppy, si sa anche che e'indispensabile l'interfaccia RS232 e proprio in questa interfaccia si trova una seconda ROM contenente un nuovo set di comandi dedicato alla comunicazione fra lo Spectrum e (udite udite): 8 Microdrive , 64 ZX Spectrum e tutto quello che puo' essere attaccato a una RS232.

Sappiamo che state gia' friggendo sulle sedie per sapere come avere un Microdrive e la ZX Interface 1, ma in questo momento anche gli inglesi stanno soffrendo poiche' la produzione va ancora molto a rilento... Forse per marzo si potranno avere i primi pezzi e anche le cartucce di nastro da 200Kbytes dovranno, per quella data, essere disponibili.

Per quanto ne sappiamo funzionano a meraviglia ed il nuovo set di comandi comprende tutte le istruzioni visibili sotto la prima fila di tasti ognuna delle quali ha piu' funzioni a seconda del formato utilizzato.

La parte piu' interessante riguardo all'insieme e' comunque quella dedicata per la comunicazione fra piu' Spectrum: il NET permette di collegare fra loro ben 64 computer con una velocita' di comunicazione pari a 100 Kbaud. E' poi anche possibile usare un computer come master per inviare dati a tutti gli altri connessi al NET, rendendo un facile giochetto computerizzare una intera classe. L'RS232 prevede gia' il collegamento con una stampante con l'espansione dei token corrispondenti alle istruzioni; non e'pero' possibile far stampare senza software aggiuntivo la pagina hires o i caratteri grafici.

Per concludere l'exploit Sir Clive ha finalmente immesso sul mercato il suo Microvision 2000 che per la cronaca e' il televisore tascabile a schermo piatto. Secondo le sue migliori tradizioni costa meno di 100 sterline e funziona come il Sony da 200!! Dalle voci del solito corridoio si incomincia a sentir parlare di ZX84: si tratterebbe di un personal con Microdrive, televisore piatto e modem, l'ideale in tutti i casi in cui e' richiesta la portatilita'. Anche qui il prezzo e' supercompetitivo a paragone dei milioni necessari all'acquisto di un simile personal computer.

Infine sempre dalla mente fervida di Sir Sinclair sta per nascere la 'Sinclairmobile' elettrica, in grado di risolvere i difficili problemi della circolazione cittadina. Ancora una volta restiamo in attesa della presentazione ufficiale in cui si vedra' qualcosa di incredibile ad un prezzo ancora piu' incredibile! E tutto questo sempre con il 'technological breakthrough' a cui ci ha abituato Sir Clive Sinclair da sei anni a questa parte. Di solito si dice che chi vivra' vedra', in questo caso si vedra' se la Sinclair ci riuscira'!

ZX SPECTRUM HARDWARE

Anche se di ridotte dimensioni il vostro computer contiene un sacco di circuiti, che tradotti in transistor basterebbero a saturare la stanza in cui vi trovate. L ingombro ridotto e' il frutto della moderna tecnologia a LSI (Large Scale Integration) e con meno di 25 integrati il vostro ZX funziona a meraviglia. Ogni integrato ha una funzione ben precisa e specializzata: il 'cervello' che coordina tutte le operazioni e' lo Z80 (CPU); il braccio e' il Custom della Ferranti; l'artista che provvede ai colori e' il codificatore PAL ed infine l'archivio delle informazioni sono la ROM e le RAM.

Anche se ogni integrato sa bene cosa fare e' necessario coordinare tutte le operazioni: per questo esiste la ROM che contiene il Sistema Operativo e il Basic. Quando accendete il computer la CPU incomincia a leggere nella ROM cosa deve fare e tutti i circuiti eseguono quello che la CPU ordina. Anche se ai vostri occhi il computer non sta facendo nulla, sta eseguendo parecchie decine di migliaia di operazioni al secondo. Nel frattempo anche il Ferranti lavora come un matto provvedendo alla visualizzazione dei dati in memoria corrispondenti al video.

Dal punto di vista tecnico il vostro ZX e' stato progettato in modo poco usuale: molte delle funzioni solitamente svolte da normali integrati TTL del tipo 74LS sono risolte dal Custom di produzione Ferranti e addirittura tutta la procedura di visualizzazione su TV e' espletata da questo 'superintegrato'. Oltre che per motivi di costi di produzione, la Sinclair ha utilizzato questa soluzione per complicare al massimo la vita a tutti i 'copioni'. Per usare un solo circuitone 'fac totum' sono pero' stati necessari compromessi sulla velocita' del computer.

Tanto per darvi un idea di cio che accade, vi diciamo che il perfido Ferranti sospende il segnale di clock alla CPU quando non vuole essere disturbato durante la visualizzazione della pagina video, e questo capita abbastanza frequentemente, con una riduzione del 20% della velocita' di esecuzione. Un altro impiccio all'esecuzione speedy' dei programmi sono gli Interrupts, ovvero dei salti forzati ad un breve programma in l/m ogni tot millisecondi.

Allo ZX gli Interrupts servono per controllare la pressione di un tasto e per alterare alcune variabili del sistema; ovviamente non si tratta di tempo sprecato, ma utilizzando delle soluzioni circuitali tradizionali questo non sarebbe stato necessario. A parte il Custom, tutto il resto e' regolare, molto piu' che nello ZX81 per cui era necessario molto lavoro per collegare l'interfaccia piu' semplice e banale. Questa prima chiacchierata serve solo a darvi un'idea di che cosa si trova sotto i vostri rosei polpastrelli; nei prossimi numeri andremo piu' a fondo sulle singole parti e vi daremo le informazioni necessarie alla realizzazione di qualche semplice interfaccia, quindi pazientate e meditate fino a gennaio.

UDG di M.S.

Non temete: non si tratta di una nuova casa editrice, ma di un argomento particolarmente "scottante" per tutti i possessori di Spectrum: la programmazione dei caratteri. Leggendo il manuale di Steven Vickers in dotazione al computer si scopre come molto sia stato fatto per facilitare questo compito, inserendo nel sistema operativo istruzioni come BIN, POKE USR "(lettera che si vuore ridefinire)" e la possibilita' di utilizzare i due set, quello programmabile e quello standard, contemporaneamente; se qualcuno di voi ha avuto la possibilita' di utilizzare ad esempio l'ORIC1 si sara' reso conto degli sforzi compiuti in casa Sinclair. Dato a Clive quello che e' di Clive, passiamo ad esaminare i lati negativi dell'argomento. Probabilmente sarete anche voi tra quelli che, ritornando a casa dopo aver visto "TRON", si sono seduti di fronte al fedele ZX con l'evidente intenzione di fare un video-game ispirato alle scene piu' emozionanti dell'ultima fatica dei maghi della Walt Disney; e, altrettanto probabilmente, sarete tra coloro che hanno perso ore e ore nel tentativo di definire una figura piu grande di 64 punti, convertendo in codici decimali i quadrati bianchi e neri che hanno posizione sulla carta millimetrata. Ma adesso, grazie al nostro UDG Editor, potrete creare personaggi, astronavi e altre piacevolezze formate da 512 pixel in pochi minuti!

E adesso che vi siete ripresi dalla "crisi da notizia sconvolgente", passiamo ad esaminare il programma.

All inizio verra' creata una griglia divisa in 8 parti, allo interno della quale e' possibile muovere un cursore utilizzando i classici tasti da 5 a 8; se mentre eseguite questa operazione tenete premuto anche CAPS SHIFT, cambierete il colore del punto in cui si trova il cursore. Quando sarete soddisfatti del risultato ottenuto, premete S, e 8 caratteri verranno programmati ricopiando l'immagine contenuta nella griglia. Seguendo le opzioni indicate dal menu', potrete correggere, listare i codici ed infine ricominciare.

In una prossima puntata vedremo come programmare TUTTI i caratteri dello Spectrum.......

Software test

Un numero sempre maggiore di software house si occupa della produzione di programmi per ZX SPECTRUM, la Sinclair, non volendo passare in secondo piano neanche in questo settore, ha commissionato alla ben nota PSION due programmi, da poco disponibili in Italia nei negozi della catena REBIT - BIT SHOP PRIMAVERA. Non si puo' dire quale sia la cassetta piu' interessante, ma, probabilmente, Cyrus -IS- Chess riscuotera' il maggior successo.

Si tratta, come avrete gia' capito, di un programma per giocare a scacchi. L'idea non e' delle piu' nuove, ma Cyrus e' fratello del programma che ha trionfato agli ultimi campionati Europei di scacchi per microcomputer. E' dotato, oltre che di un ottimo gioco - potete scegliere fra 8 livelli di difficolta' - di interessanti ed esclusive caratteristiche fra le quali citiamo la possibilita' di muovere i pezzi con il cursore, quella di gestire incontri fra piu' di due giocatori e di rendere possibile la correzione di ogni mossa, anche dopo la sua esecuzione. Attenzione, Cyrus e' dotato di una vasta biblioteca dove puo' scovare le aperture piu' strane e micidiali, e' infatti questa la fase del gioco durante la quale il nostro "amico" mostra tutta la sua eccezionale abilita'.

Se non ve la sentite di impegnarvi in una tremenda partita a scacchi con il tenacissimo Cyrus, potete scegliere Scrabble: un gioco sicuramente piu' riposante ed anche educativo.Scrabble, meglio noto dalle nostre parti come Scarabeo (?!), mette a vostra disposizione un vocabolario di oltre 11.000 parole (11.000 !). Utilizzando delle lettere dovete "scrivere" sulla scacchiera, sempre visualizzata, delle parole, comprese nelle ennemila, creando sempre nuovi incroci. Le caselle, cosi' come le lettere non hanno tutte lo stesso valore, occorre un'abilita' diabolica per trovare parole sufficientemente lunghe e inserirle nella posizione piu' vantaggiosa. Il gioco e' giocoso e, a patto di non selezionare il livello piu' difficile (ce ne sono 4), e' adatto a chiunque, quindi..... Buon divertimento !

COME TI SCROLLO IL VIDEO
di
Massimo Soncini

Sara' capitato a molti di voi, di trovarsi di fronte il solito esperto (o presunto tale) di computer che incominciava a guardare con diffidenza la scatoletta nera che troneggiava sulla vostra scrivania e iniziava l'elenco delle funzioni del suo elaboratore, concludendo inevitabilmente con la frase "E il tuo Spectrum, riesce a fare questo?", trovando sempre la lacuna che il buon Clive si e' dimenticato di colmare.

E' quindi evidente che noi di RUN non potevamo rimanere inerti di fronte a queste insinuazioni ed eccoci pronti a fornirvi, da questo numero,le spade con cui difendere il vostro Sinclair. Come prima integrazione vi proponiamo una routine che permette di eseguire lo scroll IN ALTA RISOLUZIONE, pixel per pixel, nelle quattro direzioni. Chiaramente, il programma che permette di ottenere questo effetto e' totalmente in linguaggio macchina, compattando l'occupazione di memoria a soli 160 bytes! Per poter entrare in possesso di queste nuove possibilita' e' sufficiente terminare la lettura di questo articolo,e si passera' al caricamento della routine, seguita da uno schermo dimostrativo. Poiche' la zona in cui il linguaggio macchina si carichera' dipende dalla versione del vostro computer (16K/48K), abbiamo ritenuto opportuno riportare una tabella delle chiamate (RAND USR), che vi consigliamo di ricopiare:

SCROLL         16K          48K
SINISTRA      32000        60000
DESTRA        32026        60026
ALTO          32052        60052
BASSO         32107        60107

Nonostante la brevita' il programma si presenta molto flessibile, permettendo con interventi minimi di far riapparire all'estremita' opposta tutto quello che esce da un lato dello schermo, con inoltre l'opzione dell'inverse.Qui di seguito sono riportati i tre casi e i POKE che bisogna eseguire:

1)SCROLL SENZA RIENTRO LATERALE
POKE 32013(60013),55
POKE 32039(60039),55
2)SCROLL CON RIENTRO LATERALE
POKE 32013(60013),63
POKE 32039(60039),63
3)COME PUNTO 2 CON INVERSE
POKE 32013(60013),0
POKE 32039(60039),0

Le locazioni segnate in parentesi riguardano gli Spectrum 48K.

Corso di linguaggio macchina by:
Dario Mella

Linguaggio macchina,assembler: questa espressione, per coloro che si dilettano a programmare in Basic, Fortran, Pascal ecc. e' spesso causa di disagio e si pensa a qualcosa al di la' della nostra mente, un divertimento riservato solo a pochi eletti. Questo nostro corso non vi dara' ovviamente tutte le nozioni necessarie alla creazione di un programma per giocare a scacchi ma vi dara' comunque una buona conoscenza sulla materia.

Cos e' il codice macchina ?

La risposta e': un linguaggio come un altro, anzi piu' semplice,perche' le istruzioni di cui si compone sono concettualmente semplicissime. La piu' grande differenza e' che non si scrivono le istruzioni come parole segni di interpunzione e nomi di variabili, ma sotto forma di numeri. Ogni computer ha la possibilita' di venir programmato in L/M anche perche' ogni istruzione di alto livello,per essere eseguita deve venir interpretata e tradotta in routine di L/M dalla ROM.

In L/M potete leggere e scrivere numeri nella memoria, potete fare addizioni,sottrazioni e salti nel programma, condizionati e non. Come esistono vari 'dialetti' Basic, esistono anche diversi codici macchina in dipendenza della CPU che il computer usa. Dato che nel nostro caso si tratta di uno Z80 i riferimenti saranno tutti sul set Z80 di comandi. Tutti gli esempi sono gia' nel vostro Spectrum e vi risparmiamo la fatica di caricarli. Per uniformarci alla maggioranza dei testi i numeri che formano i listati dei programmi in L/M verranno scritti in esadecimale, cioe' in un sistema di numerazione che anziche' avere come base 10 ha come base 16 La scelta della base 16 e dettata dal fatto che e' molto piu' vicina al modo di "pensare" della macchina di quanto non lo sia la base 10. Apprezzeremo comunque piu' avanti questa scelta. Per adesso ci basta sapere che c9 in hex o 201 in decimale sono la stessa cosa. Eccovi ora un programmino in BASIC per operare le conversioni da decimale in hex e viceversa. Fate un po' di pratica e cercate di capire il perche' dei risultati.

Tenete presente che le lettere dei numeri hex dovranno essere scritte minuscole. Dando RUN avrete la conversione da dec a hex; RUN 1000 convertira' da hex a dec. Quando sarete stufi di fare conversioni e vorrete continuare nella lettura della rivista,fermate il programma e date semplicemente LOAD"".

COME ACCEDERE AL L/M

Il primo problema e' quello di scrivere qualcosa in l/m; il che significa mettere in qualche punto della memoria questi benedetti numeri. Tale scopo si raggiunge con l'istruzione BASIC "POKE"

Se diamo il comando

POKE 25000,201

il risultato sara' che nella cella di memoria 25000 verra' scritto il valore 201. Per controllare sara' sufficiente fare PRINT PEEK 25000 che dara' come risposta 201.

Il comando POKE non ha effetto se si tenta di scrivere nella zona di memoria riservata alla ROM (indirizzi da 0 a 16383) Gli amanti delle curiosita' potranno fare il seguente esperimento per vedere come effettivamente i POKE alterino il contenuto della memoria. Caricate un qualunque programmino BASIC e date dei POKE dove, al posto dell'indirizzo, scriverete dei numeri compresi tra 23755 e 24000 e,al posto del valore dei numeri casuali scelti tra 0 e 255. Le locazioni tra 23755 e 24000 sono approssimativamente quelle dove viene memorizzato il listato di un breve programma.

Con le operazioni sopra descritte voi lo altererete e il comando LIST vi dara' delle sorprese. Un programma in linguaggio macchina potrebbe dunque essere scritto con tanti POKE,ma questo diventerebbe estremamente lungo e sarebbe facile causa di errori; ecco dunque un hex-loader, cioe' un programma in BASIC che permette di caricare un programma in l/m espresso nella forma di numeri esadecimali. Le istruzioni di funzionamento sono abbastanza semplici:

1) scrivere l'indirizzo di partenza del programma (la cui scelta sara' un argomento che discuteremo piu' avanti)

2) inserire il listato hex sotto forma di doppietti (ogni nu- mero hex e' formato da 2 cifre). Il numero di doppietti per riga e' arbitrario

3) Digitare "s" e il caricamento terminera' Per fare un po' di pratica annotatevi il seguente listato il cui significato per ora vi sara' oscuro:

3e02cd011606e0c53e2ad7c110f9c9

Ora caricate HEXLOADER e date RUN. Quando vi verra' chiesto l'indirizzo, scrivete 30000. Inserite poi i numeri hex. Finito il caricamento date RANDOMIZE USR 30000 e osservate il risultato:se non avete fatto errori, verranno stampati 224 asterischi. Poi, per tornare alla lettura della rivista, date LOAD ""

Dopo una operazione di inserimento eseguita con HEXLOADER il programma in codice macchina e' scritto nella memoria pronto a funzionare. Ad esempio,dopo l'inserzione del programma che stampava asterischi nella memoria avevamo la seguente situazione:

Indirizzo   contenuto hex  dec
 30000                 3e   62
30001                 02   2
  30002                 cd   205
30003                 01   1
30004                ... ecc

Come avrete notato,per abilitare il l/m e' sufficiente dare un qualsiasi comando BASIC dove compaia la funzione USR seguita dall'indirizzo a cui parte il codice macchina;nell' esempio era 30000
Due sono le cose importanti da osservare nel precedente programma. La prima e' il ridottissimo consumo di memoria rispetto al BASIC. Infatti il listato in questione e' lungo solo 15 celle di memoria o
bytes. Il corrispondente in BASIC:

    9900>FOR f=1 TO 224
9910 PRINT "*";
9920 NEXT f    

ne occupa invece 40! la seconda e fondamentele proprieta' del l/m e' la velocita'. Controllate la differenza che c'e' facendo girare prima il BASIC per tre volte ,in modo da riempire lo schermo e poi tre chiamate al l/m (FOR a=1 TO 3: RANDOMIZE USR 30000: NEXT a)

SPARA TU CHE SPARO ANCH'IO..

Un classico 'shoot 'em up' non poteva mancare in questo primo numero. Non si tratta comunque di un banale Space Invaders, ma di una raffinata quanto piu difficile versione a dodici schermi ingrado di farvi passare un po' di tempo sul gioco a provare la vostra abilita'. Per rendere comodo il gioco abbiamo scelto i tasti C. Shift, Z e Space per gli spostamenti e il fuoco, quindi la funzione Break e' disabilitata. Se volete uscire dal gioco dovete resettare il computer.

BUON DIVERTIMENTO !

LA POSTA DI RUN

Siamo al primo numero e di posta non ne abbiamo ancora molta, per lo piu' si tratta di richieste di maggiori informazioni su questa fantomatica testata. Il colloquio con voi lettori rimane sempre un punto di grande importanza per lo sviluppo di questa nostra iniziativa quindi non fatevi alcun problema nel mandarci una letteraccia in cui elencate una ventina di cose che secondo voi non vanno,ne terremo conto per il numero successivo. Se poi la vostra lettera puo' interessare anche gli altri lettori allora potrete vederla pubblicata in queste ultime pagine.

Le occasioni di RUN, mercatino

Come per la posta, anche per quelle vostre richieste di cambi acquisti e vendite e' stato pre disposto uno spazio. In questo numero vedete dei numeri di pagina apparentemente errati, ma sono quelli fissati per le due rubriche che per que sta volta 'marcano visita'. Se avete quindi qualcosa da scambiare, se cercate uno schem o volete vendere il vostro ZX dalla disperazione, allora scrivete in non piu' di cinque righe da 32 caratteri il vostro annuncio e mandatelo a :

RUN
Aquarius Edizioni snc
C.so Vittorio Emanuele 15
20122 MILANO

SUL PROSSIMO NUMERO

Non lasciatevi scappare il prossimo favoloso numero di su cui potrete trovare:

Basic & L/M part 2
I segreti  della CPU
I colori e  gli Attributes
Linguaggi: il FORTH

per non parlare poi dei giochi..

Tre eccezionali giochi

Palloni areostatici
SUPERBALL
Uomini e Topi

e non dimenticate che su RUN troverete tanti altri articoli ed un simpatico programma per far suonare un po' il vostro timido computer. Se gia' state aspettando il prossimo numero, vi siete dimenticati dell ultimo programma di questo numero...

voltate pagina e scoprirete che...

METEORS

Siete in un mare di guai, o meglio in un mare di meteore che con fare disinvolto rimbalzano per lo spazio con buone probabi- lita' di colpire la vostra nave spaziale. Come se non bastasse anche un gruppo di fastidiosi ufetti e ufini cerchera' di complicarvi un altro po' l'esistenza. Il computer di bordo vi dara' le istruzioni necessarie a compiere la vostra missione.

COMPUTER DI BORDO A CAPITANO
STATO DELLA NAVICELLA:
Sistemi di difesa: OPERATIVI
Hyperdrive:  EFFICENTE  100%
Giroscopi:   12000 giri/min.
Motori: EFFICENTI SU 360 gr.
Sistema di guida: tasti  6 7
Ignizione motori: tasto   8
Salto iperspazio: tasto   9
Missili dirompenti: tasto 0
Possibilita' di riuscita:3/9
...... FINE MESSAGGIO ......

Un ringraziamento dal cuore va oltre che a RetroPlay, per aver fornito gratuitamente lo spazio web, alla RamSoft (autrice del MakeTZX, usato per la conversione delle audiocassette Spectrum) e ad Andreas Matthies (autore del Tape64, usato per la conversione delle audiocassette per C64); e, beh... naturalmente anche a tutte le case editrici che per anni ci hanno dato così tanti giochi da poter ricordare :-)
Senza i loro splendidi programmi, questo sito non avrebbe alcun motivo d'esistere.