Oui, le BASIC est un langage très puissant !
Au cas où vous ne le sauriez pas, le BASIC de l'Oric est vraiment rapide et efficace.
En vitesse, il peut être comparé au Locomotive Basic des ordinateurs Amstrad CPC.
Quand aux nombre d'instructions disponibles, il est possible de manipuler le son, les graphiques,
et quasiment tout le reste sans avoir besoin d'utiliser POKE ou CALL.
(Ce qui n'est pas le cas sur C64 ou Apple II).
De plus, si vous programmez en BASIC, vous pouvez être quasiment sur que votre code sera
compatible Oric 1 et Atmos.
Le principal problème est que les instructions graphiques sont très lentes (Circle), et qu'il
manque certaines instructions qui aurait pu être très utiles (Box, Rect, FillArea,...).
Il est aussi important de considérer le fait que la compacité apparente à l'écran peut se
traduire par une grosse consommation mémoire comparé à un code équivalent écrit en 6502 optimisé.
Le BASIC de l'Oric n'est pas typé. Toutes les variables sont de type float, ce qui signifie que
même pour les indices de boucle l'ordinateur fera de calculs en virgule flottante, en passant
par les routines en rom... et tout ça c'est lent. Très lent...
|
Yes, basic is really powerful !
In case that you don't know it, the Oric Basic is very fast and efficient.
In speed, it can be compared to the Locomotive Basic of the Amstrad CPC range of computer.
And concerning the number of available instructions, you can do sound, graphics, and whatever you want without virtually
any POKE or CALL. (This is not the case of the C64 or Apple II computers).
Moreover, if you program in Basic, you can be (nearly) sure that your code will be compatible with Oric 1 and
Oric Atmos.
The main drawback, is certainly the poor speed of graphics instructions (Circle), and the lack of some functions
that could have been very useful (Box,Rect,FillArea,...).
Another things to have in mind, is that a basic program requires a lot of memory compared to the same program
well coded in 6502 assembly language, even if it takes less room on the screen.
The Oric basic is not typed. All the variables are of the Float type. That means that even your loop counter will
use the floating points routines of the Oric ROM. All of that is very slow...
|