# {bmc micro.bmp} File di Help del programma SimST6

Contenuti

{bmc bullet.bmp}	Descrizione

{bmc bullet.bmp}	Creazione del File di Progetto

{bmc bullet.bmp}	Menu

{bmc bullet.bmp}	Barra degli Strumenti

{bmc bullet.bmp}	Barra di Stato

{bmc bullet.bmp}	Cronologia Porte

{bmc bullet.bmp}	Test I/O

{bmc bullet.bmp}	Modifica EEPROM/Extra Ram

{bmc bullet.bmp}	Simulazione di Segnali in Ingresso

{bmc bullet.bmp}	Registratore

{bmc bullet.bmp}	Varie

{bmc bullet.bmp}	Altre Possibilità

{bmc bullet.bmp}	Modifica del Codice Assembler

{bmc bullet.bmp}	Conversione File

#$K+ {bmc micro.bmp} Descrizione

Descrizione
SimST6.EXE , è un programma di simulazione per i seguenti Microcontrollori della SGS
ST6200 ; ST6201 ; ST6203 ; ST6208 ; ST6209 ; ST6210 ; ST6215 ; ST6218 ; ST6220 ; ST6225 ; ST6228 :ST6260 ; ST6263 ; ST6265 Sia in Versione T che (ove esiste) in Versione E

I lprogramma è stato scritto per ottenere una buona resa visiva con una definizione video di 640x480 pixel.

NOTA Prima di iniziare  la simulazione del programma, è necessario procedere alla creazione del File Progetto  `.PRG`   (Creazione del File di progetto)

{bmc Totale.bmp}

SimST6  utilizza i seguenti Files
-  Nomefile.PRG	File generato dal programma   SimST6
-  Nomefile.HEX		File generato dal Compilatore AST6.EXE 
-  Nomefile.DSD		File generato dal Compilatore AST6.EXE 
-  Nomefile .SIM		File generato dal Compilatore AST6.EXE 
-  Nomefile  .LIS		File generato dal Compilatore AST6.EXE	
-  Nomefile.CMD	File di Comando creato dall`utente

Nota 1  I Files  .PRG  e  .HEX  sono Indispensabili
Nota 2 Tutti i Files, escluso il file .CMD,(Simulazione Segnali) devono risiedere nella medesima directory

Dopo il Caricamento del programma da Simulare, appaiono a video le seguenti 4 finestre :

a) Finestra Assembler	-> visualizza il Codice del programma
Esempio di linea
!  0880 0DD8FE  reset   ldi   wdr,FEh
Descrizione
!			(Se presente) Indica Punto di interruzione
			(Se presente) Indica Prossima istruzione
0880		Indirizzo
ODD8FE		Codice
reset		(Se presente) Etichetta (Max 8 caratteri)
ldi  wdr,FEh	Istruzione
Nota Se e` presente il file `.LIS`(ottenuto compilando il programma con l`opzione `-l`), nella finestra saranno visualizzati anche gli eventuali commenti con le avvertenze seguenti:
1- Eventuali commenti su piu righe saranno visualizzati su un`unica riga
2- I commenti su piu righe dovranno occupare righe consecutive

Esempio:
Righe sul file `.ASM`
Istruzione1		;Commento1
				;Commento2

				;Commento3
Istruzione2		;Commento1

Visualizzazione nella finestra Assembler
Istruzione1		;Commento1 Commento2
Istruzione2		;Commento1

b) Finestra   Memoria	-> visualizza il contenuto della RAM del Micro

