pro_spk:воспроизведение_мелодий_через_встроенный_динамик_компьютера_pc-speaker_в_gnu_linux
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версия | Следующая версияСледующая версия справа и слева | ||
pro_spk:воспроизведение_мелодий_через_встроенный_динамик_компьютера_pc-speaker_в_gnu_linux [2019/01/21 20:56] – dwadmin | pro_spk:воспроизведение_мелодий_через_встроенный_динамик_компьютера_pc-speaker_в_gnu_linux [2019/01/23 14:20] – dwadmin | ||
---|---|---|---|
Строка 9: | Строка 9: | ||
Program for playing melodys on PC-Speaker. | Program for playing melodys on PC-Speaker. | ||
For GNU/Linux 64 bit version. Root priveleges needed. | For GNU/Linux 64 bit version. Root priveleges needed. | ||
+ | Version: 2. | ||
Written on FreePascal. | Written on FreePascal. | ||
Copyright (C) 2019 Artyomov Alexander | Copyright (C) 2019 Artyomov Alexander | ||
Строка 28: | Строка 29: | ||
{$MODE OBJFPC} | {$MODE OBJFPC} | ||
{$ASMMODE INTEL} | {$ASMMODE INTEL} | ||
+ | {$CODEPAGE UTF8} | ||
uses SysUtils, | uses SysUtils, | ||
- | procedure spkon; | + | procedure spkon; |
- | begin | + | asm |
- | asm | + | |
push rax | push rax | ||
in al, 61h | in al, 61h | ||
Строка 39: | Строка 40: | ||
out 61h, al | out 61h, al | ||
pop rax | pop rax | ||
- | end; | ||
end; | end; | ||
- | procedure spkoff; | + | procedure spkoff; |
- | begin | + | asm |
- | asm | + | |
push rax | push rax | ||
in al, 61h | in al, 61h | ||
Строка 50: | Строка 49: | ||
out 61h, al | out 61h, al | ||
pop rax | pop rax | ||
- | end; | ||
end; | end; | ||
- | procedure spk(b : word ); | + | procedure spk(b : word); |
var hb, lb : byte; | var hb, lb : byte; | ||
- | begin; hb := hi (b); lb := lo (b); | + | begin |
+ | hb := hi(b); lb := lo(b); | ||
asm | asm | ||
push rax | push rax |
pro_spk/воспроизведение_мелодий_через_встроенный_динамик_компьютера_pc-speaker_в_gnu_linux.txt · Последнее изменение: 2023/10/01 09:45 — dwadmin