ECL Format: differenze tra le versioni

Da Zulu Hotel Italia - Time Warp.
(Creata pagina con "Il file ECL sembra avere una struttura a blocchi. Di seguito sono elencati quelli noti, riportati nello stesso ordine in cui compariranno all'interno del file. =Header= L'hea...")
 
Riga 8: Riga 8:
  
 
=Usages=
 
=Usages=
Le file funzioni di sistema importate con la direttiva "use" sono specificate immediatamente dopo l'header. Ogni blocco use ha una dimensione fissa. I primi 6 bytes sono 01 00 00 00 00 00 dopodiché seguono sempre 13 bytes contenenti il nome dell'usage sotto forma di stringa a lunghezza fissa (i byte non usati sono lasciati a NULL). "basic" e "basicio" sembrano essere sempre i primi due usages e sono inclusi implicitamente anche se non dichiarati nello script.
+
I file ''.em'' contenenti le funzioni di sistema importati con la direttiva "use" sono specificate immediatamente dopo l'header. Ogni blocco use ha una dimensione variabile. I primi 6 bytes sono 01 00 00 00 00 00, segue un blocco di 13 bytes così suddiviso:
 +
* bytes 1-9: contengono il nome dell'usage sotto forma di stringa a lunghezza fissa
 +
* byte 10: indica il numero di funzioni utilizzate da questo file
 +
* bytes 11-13: sempre NULL
 +
Segue la lista delle funzioni utilizzate da questo file, sotto forma 34 bytes ripetuti per il numero di volte indicato dal byte 10. Di questi 34 bytes, i primi 32 rappresentano una stringa a lunghezza fissa contenente il nome della funzione, mentre gli ultimi due sono sempre 00 01.
 +
 
 +
"basic" e "basicio" sembrano essere sempre i primi due usages e sono inclusi implicitamente anche se non dichiarati nello script.

Versione delle 23:28, 22 feb 2015

Il file ECL sembra avere una struttura a blocchi. Di seguito sono elencati quelli noti, riportati nello stesso ordine in cui compariranno all'interno del file.

Header

L'header sembra essere fisso: 43 45 02 00 00 00, 6 bytes. Il terzo byte probabilmente è il numero di versione (2 per POL093).

Program

Questo blocco, non sempre presente, definisce la direttiva program. Non è sempre presente (ad esmepio, non è usato nello script generale di startup start.ecl. I primi 6 bytes sono 04 00 10 00 00 00 dopodiché segue un blocco di 13 bytes di cui solo il primo sembra essere usato ed indica il numero di argomenti accettati dal blocco program (01, 02, etc...). Gli altri bytes sono lasciati a NULL.

Usages

I file .em contenenti le funzioni di sistema importati con la direttiva "use" sono specificate immediatamente dopo l'header. Ogni blocco use ha una dimensione variabile. I primi 6 bytes sono 01 00 00 00 00 00, segue un blocco di 13 bytes così suddiviso:

  • bytes 1-9: contengono il nome dell'usage sotto forma di stringa a lunghezza fissa
  • byte 10: indica il numero di funzioni utilizzate da questo file
  • bytes 11-13: sempre NULL

Segue la lista delle funzioni utilizzate da questo file, sotto forma 34 bytes ripetuti per il numero di volte indicato dal byte 10. Di questi 34 bytes, i primi 32 rappresentano una stringa a lunghezza fissa contenente il nome della funzione, mentre gli ultimi due sono sempre 00 01.

"basic" e "basicio" sembrano essere sempre i primi due usages e sono inclusi implicitamente anche se non dichiarati nello script.