Nota1 L`inizializzazione della memoria avverrà come segue:
Le locazioni di memoria in cui l’inizializzazione è `indefinita` verranno poste a FFH
Le locazioni di memoria `Riservate` verranno poste a 00H
Le rimanenti locazioni verranno impostate come previsto

c) Finestra    Variabili	-> visualizza le Variabili/Registri se visibili (Visibilità Variabili)
Esempio di linea
adcr	D1	40	64
Descrizione
adcr	Nome del Registro\Variabile
D1		Indirizzo
40		Valore Esadecimale
64		Valore Decimale
Nota Cliccando sul pulsante in alto a Dx si commuta la
       visualizzazione da Binario a Esadecimale + Decimale

d) Finestra    Registri	-> visualizza:
- il livello dello STAK
- il tipo di Interrupt
- lo stato dei Flag
- il valore del PC (Program Counter)
- i valori dei Registri A;X;Y;V;W 

Quando viene caricato un programma che contiene dati in ROM(che verranno caricati tramite il registro dwr a partire dall`indirizzo 40H) è normale che nella finestra Assembler venga visualizzato su una o più istruzioni la scritta * Non Valido * .
Questo perché il valore in quella locazione NON è un`istruzione bensì un Dato.
Nel caso in cui non ci sia visualizzazione di * Non Valido * pur trattandosi di un dato significa che(ed è la maggioranza dei casi) casualmente il valore del dato coincide con il codice di un`istruzione.

Attenzione
Affinchè il simulatore possa disassemblare correttamente il file .HEX , è necessario che i blocchi di dati siano piazzati alla fine del programma appena prima dei vettori di interruput come nel seguente esempio

.block	64-$%64		;per inserire una tabella in ROM
dati	.byte	11111100b		;inizio Dati
	.				;Dati intermedi
	.byte	10011111b		;Ultimo Dato

	.org    0ff0h		;Inizio Vettori di interrupt e reset
	jp      ad_int 
.
.
In alternativa,qualora ciò non sia fattibile, è possibile far precedere la routine che segue i dati da due istruzioni nop come segue

.block	64-$%64			;per inserire una tabella in ROM
dati	.byte	11111100b			;inizio Dati
	.					;Dati intermedi
	.byte	10011111b			;Ultimo Dato

		nop				;istruzione nop
		nop				;istruzione nop
etichetta	ldi     wdog,0FFh		;Prima istruzione della routine 
.
.
Le istruzioni nop NON altereranno in alcun modo il funzionamento del programma(dal momento che non verranno mai eseguite) è comunque sempre possibile eliminarle per la compilazione finale prima della scrittura del programma sul Micro.

Nota
Nelle Finestra VARIABILI, all`atto del caricamento del programma da simulare, sono visibili i Registri e le Variabili i cui 2 ultimi caratteri sono `!m` (Visibilità Variabili)
Esempio:
Dato		.def	084h!m		;Commento
(vedi anche i file 6215_reg.asm  e 6265_reg.asm )

I nomi dei Registri nei file  6215_reg.asm  6265_reg.asm  ST622.rgs  ST6228.rgs e ST6226rgs seguono la nomenclatura usata nei manuali SGS
6215_reg.asm   6265_reg.asm			= File di definizione da includere nei programmi
ST622.rgs  ST6228.rgs  ST626.rgs		= File di definizione utilizzato dal programma SimST6

P.S.  Per favore date  anche un’occhiata alla finestra informazioni, ho pensato che sarebbe sarebbe stato seccante farla apparire ad ogni avvio del programma

# $ K {bmc micro.bmp} File di Progetto (.PRG)

Il File di progetto contiene informazioni necessarie al funzionamento del Simulatore

{bmc Progetto.bmp}

Per la creazione del File  .PRG  si procede come segue
1) Si creano dapprima i Files .HEX  .DSD  .SIM .LIS  compilando il File .ASM

2) Si avvia SimST6.EXE e si sceglie Nuovo Progetto dal Menu File

3) Appare la prima Finestra che consente la scelta del Percorso e Nome del File  .PRG da creare (si  raccomanda di usare lo stesso nome del File .ASM e di selezionare la stessa Directory in cui sono presenti i Files .HEX .DSD .SYM)

4) Appena confermato il Nome del File .PRG  appare una nuova finestra(vedi qui sopra) da cui si  sceglie il tipo di Micro(in alto a SX) la frequenza del Micro(in alto a DX) e il Percorso e Nome del File .HEX (al  centro)
Il Pulsante sfoglia  permette di esplorare il disco per la ricerca del File .HEX desiderato (questa finestra è del tutto simile a quella che permette l`inserimento del nome vedi punto 3)

