programmazione e programmi in GFA-BASIC per DOS e WINDOWS GRATIS CORSO DI PROGRAMMAZIONE di FANUCCI Cristiano

CORSO DI GFA-BASIC

SEMPLICE CORSO DI PROGRAMMAZIONE PER PRINCIPIANTI

(dedicato a chi gia' conosce un po' il Basic)

By Cristiano Fanucci
(Versione 2 del 28/07/99)


INTRODUZIONE

Il GFA-BASIC della Systemtechnik Gmbh e' un semplice ma potente linguaggio di programmazione che nelle sue varie versioni gira su tutti i PC su vari sistemi operativi DOS, OS2, WINDOWS, SCO Open desktop, UNIX ecc.
Questo BASIC e' nato in ambiente ATARI, poi e' stato trasportato sull'AMIGA e infine su DOS e WINDOWS per cui i programmi scritti in GFA_BASIC girano con poche modifiche anche sui computer APPLE, ATARI e COMMODORE.

La sua caratteristica principale e' di essere compatibile con molti altri BASIC (QBASIC, GWBASIC, TURBOBASIC ecc.) pur avendo centinaia di comandi nuovi che gli altri BASIC non hanno (es. gestione dei files musicali .WAV .MID e dei files di grafica .BMP).
IL GFA-BASIC E' SCARICABILE GRATUITAMENTE DA INTERNET COLLEGANDOSI CON IL SITO: The Home of GFA-Basic su compuserve.com. SI TRATTA DI VERSIONI DIMOSTRATIVE, PERFETTAMENTE FUNZIONANTI, limitate solo nel numero di righe che possono essere lette dall'editor (333 in DOS e 1000 in WINDOWS).

VI ASSICURO CHE SCRIVERE PROGRAMMI DI 1000 RIGHE NON E' DA TUTTI, QUINDI PROVATE LE VERSIONI TRIAL, SONO ASSOLUTAMENTE SUFFICIENTI PER OGNI ESIGENZA, E POI CON UN PO' DI FANTASIA NON VI SARA' DIFFICILE CREARE PROGRAMMI PIU' LUNGHI!.... (Se poi non avete fantasia scrivetemi!)

L'unica cosa che disturba un po' e' un difetto dell'editor del GFA-BASIC per WINDOWS, che a volte si inventa pezzi di riga mai scritti, (succede spesso quando si cancella un pezzo di riga) ma basta dare un INVIO per farli sparire, a volte ha difficolta' a cancellare una lettera con il tasto 'CANC' (usare il tasto <--- BACK CANC) credo che siano piccole difficolta' create appositamente per spingerci all'acquisto della versione completa, VERSIONE che mi dicono sia in vendita in Inghilterra a circa 200 sterline, mentre il distributore ufficiale in italia (SILICON VALLEY) pare che ormai si sia completamente disinteressato del GFA-BASIC, (basta vedere il suo sito su Internet).


In questo corso creeremo insieme diversi programmi di grafica e musica, prima però E' NECESSARIO SCARICARE i programmi da INTERNET e registrarli in due directory GFA_DOS e GFA_WIN naturalmente dovrete dezippare i files scaricati, guardate bene cosa avete scaricato, troverete centinaia di esempi di programmazione in formato .LST e .GFA (per DOS) e .GFW (per WIN).

CONSIGLI PRATICI


I FILE PRINCIPALI DI CUI BISOGNA ESSERE IN POSSESSO PER USARE IL GFA.BASIC per DOS SONO:

GFADEMO .EXE ----> E' L'EDITOR DEL GFABASIC IN VERSIONE TRIAL LIMITATA A 333 RIGHE
GFABA500.OVL ----> E' LA LIBRERIA FORNITA GRATUITAMENTE CON IL GFADEMO.EXE (solo PER 286)
GFABA573.OVL ----> E' LA LIBRERIA NECESSARIA PER I P.C. 386 486 E PENTIUM (si trova in INTERNET)

GFA2EXE.EXE ----> E' IL COMPILATORE CHE TRASFORMA I PROGRAMMI *.GFA IN *.EXE

Dopo aver lanciato il GFADEMO.EXE scrivete il vostro programma e salvatelo come MIO.GFA poi uscite e da DOS scrivete GFA2EXE MIO.GFA , otterrete la creazione di MIO.EXE , un eseguibile che funzionera' solo se nella stessa directory sara' presente anche GFABAS73.OVL.
Quindi per distribuire un vostro programma, dovrete allegare anche la suddetta libreria. Chi non fosse riuscito a scaricare i programmi suddetti, li puo' scaricare da qui:
DOSTRIAL.ZIP
GFABA573.OVL


I FILE DI CUI BISOGNA ESSERE IN POSSESSO PER USARE IL GFA.BASIC per WINDOWS SONO:

GFW_DEMO .EXE ----> E' L'EDITOR DEL GFABASIC IN VERSIONE TRIAL LIMITATA A 1000 RIGHE
GFARUN10.DLL -----> E' LA LIBRERIA FORNITA GRATUITAMENTE CON IL GFW_DEMO.EXE.
GFARCS.DLL -------> E' UNA SECONDA LIBRERIA FORNITA GRATUITAMENTE.

