diff --git a/docs/specs/topics/chapter-2.md b/docs/specs/topics/chapter-2.md index 40ca40f1..05d22fcf 100644 --- a/docs/specs/topics/chapter-2.md +++ b/docs/specs/topics/chapter-2.md @@ -369,56 +369,6 @@ Efeito prático: --- -## 13. Boot ROM e Estado Inicial - -A **PROMETEU VM** nunca inicia em um estado totalmente "vazio" ou inativo. - -### 13.1 O Boot ROM (BIOS) -Se a máquina for inicializada sem um cartucho específico carregado, a VM executa um **Boot ROM padrão**. Este é um pequeno programa em bytecode embutido no core que gerencia o ciclo de vida inicial da máquina através de uma máquina de estados: - -#### Fase 1: BOOT (Splash & Som) -1. **Som de Inicialização**: Emite um som de "plim" (`0x3001`) imediatamente ao ligar (frame 0). -2. **Splash Animation**: Exibe o logotipo (quadrado Índigo) crescendo suavemente (0-40 frames). -3. **Splash Estático**: O logotipo permanece na tela até o frame 180 (~3 segundos). -4. **Interrupção**: O usuário pode pular o Splash a qualquer momento pressionando **START**. - -#### Fase 2: C_VALIDATION (Validação) -Ao fim do Splash ou interrupção, a BIOS verifica a presença de um cartucho: -- **Com Cartucho**: Chama `system.run_cart` (`0x0002`) para transferir o controle. -- **Sem Cartucho**: Transita para o **Estado de SO**. - -#### Fase 3: RUN (Sistema Operacional / Fallback) -Se nenhum cartucho for detectado, a máquina entra em modo "SO": -1. **Interface**: Exibe um quadrado **Ciano** no centro da tela. -2. **Hot-plug**: Monitora em tempo real a inserção de cartuchos. Se um cartucho for inserido e o botão **START** for pressionado, o cartucho é iniciado. - -### 13.2 Ciclo de Memória -A instrução `system.run_cart` garante um ambiente limpo para o novo programa: -1. Reseta o **PC** para 0. -2. Limpa as pilhas (**Operand Stack** e **Call Stack**). -3. Limpa a memória (**Globals** e **Heap**). -4. Carrega a nova **ROM** e **Constant Pool** do cartucho. - ---- - -## 14. Boot e Cartucho - -O core: - -* valida cartucho -* carrega ROM e dados -* seta PC inicial -* entra em modo RUN - -O cartucho: - -* contém bytecode -* assets -* metadata -* entry point - ---- - ## 15. Extensibilidade O Instruction Set é versionado.