5) Si confermano i dati immessi mediante il pulsante OK

Cliccando sul Pulsante Precarica EEPROM in Basso a SX è possibile(Solo per i Micro ST6260-65) la modifica del contenuto della EEPROM

#$K {bmc micro.bmp} Menu
Menu

{bmc bullet.bmp}	Menu File

{bmc bullet.bmp}	Menu Debug

{bmc bullet.bmp}	Menu Esegui

{bmc bullet.bmp}	Menu Porte

{bmc bullet.bmp}	Menu Finestre

{bmc bullet.bmp}	Menu Variabili

# $ K {bmc micro.bmp} Menu File

MENU File

1)Nuovo Progetto
Serve alla creazione di un nuovo Progetto (File di Progetto)) Viene creato Un File con estensione .PRG

2)Apri Progetto
Serve ad iniziare una simulazione viene richiesto il nome del file .PRG

3)Modifica Progetto
Serve a modificare un File .PRG esistente Progetto (File di Progetto)

4)Salva Codice ASM
Permette il Salvataggio del Codice delle Finestra Assembler (Modifica del Codice Assembler)

5)Scrivi File Dati in Ingresso
Scrive su File(.CMD) tutti gli eventi in ingresso che comprendono  i dati del (eventuale) File .CMD + quelli immessi  direttamente dalle finestre di Test I/O e Cronologia Porte

6)Scrivi File Dati in Uscita
Scrive su File(.DAT) tutti gli eventi in Uscita elaborati dal Micro  + quelli immessi direttamente dalla finestra di Test I/O

7)Option Byte
Permette l`impostazione del `Option Byte`

8)Modifica EEPROM/Extra Ram (Solo su ST626)
Permette la modifica del contenuto della EEPROM o dell`Extra Ram

9)Uscita
Fine Lavoro

# $ K {bmc micro.bmp} Menu Debug

MENU Debug

1)Interruzione ON/OFF
Permette di Inserire/Togliere un punto di interruzione(alla posizione  del cursore)

2)Prossima Istruzione
Permette di Impostare la Prossima Istruzione(alla posizione del cursore)

3)Edit Codice ASM
Permette di Modificare il Codice .ASM (Edit Codice ASM)

4)Registratore
Visualizza, se è stato avviato, il  Registratore
La visualizzazione si può ottenere anche  cliccando con il Tasto DX del Mouse sul bottone Registratore(terzo da DX) della (Barra degli Strumenti)

5)Avvia Registratore
Avvia/Arresta il   Registratore

6)Trova
Consente la ricerca di Indirizzi/Etichette/Istruzioni nella finestra  Assembler

{bmc linea.bmp}
Vedere anche :
Altre Possibilità

# $ K {bmc micro.bmp} Menu Esegui

MENU Esegui

1)Avvia
Avvia il programma in Esecuzione Veloce

2)Animato
Avvia il Programma in Esecuzione Lenta

3)Esegui Istruzione
Esegue una Istruzione

4)Esegui Sub
Se l`istruzione attuale è CALL esegue Subroutine altrimenti esegue fino alla prossima istruzione RET o IRET 

5)Esegui fino al Cursore
Esegue fino alla posizione del cursore (nella finestra Assembler)

6)Stop
Sospende l`esecuzione del Programma

