apocsantos Posted December 28, 2012 at 06:53 PM Report #488846 Posted December 28, 2012 at 06:53 PM Boa tarde, Andei aqui de volta das "velharias" e encontrei um pedaço de código que pode fazer jeito a alguem. É simples e ainda é do tempo do 386, mas permite tocar um som na PC Speaker. Para quem tiver mais paciência até dá para fazer musicas inteiras. Program pcspeaker; Uses Crt; const SPEAKER_PORT = $61; {porta standard da PC Speaker} var portval : byte; begin portval := Port[sPEAKER_PORT] and $FC; begin Port[sPEAKER_PORT] := portval or 2; Delay(5); Port[sPEAKER_PORT] := portval; Delay(5); end; ReadKey; end. Cordiais cumprimentos, Apocsantos "A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"
thoga31 Posted December 28, 2012 at 07:05 PM Report #488850 Posted December 28, 2012 at 07:05 PM Husten, we have a problem... Receio que o FPC não consiga compilar isso. Ele não reconhece "Port". Investiguei acerca de métodos que a RTL possua, e são todas para Linux. Não se arranja nada para Windows? 😄 Knowledge is free!
apocsantos Posted December 28, 2012 at 07:16 PM Author Report #488855 Posted December 28, 2012 at 07:16 PM Boa tarde, @thoga31: Boa pergunta! Sei que para existem libs para Windows, para fazer isto, mas não de forma "directa" ao hardware. Este exemplo sei que funciona bem com Turbo Pascal em DOS, agora Windows ou GNU/Linux, não faço ideia! Penso que exista alterantiva, para se trabalhar directamente com os endereços de hardware em FreePascal, de contrario existe a biblioteca SDL, para se reproduzir som. Cordiais cumprimentos, Apocsantos "A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"
thoga31 Posted December 28, 2012 at 07:21 PM Report #488857 Posted December 28, 2012 at 07:21 PM Ah, os bons e velhos tempos do DOS... nostalgia 😄 Hoje em dia é só com modernices, não se pode fazer nada como antes. Nem o método Sound funciona como deve ser, já! Enfim... Anyway, um snippet muito interessante. Dava mesmo para começar uma conversa sobre a programação dos anos 80, assunto que me fascina 🙂 1 Report Knowledge is free!
apocsantos Posted December 30, 2012 at 12:41 AM Author Report #488959 Posted December 30, 2012 at 12:41 AM Boa noite, @thoga31: abre o tópico da conversa, que eu cá estou para participar! Cordiais cumprimentos, Apocsantos "A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"
thoga31 Posted December 30, 2012 at 12:54 AM Report #488960 Posted December 30, 2012 at 12:54 AM @thoga31: abre o tópico da conversa, que eu cá estou para participar! Right away, sir 😄 Knowledge is free!
nunopicado Posted December 30, 2012 at 08:56 PM Report #489023 Posted December 30, 2012 at 08:56 PM Cheguei a fazer um "virus" nos tempos de escola baseado no PC Speaker... Ele tocava os parabéns de cada vez que o PC arrancava, e não havia maneira de passar à frente sem ouvir por completo a estridente sinfonia... Claro, a não ser que alguém fosse tirar o exe do autoexec.bat! ehheeheheh "A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!" > Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now