Skip to content

heitortanoue/sound-cpu-icmc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SOUND - Processador ICMC

Adicionado comando SOUND, que corresponde ao número 52 (110001) no processador.

SOUND RX, RX, RZ
( 110001 / RX / RY / RZ / x )

wave_forms

  • RX: frequência da onda em dHz (10 dHz = 1 Hz)
  • RY: duração em ms
  • RZ: tipo de onda
    • 0: sineWave
    • 1: squareWave
    • 2: triangleWave
    • 3: sawtoothWave

Como rodar

Usando os arquivos do repositório

  1. Clone esse repositório para seu computador
git clone https://github.com/totoi690/sound-cpu-icmc
  1. Entre na pasta files e rode o montador e depois o simulador
cd ./files
./montador nome_arquivo.asm
./simulador nome_arquivo.mif charmap.mif

Compilando a partir do código-fonte

  1. Clone esse repositório para seu computador
git clone https://github.com/totoi690/sound-cpu-icmc
  1. Entre na pasta montador e gere o arquivo final através do comando
cd ./montador
make all
  1. Entre na pasta simulador e gere o arquivo final através do comando
cd ./simulador
sh compila.sh
  • OBS: Dentro da pasta files existe um jogo de teste que deve fazer um som assim que a tecla ENTER for pressionada.

Requisitos para compilação

  • Compiladores GCC e G++
  • Bibliotecas
    • GTK2
    • SDL2

Implementações

Montador

  • Inserção do código "110001" (SOUND) no montador.c.

Simulador

  • Adição da biblioteca SDL2 para implementação do som
    • Adionada a flag -lSDL2 no compila.sh para inclusão da biblioteca
    • Gerador de funções sonoras no arquivo Sound.cpp
    • Programação das funções sonoras seno, quadrada, triangular e dente-de-serra
  • Modificação da classe Model e de seu método processador para aceitarem o novo código SOUND.

Participantes