7)Reset
Esegue il Reset del Micro e, se sono abilitati i Dati in Ingresso, ricarica l`eventuale File .CMD
Una finestra di dialogo richiederà se effettuare il `Reset Power-on` se si risponderà SI le locazioni `indefinite` verranno impostate a FFH incaso contrario NON verranno modificate

8)Regola Velocità  Lenta
Permette di variare(entro certi limiti) la velocità di esecuzione in Modalità Lenta (Animato)

# $ K {bmc micro.bmp} Menu Porte

MENU Porte

1)Abilita dati in Ingresso
Abilita l`ingresso di dati esterni viene richiesto il nome del File di Comando .CMD
N.B. L`immissione del Nome può anche essere omessa e i dati possono immessi  direttamente nelle finestre di Test I/O e Cronologia Porte

2)Abilita dati in Uscita
Abilita l`uscita di dati

3)Cronologia Porte
Mostra graficamente lo stato dei piedini al variare del tempo (Cronologia Porte)

4)Test I/O
Visualizza lo stato attuale dei piedini (e relativi registri) del Micro(Test I/O)

# $ K {bmc micro.bmp} Menu Finestre

MENU Finestre

Gestisce la Visibilità delle finestre

# $ K {bmc micro.bmp} Menu Variabili

MENU Variabili

{bmc Variab.bmp}

Attiva una finestra di dialogo che consente la gestione della visibilità dei Registri/Variabili nella finestra VARIABILI
Nella Finestra di Sx sono elencate le Variabili/Registri NON Visibili
Nella Finestra di Dx sono elencate le Variabili/Registri Visibili
I pulsanti Rimuovi e Aggiungi Spostano tra le finestre le voci selezionate
Con il Pulsante OK si confermano le modifiche effettuate
Se il CheckBox in basso a Dx è settato le modifiche saranno rese permanenti anche per le prossime simulazioni(viene modificato il File .DSD)

# $ K {bmc micro.bmp} Barra degli Strumenti
Pulsanti della Barra degli strumenti

{bmc TBar.bmp}

(Da Sinistra a Destra)
Per la descrizione vedi le relative voci di Menu
1)    Apri Progetto (Menu File)
2)    Abilita dati in Ingresso (Menu Porte)
3)    Abilita dati in Uscita (Menu Porte)
4)    Animato(Esecuzione Lenta) (Menu Esegui)
5)    Avvia(Esecuzione Veloce) (Menu Esegui)
6)    Stop (Menu Esegui)
7)    Esegui Istruzione (Menu Esegui)
8)    Esegui Sub (Menu Esegui)
9)    Esegui fino al cursore (Menu Esegui)
10) Trova (Menu Debug) 
11) Avvia/Arresta/Visualizza (Registratore)
12) Cronologia Porte (Menu Porte)
13) Test I/O (Menu Porte)

# $ K {bmc micro.bmp} Barra di Stato
Caselle della Barra di stato

{bmc SBar.bmp}

(Da Destra a Sinistra)

1)Tempo attuale in µs

2)Effettuando singolo Click su una cella della finestra Memoria
		Locazione della Variabile/Registro

3)Effettuando singolo Click su una cella della finestra Memoria
		Nome della Variabile/Registro

4)Frequenza di lavoro del Micro

5)Tipo del Micro Utilizzato

6)Messaggi 

#$K+ {bmc micro.bmp} Cronologia Porte

Cronologia Porte

Attivato da Menu Porte(Cronologia Porte) oppure dal corrispondente pulsante(secondo da Destra) della Barra degli strumenti
viene richiesta la scelta tra visualizzazione Grafica e Numerica

Visualizzazione Numerica
 
Nel modo numerico viene rappresentato, con varie modalità, numericamente il valore delle porte .

 Tempo  |HEX    PA      dt   |HEX     PB    dt   |HEX        ecc.

   50    22  xx+-0010    50    .      .     .      .
  100     .     .       .     00   00000000   100  .
  150    21  xx+-0001   100   10   00010000    50  .
  
