Sei sulla pagina 1di 14

Proteus v. 9.

4: Nuove funzionalità
La versione 9.4 di Proteus presenta numerose varianti rispetto alle
versioni precedenti di Proteus, rimanendo comunque compatibile
con i programmi sviluppati con tutte le versioni precedenti.
Le funzionalità aggiunte riguardano sia l’ edit del codice sorgente
che il compositor grafico delle finestre del progetto.

Editor del codice sorgente:


Colore dello sfondo dell’ Edit del codice:
L’editor di Proteus permette di definire più temi differenti.
Sono stati creati due temi, uno a sfondo bianco e uno a sfondo nero, selezionabili tramite i bottoni
C. Tale impostazione resta all’ apertura successiva di Proteus ed è indipendente dal progetto.

Size dei font dell’ Edit del codice


codice:
Con i bottoni B è possibile aumentare e diminuire al volo il size dei fonts delle finestre di edit.
Tale impostazione resta all’ apertura successiva di Proteus ed è indipendente dal progetto.

Edit del codice su due finestre:


Con il check del campo A è possibile passare al volo da una a due finestre di edit. Nel caso di
due finestre esse avranno lo stesso colore e la stessa dimensione dei font, e saranno editabili e
modificabili indipendentemente, con salvataggio automatico delle modi modifiche.
ECCEZIONE: se le due finestre visualizzano lo stesso file, la finestra di destra sarà read
read-only (e con
fondo grigio), e le modifiche sulla finesta di sinistra non saranno automaticamente aggiornate su
quella di destra, la quale mostrerà sempre il fifile originale.
Per aggiornare la finestra di destra premere il bottone Update o cambiare il file sulla finestra di
sinistra, nel qual caso la finestra di destra sarà aggiornata e tornerà read
read-write
La finestra corrente sarà evidenziata dal titolo su sfondo blu (grigio se read-only)
only) e selezionando un
file sullo schedario il nuovo file selezionato sarà editato sulla finestra corrente.
Cliccando sul nome di un file sulla terza finestra, esso sarà aggiunto allo schedario e editato
automaticamente sulla prima finestra.
estra.

Word Wrap:
Premendo il bottone D è possibile passare dalla visualizzazione a linea intera a quella con a capo se
fuori schermo (word wrap) e viceversa.

Giustificazione del codice:


Con l’ opzione Justify del menu della pagina di edit è possibile
giustificare il codice (4 blank vengono inseriti all’ inizio della linea
per ogni livello di parentesi graffe o tonde del codice).
Non vengono giustificate le linee di commento (che iniziano con //
o tra /* e */) e le linee di
metacomandi (che iniziano con il carattere #). ). Vengono tradotti i
caratteri <tab> con 4 spazi.
Vengono infine corrette le nidificazioni di commenti (/* dentro
un /*) non ammesse dal codice C/C++) sostituendo */ con **|.
La giustificazione viene eseguita solo sul cod
codice
ice della finestra di
sinistra in caso di doppia finestra di codice.

Un’ altra opzione del menu della pagina consente di compattare il


codice eliminando le linee vuote
vuote.

Creazione di nuovi files .C o .H:


Questa opzione, già disponibile in Proteus
Proteus, è stata estesa per creare nuovi files di testo (.c, .h, .txt
…) indipendentemente su ognuna delle due finestre di edit.
Cliccare su una delle due finestre con il tasto destro del mouse, quindi scegliere l’ opzione New
File (l’ ultima in basso). Verrà cre
creato un nuovo file, di 4 linee di testo, contenente solo, come
commento, il titolo del file stesso.

Per creare una nuova pagina grafica selezionare l’ opzione nel menu principale: File->New
File Page e
scegliere un nome per la pagina. In assenza di una scelta llee pagine verranno nominate
successivamente Page1, Page2 …
Verranno creati contemporaneamente per la nuova pagina i files pageX.v10 (form grafico), pageX.c
e pageX.h

Compositor grafico dei forms del progetto:


Selezione e modifica contemporanea delle proprietà di più oggetti:

Dopo aver selezionato un oggetto cliccandovi con il tasto sinistro del mouse è
possibile aggiungere altri oggetti alla selezione cliccandovi con il tasto sinistro
del mouse tenendo premuto il tasto Ctrl.
Tutti gli oggetti selezionati saranno evidenziati con un bordo rosso mentre l’
oggetto MASTER sarà evidenziato da un doppio bordo rosso. rosso
L’ oggetto MASTER non è necessariamente il primo oggetto che abbiamo
selezionato, bensì l’ oggetto con il numero più ba
basso in ordine di creazione.
creazione

Un’
n’ altra maniera per selezionare più oggetti è quella di
selezionare un primo oggetto e quindi aprire il menu
Group.. Per selezionare oggetti dello stesso gruppo (dentro
lo stesso pannello) oppure dello stesso tipo (label, edit,
edi
button …) oppure oggetti con lo stesso font (escluso
bitmaps e panels, che non hanno un proprio font) o altro.

Una volta selezionati più oggetti è possibile spostarli o


ridimensionarli premendo Ctrl e ridimensionando o
spostando l’ oggetto MASTER.
Con un doppio click sull’ oggetto MASTER (anche senza
premere Ctrl) è possibile cambiare il colore o il font di
tutti gli oggetti selezionati,, purché siano oggetti
compatibili. Sono compatibili fra loro Labels, Edit, Buttons e Checkboxes, mentre Panels,
Multipanels e Bitmaps sono compatibili solo con sé stessi.
Quando vi sono più oggetti selezionati non è possibile aggiungere altri oggetti alla pagina né
accedere all’ object inspector né compilare il programma
programma. Possiamo però aggiungere altri oggetti
alla selezione
lezione premendo il tasto CTRL e cliccando sull' oggetto da aggiungere con il tasto sinistro
del mouse.
Per annullare la selezione multipla premere il tasto Esc oppure selezionare il campo Ungroup dal
menu Group.

Distinzione tra oggetti dichiarati visibili e non visibili:

In questa versione di Proteus gli oggetti


definiti non visibili sono facilmente
individuabili in quanto sono mostrati come
semitrasparenti.
La stessa cosa per oggetti visibili dentro un
pannello definito non visibile.
Essendo per i pannelli e per i bitmaps
difficilmente individuabile se sono
semitrasparenti o meno (a meno che nello
stesso form vi siano oggetti dello stesso
colore visibili e invisibili), è possibile
marcare i bitmaps e i pannelli invisibili con
delle barre diagonali.

Ad esempio, nel disegno della pagina riportato sopra, gli oggetti invisibili sono:

 label2
 checkbox2
 il bitmap di warning più a destra
 il pannello verde più a sinistra
 il bitmap di warning
rning in alto nel pannello a sinistra
 label5

le barre diagonali sui bitmaps e sui pannelli possono essere


abilitate indipendentemente con i checkboxes BMP e PAN

Così si presenta la pagina all’ esecuzione del programma.


Creazione assistita di multipanels (schedari):

la creazione di uno schedario (o multipanel) è una procedura complicata, per cui è stata creata una
funzione semplificata per creare uno schedario con un singolo click:

 Selezionare l’ oggetto multipanel dalla barra degli oggetti, piazzarlo sulla


pagina e dimensionarlo alle dimensioni volute.

 Fare un doppio click sul multipanel creato ((se il checkbox Multipanel


non fosse abilitato automaticamente
automaticamente, occorre abilitarlo manualmente.)

 Si aprirà una finestra di colloquio


colloquio:
Var Name è il nome della variabile che
seleziona la pagina
ina dello schedario. Viene
definita e assegnata una variabile di default
(short int) che può essere cambiata.
New Pages è il numero di pagine da aggiungere
allo schedario (o da aggiungere, se lo schedario
esiste già)
Add new Buttons deve essere selezionao se
vogliamo creare uno schedario con i bottoni per
cambiare pagina, altrimenti per cambiare
pagina dovremo cambiare da programma il
valore della variabile associata.

 Premendo OK lo schedario viene costruito e aggiunto alla pagina corrente.


Se ne vogliamo cambiare le dimensioni occorrerà prima abilitare il checkbox Multipanel, e
quindi ricordarsi di disabilitarlo per aver acces
accesso alle singole pagine.

 Questa procedura può essere usata anche per aggiungere nuove pagine ad uno schedario
esistente, partendo dall secondo punto della procedura. In questo caso però non dobbiamo
assolutamente cambiare il nome della variabile.

Creazione assistita di componenti:

Proteus dispone di un numero ridotto di oggetti, mediante i quali è comunque possibile comporre
progetti con pagine grafiche di qualunque tipo. Oltre a questi oggetti è possibile utilizzare dei
componenti, ovvero delle strutture complesse
complessei, costituite da più oggetti posti su un pannello di base.
Proteus ha circa un centinaio di componenti predefiniti
predefiniti,, che si trovano nella directory
C:\COMMONS\C\OBJECTS,
OBJECTS, ed il programmatore può crearne altri usando una procedura assistita
che può creare la base di un nuovo componente (il pannello di base panel1) mediante un semplice
click del mouse.

A tale scopo è necessario


essario seguire la seguente procedura:
 Aprire una nuova sessione di Proteus.
 Selezionare dal menu principale:
File->Create Component.
 Si aprirà una finestra in cui scrivere il
nome del componente che vogliamo
creare (in caratteri minuscoli) ed
eventualmente il formato della finestra
che conterrà il componente (da non
confondere con le dimensioni del
pannello di base del componente che
sarà di 64x64 pixel e che potremo
ridimensionare a piacere).
 Se esiste già un componente con tale
nome apparirà una finestra di warning
e dovremo scegliere un altro nome.
 Premere il bottone Create.
 Si aprirà la finestra grafica contenente
solo il pannello di base del
componente, di colore grigio e la
relativa finestra di testo.
In genere, dopo avervi inserito gli
oggetti opportuni, tale pannello sarà
poi dichiarato trasparente).
 Verranno automaticamente creati due files:
OBJECT.C che è il file su cui dovremo scrivere le procedure relative al componente
PROVA.C che è un file ausiliario che serve a definire e creare il componente, da non
modificare.
Nessuno di questi due files, che si troveranno nella directory
C:\COMMONS\C\OBJECTS\BASE_OBJECTS\<nome del componente>
farà parte del source del componente, che si trova invece, una volta creato, nella directory:
C:\COMMONS\C\OBJECTS\COMPONENTS\<nome del componente>.H
 Una volta aggiunti gli oggetti e scritte le relative proprietà e i metodi, occorre compilare l'
oggetto come un normale progetto di Proteus.
 Se non vi sono errori apparirà una finestra che mostrerà l' oggetto appena creato.

Ad esempio, creando la base del componente di nome pippo avremo:

PROVA.C (solo per informazione: non modificare!)

// ==========================================================
char WindowName[]="Component_Pippo";
int WindowWidth=320;
int WindowHeight=240;
int refresh_time=10;
extern int Lang;
// ==========================================================
#include <mswindows.h>
#include <math.h>
#include "icone.h"
#define REAL float
#define STRING char *
// ==========================================================
#define PROVA
#define huge
#include "object.c"
void mainloop(void)
{
_doubleclick=1;
_tastiera=1;
_touch=1;
v_color(4,4);
v_cls();
go();
}
// ==========================================================

OBJECT.C (il file su cui scrivere il codice del componente)

///Component
//TByte
Friend char val;
#include "object.h"
#include "..\commons\hdcopy.h"
// -------------------------------+
// form Pippo
// -------------------------------+
void form_Pippo(void)
{
object(TPage,(void **)&Pippo,Pippo_Body,0,0,&Null,None,1,0,"Pippo");
}
void go(void) {gopage(Pippo);}
///EndComponent
void Event(onentry)()
{
///Test
// ================ hardcopy ============================
HardCopy("c:\\commons\\c\\objects\\catalog\\");
// ======================================================
///EndTest
}
// -------------------------------
// methods:
// -------------------------------

Inserendo il componente in un progetto Proteus, nell' object inspector al campo var sarà assegnato
un nome di variabile casuale ma unico, con ' iniziale minuscola. Possiamo cambiare tale nome
con un altro di nostra scelta, purché non coincida con il nome di una variabile già presente nel
progetto. Tale nome coinciderà con la variabile Friend char val del componente.
Possiamo aggiungere
altre variabili Friend al
componente. Tali
variabili saranno
accessibili dal progetto
che usa il componente
tramite il puntatore della
struttura del componente.
Il puntatore della struttura
del componente ha il
nome della variabile var
ma con l' iniziale
maiuscola.
Ad esempio, per il componente visto sopra, inserito in un progetto Proteus, alla variabile var del
componente è stata assegnato il nome pi1 (che possiamo cambiare con un altro nome).
La variabile val del componente coincide con la variabile pi1 del progetto, ovvero alla variabile
Pi1->val.

Ad esempio, aggiungiamo al componente due labels, label1 e label2.


La struttura del componente, nel file C:\COMMONS\C\objects\components\Pippo.h sarà:

#define TYPE Pippo_Struct


typedef struct TYPE
{
OBJ Body;
OBJ *Form;
char val;
OBJ *panel1;
OBJ *label1;
OBJ *label2;
}TYPE;

La struttura contiene tutte le variabili definite come Friend e i puntatori a tutti gli oggetti
presenti nel componente.

Potremo accedere alle label del componente:

Pi1->label1->color=RED;
Pi1->label2->caption="abcd"
ecc..
Nel source del componente potremo usare i valori dei campi caption e tag del progetto.
Possiamo in ogni momento modificare un componente caricandolo e compilandolo come un
normale progetto Proteus. Anche in questo caso dobbiamo partire da una nuova istanza di Proteus.

I numerosi esempi di componenti predefiniti nella directory


C:\COMMONS\C\OBJECTS\BASE_OBJECTS
possono servire a comprendere meglio quanto detto sopra.
Variabili associate a nuovi oggetti

Inserendo un nuovo oggetto su una pagina del progetto, ad esso sarà associata inizialmente una
variable secondo i seguenti criteri:

 Nome della variabile: VAR1


 Tipo della variabile: NULL

Una variabile di tipo NULL significa “nessuna variabile associata”, nel qual caso è possibile ad
esempio premere un bottone senza che tutti gli altri con lo stesso nome di variabile ne risentano.
È compito del programmatore assegnare il nome ed il tipo di variabile qualora serva.

Ad un bottone con tipo di variabile NULL è possibile comunque associare metodi on_click,
on_mousedown ecc. La sola differenza è che non c’ è una variabile associata ( e quindiI il valore
della variabile VAR1 non viene cambiato).

Gli oggetti di tipo Page (l’ oggetto 0), panel e label non hanno mai bisogno di un nome o tipo di
variabile.

Gli oggetti di tipo Bitmap ne hanno bisogno solo nel caso di multi-bitmaps, per selezionare l’
immagine da visualizzare, nel qual caso il programmatore deve specificare la variabile associata.

Gli oggetti di tipo Edit e Checkbox debbono comunque essere associati ad una variabile, altrimenti
non hanno senso, per cui viene loro temporaneamente assegnato il tipo NULL e la variabile di
default VAR1, non essendo possibile stabilire se in tutto il progetto ed eventuali librerie incluse,
altre variabili di default (MB1, MB2 …) siano già usate per altri scopi..
È compito del programmatore in questo caso quello di assegnare all’ oggetto il giusto nome e
tipo di variabile.

Nel caso in cui il nome della variabile di un oggetto venga cambiato da VAR1 ad un altro nome, il
tipo dell’ oggetto passa automaticamente da NULL a char, e potrà essere cambiato nel tipo voluto,
salvo il caso di assegnazione automatica del tipo di variabile:

 Se il nome della variabile è del tipo MBx alla variabile sarà assegnato automaticamente il tipo char.
 Se il nome della variabile è del tipo MWx alla variabile sarà assegnato automaticamente il tipo short int.
 Se il nome della variabile è del tipo MDx alla variabile sarà assegnato automaticamente il tipo long int.
 Se il nome della variabile è del tipo MFx alla variabile sarà assegnato automaticamente il tipo float.

Le assegnazioni automatiche vengono applicate quando si seleziona l’ oggetto e diventano valide


quando si cambia l’ oggetto correntemente selezionato o la pagina attiva o quando si compila il
progetto.
Le assegnazioni automatiche non vengono applicate ad oggetti precedentemente creati, a meno che
non li si selezioni.
Ricerca del codice di una funzione o della dichiarazione di una variabile

Questa procedura funziona correttamente solo se tutti i flies .c e .h del progetto sono correttamente
giustificati a livello di parentesi (vedi funzione justify)

Evidenziando il nome di una funzione o di una variabile e selezionando l’ opzione Find (o


premendo Ctrl + F) vengono trovate tutte le occorrenze della parola selezionata.
Si apre una finestra nella parte inferiore del form di edit, con la lista di tutte le occorrenze della
parola, così ordinate (nel caso che sia il nome di una variabile o di una funzione):

nel caso si tratti del nome di una variabile:

 Linea del codice in cui c’ è la definizione della variabile


 Lista di eventuali oggetti che siano associati alla variabile.
 Eventuali definizione della variabile come locale in una o più strutture del progetto
 Linea del codice in cui vi sia un’ occorrenza della variabile.
 Riferimenti alla variabile nelle linee di commento

nel caso si tratti del nome di una funzione:

 Linea di programma contenente il prototipo della funzione


 Prima linea del codice sorgente della funzione (solo se definita nel progetto)
 Chiamate della funzione
 Per ultimo, riferimenti alla funzione nelle linee di commento

In questo modo è possibile visualizzare rapidamente il codice sorgente o il prototipo di una


funzione, il cui riferimento si trova sulla prima linea della lista.
Se la funzione è usata nel progetto ma è una funzione esterna (per es. printf) la lista mostrerà solo le
chiamate della funzione.

Match dei livelli di parentesi

Con un doppio click con il cursore posizionato su una parentesi (aperta o chiusa, tonda, quadra o
graffa),il cursore si sposta sulla corrispondente parentesi.
Se è premuto Ctrl il cursore evidenzia la parentesi, altrimenti il assume la forma di default (barra
verticale).
Se la parentesi corrispondente non entra nella finestra di edit, la finestra si sposta fino a mostrare l’
occorrenza della parentesi associata: in prima linea se l’ occorrenza è più in alto nel listato del
source (ad es. se la parentesi selezionata è una parentesi chiusa), altrimenti in ultima linea.
Ad esempio, se viene fatto Ctrl + doubleclick sulla parentesi graffa di inizio del codice di una
funzione il cui intero codice non rientra nella finestra di edit, la finestra si sposterà fino alla fine del
codice della funzione e il cursore sarà sulla parenesi graffa di fine della funzione.
Con un successivo click o dlubleclick il cursore torna alla posizione iniziale.
Traduzione delle lingue

Qualora sia prevista la traduzione dei testi di un progetto in lingue diverse, è consigliato di usare per
i testi da tradurre il font ARIAL MULTICODE, che possiede i caratteri necessari per gli alfabeti
Greco, Cirillico, Lingue nordiche, Turco ed altre lingue.
Esistono però delle lingue che non possono essere tradotte con lettere tratte da un generatore di
caratteri, perché le scritte vanno da destra a sinistra o perché i caratteri sono troppo numerosi.
Fanno parte di questo gruppo:
 Cinese
 Giapponese
 Coreano
 Arabo
 Ebraico
 Altre lingue …
In questo caso le scritte vengono sostituite con dei bitmaps.
Le scritte possono però essere uguali ma con fonts di dimensioni diverse.
Nelle versioni precedenti di Proteus in tal caso occorreva diversificare il testo delle scritte.
In Proteus 9.4 questo non è più necessario:
Se infatti sarà attivato il check di All Alphabets sulla barra principale, le scritte con testo uguale
ma con dimensioni diverse saranno diversificate automaticamente.
Questo comporta un maggior numero di linee nel testo da tradurre, quindi tale opzione deve essere
attivata solo quando sia previsto l’ uso di lingue che richiedano di essere tradotte con bitmaps (vedi
sopra).

Editor delle lingue

Il programma Edilang è stato adattato a quanto detto


sopra. Le principali modifiche riguardano:

Le colonne di destra e di sinistra sempre allineate, (nei


limiti del possibile).

Le linee sulla colonna di destra in azzurro indicano i


testi che possono essere tradotti con alfabeti diversi o
con bitmaps.

Le linee in nero indicano i testi che debbono essere


tradotti solo usando lettere minuscole o maiuscole
non accentate dell’ alfabeto inglese (o con bitmaps).

Su una colonna possono trovasi più linee con lo stesso


testo. La colonna di sinistra mostra il size dei relativi
fonts.
Altre funzioni aggiunte

Se è selezionato un oggetto o più oggetti con i tasti Shift + freccia su/giu/destra/sinistra è


possibile cambiare la dimensione dell’ oggetto.
Se l’ oggetto è di tipo Edit le sue dimensioni (proprietà width e height) dipendono solo dal font e
dal numero di caratteri dell’ oggetto. In questo caso con i tasti Shift + freccia su/giu/destra/sinistra
viene cambiata la dimensione del bordo del campo edit (proprietà Border Width).

Può capitare durante la stesura di un programma di voler escludere una parte di codice sorgente
ponendolo tra /* e */ , temporaneamente o definitivamente.
In tal caso se la parte di codice esclusa contiene dei commenti tra /* e */ si ha una nidificazione di
commenti, non ammessa dai compilatori C e C++.
Se si fa un justify del codice vengono automaticamente eliminati i commenti nidificati, sostituendo
/* con |* e */ con *|. In tal modo il codice risulta corretto.
Qualora reintegrassimo il codice precedentemente escluso, facendo un successivo justify del
codice, vengono ripristinati automaticamente i commenti tra /* e */ prima esclusi e adesso non più
nidificati.
Specifiche della piattaforma Proteus
Proteus è uno strumento RAD IDE creato per sviluppare applicazioni che possano
essere eseguite su supporti hardware e sistemi operativi diversi.
Gli strumenti RAD, o strumenti di sviluppo rapido di applicazioni, aumentano la velocità di
sviluppo delle applicazioni abilitando la funzionalità punta e clicca o trascina e rilascia, in alcuni
casi, abbastanza semplice da consentire a un utente senza esperienza di codifica di utilizzare e
modificare un applicazione creata da un'app esistente, personalizzandola in base alle proprie
esigenze, o partendo da zero, potendo anche utilizzare componenti predefiniti.

Gli strumenti IDE o gli strumenti dell'ambiente di sviluppo integrato, come Microsoft Visual Studio
o Eclipse, sono progettati principalmente per migliorare la produttività degli sviluppatori di
software fornendo un'unica piattaforma per scrivere, modificare, compilare, creare e distribuire
codice. Gli sviluppatori possono utilizzare un IDE per riunire/ottenere l'accesso a più strumenti di
sviluppo software come gestione dei requisiti, controllo della versione, rilevamento dei problemi,
test in un unico programma/interfaccia utente.

La versione 9.4 di Proteus permette di creare eseguibili per i seguenti hardware:

 schede Syel con CPU ARM7-DTMI LPC2468:


Compilatore GNU arm-hitex-elf-gcc-4.1.1
Directory del toolkit C:\COMMONS\C\ARMGCC

 schede Syel con CPU ARM-CORTEX-M3 LPC1788:


Compilatore GNU arm-hitex-elf-gcc-4.7.3
Directory del toolkit C:\COMMONS\C\ARMGCC2

 schede Syel con CPU ARM-CORTEX-M4 LPC4088:


Compilatore GNU arm-hitex-elf-gcc-4.7.3
Directory del toolkit C:\COMMONS\C\ARMGCC3

 ARM-LINUX con sistema operativo Debian o derivato a 32 Bit (*).


Compilatore GNU arm-linux-gnueabihf-gcc-4.9
Directory del toolkit C:\COMMONS\C\ARMGCC4

 PC con sistema operativo Windows XP o successivo a 32 o 64 bit (**)


Compilatore GNU mingw32-gcc-5.1.0
Directory del toolkit C:\COMMONS\C\DEV-CPP

(*) Creato per funzionare con il Syel T-BOX, funziona su ogni scheda ARM-Linux con desktop
Debian o Ubuntu con server grafico XWin (non è supportato Wayland) oppure senza desktop,
purché sia accessibile il framebuffer. Testato con Raspberry PI2,PI3 e PI4 con sistema operativo
Debian e Ubuntu 16.04. Testato anche su schede Olimex con CPU Allwinner A20.
Riconoscimento e selezione automatica fra tastiera-mouse e touch-screen.

(**) Creato per funzionare sui PC industriali Syel, funziona su ogni computer con sistema operativo
Windows XP o successivo.
Riconoscimento e selezione automatica fra tastiera-mouse e touch-screen.
Limiti di Proteus:
numero massimo di pagine di un progetto 1000
numero massimo di bitmaps di un progetto 2000
numero massimo di oggetti per pagina 1024
larghezza massima di una pagina 1024 pix.
altezza massima di una pagina 1024 pix.
profondità di colore 8 bit/16 bit RGB 565/24 bit RGB 888
numero massimo di fonts TTF diversi 32
numero massimo di lingue da tradurre 64
dimensione massima di codice C/C++ di un programma 10 MBytes
dimensione massima di dati dei bitmaps no limits
dimensione massima di dati dei fonts TTF no limits
dimensione massima dell' eseguibile 1 GByte

Il toolkit di Proteus risiede nella directory C:\COMMONS\C e i programmi di cui è composto


possono essere eseguiti su un PC con sistema operativo Windows XP e successivi.
Il computer deve avere almeno 4 GBytes di memoria ram e 10 GBytes di spazio libero sul disco C
per poter istallare Proteus correttamente.

Potrebbero piacerti anche