Dopo aver lanciato il GFW_DEMO.EXE scrivete il vostro programma e salvatelo come MIO.GFW poi dal menu File lanciate Make.exe, scegliete un'icona e otterrete la creazione di MIO.EXE un eseguibile che funzionera' solo se nella stessa directory saranno presenti anche GFARCS.DLL e GFARUN10.DLL. Quindi per distribuire un vostro programma, dovrete allegare anche le suddette librerie.


Se avete la versione TEDESCA del GFA potrete cambiarla in quella in INGLESE.
Lanciate GFW_DEMO.EXE, cliccate su CONFIG (barra in basso) togliete la crocetta da Menu Deutsch (cliccandoci sopra) e premete su Speichern (registra), poi uscite dal programma e infine lanciatelo di nuovo, questa volta sara' nella versione INGLESE. Chi non fosse riuscito a scaricare i programmi suddetti, li puo' scaricare da qui:
WINTRIAL.ZIP


ED ORA E' NECESSARIO STUDIARSI L'ELENCO DEI COMANDI BASIC CHE SI HANNO A DISPOSIZIONE.

IL GFA per WINDOWS possiede uno strepitoso HELP IN LINEA (GFAWIN.HLP) che vi consiglio di consultare subito. Puo' essere utile anche a chi programma in DOS, lasciate l'ICONA sul DESKTOP!
PER CHI CONOSCE GIA' UN LINGUAGGIO BASIC, E' NECESSARIO STUDIARE I COMANDI DEL GFA, PERCHE' ALCUNI POSSONO ESSERE UN PO' DIVERSI DA QUELLI CONOSCIUTI E MOLTI ALTRI SONO NUOVI (Es. FILESELECT, PLAYSOUND, OPENW, ALERT ecc.). VI INVITO A LEGGERE IL FILE IN INGLESE, PER GLI ISCRITTI AL CORSO E' DISPONIBILE LA TRADUZIONE IN ITALIANO DELL'HELP per WINDOWS E UN PROGRAMMA MIO DI HELP IN ITALIANO PER LA VERSIONE DOS DEL GFA-BASIC...
STUDIATEVI l'ELENCO DEI COMANDI DEL GFA-BASIC (in inglese) E PER I PIU' ESPERTI ECCO UNA DESCRIZIONE COMPLETA (in inglese) DELLE CARATTERISTICHE DEL GFA-BASIC NELLE VERSIONI PER DOS E WINDOWS.
Se avete incontrato difficolta' nello scaricare i programmi, contattatemi all'indirizzo chrisfanny@dada.it.


~~~~~~~~~~~~~~~~~~~~~~~~~

FANTASIA NELLA PROGRAMMAZIONE?

Il lavoro di programmatore puo' essere terribilmente noioso e stressante o fantasticamente creativo ... dipende certo da cosa state programmando, ma soprattutto dal metodo di programmazione che usate.
In tutti i testi sulla programmazione troverete che senza DIAGRAMMI DI FLUSSO (FLOW CHART) non si puo' programmare e che e' un grave errore dei programmatori alle prime armi, ma spesso anche dei piu' esperti, quello di mettersi al computer prima di aver steso una dettagliata specifica del programma e il relativo diagramma di flusso.
Tutto questo e' vero... ma fino a un certo punto... Voglio spezzare una lancia in favore della fantasia!...
Secondo me , se si ha gia' una certa esperienza e si vuole programmare creativamente inventando qualcosa di non banale, qualcosa che stupisca, NON E' POSSIBILE fare prima un DIAGRAMMA di flusso di cio' di cui non si ha nemmeno un'idea...
Il diagramma servira' in seguito (forse) per trasformare in un programma ordinato gli effetti speciali che avrete prima inventato....
Pero' io vi CONFESSO che in 30 anni di programmazione NON HO MAI USATO UN DIAGRAMMA DI FLUSSO!
E cio' fara' si che quei pochi lettori che sono arrivati fin qui con la speranza di imparare un lavoro serio (programmatore), decidano di chiudere il collegamento.... Per chi invece vuole imparare anche divertirsi con il computer, continuo dicendo che il mio metodo e': sperimenta sempre, fai piccole modifiche e poi prova e riprova! (sulle orme di GALILEO).

Il mio metodo e' quello di cominciare con un nucleo, un qualcosa che funzioni, (una formula, un effetto speciale) e poi costruirci intorno il programma, cercando, se possibile, di avere una parte principale (MAIN) di poche righe e tante piccole subroutines (PROCEDURE).
Nel caso dei giochi spesso e' necessario prima trovare gli effetti speciali, e poi imbastirci intorno il gioco... (Gli effetti speciali sono tutto in un film come in un videogioco!). Così nel caso del mio WATERWORLD, prima ho trovato il modo di fare un cielo pieno di sfumature e un mare in burrasca, poi aggiungendo il rumore del mare ne ho fatto un salvaschermo.. quindi ho intravisto la possibilita' di farne un videogioco e ho aggiunto bersagli mobili, spari e punteggi, e solo in ultimo (dopo aver visto il film in TV) mi e' venuta l'idea del titolo.

Sarebbe stato possibile creare il gioco partendo dall'idea del film? forse si... ma che fatica, che STRESS, sarebbe stato per il programmatore creare la FLOW CHART del gioco senza avere a disposizione nulla!... e che DIVERTIMENTO invece, trovare tanti effetti speciali e assemblarli in un gioco...

SOMMARIO

CAPITOLO 1