Descrizione
- La colonna Tempo 	visualizza il Tempo trascorso dall`inizio della Simulazione
- La Colonna HEX	visualizza il valore della Porta (esadecimale)secondo le selezioni
			effettuate nel riquadro HEX(in alto a SX) come segue
				Uscite   -> Valore riferito alle sole Uscite
				Ingressi -> Valore riferito ai soli Ingressi
				Entrambi -> Valore Totale
				Nessuno  -> La colonna NON viene visualizzata

- La colonna PA PB ecc.	Visualizza lo stato della porta bit per bit  come segue
				x = Piedino NON utilizzato
				+ = Ingresso Alto (1)
				- = Ingresso Basso(0)
				A = Ingresso Analogico
				C = Inizio(o continuazione) Ingresso Ciclico
				c = Fine Ingresso Ciclico
				1 = Uscita Alta
				0 = Uscita Bassa
		E` ovvio che A  rappresenta solo il tipo dell`ultimo segnale ricevuto

- La Colonna dt		Visualizza i Tempi Parziali se Tempi Parziali nel riquadro in alto al centro 
è settato in caso contrario la colonna NON viene visualizzata
				
Tutti i dati visualizzati possono anche essere salvati su un File (estensione predefinita .DAT) pigiando sul Bottone in basso a DX

Visualizzazione Grafica

{bmc Crono.bmp}

Apre una finestra su cui può essere visualizzato graficamente lo stato dei Piedini del Micro.
Permette:
Scelta della Porta da Visualizzare (Bottoni Opzione in alto a Sx)
Scelta dell`Ampiezza (in µs) della finestra (Box Inferiore a Destra)
	(Un valore diretto può essere inserito nella casella di testo (max 10.000.000)
Scelta del Tempo di Inizio (offset) Visualizzazione (Box inferiore a Sinistra)
	(Un valore diretto può essere inserito nella casella di testo (max 10.000.000)

In alto a Dx (in cifre) e sulla finestra (linea verticale) è  visualizzato il tempo attuale
Facendo Click con il tasto Dx (e tenendolo premuto)sul grafico compare una linea verticale (e una cifra in alto a Dx (sotto la precedente) che rappresenta il tempo relativo alla posizione della linea)

Il grafico è rappresentato con:
Linea Verde per i segnali in ingresso digitali (Verde scuro per segnali ciclici)
Valore Numerico per segnali in ingresso Analogici
Linea Rossa per segnali in uscita

Editazione del grafico 

L`editazione del grafico si può effettuare dopo aver attivato Edit nel box centrale in alto(naturalmente dopo aver abilitato i dati in ingresso (Menu Porte)
Per segnali in ingresso è possibile l`editing come segue:

a) Posizionando il mouse in corrispondenza di una variazione di stato 0-1 viene visualizzata una freccia verticale che (tenendo premuto il tasto Sx del Mouse) ne permette lo spostamento.
Tenere Presente Che se Limitato (Nel Box Centrale In Alto) Non è settato, in caso di sovrapposizione con segnali limitrofi, questi ultimi verranno rimossi

b) Facendo Click sul grafico (non in corrispondenza di una variazione di stato) si ottiene l`inserimento di una variazione di stato.

c) Facendo Doppio Click sul grafico (in corrispondenza di una variazione di stato) si ottiene l`eliminazione della variazione di stato
Nota  Se il Click(o Doppio Click) viene fatto prima dell`ultima variazione, si ottiene l`inserimento(o la rimozione) di 2 variazioni

Per segnali in ingresso ciclici è possibile l`editing come segue:

a) Posizionando il mouse in corrispondenza dell`inizio o della fine(se esiste) del treno di impulsi viene visualizzata una freccia verticale che (tenendo premuto il tasto Sx del Mouse) ne  permette lo spostamento.
Tenere Presente Che se Limitato (Nel Box Centrale In Alto) Non è settato, in caso di sovrapposizione con segnali limitrofi, questi ultimi verranno rimossi

