Blitz BASIC

in Wikipedia, die vrye ensiklopedie
Spring na: navigasie, soek

Blitz BASIC 'n programmeertaal gebaseer op die rekenaartaal BASIC. Dit was in ongeveer 1991 eers op die Commodore-Amiga beskikbaar. Tans is Blitz BASIC vir diverse ander bedryfstelsels beskikbaar, o.m. vir Linux, Apple Mac en Windows. Blitz BASIC is hoofsaaklik geskik om spelletjies te ontwikkel. Die taal het veel ingeboude funksies om met geluid en beelde om te gaan.

Geskiedenis[wysig]

Die eerste Blitz BASIC is in Nieu-Seeland deur Acid Software vir die Amiga ontwikkel. Alhoewel Blitz BASIC die algemeen bekende term is, is daar die afgelop paar jaar nuwe variasies van Blitz BASIC op die mark gekom:

  • Blitz BASIC
  • BlitzPlus
  • Blitz3D
  • BlitzMax

Blitz BASIC[wysig]

Blitz Basic is in Oktober, 2000 op Windows beskikbaar gestel. Toe Blitz BASIC met enkele uitgawes van Engelse rekenaartydskrifte versprei is, het dit veel nuwelinge gelok. Die oorspronklike Blitz BASIC word nie verder ontwikkel nie. Die advies is om BlitzMax te gebruik.

Blitz3D / BlitzPlus[wysig]

Dit is 'n versie van BlitzPlus met extra 3D-moontlikhede, en is 'n direkte mededinger van Dark Basic. Blitz3D gebruik nog steeds DirectX7 en daardeur kan Blitz3D spelletjies op oue rekenaars gespeel word.

BlitzMax[wysig]

BlitzMax is die moderne en meest onlangse OOP (Objek Georieenteerd Programmering) versie van Blitz BASIC. BlitzMax ("BMX") programme wat in Windows ontwikkeld word, is geskik om in Linux gespeel te word. Die randvoorwaarde is dat die program eerst op Linux hergekompileerd word. Dit is 'n kwessie van die kode in de IDE inlaai, en dan in die Linux-versie van BlitzMax die "build"-knop te druk. BlitzMax-programma kan probleemloos met die OpenGL of DirectX-biblioteke aangestuur word. Let op: Linux ken alleen OpenGL daarom is dit raadsaam om geen Windows-spesifieke fasiliteite te gebruik. 'n Windows-program kan jy terwyl hy in uitvoer is skakel tussen DirectX of OpenGL.

Bmx is 'n modulere taal. Jy kan self nuwe modules byprogrammeer om sodoende kode biblioteke uit te bou, of biblioteke van eksterne mense in jou program oorneem.

In Oktober-2007 het Blitz Research Ltd. 'n bygewerkte versie 1.26 beskikbaar gestel. Tevens kan mens 'n probeer-versie van BlitzMax aflaai om self jou programmeervaardighede te toets.

Blitz3D SDK[wysig]

Dit is die meest onlangse toevoeging waarmee Blitz3D vanuit die C#, C++-tale gebruik kan word. Op die oomblik is daar nog enkele tegniese probleme met die SDK. Verdere informasie is op die amptelike forum bekend (Blitz3D SDK Bug Reports).

Voorbeeld kode[wysig]

So skryf jy Hallo Wereld in BlitzMax op die skerm:

 AppTitle$ = "Wikipedia voorbeeld"
 Graphics 800, 600, 0
 
 While(Not KeyHit(Key_ESCAPE))
   Cls();
   DrawText("Hallo Suid-Afrika", 5, 20);
   Flip();
 Wend

En hier een OOP-voorbeeld van Hallo Wereld in BlitzMax:

'// hier begin jou kode.  Kopieer-en-plak na die BlitzMax IDE.
Global hallo1:HalloWorldClass = New HalloWorldClass;
hallo1.Main();
 
Type HalloWorldClass
 Method Main()
   AppTitle$ = "Wikipedia voorbeeld";
   Graphics(800, 600, 0);
 
   While(Not KeyHit(Key_ESCAPE))
     Cls();
     DrawText("Hallo Suid-Afrika", 5, 20);
     Flip();
   Wend
 End Method
EndType


Vervolgens 'n eenvoudige BlitzMax-voorbeeld waarme die huidige tyd in binere en dsimale formaat vertoond word.

 AppTitle$ = "Binary Clock"
 Graphics 145,85, 0
 
 secondtimer = CreateTimer(2)
 Repeat
 
         Hour = Left(CurrentTime$(),2).ToInt()
         Minute = Mid(CurrentTime$(),4,2).ToInt()
         Second = Right(CurrentTime$(),2).ToInt()
 
         If Hour >= 12 Then PM =1
         If Hour > 12 Then Hour = Hour - 12
         If Hour = 0 Then Hour = 12
 
         'should do this otherwise your PM dot would be 
         'Left up once the clock rolled past midnight!
         Cls 
 
         SetColor(0,255,0) 'make the text green For the PM part
         If PM  = 1 Then DrawText "PM",5,5
         'set the text colour back To white For the rest
         SetColor(255,255,255)
 
         For bit=0 To 5
                 xpos=20*(6-bit)
                 binaryMask=2^bit
                 'do hours
                 If (bit<4)
                         If (hour And binaryMask)
                                 DrawText "1",xpos,5
                         Else
                                 DrawText "0",xpos,5
                         EndIf
                 EndIf
 
                 'do the minutes
                 If (minute And binaryMask)
                         DrawText "1", xpos,25
                 Else
                         DrawText "0", xpos,25
                 EndIf
 
                 'do the seconds
                 If (second And binaryMask)
                         DrawText "1",xpos,45
                 Else
                         DrawText "0",xpos,45
                 EndIf
         Next
 
         'make the text red For the decimal time
         SetColor(255,0,0)
         DrawText "Decimal: " + CurrentTime$(),5,65
         'set the text back To white For the rest
         SetColor(255,255,255)
 
 	 Flip
 
         'will wait half a second
         WaitTimer(secondTimer)
 	 If KeyHit(KEY_ESCAPE) Exit
 Forever

Spelletjies wat in Blitz Basic geskryf is[wysig]

Kyk ook na[wysig]

Verwysings[wysig]

Eksterne skakels[wysig]

Blitz Basic boeke[wysig]