mercoledì 15 aprile 2020

Estensione comandi Basic: Basic-Boss


BASIC-BOSS Compiler

BASIC-BOSS è un compilatore BASIC a 2 passaggi, programmato da Thilo Herrmann nel 1988.
La compilazione è reale codice linguaggio macchina 6502, non un codice di linguaggio di programmazione compresso. I programmi BASIC compilati funzionano in media più velocemente del codice BASIC originale. L'aumento della velocità totale del codice compilato dipende da quanto è buona la compilazione del programma. BASIC-BOSS usa la sintassi di BASIC V2. La compilazione standard accelera un programma in BASIC perché consente ad alcuni comandi di bypassare l'interprete integrato del C64. Tuttavia, il vero potere di BASIC-BOSS risiede nelle sue speciali sintassi del compilatore, che ottimizzano ulteriormente i programmi BASIC. L'ultima versione ufficiale è la 2.40 in tedesco. Ma nel 2011 fu rilasciata una versione 2.42 non ufficiale in inglese.

Ambiente di lavoro della versione 2.40 in tedesco

Ambiente di lavoro della versione 2.42 in inglese


Nuove variabili

Uno dei vantaggi di BASIC-BOSS sono le nuove variabili:

Boolean

- Byte (unsigned 8 bit integer)
- Integer (signed 16 bit integer)
- Word (unsigned 16 bit integer)
- Real (Same as the normal float)
- String (Same as the normal string)

Ogni calcolo in CBM BASIC viene eseguito utilizzando l'aritmetica in virgola mobile. Per molti calcoli, questo metodo fa sprecare tempo inutile della CPU. Le nuove variabili di BASIC-BOSS consentono facili aggiunte con byte, numero intero o parola usando alcuni comandi assembler. Questo nuovo metodo accelera molti calcoli.
Ad esempio, una variabile che conta da 0 a 100 deve essere dichiarata come byte con sintassi BASIC-BOSS. Ciò consente alle routine aritmetiche ottimizzate di BASIC-BOSS di eseguire l'incremento più rapidamente. Questo esempio di codice può essere utilizzato in BASIC V2 (lentamente) o come compilazione BASIC-BOSS (codice macchina più veloce):

10 REM@ £BYTE I=FAST:£FASTFOR
20 FOR I=0 TO 255:POKE 1024+I,I:NEXT I

Questo programma BASIC è lo stesso esempio di programma dopo la compilazione:

10 REM@ £BYTE I=FAST,SC(=1024:£FASTFOR
15 DIM SC(1000)
20 FOR I=0 TO 255:SC(I)=I:NEXT I

Sintassi BASIC-BOSS

I comandi BASIC-BOSS contengono i caratteri "£", "←" o "@". Questo mostra al programmatore e al compilatore quali righe contengono un comando BASIC-BOSS.


Comandi BASIC-BOSS

£ALLRAM / £BASICRAM
£ROUTSTART
£HEAPEND
£FASTFOR
£FASTARRAY
REM@
£IGNORE / £USE


Nel disco della versione 2.40 c'è anche una demo che consente di fare una prova comparativa tra un programma scritto in Basic V2 e la sua versione ottimizzata Basic-Boss, nettamente più veloce.

Schermata di avvio della demo nel disco del Basic-Boss

1 - Screen demo

2 - Sprite demo

2 - Sprite demo

3 - Background demo

4 - Test comparativo

4 - Test comparativo

4 - Test comparativo

4 - Test comparativo

In rete si trova anche un gioco demo compilato con Basic- Boss dal nome Labyrinth e anche un fastloader 


Labyrinth - gioco demo in Basic-Boss

Labyrinth - gioco demo in Basic-Boss

Labyrinth - gioco demo in Basic-Boss

Fastload scritto in Basic-Boss

Esiste anche un compilatore Basic-Boss a riga di comando Dos da usare sotto Windows e recentemente è stata resa disponibile una GUI in QT5 per un suo uso semplificato.

Nessun commento:

Posta un commento