b) Facendo Click sul grafico all`interno di un treno di impulsi:
1) Nel caso di treno di impulsi senza fine, si provoca la comparsa di una finestra di dialogo che chiede se interrompere il treno o modificare il periodo.
2) Nel caso in cui il treno di impulsi abbia una fine e possibile modificare il Periodo.

c) Facendo Doppio Click sul grafico in corrispondenza dell`inizio o della fine(se esiste) del treno di impulsi(quando è visibile una freccia verticale) :
1) Con Doppio Click sulla fine(se esiste) si elimina la Fine(e quindi il segnale ciclico sarà poi senza fine)  e tutti gli altri segnali eventualmente presenti dopo la fine stessa
2) Con Doppio  Click sull`inizio si ottiene l`eliminazione del treno

{bmc linea.bmp}
Vedere anche :
Simulazione di Segnali in Ingresso

#$K {bmc micro.bmp} Test I/O
Test I/O

{bmc Test.bmp}

Attivato da Menu Porte (Test I/O) oppure dal rispettivo pulsante (primo da Destra) della Barra degli strumenti
Apre una finestra su cui è visualizzato lo stato attuale dei Piedini(Piedinatura del Micro sul lato sinistro) e relativi Registri del Micro(nei Box a Destra)
Nel Box Timer(se presente) sono rappresentati i bit 4(DOUT) e 5(TOUT) del Registro TSCR(indirizzo D4h)
Nel Box ARTimer(se presente) sono rappresentati i bit 0(ARMC0) e 1(ARMC1) del Registro ARMC(indirizzo D5h)
Se si effettuano modifiche viene chiesta la conferma della variazione (Se si tratta di Linee e Dati in ingresso viene richiesto anche il Tempo di inserimento)
Nota E` da notare(vedi anche schermata qui sopra) che nel caso di configurazione Ingresso l`aspetto dei piedini può essere diverso dal valore del Registro DRA DRB o DRC 
Quando il piedino è configurato come ingresso il valore restituito nella Finestra I/O (ma anche con istruzioni Ld  jrr jrs ) sarà:
1) In presenza di Segnale (File .CMD)	-> Il Valore del Segnale(0 se analogico)

2) In Assenza di Segnale con configurazione:
     a) Input Pull-Up				-> 1
     b) Input No Pull-Up			-> 0
     c) Input Analogico			-> 0

Naturalmente in caso di Ingresso Analogico in presenza di segnale Analogico(FIle CMD) il valore sara` restituito nel registro adr al momento della conversione

#$K {bmc micro.bmp} Varie
Istruzioni Stop e Wait
Quando viene incontrata un`istruzione Stop o Wait il programma entra automaticamente in esecuzione veloce e la mantiene fino al momento dell`uscita dallo stato di Stop o Wait per riprendere la velocità precedente.
Naturalmente e comunque possibile arrestare l`esecuzione con il pulsante STOP

#$K+ {bmc micro.bmp} Modifica EEPROM/Extra Ram

Modifica Del contenuto della EEPROM/Extra Ram(Solo per ST626)

{bmc ModEEP.bmp}

Scegliendo Modifica EEProm/Extra Ram dal Menù File o in fase di Creazione o Modifica Progetto(Pulsante Precarica EEPROM) compare la finestra qui sopra che consente la Modifica del Contenuto della EEPROM/Extra Ram del Micro

E’ Possibile :
a) Riempire la EEPROM/Extra Ram totalmente con un valore desiderato(Pulsante Riempimento)
b) Modificare una singola cella facendo Doppio Click sulla cella da modificare

In Entrambi i casi verrà richiesta l’immissione del nuovo valore

#$K {bmc micro.bmp} Simulazione di Segnali in Ingresso

Simulazione di Segnali in Ingresso

