Na jut Leute diese anleitung ist nur fuer diejenigen die schon erfahrung mit BASIC machten um darauf hinzuweisen ich habe nur die interessantesten befehle notiert.. um euch nur zu zeigen wie gut blitzbasic wirklich ist ... es sind eine reihe sources dabei mit denen man experimentieren kann. ich habe diese kleine anleitung nur geschrieben das dieses produkt sich nicht die falschen leute kaufen und dann enteuscht sind aber die freaks die von diesem basic ueberzeugt sind die sollten es sich schon zulegen.. wenn man profi soft schreiben will muss mans sowieso... also leute viel spass meim experimentieren..... Fangen wir mit dem Editor an.....das Meiste erklaert sich wohl von selbst Damit meine ich die Menuleiste ... Erst mal ein paar techniche Daten zum Compiler..... - Das Basic schaltet das Betriebssystem ab also kein Multitask.... - Dieses Basic ist nur fuer Demos und Spiele gedacht es ist aber auch moeglich dateien zu verwalten allerdings sehr primitiv.... - Der Compiler compiliert 6500 zeilen die minute.... - aber dafuer kann man aber beliebige IFF dateien laden - 4 Kanal stereo songs abspielen kein Soundtracker dafuer muesste ein Konverter geschrieben werden. - es ist ohne Probleme moeglich Copperstreifen auf dem bildschirm zu bekommen. - und der vBlank kann abgefragt oder in eine routine verzweigen... Na ist das nichts...... .... ok das wars erst mal Variabeln.... nummerische Variabel koennen werte von -32768 bis +32768 dann gibts noch Strings und das wars schon von den Vriabeln bsp: a=10 b=20 text$="Sting" wie lang variabeln namen und strings sein duerfen konnte ich bis jetzt noch nicht in erfahrung bringen..... aber achtung bei dimensonierten Variabeln muss auch die laenge der variabeln angegeben werden..... bsp: DIM A$(100,10) das heisst das 100 Strings mit einer laenge von je 10 zeichen definiert wurde ....na alles klar. Achtung ueberhaupt bei strings muss die laenge mit angegeben werden DIM a$(100) A$ kann jetzt 100 zeichen lang sein operatoren... es kann genau so gerechnet werden wie bei anderen basicsprachen... mit "+" , "-" , "/" , "*" a=a+1 c=10/20+1*4 Labels....... es wird wenn benoetigt labels benutzt die am anfang einer zeile stehen mussen Logische entscheidungen........ nartuerlich gibst auch .... "=" gleich "<" kleiner als ">" groesser als "<=" kleiner als oder gleich ">=" groesser als oder gleich Bildschirm...... Achtung leute es gibt keine window nur screens man kann sie auch nicht verschieben.Um dieses klar zu stellen..... Nun die Syntax ..... da ich auch nicht alle Befehle kenne habe ich teilweise nur die syntax und ein kleines beispiel programm stehen.... und dann heisst es ausprobieren...... uebrigens teilweise in englisch da ich selber nicht alles uebersetzen kann und nartuerlich nehme ich kein gewaehr fuer die syntax und ausfuehrung.. BEND dept,rate,soundchannel Beispiel: SLOAD "asound",0 load a sound BEND 100,.1,0 set Bend SOUND 0,0 wow MOUSEWAIT warte auf mausdruck ------------------------------------------------------------------- BLIT blitnummer,x,y BLIT number TO number Copiert ein objekt auf die pos. x,y Copiert ein bestimmtes objekt an die stelle eines anderen objekts fuer eve. Animation Beispiel: BLOAD "theblit",0,1,0 lade blitter objekt BLIT 0,100,100 copiere objekt "0" auf pos 100,100 MOUSEWAIT warte auf maustaste BMODE 3 set ged-rid-of mode BLIT 0,100,100 copiere wieder MOUSEWAIT und nochmal warten ------------------------------------------------------------------- BLITWAIT warte auf blitter bis er fertig ist und arbeite dann erst dann weiter ------------------------------------------------------------------- BLOAD filename$,blitnummer,cookieflag,colloreregister Laedt ein blitter objekt in den speicher muss allerdings ein IFF File sein filename$ ist klar Blitnummer man muss dem objekt eine nummer von 0 - kein speicher mehr da geben mit der nummer wird dann immer wieder in anderen befehlen gearbeitet... BLOAD "theblit",0,1,0 Lade ein blit objekt als nummer 0 Make a Cookie cut for it ,and load in it`s und das colorregister wird ab register 0 reingeladen.... ------------------------------------------------------------------- BMODE 0/1/2/3/-1/-2 Beispiel: PAINT 0,0,3 BLOAD "ablit",0,1,0 FOR a=0 TO 3 BMODE a BLIT 0,0,a*32 NEXT MOUSEWAIT ------------------------------------------------------------------- BOX X1,Y1,X2,Y2,mode,colorregister der befehl ist soweit selbsterklaerent ------------------------------------------------------------------- CIRCLE x,y,radius,colorregister genaus wie oben ... ------------------------------------------------------------------- CLEAR Loescht alle Variabeln und Strings ------------------------------------------------------------------- CLOSE filenummer$ schliest ein file was vorher geoffnet wurde ------------------------------------------------------------------- CLS screennummer Loescht den aktuellen screen... ------------------------------------------------------------------- COLOR colorregister setzt die geweunschte farbe und gibt sie dann mit dem printtext aus COLOR 2 PRINT "STING" MOUSEWAIT ------------------------------------------------------------------- COOKIECUT screennumber Beispiel: SCREEN 1,640,32 SCREEN 2,640,32 USE SCREEN 1 PRINT "YEAH" SCREEN TO 2 COOKIECUT 2 USE SCREEN 0 REPLACE 0,0,32,8,1,2 MOUSEWAIT ------------------------------------------------------------------- DATA konstante,konstante es koennen beliebige werte abgelegt werden und wieder mit READ gelesen werden. Beispiel: DATA 10,20,40,50 DATA "TEST",20,"STING" ------------------------------------------------------------------- DIM varname(dim),usw Beispiel: DIM A$(20) as dar 20 zeichen lang sein DIM A$(20,10) es koennen 20 variabeln mit einer laenge von 10 zeichen benutzt werden. ------------------------------------------------------------------- DISPLAY pixelwith,pixelheigh,hires ?,mode,smooth,frontscreen,(backscreen) definiert ein beliebigen bildschirm der auch ausehalb sein darf ist wohl gedacht zum buterweichen hineinfahren.... Beispiel: SCREEN 0,640,400,3 set up foreground screen SCREEN 1,320,200,3 and backgrund screen DISPLAY 320,200,0,1,0,0,1 and set up display to show one quarter of it.(in dual playfield mode ) SHOWB 1 show background screen SHOWF 0 and foregrund.. USE SCREEN 1 use background screen PRINT "STING" USE SCREEN 0 use foregrund screen PRINT "STING schon wieder" MOUSEWAIT ------------------------------------------------------------------- DMA 1/0 Schaltet DMA ein oder aus Beispiel: DMA 0 schaltet DMA aus RGB 0,15,15,15,100 setzte farben auf zeile 100 RGB 0,15,7,0,150 usw. zeile 150,175 RGB 0,15,3,0,175 DMA 1 einschalten MOUSEWAIT ------------------------------------------------------------------- ich setze die funktion von den folgenden befehlen voraus damit meine ich das diese bakannt sind. IF a=10 THEN ELSE ENDIF ----------- END ----------- GOTO ----------- FOR a=1 to 10 (step) NEXT ----------- GOSUB ----------- LOCATE x,y ----------- PRINT ------------ READ A$,b ------------ REM ------------ RETURN ---------------------------------------------------------------- FADEIN federate,colorregister.. federate geschwindigkeit des ein bzw. ausblenden blendet bestimmte farbregister aus oder ein... FADEIN 2 ---------------------------------------------------------------- Fadeout faderate,colorregister blendet das bestimmte register aus ---------------------------------------------------------------- FLOAD filename$ laedt einen IFF zeichensatz und stellt diesen direkt zur verfuegung --------------------------------------------------------------- FREE screen/blit/sprite/sound/queue number gibt den speicher frei der vorher fuer bestimmte screen,blitter objekte usw. benutzt wurden..... --------------------------------------------------------------- LINE x1,y1,x2,y2,color --------------------------------------------------------------- LOAD filename$ --------------------------------------------------------------- PAINT x,y,color --------------------------------------------------------------- RGB farbregister,rot,grueb,blau RGB farbregister,rot,gruen,blau,zeile die eingefaerbt werden soll --------------------------------------------------------------- PLOT x,y,color --------------------------------------------------------------- PLOAD filename,x,y,color laedt ein IFF bild und gibt dieses direkt auf dem bildschirm aus --------------------------------------------------------------- SCREEN screennummer,xbreite,ybreite,planes --------------------------------------------------------------- SCROLL x1,y1,xbreite,yhoehe,x2,y2 beispiel: LOCATE 78,0 PRINT "HI" a=1 TO 320 VWAIT SCROLL 1,0,639,8,0,0 NEXT MOUSEWAIT --------------------------------------------------------------- VBLANK label fuerth alle 1/50 einen sprung aus und zwar aud dem angegeben label diese unterrountine muss mit einem RETURN beendet werden . die unterroutine darf nicht keinen fall laenger dauern alls 1/50 VBLANK rout rout: RETURN ---------------------------------------------------------------- VWAIT wartet auf vertikal blanking ----------------------------------------------------------------- XFLIP blit/sprite number spiegelt ein sprite oder ein bob Horizontal. ----------------------------------------------------------------- YFLIP blit/sprite genau wie oben halt nur Vertikal ... ----------------------------------------------------------------- ASC(string) wandelt das string in dem ASCII code um... ----------------------------------------------------------------- AVAIL(mem) reserviert speicher. mem = 1 all memory = 2 fast memory = 3 Chip memory ---------------------------------------------------------------- CHR$(nummer) ascii code usw......... ---------------------------------------------------------------- EDIT(default,laenge) ist wie input halt mit laengen angabe und zeichenvordefinition anwendung: age$=EDIT("NA",10) ---------------------------------------------------------------- EXEC$(string) fuert einen cli befehl aus .... EXEC$("DF1:Dir") ---------------------------------------------------------------- INKEY$ uebergibt eine tastemdruck der variabel.... a$=INKEY$ ---------------------------------------------------------------- Left$(STRING,start) schneidet linksbuendig ab der 4 stelle ab.... ---------------------------------------------------------------- len (string) ist wohl bekannt ---------------------------------------------------------------- MID$(string,anfang,ende) allgemein der befehl....... ---------------------------------------------------------------- MOUSEX MOUSEY ist wohl auch klar...... ---------------------------------------------------------------- RIGHT$(string,nummer) allgemein gleich... ---------------------------------------------------------------- RND gibt einen zufaelligen wert zwischen 0-1 aus ...... ---------------------------------------------------------------- So leute das wars erst mal ... wer dateiverwaltung machen moechte der sollte mir einen brief schreiben dann werde ich eine fortsetzung schreiben. es tut mir leid das nicht alle befehle hier drin stehen ... und dann oft nur spaerlich erklaert ist aber alle befehle mit ihren beispielen aufzuschreiben und das nachts um 01:30 geht uber mein verstaendnis zumidest fuer heute..... die meisten befehle erklaeren sich durch die massigen beispiele ... und die kurze syntax fuer eingefleischte basicfreaks durfte es kein problem sein hiermit zu arbeiten...... dann viel spass leute gruesse Nightcrawler,Prodev ..... mfg...sting