# Menus pop-up e arquivos

O menu pop-up para a memória inclui quatro opções além das opções comuns a todos os componentes:

- Editar conteúdo: Abrir um editor hexadecimal para editar o conteúdo de memória.
- Limpar conteúdo: Redefinir todos os valores na memória como 0
- Carregar imagem...: Redefinir todos os valores na memória com base em valores encontrados em um arquivo usando o formato descrito abaixo.
- Salvar imagem...: Armazenar todos os valores na memória em um arquivo usando o formato descrito abaixo.

O formato de arquivo usado para arquivos de imagem é intencionalmente simples; isso lhe permitirá escrever um programa, como um montador, que gerará imagens de conteúdos que poderão ser carregados na memória. Como exemplo desse formato de arquivo, se tivermos uma memória de 256-bytes cujos cinco primeiros bytes de 2, 3, 0, 20, e -1, e todos os valores subsequentes forem 0, a imagem em arquivo texto teria o seguinte conteúdo:

>     v2.0 raw
>     02
>     03
>     00
>     14
>     ff

A primeira linha identifica o formato de arquivo usado (atualmente, só existe um formato de arquivo reconhecido). Valores subsequentes listados em hexadecimal, a partir de endereço 0. Você poderá colocar vários desses em uma mesma linha. Se houver mais posições de memória que as identificadas no arquivo, o Logisim irá carregar 0 nessas outras posições.

O arquivo de imagem poderá usar codificação do tipo run-length. Por exemplo, ao invés de listar o valor `00` dezesseis vezes em sequência, o arquivo poderá incluir `16*00`. Alerto que o número de repetições é escrito em base 10. Arquivos produzidos pelo Logisim usarão essa codificação para todos os casos com pelo menos quatro valores.

Você poderá colocar comentários no arquivo usando o símbolo '#'. Todos os caracteres na linha a partir do símbolo "#" serão ignorado pelo Logisim.

Próximo: Editor hexadecimal.