I segnali in Ingresso  possono essere simulati mediante la creazione di un File di testo con estensione .CMD con  un qualsiasi Editore di Testo(I`Editor del DOS va benissimo)

Formato del File CMD

Il File CMD è un file di testo con il seguente formato:
PA4 I 0 1234
PA4 I 1 1222
PB2 C 50 250
PB2 C 0 500
PB2 C -20 100 
PB3 C 20 300
PB3 C 0 1000
PB3 I 1 150
PB3 I 0 200
PA4 I 1 1111
PB0 A 155 1234
TIM I 1 2000
NMI I 0 325
RES I 0 1500

Descrizione:
PA4;PB0;TIM;NMI;RES  3 Caratteri Identifica la Porta (TIM=Timer RES=Reset)
Spazio               1 Carattere (carattere ASCI 32)
I ; A ; C            1 Carattere I=Ingresso Digitale A=Ingresso Analogico C=Ingresso Ciclico
Spazio               1 Carattere (carattere ASCI 32)
0 ; 155 ; 1          Valore dell`ingresso (155 valore analogico 0-255)
Spazio               1 Carattere (carattere ASCI 32)
1234 ; 1222  ecc     Tempo
Nota Per la stessa Porta il tempo è inteso come tempo trascorso dall`ultimo dato

Osservazioni sull`ingresso ciclico
Formato
<Porta><Spazio><C><Spazio><Periodo><Spazio><Tempo>
Periodo è un numero Intero che rappresenta il tempo (in µs) in cui il segnale sarà alto e basso(quindi un ciclo alto basso durerà 2*Periodo)
Se Periodo è Positivo il segnale inizierà con valore 1
Se Periodo è Negativo il segnale inizierà con valore 0
Se Periodo è Zero il segnale terminerà(naturalmente potrà essere immesso un comando con Periodo=0 Dopo aver immesso un comando con Periodo <>0)
Tempo  è un numero intero che indica il momento(vedi nota sopra) di inizio(o di fine) del segnale
Su una stessa porta possono susseguirsi anche più treni di impulsi
Dopo la fine dell`ultimo treno di impulsi potranno essere immessi anche Segnali `Normali` I o A 

Nell`Esempio qui sopra 
La Porta PB2
- Riceve un segnale Ciclico con periodo 50 µs che inizia con impulso alto dopo 250 µs
- Il segnale Ciclico termina dopo  500 µs 
- Riceve un segnale Ciclico con periodo 20 µs che inizia con impulso basso dopo 100µs che dura per sempre

La Porta PB3
- Riceve un segnale Ciclico con periodo 20 µs che inizia con impulso alto dopo 300 µs
- Il segnale Ciclico termina dopo  1000 µs 
- Riceve un segnale Alto (I) dopo 150 µs
- Riceve un segnale Basso (I) dopo 200 µs

{bmc linea.bmp}
Vedere anche :
Cronologia Porte
#$K {bmc micro.bmp} Registratore
Registratore

{bmc Registr.bmp}

Per facilitare il debug del programma può essere utile visionare le ultime istruzioni eseguite dal Micro.
1) Per fare ciò attivare Il Registratore:
- Selezionando Avvia Registratore dal  Menu Debug
- Cliccando sul relativo Bottone(terzo da DX) nella (Barra degli Strumenti)
2) Visualizzare Il Registratore:
- Selezionando Registratore dal  Menu Debug
- Cliccando con il Tasto DX del Mouse sullo stesso Bottone nella (Barra degli Strumenti)

Nelle figura qui sopra:
Passo		= Passo attualmente visualizzato
Max Passi	= Numero di passi che si vuole mantenere in memoria
Nota Maggiore è questo numero minore sarà la velocità di esecuzione

La barra di scorrimento sulla sinistra consente lo scorrimento dei passi memorizzati

#$K {bmc micro.bmp} Altre Possibilità
Altre Possibilità

1)Facendo Doppio Click sulla finestra Assembler Compare una finestra con cui e possibile:
a)Inserire/Togliere un punto di interruzione(alla posizione  del cursore)
b)Impostare la Prossima Istruzione(alla posizione del cursore) (da usarsi con estrema attenzione)
c)Modificare il Codice .ASM (Edit Codice ASM)
d)Uscire senza effettuere nessuna azione

2)Facendo Doppio Click sulla finestra Registri(NORM Flags ; INT Flags ; NMI Flags) si apre una finestra che permette la visualizzazione/Modifica dei Flag

3)Facendo Doppio Click sulla finestra Registri(A ; X ; Y ; V ; W) oppure sulle Finestre Variabili e Memoria si apre una finestra che  permette la Visualizzazione/Modifica dei Registri/Variabili

4)Facendo  Click sulla finestra Memoria viene visualizzato sulla Barra di stato Il Nome della Variabile/Registro  e la  relativa Locazione di memoria

#$K {bmc micro.bmp}Modifica Codice Assembler

Modifica del Codice ASM

{bmc Edit.bmp}

Facendo doppio click sulla finestra Assembler e selezionando Edit oppure selezionando Edit dal menu Debug appare una finestra che permette di scegliere se Inserire, Modificare o Eliminare una linea di codice.
La Modifica del codice può Implicare il reindirizzamento delle istruzioni.
Nel caso di `accorciamento` del codice è possibile scegliere di rimpiazzare le locazioni di memoria liberate con istruzioni `nop`
Nel  caso di `allungamento` del codice è possibile scegliere di eliminare eventuali istruzioni `nop` successive per recuperare locazioni di memoria.
Bisogna comunque tenere presente che :
1) Il programma presume che le istruzioni immesse siano esatte

2) Non è permesso allungare o accorciare il codice tra le locazioni FF0h e FFFh perché  tra queste locazioni sono situati i vettori di `interrupt` e `reset`.

3) Nel caso di dati in memoria ROM, gli indirizzi di questi NON possono essere variati per cui il programma alla prima richiesta di ``Editazione``, Richiede il Nome dell`etichetta(o l`indirizzo) del primo Dato in ROM

4) Nel caso di `allungamento` del codice bisogna prestare attenzione all`offset delle istruzioni di salto(specialmente quelle con salto massimo di 16 bytes) che con tale allungamento potrebbe eccedere il massimo salto consentito(in questo caso la simulazione può comunque proseguire ma in fase di ricompilazione del File .ASM modificato comporterà un errore )

A modifiche Ultimate è possibile salvare il codice (Menu File) tenendo presente che :
1) Le Linee modificate o inserite sono riconoscibili perché il loro codice HEX è sostituito con `---` (la cui lunghezza è proporzionale alla lunghezza del codice)

2) Le linee cancellate sono riportate a fine file

Il File ottenuto avrà l`estensione .TXT e potrà essere utilizzato come traccia per la modifica del File .ASM originale

#$K+ {bmc micro.bmp} Conversione File

Conv.EXE

{bmc Conv.bmp}

Potrebbe rivelarsi utile, dopo aver ottenuto un file .DAT (Menu File) da una simulazione, utilizzare i segnali di questo file come ingresso per una successiva simulazione.
Il programma Conv.exe permette di effettuare, anche ridirezionando i segnali su altra porta, la creazione di un File .CMD partendo da un File .DAT (ma anche .CMD)
Dopo aver caricato il File `sorgente`, ed aver cliccato sulla Porta `sorgente` desiderata (sulle finestre di Sx), si sceglie la porta di destinazione dalla lista centrale e il programma visualizzerà la porta scelta sulla finestra corrispondente di Destra.
Volendo si possono utilizzare solo parte delle porte del File `sorgente`.
A fine lavoro si sceglie dal Menu File - Salva File .CMD e il file sarà salvato con il nome e percorso prescelti.