´º½º±×·ì °ú ¸ÞÀϸµ ¸®½ºÆ®¿¡¼ ÈçÇÏ°Ô º¼ ¼ö ÀÖ´Â Áú¹®¿¡ ´ëÇÑ ´äº¯À» ÀÌ Àå¿¡¼ ÇÏ°Ú´Ù.
´õ ¸¹Àº Áú¹®°ú ´äº¯À» OSS »ç¿îµå µå¶óÀ̹ö À¥ ÆäÀÌÁö¿¡¼ ãÀ» ¼ö ÀÖ´Ù.
¾Æ·¡ÀÇ °ÍµéÀº °¡Àå Ç¥ÁØÀûÀÎ µð¹ÙÀ̽º ÆÄÀÏ À̸§ÀÌ´Ù. ÀϺΠ¸®´ª½º ¹èÆ÷º»ÀÇ °æ¿ì ¾à°£ ´Ù¸¥ À̸§À» »ç¿ëÇÒ ¼öµµ ÀÖ´Ù.
normally a link to /dev/audio0
Sun workstation compatible audio device (only a partial implementation, does not support Sun ioctl interface, just u-law encoding)
second audio device (if supported by sound card or if more than one sound card installed)
normally a link to /dev/dsp0
first digital sampling device
second digital sampling device
normally a link to /dev/mixer0
first sound mixer
second sound mixer
high-level sequencer interface
low level MIDI, FM, and GUS access
normally a link to /dev/music
1st raw MIDI port
2nd raw MIDI port
3rd raw MIDI port
4th raw MIDI port
displays sound driver status when read (also available as /proc/sound)
PC ½ºÇÇÄ¿ µå¶óÀ̹ö´Â ´ÙÀ½ µð¹ÙÀ̽º¸¦ Á¦°øÇÑ´Ù:
equivalent to /dev/audio
equivalent to /dev/dsp
equivalent to /dev/mixer
Sun ¿öÅ©½ºÅ×ÀÌ¼Ç (.au) »ç¿îµå ÆÄÀÏÀº ¿¬ÁÖÇÏ·Á¸é /dev/audio
µð¹ÙÀ̽º¿¡ ±× ÆÄÀÏÀ» º¸³»¸é µÈ´Ù. Raw »ùÇÃÀº /dev/dsp
µð¹ÙÀ̽º·Î º¸³»¶ó. play
¿Í °°Àº ÇÁ·Î±×·¥À» »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ´Ù.
±×°ÍÀº ´ëºÎºÐÀÇ ÆÄÀÏ Çü½ÄÀ» ÀνÄÇÒ °ÍÀÌ°í Á¤È®ÇÑ »ùÇøµ ¼Óµµ·Î »ç¿îµå Ä«µå¸¦
¼¼ÆÃÇÏ´Â µîÀÇ ¿ªÇÒÀ» ¼öÇà ÇÒ °ÍÀÌ´Ù.
wavplay ¶Ç´Â vplay (in the snd-util package) ¿Í °°Àº ÇÁ·Î±×·¥Àº WAV ÆÄÀÏÀ» ¿¬ÁÖÇϴµ¥ ÁÁ´Ù. ±×·¯³ª À̵éÀº Microsoft ADPCM compressed WAV ÆÄÀÏÀ» ÀνÄÇÏÁö ¸øÇÑ´Ù. ¶ÇÇÑ play (from the Lsox package) ÀÇ ´õ ¿À·¡µÈ ¹öÀüÀº 16 ºñÆ® WAV ÆÄÀÏÀ» ¿¬ÁÖÇÏÁö ¸øÇÑ´Ù.
snd-util ÆÐÅ°Áö¿¡ Æ÷ÇԵǾî ÀÖ´Â splay ¸í·ÉÀÇ °æ¿ì ¸í·ÉÇà¿¡ Àû´çÇÑ º¯¼öµé¸¸ ÁÖ¾îÁø´Ù¸é ´ëºÎºÐÀÇ »ç¿îµå ÆÄÀÏÀ» ¿¬ÁÖÇϴµ¥ »ç¿ëµÉ ¼ö ÀÖ´Ù.
/dev/audio ¶Ç´Â /dev/dsp ¸¦ Àд´ٴ °ÍÀº »ùÇÃ
µ¥ÀÌŸ¸¦ µÇµ¹·Á Áشٴ °ÍÀ» ÀǹÌÇÏ°í ±× »ùÇà µ¥ÀÌŸ´Â ¸®´ÙÀÌ·º¼Ç ±â´ÉÀ»
ÀÓÀÇÀÇ ÆÄÀÏ¿¡ ÀúÀåµÉ ¼ö ÀÖ´Ù. vrec
°°Àº ÇÁ·Î±×·¥À» »ç¿ëÇϸé
»ùÇøµ ¼Óµµ, duration µîÀ» Á¶ÀýÇϱⰡ ½±´Ù. Àû´çÇÑ ÀÔ·Â ÀåÄ¡¸¦ ¼±ÅÃÇϱâ
À§ÇØ ¹Í¼ ÇÁ·Î±×·¥À» ÇÊ¿ä·Î ÇÒ ¼öµµ ÀÖ´Ù.
ÇöÀçÀÇ »ç¿îµå µå¶óÀ̹ö·Î¼ ÇϳªÀÇ ½Ã½ºÅÛ¿¡¼ ¿©·¯°³ÀÇ »ç¿îµåºí·¡½ºÅÍ, »ç¿îµåºí·¡½ºÅÍ ÇÁ·Î, »ç¿îµåºí·¡½ºÅÍ16, MPU-401 ¶Ç´Â MSS Ä«µå¸¦ µ¿½Ã¿¡ »ç¿ëÇÏ´Â °ÍÀÌ °¡´ÉÇÏ´Ù. local.h ÆÄÀÏÀ» ÆíÁýÇÏ¿© SB2_BASE, SB2_IRQ, SB2_DMA (ÀϺΠ°æ¿ì) SB2_DMA2 ¸¶Å©·Î (macros)¸¦ define ÇØÁÖ¸é µÎ°³ÀÇ »ç¿îµåºí·¡½ºÅÍ Ä«µå¸¦ »ç¿ëÇÏ´Â °ÍÀÌ °¡´ÉÇÏ´Ù. ¶ÇÇÑ PAS16 °ú »ç¿îµåºí·¡½ºÅ͸¦ µ¿½Ã¿¡ »ç¿ëÇÏ´Â °ÍÀÌ °¡´ÉÇÏ´Ù.
2.0 ÀÌ»óÀÇ Ä¿³ÎÀ» »ç¿ëÇÏ´Â °æ¿ì, ¿©·¯°³ÀÇ »ç¿îµå Ä«µå¸¦ »ç¿ëÇÏ·Á¸é local.h ÆÄÀÏÀ» ¼öÁ¤ÇÏ´Â ´ë½Å¿¡ /usr/include/linux/autoconf.h ÆÄÀÏÀ» ÆíÁýÇÏ¸é µÈ´Ù. ¸ÕÀú ¾Æ·¡ÀÇ ³»¿ëÀÌ ÀÖ´Â À§Ä¡¸¦ ã´Â´Ù.
#define SBC_BASE 0x220
#define SBC_IRQ (5)
#define SBC_DMA (1)
#define SB_DMA2 (5)
#define SB_MPU_BASE 0x0
#define SB_MPU_IRQ (-1)
À§ÀÇ ³»¿ë ´ÙÀ½¿¡ ¾Æ·¡ÀÇ ³»¿ëÀ» ³Ö¾îÁØ´Ù. ¹°·Ð IRQ µîÀÇ °ªÀº ÀÚ½ÅÀÇ »ç¿îµå Ä«µå¿¡ ¸Â´Â °ÍÀÌ¾ß ÇÒ °ÍÀÌ´Ù.
#define SB2_BASE 0x330
#define SB2_IRQ (7)
#define SB2_DMA (2)
#define SB2_DMA2 (2)
´ÙÀ½ µå¶óÀ̹öµéÀº multiple instances (¿©·¯°³ »ç¿ëÇϱâ)°¡ Çã¿ëµÇÁö ¾Ê´Â´Ù:
»ç¿îµå µå¶óÀ̹ö µð¹ÙÀ̽º ÆÄÀÏÀ» »ý¼º½Ãų ÇÊ¿ä°¡ ÀÖ´Ù. µð¹ÙÀ̽º ÆÄÀÏÀÇ »ý¼º¿¡ ´ëÇÑ ³»¿ëÀ» ´Ù·ç´Â Àå(section)À» º¸¶ó. µð¹ÙÀ̽º ÆÄÀÏÀÌ ÀÖ´Ù¸é ÁÖ, ºÎ ¹øÈ£°¡ Á¤È®ÇÑÁö È®ÀÎÇ϶ó (ÀϺΠ¿À·¡µÈ CD-ROM ¹èÆ÷º»ÀÇ °æ¿ì, Á¤È®ÇÑ µð¹ÙÀ̽º ÆÄÀÏÀÌ »ý¼ºµÇÁö ¾ÊÀ» ¼öµµ ÀÖ´Ù).
»ç¿îµå µå¶óÀ̹ö¸¦ Æ÷ÇÔÇÏ´Â Ä¿³Î·Î ºÎÆÃÇÏÁö ¾Ê¾Ò°Å³ª I/O address ¼³Á¤ÀÌ ¿©·¯ºÐÀÇ »ç¿îµåÄ«µå¿Í ¸ÂÁö ¾Ê´Â´Ù. ÇöÀç ½ÇÇàµÇ´Â Ä¿³ÎÀÌ »õ·Î ÄÄÆÄÀÏÇÑ Ä¿³ÎÀÎÁö È®ÀÎÇÏ°í »ç¿îµå µå¶óÀ̹ö ¼³Á¤º¯¼ö°¡ ¿©·¯ºÐÀÇ Çϵå¿þ¾î ¼Â¾÷°ú ÀÏÄ¡ÇÏ´ÂÁö Á¡°ËÇ϶ó.
/dev/audio ¶Ç´Â /dev/dsp ¿Í °°Àº ÇÊ¿äÇÑ µð¹ÙÀ̽º ÆÄÀÏÀº »ý¼ºµÇ¾î ÀÖÁöµµ ¾ÊÀºµ¥ ±×µé µð¹ÙÀ̽º ÆÄÀÏ¿¡ µ¥ÀÌŸ¸¦ ±â·ÏÇÏ·Á°í ÇÒ °æ¿ì ¹ß»ýÇÒ ¼ö ÀÖ´Â ¿¡·¯ÀÌ´Ù. »ç¿îµå µð¹ÙÀ̽º´Â Á¤½ÄÀ¸·Î È®Á¤µÈ ÆÄÀÏÀÌ¸ç ¿©·¯ºÐÀÇ µð½ºÅ© ÆÄƼ¼Ç¿¡ Á¸ÀçÇØ¾ß ÇÑ´Ù. µð¹ÙÀ̽º ÆÄÀÏÀÇ »ý¼º ¿¡¼ ¼³¸íÇÑ ½ºÅ©¸³Æ®¸¦ ½ÇÇà½Ãų ÇÊ¿ä°¡ ÀÖ´Ù.
¸®´ª½º Ä¿³Î 2.0 ÀÌ»óÀÎ °æ¿ì, µð¹ÙÀ̽º¸¦ ¿·Á°í ÇÒ ¶§ ½Ã½ºÅÛ»ó¿¡ free RAMÀÌ ÃæºÐÇÏÁö ¾ÊÀ¸¸é ÀÌ·¯ÇÑ ¿¡·¯°¡ ¹ß»ýÇÒ ¼ö ÀÖ´Ù. audio µå¶óÀ̹ö´Â °¢ DMA channel¿¡ ´ëÇÏ¿© ÃÖ¼ÒÇÑ ¿¬¼ÓÀûÀ¸·Î µÎ ÆäÀÌÁöÀÇ(8k) ½ÇÁ¦ RAM (physical RAM)ÀÌ ÇÊ¿äÇÏ´Ù. ÀÌ°ÍÀº RAMÀÌ 16 ¸Þ°¡ ÀÌÇÏÀ̰ųª Àå½Ã°£ ½Ã½ºÅÛÀ» Äѳõ¾ÒÀ» ¶§ °¡²û ¹ß»ýÇÑ´Ù. ÀåÄ¡¸¦ ´Ù½Ã ¿±â Àü¿¡ ´ÙÀ½ C ÇÁ·Î±×·¥À» ÄÄÆÄÀÏÇÏ°í ½ÇÇà½ÃÅ°¸é ¾à°£ÀÇ RAMÀ» freeÇÑ »óÅ·Π¸¸µé ¼ö ÀÖ´Ù:
main() {
int i;
char mem[500000];
for (i = 0; i < 500000; i++)
mem[i] = 0;
exit(0);
}
»ç¿ëÇÏ°íÀÚ ÇÏ´Â »ç¿îµå µð¹ÙÀ̽º°¡ ÀÌ¹Ì ´Ù¸¥ ÇÁ·Î¼¼¼¿¡ ÀÇÇØ »ç¿ëµÇ°í ÀÖ´Â °æ¿ìÀÌ´Ù. fuser ¸í·ÉÀ» »ç¿ëÇÏ¿© È®ÀÎÇÒ ¼ö ÀÖ´Ù:
% fuser -v /dev/dsp
/dev/dsp: USER PID ACCESS COMMAND
tranter 265 f.... tracker
À§ÀÇ ¿¹¿¡¼ ÇÁ·Î¼¼¼ 265¿¡ ÀÇÇÏ¿© µð¹ÙÀ̽º°¡ »ç¿ëÁßÀÎ °ÍÀ» ¾Ë ¼ö ÀÖ´Ù. ±× ÇÁ·Î¼¼¼°¡ ³¡³ª±æ ±â´Ù·È´Ù°¡ µð¹ÙÀ̽º¸¦ »ç¿ëÇϰųª ¶Ç´Â ±× ÇÁ·Î¼¼¼¸¦ Á×ÀÌ°í¼ µð¹ÙÀ̽º¸¦ »ç¿ëÇÏ¸é µÈ´Ù. ±×·±µ¥ ´Ù¸¥ »ç¿ëÀÚ°¡ µð¹ÙÀ̽º¸¦ »ç¿ëÇÒ ¼öµµ ÀÖÀ¸¹Ç·Î rootÀÇ ±ÇÇÑÀ¸·Î fuser ¸í·ÉÀ» ½ÇÇàÇÏ¿©¾ßÁö¸¸ ÀÚ½ÅÀ» Æ÷ÇÔÇÑ ´Ù¸¥ »ç¿ëÀÚ°¡ µð¹ÙÀ̽º¸¦ »ç¿ëÁßÀÎÁö ¾Æ´ÑÁö¸¦ ¾Ë ¼ö ÀÖÀ» °ÍÀÌ´Ù.
ÀϺΠ½Ã½ºÅÛ¿¡¼´Â ´Ù¸¥ »ç¿ëÀÚÀÇ ÇÁ·Î¼¼½º¸¦ º¸±â À§ÇØ fuser
¸í·ÉÀ» ½ÇÇà½ÃÅ°·Á¸é rootÀ̾î¾ß ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù.
Brian GoughÀÇ º¸°í¿¡ µû¸£¸é, DMA channel 1À» »ç¿ëÇÏ´Â »ç¿îµåºí·¡½ºÅÍ Ä«µåÀÇ °æ¿ì ¿ª½Ã DMA 1À» »ç¿ëÇÏ´Â QIC-02 tape µå¶óÀ̹ö°ú Ãæµ¹ÇÒ °¡´É¼ºÀÌ ÀÖÀ¸¸ç ±×·¡¼ "device busy" ¿¡·¯¸¦ ÀÏÀ¸Å³ ¼ö ÀÖ´Ù°í ÇÑ´Ù. ¿©·¯ºÐÀÌ FTAPEÀ» »ç¿ëÇÑ´Ù¸é QIC-02 tape µå¶óÀ̹ö¸¦ ÀÛµ¿Çϵµ·Ï ÇØ ³õ¾ÒÀ» ¼öµµ ÀÖ´Ù. FTAPE-HOWTO¿¡ µû¸£¸é FTAPEÀ» »ç¿ëÇϱâ À§ÇØ QIC-02 tape µå¶óÀ̹ö°¡ ÇʼöÀûÀÎ °ÍÀº ¾Æ´Ï¸ç QIC-117 µå¶óÀ̹ö¸¸ ÀÖÀ¸¸é µÈ´Ù°í ÇÑ´Ù. QIC-02°¡ ¾Æ´Ï¶ó QIC-117À» »ç¿ëÇϵµ·Ï Ä¿³ÎÀ» Àç¼³Á¤Çϸé FTAPE °ú »ç¿îµå Ä«µå¸¦ ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.
ÀϹÝÀûÀ¸·Î Áõ»óÀº ´ÙÀ½°ú °°´Ù. »ùÇà »ç¿îµå ÆÄÀÏÀÌ ¸îÃÊ Á¤µµ ¿¬ÁÖ µÇ´Ù°¡ ¿ÏÀüÈ÷ ¸ØÃç ¹ö¸®°Å³ª ¶Ç´Â "missing IRQ", "DMA timeout" °ú °°Àº ¿¡·¯ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏ´Â °ÍÀÌ´Ù. °¡Àå °¡´É¼º ÀÖ´Â °ÍÀº IRQ ¶Ç´Â DMA channelÀÇ ¼¼ÆÃÀÇ À߸øÀÌ´Ù. »ç¿îµå Ä«µåÀÇ Á¡ÆÛ ¼¼Æðú Ä¿³Î ¼³Á¤ÀÌ ÀÏÄ¡ÇÏ´ÂÁö ±×¸®°í ´Ù¸¥ Ä«µå¿Í Ãæµ¹Àº ¾ø´ÂÁö È®ÀÎÇ϶ó.
¶Ç ´Ù¸¥ Áõ»óÀº »ç¿îµå »ùÇÃÀÌ ¹Ýº¹ÀûÀ¸·Î ³¡¾øÀÌ ¿¬ÁֵǴ °ÍÀÌ´Ù. ÀϹÝÀûÀ¸·Î IRQ Ãæµ¹¶§¹®¿¡ ¹ß»ýÇÏ´Â Çö»óÀÌ´Ù.
MOD ÆÄÀÏÀÇ ¿¬ÁÖ´Â ¸¹Àº CPU ÆÄ¿ö¸¦ ÇÊ¿ä·Î ÇÑ´Ù. ³Ê¹« ¸¹Àº ÇÁ·Î¼¼¼°¡ ½ÇÇàµÇ°í Àְųª ¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ°¡ ½Ç½Ã°£À¸·Î ¿¬ÁÖÇϱ⿡´Â ³Ê¹« ´À¸± ¼öµµ ÀÖ´Ù:
Gravis UltraSound Ä«µå¸¦ »ç¿ëÇÑ´Ù¸é GUS¸¦ À§ÇØ Æ¯º°È÷ Á¦ÀÛµÈ MOD ÆÄÀÏ
¿¬ÁÖ±â (¿¹: gmod
) ÁßÀÇ Çϳª¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.
¹öÀü 1.0c ¿Í ±× ÀÌÀüÀÇ »ç¿îµå µå¶óÀ̹ö´Â ioctl()
ÀÇ ¼³°è°¡ ±× ÀÌÈÄÀÇ
°Í°ú ´Ù¸£¸ç ȣȯµÇÁö ¾Ê´Â´Ù. ´õ »õ·Î¿î ¼Ò½º Äڵ带 ±¸Çϰųª »õ·Î¿î »ç¿îµå
µå¶óÀ̹ö¿¡ ¸Â°Ô °íÃĶó. ÀÚ¼¼ÇÑ ³»¿ëÀº Readme ÆÄÀÏÀ» º¸¶ó.
¶ÇÇÑ ÀÀ¿ëÇÁ·Î±×·¥À» ÄÄÆÄÀÏ ÇÒ¶§ ¿©·¯ºÐÀÌ »ç¿ëÇÏ´Â soundcard.h ¿Í
ultrasound.h
°¡ ÃֽŠ¹öÀüÀÎÁö È®ÀÎÇ϶ó. ÀÌ ±ÛÀÇ Ãʹݺο¡ ÀÖ´Â
¼³Ä¡ °ü·Ã ³»¿ëÀ» º¸¶ó.
ÀÌ°ÍÀº ¾Æ¸¶µµ ¾ÕÀÇ Áú¹®°ú °°Àº ¹®Á¦ÀÏ °ÍÀÌ´Ù.
Ä¿³Î ¼Ò½º¿¡¼ Á¦°øÇÏ´Â »ç¿îµå °ü·Ã ÆÄÀÏÀ» Âü°íÇϱ⠹ٶõ´Ù.
¼Ò½º Äڵ带 Á¦¿ÜÇÑ °¡Àå ÁÁÀº ¹®¼´Â 4Front TechnologiesÀÇ À¥»çÀÌÆ®¿¡¼, http://www.opensound.com, ãÀ» ¼ö ÀÖ´Ù. Âü°í¹®Çå ¸ñ·Ï¿¡ ÀÖ´Â Linux Multimedia Guide¿¡¼µµ »ç¿îµå µå¶óÀ̹ö¿¡ ´ëÇÑ Á¤º¸¸¦ ãÀ» ¼ö ÀÖ´Ù.
ÀÌ Áú¹®¿¡ ´ëÇÑ ´äº¯Àº ½±Áö ¾Ê´Ù. ´ÙÀ½ÀÇ »çÇ׿¡ µû¶ó ´Ù¸£´Ù:
ÀϹÝÀûÀ¸·Î 386 ¶Ç´Â ±× ÀÌ»óÀÇ ÄÄÇ»ÅÍÀÇ °æ¿ì 8 ºñÆ® »ç¿îµå Ä«µå·Î¼ »ùÇà ÆÄÀÏ ¶Ç´Â FM synthesized À½¾ÇÀ» ½±°Ô ¿¬ÁÖÇÒ ¼ö ÀÖ´Ù.
±×·¯³ª MOD ÆÄÀÏÀ» ¿¬ÁÖÇÏ´Â °ÍÀº »ó´çÇÑ CPU ÀÚ¿øÀ» ÇÊ¿ä·Î ÇÑ´Ù. ¸î¸î ½ÇÇè¿¡ ÀÇÇϸé 44kHzÀÇ ¼Óµµ·Î ¿¬ÁÖÇϱâ À§Çؼ´Â 486/50 ¼ÓµµÀÇ 40% ÀÌ»óÀ» ÇÊ¿ä·Î Çϸç 386/25ÀÇ °æ¿ì 22kHz ÀÌ»óÀÇ ¼Óµµ·Î ¿¬ÁÖÇϱâ´Â °ÅÀÇ ºÒ°¡´ÉÇÏ´Ù°í ÇÑ´Ù (ÀÌ °á°ú´Â »ç¿îµåºí·¡½ºÅÍ¿Í °°Àº 8 ºñÆ® »ç¿îµåÄ«µå·Î¼ ½ÇÇèÇÑ °ÍÀÌ´Ù). Gravis UltraSound Ä«µå¿Í °°Àº »ç¿îµå Ä«µå´Â Çϵå¿þ¾î ±â´ÉÀ» ´õ ¸¹ÀÌ ¼öÇàÇϱ⠶§¹®¿¡ CPU ÀÚ¿øÀ» ´ú ÇÊ¿ä·Î ÇÑ´Ù.
À§ÀÇ À̾߱â´Â CPU°¡ ´Ù¸¥ ½ÉÇÑ ÀÏÀ» ÇÏ°í ÀÖÁö ¾Ê´Ù´Â °¡Á¤À» Æ÷ÇÔÇÏ°í ÀÖ´Ù.
¼öÄ¡º¸Á¶ÇÁ·Î¼¼¼¸¦ °®°í ÀÖÀ» °æ¿ì, sox¿Í °°Àº µµ±¸(utility)¸¦ »ç¿ëÇÏ¿© »ç¿îµå ÆÄÀÏÀ» º¯È¯Çϰųª À½ÇâÈ¿°ú¸¦ ´õÇÏ´Â ÀÏÀ» ÈξÀ ´õ »¡¸® ÇÒ ¼ö ÀÖ´Ù. Ä¿³Î µå¶óÀ̹ö ±× ÀÚü´Â ¾Æ¹«·± ½Ç¼ö¿¬»êÀ» ÇÏÁö ¾Ê´Â´Ù.
(´ÙÀ½ ¼³¸íÀº seeker@indirect.com
¿¡ ÀÇÇÑ °ÍÀÌ´Ù)
¸®´ª½º´Â address 330 (µðÆúÆ®) ¶Ç´Â 334¸¦ »ç¿ëÇÏ´Â 1542 ¸¸À» ÀνÄÇÑ´Ù. ±×¸®°í PASÀÇ °æ¿ì MPU-401À» ¿¡¹Ä·¹À̼ÇÇϱâÀ§ÇØ 330À» »ç¿ëÇؾ߸¸ ÇÑ´Ù. ¼ÒÇÁÆ®¿þ¾î¿¡¼ MPU-401À» Á×Àδٰí ÇÏ´õ¶óµµ ¿©ÀüÈ÷ Ãæµ¹Àº ÀϾ °ÍÀÌ´Ù. 1542ÀÇ address¸¦ 334·Î ¿Å±â¸é ¹®Á¦´Â »ç¶óÁú °ÍÀÌ´Ù.
°Ô´Ù°¡, PAS-16 °ú 1542´Â µÑ´Ù 16-bit DMA¸¦ ÇÑ´Ù. ±×·¡¼ 16-bit 44 kHz stereo·Î »ùÇøµ ÇÏ¿© 1542¿¡ ¹°·ÁÀÖ´Â SCSI µå¶óÀ̹ö¿¡ ÀúÀåÇÏ·Á ÇÑ´Ù¸é ¹®Á¦°¡ »ý±æ °ÍÀÌ´Ù. DMA °ãÄ¡°í(overlap) RAM ÀçÃæÀü¿¡ ÇÊ¿äÇÑ ½Ã°£ÀÌ ÃæºÐÇÏÁö ¾Ê±â ¶§¹®¿¡ ¿©·¯ºÐÀº ¹«¾ùÀÌ ¹®Á¦ÀÎÁöµµ ¸ð¸¥Ã¤ "PARITY ERROR - SYSTEM HALTED" ¶ó´Â ¸Þ¼¼Áö¿¡ ºÎµéºÎµé ¶³°ÍÀÌ´Ù. QIC-117 tape¸¦ Á¦°øÇÏ´Â ¸î¸î 2Â÷ ÆǸÅÀÚµéÀÌ 1542ÀÇ bus on/off timesÀ» º¸Å뺸´Ù ´õ ±æ°Ô ¼¼ÆÃÇ϶ó°í ±Ç°íÇÔÀ¸·Î½á »óȲÀº ´õ ³ª»Ú°Ô µÇ¾ú´Ù. Adaptec's BBS ¶Ç´Â ÀÎÅͳÝÀ» ÅëÇÏ¿© SCSISEL.EXE ÇÁ·Î±×·¥À» ±¸Çؼ ¹®Á¦°¡ ÇØ°áµÉ ¶§±îÁö BUS ON timeÀ» °¨¼Ò½ÃÅ°°Å³ª BUS OFF timeÀ» Áõ°¡½ÃÅ°µµ·Ï Ç϶ó. ±×·± ÈÄ¿¡ ±×°ÍÀ» ´«±Ý Çϳª (ont notch) ¶Ç´Â ±× ÀÌ»ó À̵¿½ÃÄѶó. SCSISELÀº EEPROM ¼¼ÆÃÀ» ¹Ù²Ù´Â °ÍÀ̱⠶§¹®¿¡ CONFIG.SYS ÆÄÀÏÀÇ DOS driver lineÀ» ¹Ù²Ù´Â °Íº¸´Ù ´õ ¿µ±¸ÀûÀÌ´Ù. ±×¸®°í ¸®´ª½º·Î °ð¹Ù·Î ºÎÆÃÇϸé Á¦´ë·Î ÀÛµ¿ÇÒ °ÍÀÌ´Ù (DOS patch¿Í´Â ´Þ¸®).
¸¶Áö¸· ¹®Á¦ - ¿À·¡µÈ Symphony Ĩ¼ÂÀº ¹ö½º Á¢±Ù (bus accesses) ¼Óµµ¸¦ ³ôÀ̱â À§ÇØ I/O »çÀÌŬÀÇ Å¸À̹ÖÀ» Å©°Ô °¨¼Ò ½ÃÄ×´Ù. ÀúÀÚ°¡ ½ÃÇèÇß´ø ¿©·¯°¡Áö º¸µå Áß¿¡¼ PAS-16À» Á¦¿ÜÇÏ°í¼´Â ¾î¶² °Íµµ ŸÀÌ¹Ö °¨¼Ò¿Í °ü·ÃµÈ ¹®Á¦¸¦ ÀÏÀ¸Å°Áö ¾Ê¾Ò´Ù. Media VisionÀÇ BBS¿¡ SYMPFIX.EXE¶ó´Â ÆÄÀÏÀÌ ÀÖ´Ù. ÀÌ ÆÄÀÏÀº SymphonyÀÇ bus controller¿¡ ÀÖ´Â diagnostic bit¸¦ ¼öÁ¤ÇÏ¿© ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖÀ» °ÍÀ̶ó°í ¿©°ÜÁø´Ù. ±×·¯³ª È®½ÇÈ÷ º¸ÀåÇÒ ¼ö´Â ¾ø´Ù. ¿©·¯ºÐÀº ´ÙÀ½ »çÇ×À» ¼öÇàÇؾßÇÒ ÇÊ¿ä°¡ ÀÖ´Ù:
Young Microsystems´Â ¾à 30 ´Þ·¯ °¡·®ÀÇ ºñ¿ëÀ¸·Î ±×µéÀÌ ¼öÀÔÇÑ º¸µå¸¦ ¾÷±×·¹À̵å ÇØ ÁÙ °ÍÀÌ´Ù; ´Ù¸¥ ÆǸÅÀڵ鵵 ºñ½ÁÇÒ ¼ö ÀÖÀ¸´Ï ¸¶´õº¸µå¸¦ ´©°¡ ¸¸µé¾ú´ÂÁö ¶Ç´Â ´©°¡ ¼öÀÔÇß´ÂÁö ÁüÀÛÀÌ µÇ¸é ±×µé°ú Á¢ÃËÇØ º¸¶ó (Çà¿îÀ» ºó´Ù). ³»°¡ °æÇèÇÑ ¹Ù¿¡ ÀÇÇϸé PorAudioÀÇ bus interface chip¿¡ ¹®Á¦°¡ ÀÖ´Ù. 120 ´Þ·¯ Â¥¸® »ç¿îµå Ä«µå¸¦ »ç¼ 6MHz AT¿¡ ¼³Ä¡ÇÏ¿© »ç¿ëÇÒ·Á´Â »ç¶÷Àº ¾Æ¹«µµ ¾øÀ» °ÍÀÌ´Ù. ´ëºÎºÐÀº 25-40 MHz 386/486 ÄÄÇ»Å͸¦ »ç¿ëÇÒ °ÍÀÌ°í ÀÌ Á¤µµ¶ó¸é ±×¸®°í ĨÀÌ Á¦´ë·Î µðÀÚÀÎµÈ °ÍÀ̶ó¸é ÃÖ¼ÒÇÑ 12MHz bus rate¸¦ Á¦¾îÇÏ´Â °ÍÀº ¹®Á¦°¡ ¾Æ´Ï´Ù. Exit soapbox (stage left).
ù¹ø° ¹®Á¦´Â ¸¶´õº¸µåÀÇ Ä¨¼Â, bus speed, ´Ù¸¥ ¹ÙÀÌ¿À½º ¼¼Æà ±×¸®°í ´ÞÀÇ À§»ó¿¡ ´Þ·ÁÀÖ´Ù. µÎ¹ø° ¹®Á¦´Â refresh option ¼¼Æà (hidden ¶Ç´Â synchronous), 1542 DMA rate ±×¸®°í (¾Æ¸¶µµ) bus I/O rate¿¡ ´Þ·ÁÀÖ´Ù. ¼¼¹ø° ¹®Á¦´Â Symphony ĨÀÇ ¾î´À flavor°¡ Media VisionÀÇ slow design°ú ȣȯµÇÁö ¾Ê´ÂÁö¸¦ Media Vision ¿¡ ¹°¾îº¸´Â °Í¿¡ µû¶ó °áÁ¤µÈ´Ù. Be warned, though - 3 of 4 techs I talked to were braon demaged. ÀúÀÚ´Â ±×µéÀÌ ´Ù¸¥ »ç¶÷ÀÇ Çϵå¿þ¾î¿¡ ´ëÇÏ¿© ¹«¾ùÀ» À̾߱â ÇÏ´õ¶óµµ ¹Ï±â ¾î·Æ´Ù. ¿Ö³ÄÇÏ¸é ±×µéÀº ±×µé ÀÚ½ÅÀÇ °ÍÁ¶Â÷µµ Àß ¸ô¶ú±â ¶§¹®ÀÌ´Ù.
ÀϺΠ»ç¿îµå Ä«µåÀÇ ÇØ´ç µå¶óÀ̹ö´Â full duples mode¸¦ Áö¿øÇÑ´Ù. ¾î¶»°Ô »ç¿ëÇÏ´ÂÁö´Â 4Front Technologies¿¡¼ Á¦°øÇÏ´Â ¹®¼¸¦ Âü°íÇϱ⠹ٶõ´Ù.
286 °ú ±× ÀÌ»óÀÇ ÄÄÇ»ÅÍ¿¡¼ IRQ 2´Â second interrupt controller¿¡ cascaded µÇ¾î ÀÖ´Ù. ±×°ÍÀº IRQ 9¿Í µ¿ÀÏÇÏ´Ù.
ÀÌ°ÍÀº µµ½º·Î soft reboot ÇÏ¸é ¹ß»ýÇÑ´Ù. ¶§¶§·Î À߸øµÈ CONFIG.SYS ÆÄÀÏ·Î ÀÎÇØ ¿¡·¯ ¸Þ¼¼Áö°¡ Ç¥½ÃµÇ±âµµ ÇÑ´Ù.
ÇöÀç ´ëºÎºÐÀÇ »ç¿îµå Ä«µå´Â IRQ ¿Í DMA ¼¼ÆÃÀ» ¼ÒÇÁÆ®¿þ¾î·Î ÇÑ´Ù. ¸®´ª½º¿Í MS-DOS/Windows °£ÀÇ ¼¼ÆÃÀÌ ´Ù¸£´Ù¸é ÀÌ·± ¹®Á¦°¡ »ý±æ ¼öµµ ÀÖ´Ù. ÀϺΠ»ç¿îµå Ä«µå´Â ¿Ïº®ÇÏ°Ô ¸®¼Â(reset)ÇÏÁö ¾ÊÀ¸¸é »õ ¼³Á¤º¯¼ö¸¦ ¹Þ¾ÆµéÀÌÁö ¾Ê´Â´Ù (Áï ÆÄ¿ö¸¦ ²°´Ù°¡ ÄѰųª ¶Ç´Â ¸®¼Â ¹öÆ°À» »ç¿ëÇ϶ó)
ÀÌ ¹®Á¦ÀÇ ºü¸¥ ÇØ°áÃ¥Àº soft reboot (¿¹: Ctrl-Alt-Del)À» »ç¿ëÇÏ´Â ´ë½Å¿¡ ÄÄÇ»Å͸¦ ²°´Ù°¡ ´Ù½Ã ÄѰųª ¸®¼Â ¹öÆ°À» »ç¿ëÇÏ´Â °ÍÀÌ´Ù.
Á¤È®ÇÑ ÇØ°áÃ¥Àº MS-DOS ¿Í ¸®´ª½ºÀÇ IRQ ¿Í DMA ¼¼ÆÃÀ» °®°Ô ÇÏ´Â °ÍÀÌ´Ù (¶Ç´Â DOS¸¦ »ç¿ëÇÏÁö ¾Ê°Å³ª :-).
ID softwareÀÇ °ÔÀÓÀÎ DOOMÀ» »ç¿ëÇÏ´ÂÀÌ´Â ¿©±â¿¡ °ü½ÉÀÌ ÀÖÀ» °ÍÀÌ´Ù.
Á¤È®ÇÑ »ç¿îµåÀÇ Ãâ·ÂÀ» À§Çؼ´Â ½Ç½Ã°£ DOOM mode
¸¦ Áö¿øÇÏ´Â ¹öÀü
2.90 ÀÌ»óÀÇ »ç¿îµå µå¶óÀ̹ö°¡ ÇÊ¿äÇÏ´Ù.
»ç¿îµå »ùÇÃÀº 16 ºñÆ®ÀÌ´Ù. ¿©·¯ºÐÀÇ »ç¿îµå Ä«µå°¡ 8 ºñÆ®¶ó¸é ftp://meatlab.unc.edu/pub/Linux/games/doom¿¡ ÀÖ´Â ¸î°¡Áö ÇÁ·Î±×·¥ Áß¿¡ Çϳª¸¦ ÀÌ¿ëÇÏ¿© Á¦´ë·Î µÈ »ç¿îµå¸¦ µéÀ» ¼ö ÀÖ´Ù.
DOOMÀÌ ¿ø¸¸ÇÏ°Ô ½ÇÇàµÇÁö ¾ÊÀ» °æ¿ì »ç¿îµå¸¦ Á׿©¹ö¸®¸é (sndserver
ÆÄÀÏÀÇ À̸§À» ´Ù¸¥ À̸§À¸·Î ¹Ù²Ù¸é µÈ´Ù) °³¼±µÉ °ÍÀÌ´Ù.
µðÆúÆ®·Î DOOMÀº À½¾ÇÀ» Áö¿øÇÏÁö ¾Ê´Â´Ù ( DOS ¹öÀüÀÇ °æ¿ìó·³). À½¾Ç±îÁö
Áñ±â·Á¸é musserver
ÇÁ·Î±×·¥À» Ãß°¡ÇØ¾ß ÇÑ´Ù. ÀÌ°ÍÀº
ftp://pandora.st.hmc.edu/pub/linux/musserver.tgz ¿¡¼ ±¸ÇÒ ¼ö ÀÖ´Ù.
Ç°Áú ÁÁÀº ½¯µå¼± (shielded cables)À» »ç¿ëÇÏ°í »ç¿îµå Ä«µå¸¦ ´Ù¸¥ ½½·ÔÀ¸·Î ¿Å±â´Â °ÍÀº ÀâÀ½À» ÁÙÀ̴µ¥ µµ¿òÀÌ µÈ´Ù. »ç¿îµå Ä«µå¿¡ º¼·ý Á¶Àý ±â´ÉÀÌ ÀÖ´Ù¸é ¼¼ÆÃÀ» ¹Ù²Ù¾î º¸¶ó (¾Æ¸¶µµ maximumÀÌ °¡Àå ÁÁÀ» °ÍÀÌ´Ù). mixer ÇÁ·Î±×·¥À» ÀÌ¿ëÇÏ¿© ¿øÇÏÁö ¾Ê´Â ÀÔ·Â (¿¹, ¸¶ÀÌÅ©)ÀÇ °ÔÀÎÀÌ Á¦·Î·Î ¼¼ÆõǾî ÀÖ´ÂÁö È®ÀÎÇÒ ¼ö ÀÖ´Ù.
Philipp Braunbeck¿¡ ÀÇÇϸé ÀÚ½ÅÀÇ ESS-1868 »ç¿îµå Ä«µå¿¡´Â ³»Àå ¾ÚÇÁ¸¦ ²ô´Â Á¡ÆÛ ½ºÀ§Ä¡°¡ ÀÖÀ¸¸ç À̸¦ ÀÌ¿ëÇÏ¿© ¼ÒÀ½À» ÁÙÀÏ ¼ö ÀÖ¾ú´Ù°í ÇÑ´Ù.
¾î¶² 386 ½Ã½ºÅÛÀÇ °æ¿ì, Ä¿³Î ¸í·ÉÇà ¿É¼Ç¿¡ no-hlt
¸¦ ÁÖ¸é
¼ÒÀ½ÀÌ ÁÙ¾îµå´Â °ÍÀ» ÀúÀÚ´Â ¹ß°ßÇß´Ù. ÀÌ°ÍÀº Ä¿³Î·Î ÇÏ¿©±Ý idle process
loopÀÇ ½ÇÇà½Ã halt instructionÀ» »ç¿ëÇÏÁö ¾Êµµ·Ï ÇÏ´Â Á¶Ä¡ÀÌ´Ù. ºÎÆýÃ
¼öµ¿À¸·Î ¸í·ÉÇà¿¡ Àû¾î ÁÙ ¼öµµ ÀÖ°í LILO ¼³Á¤ ÆÄÀÏ (lilo.conf)¿¡
append = "no-hlt"
¶ó°í Àû¾îÁÖ¸é µÈ´Ù.
ÀϺΠ»ç¿îµå Ä«µå´Â ½¯µå (shielding) ¿Í Á¢Áö (grounding)¸¦ Àß ÇÏ´õ¶óµµ ¼ÒÀ½À» ÁÙÀ̱⠾î·Á¿î °æÇâÀÌ ÀÖ´Ù.
±×·¸´Ù¸é ´ÙÀ½À» ½ÃµµÇغ¸¶ó:
¶§¶§·Î ¿¬ÁÖ (playback) ÇÒ ¶§º¸´Ù ³ìÀ½ (recording) ÇÒ ¶§ ´Ù¸¥ DMA channelÀÌ ÀÌ¿ëµÇ´Â °æ¿ì°¡ ÀÖ´Ù. ÀÌ °æ¿ì¿¡ °¡Àå °¡´É¼º ÀÖ´Â ÀÌÀ¯·Î´Â recording DMAÀÇ ºÎÁ¤È®ÇÑ ¼Â¾÷À» µé ¼ö ÀÖ´Ù.
´ëºÎºÐÀÇ °æ¿ì¿¡ "»ç¿îµåºí·¡½ºÅÍ È£È¯" (SoundBlaster compatible) Ä«µåµéÀº »ç¿îµåºí·¡½ºÅÍ µå¶óÀ̹ö º¸´Ù´Â ´Ù¸¥ µå¶óÀ̹ö·Î ¼³Á¤ÇÏ¸é ´õ Àß ÀÛµ¿ÇÒ °ÍÀÌ´Ù. ´ëºÎºÐÀÇ »ç¿îµå Ä«µå´Â ȣȯÀ̶ó°í ÁÖÀåÇÏÁö¸¸ (¿¹¸¦ µé¾î, "16 bit SB Pro compatible" or "SB compatible 16 bit") ÀϹÝÀûÀ¸·Î ÀÌ »ç¿îµåºí·¡½ºÅÍ ¸ðµå´Â ´ÜÁö DOS °ÔÀÓ È£È¯¼ºÀ» Á¦°øÇÏ´Â ÇϳªÀÇ hack ÀÏ »ÓÀÌ´Ù. ´ëºÎºÐÀÇ Ä«µå´Â ÃÖ±ÙÀÇ ¸®´ª½º Ä¿³Î¿¡¼ (2.0.1 ÀÌ»ó) Á¦°øÇÏ´Â µíÇÑ 16 bit native mode¸¦ °¡Áö°í ÀÖ´Ù.
´ÜÁö ÀϺΠ(ÀϹÝÀûÀ¸·Î Á» ¿À·¡µÈ) Ä«µåÀÇ °æ¿ì¿¡¸¸ »ç¿îµåºí·¡½ºÅÍ ¸ðµå¿¡¼ ÀÛµ¿ÇÏ´ÂÁö ½ÃÇèÇØ º¼ ÇÊ¿ä°¡ ÀÖ´Ù. ¿©±â¿¡ ¿¹¿ÜÀûÀÎ Ä«µå´Â Mwave-based Ä«µåÀÌ´Ù.
»ç¿îµåºí·¡½ºÅÍ¿Í È£È¯À̶ó°í ÇÏ´Â 16 ºñÆ® »ç¿îµå Ä«µåÀÇ °æ¿ì, ½ÇÁ¦·Î´Â 8 ºñÆ® »ç¿îµåºí·¡½ºÅÍ ÇÁ·Î¿Í ȣȯµÉ »ÓÀÌ´Ù. ´ëÇ¥ÀûÀ¸·Î ±×°ÍµéÀº »ç¿îµåºí·¡½ºÅÍ 16°ú ȣȯ¼ºÀÌ ¾ø´Â 16 ºñÆ® ¸ðµå¸¦ »ç¿ëÇÏ¸ç ¸®´ª½º »ç¿îµå µå¶óÀ̹ö¿Í ȣȯµÇÁö ¾Ê´Â´Ù.
MAD16 ¶Ç´Â MSS/WSS µå¶óÀ̹ö¸¦ »ç¿ëÇÏ¸é ¿©·¯ºÐÀÇ Ä«µå°¡ 16-bit mode¿¡¼ ÀÛµ¿ÇÒ ¼öµµ ÀÖ´Ù.
¿©±â¿¡ ¸®´ª½º¿ë »ç¿îµå ÀÀ¿ëÇÁ·Î±×·¥À» ±¸ÇÒ ¼ö ÀÖ´Â ftp »çÀÌÆ®¸¦ ¸î ±ºµ¥ ¼Ò°³ÇÏ°Ú´Ù:
¶ÇÇÑ ÀÌ ¹®¼ÀÇ Âü°í¹®ÇåÀ» º¸±â ¹Ù¶õ´Ù.
ÃÖ±ÙÀÇ Ä¿³Î¿¡¼´Â »ç¿îµå µå¶óÀ̹ö¸¦ ¸î °¡Áö Å»Âø½Ä ¸ðµâ·Î ¸¸µé ¼ö ÀÖ´Ù.
´õ ÀÚ¼¼ÇÑ ³»¿ëÀº /usr/src/linux/drivers/Documentation/sound¿¡ ÀÖ´Â ÆÄÀϵéÀ» Âü°íÇϱ⠹ٶõ´Ù. ƯÈ÷ Introduction°ú README.modules ÆÄÀÏÀ» Àо¶ó.
oplbeep
ÇÁ·Î±×·¥À» »ç¿ëÇØ º¸¶ó,
ftp://metalab.unc.edu/pub/Linux/apps/sound/oplbeep-2.3.tar.gz¿¡¼
ãÀ» ¼ö ÀÖ´Ù.
¶Ç ´Ù¸¥ °ÍÀ¸·Î´Â beep
ÇÁ·Î±×·¥ÀÌ ÀÖ´Ù,
ftp://metalab.unc.edu/pub/Linux/kernel/patches/misc/modreq_beep.tgz ¿¡¼ ãÀ» ¼ö ÀÖ´Ù.
modutils
ÆÐÅ°Áö¿¡´Â ¿¹Á¦ ÇÁ·Î±×·¥°ú ÇÔ²¾, »ç¿îµå¸¦ »ý¼ºÇÏ´Â ÀÓÀÇÀÇ
ÇÁ·Î±×·¥À» Ä¿³ÎÀÌ ¿ä±¸ÇÒ ¶§ ºÒ·¯µéÀÏ ¼ö ÀÖµµ·ÏÇÏ´Â Ä¿³ÎÆÐÄ¡°¡ µé¾îÀÖ´Ù.
ÀϺΠīµåÀÇ °æ¿ì, PC ½ºÇÇÄ¿ Ãâ·ÂÀ» »ç¿îµå Ä«µå¿¡ ¿¬°á ÇÒ ¼öµµ ÀÖ´Ù. ±×·¸°Ô µÇ¸é ¸ðµç ¼Ò¸®°¡ »ç¿îµå Ä«µå ½ºÇÇÄ¿¸¦ ÅëÇÏ¿© Ãâ·ÂµÉ °ÍÀÌ´Ù.
4Front Technologies¿¡¼ ÆǸÅÇÏ´Â »ó¿ëÀÇ »ç¿îµå µå¶óÀ̹ö´Â VoxWare, USS (Unix Sound System), ½ÉÁö¾î´Â TASD (Temporarily Anonymous Sound Driver)¶ó´Â À̸§À¸·Î ¾Ë·ÁÁ® ÀÖ¾ú´Ù. ÇöÀç´Â OSS (Open Sound System)¶ó´Â À̸§À¸·Î ÆǸŵǰí ÀÖ´Ù. ¶§·Î´Â ¸®´ª½º Ä¿³Î¿¡ Æ÷ÇÔµÈ ¹öÀüÀ» OSS/Free·Î ºÎ¸£±âµµ ÇÑ´Ù.
´õ ÀÚ¼¼ÇÑ °ÍÀº 4Front TechnologiesÀÇ À¥»çÀÌÆ®ÀÎ http://www.opensound.com/¸¦ Âü°íÇϱ⠹ٶõ´Ù. 1997³â 6¿ùÈ£ Linux Journal¿¡ OSS/Linux °ü·Ã ±â»ç¸¦ ÀúÀÚ°¡ ÀÛ¼ºÇÑ ÀûÀÌ ÀÖ´Ù.
SNDCTL_DSP_GETBLKXIZE ioctlÀÌ µÇµ¹·ÁÁÖ´Â °á°ú°¡ 4096 º¸´Ù Å«Áö¸¦ (ºÎÁ¤È®ÇÏ°Ô) Á¡°ËÇÏ´Â ÀϺΠ»ç¿îµå ¿¬ÁÖ ÇÁ·Î±×·¥ÀÇ °æ¿ì, ¹öÀü 1.3.67¿¡¼ »ç¿îµå µå¶óÀ̹öÀÇ º¯È·Î ÀÎÇÏ¿© ¸ø¾²°Ô µÇ¹ö·È´Ù. The latest sound driver versions have been fixed to avoid allocating fragments shorter than 4096 bytes which solves this problem with old utilities.
»ç¿îµå µå¶óÀ̹ö¸¦ Å»Âø½Ä ¸ðµâ·Î ¸¸µç ´ÙÀ½ kerneld
¸¦ »ç¿ëÇÏ¿© ÀÚµ¿À¸·Î
·Îµå, ¾ð·Îµå (unload)ÇÒ ¼ö ÀÖ´Ù. ¿©±â¿¡ ÇÑ°¡Áö ¹®Á¦°¡ ÀÖÀ» ¼ö ÀÖ´Ù. Ä¿³ÎÀÌ ´Ù½Ã
·ÎµåµÉ ¶§¸¶´Ù ¹Í¼ ¼¼ÆÃÀÌ µðÆúÆ® °ªÀ¸·Î µÇµ¹¾Æ °¡¹ö¸®´Â °ÍÀÌ´Ù. ÀϺΠ»ç¿îµå
Ä«µåÀÇ °æ¿ì ¼Ò¸®°¡ ³Ê¹« Å©°Å³ª (¿¹: SB16) ¶Ç´Â ³Ê¹« ÀÛÀ» ¼ö ÀÖ´Ù. Markus
Gutshke (gutschk@uni-muenster.de
)Àº ÀÌ ¹®Á¦ÀÇ ÇØ°áÃ¥À» Á¦½ÃÇÏ¿´´Ù.
/etc/conf.modules ÆÄÀÏ¿¡ ¾Æ·¡ÀÇ °ÍÀ» Ãß°¡Ç϶ó:
options sound dma_buffsize=65536 && /usr/bin/setmixer igain 0 ogain 0 vo
ÀÌ·¸°Ô ÇÔÀ¸·Î½á »ç¿îµå µå¶óÀ̹ö°¡ ·Îµå µÇÀÚ¸¶ÀÚ °ð¹Ù·Î ¹Í¼ ÇÁ·Î±×·¥
(ÀÌ °æ¿ì¿¡´Â setmixer
)ÀÌ ½ÇÇàµÉ °ÍÀÌ´Ù. dma_buffersize
´Â
¿É¼Ç ¸í·ÉÀÌ ¸í·ÉÇà ¿É¼ÇÀ» ¿ä±¸Çϱ⠶§¹®¿¡ ÇÊ¿äÇÑ dummy value ÀÌ´Ù. ÇÊ¿äÇÒ °æ¿ì
¹Í¼ ÇÁ·Î±×·¥°ú °ÔÀÎ ¼¼Æà (gain setting)À» ¸ÂÃß±â À§ÇØ À§ÀÇ ³»¿ëÀ» º¯°æÇ϶ó.
»ç¿îµå µå¶óÀ̹ö¸¦ Ä¿³Î ¼Ó¿¡ Æ÷ÇÔ½ÃÄ×À» °æ¿ì, ¹Í¼ °ÔÀÎÀÇ ¼¼ÆÃÀ» ºÎÆ®ÇÒ ¶§ ÇÏ°íÀÚ ÇÑ´Ù¸é /etc/rc.d/rc.local °ú °°Àº ½Ã½ºÅÛ ½ÃÀÛ ÆÄÀÏÀÇ ³»¿ëÀ» ¼öÁ¤ÇÏ¿© ºÎÆ®ÇÒ ¶§ ¹Í¼ ÇÁ·Î±×·¥À» ºÎ¸£µµ·Ï ÇÒ ¼ö ÀÖ´Ù.
¹öÀü 2.0.xÀÌ Ä¿³Î¿¡ ÀÖ´ø Readme.linux ÆÄÀÏÀÇ µð¹ÙÀ̽º ÆÄÀÏ »ý¼º ½ºÅ©¸³Æ®´Â
·çÆ® (root)
¸¸ÀÌ µð¹ÙÀ̽º¸¦ ÀÐÀ» ¼ö ÀÖµµ·Ï µÇ¾î ÀÖ´Ù. ÀÌ°ÍÀº
ÀáÀçÀûÀÎ º¸¾È ±¸¸Û (potential security hole)À» Ʋ¾î¸·±â À§ÇÑ °ÍÀÌ´Ù.
³×Æ®¿öÅ© ȯ°æ¿¡¼ ¿ÜºÎ »ç¿ëÀÚ°¡ »ç¿îµå Ä«µå¿Í ¸¶ÀÌÅ©·ÎÆù ±×¸®°í µµÃ»ÀåÄ¡
(eavesdrop)¸¦ »ç¿ëÇÏ¿© ¸®´ª½º PC¿¡ ·Î±×ÀÎ ÇÏ´Â °ÍÀ» »ó»óÇÒ ¼ö ÀÖ´Ù.
ÀÌ·¯ÇÑ °ÆÁ¤À» ÇÏÁö ¾Ê´Â´Ù¸é ½ºÅ©¸³Æ®ÀÇ ±ÇÇÑ (permission) °ü·Ã ºÎºÐÀ»
°íÃÄ »ç¿ëÇÏ¸é µÈ´Ù.
½ºÅ©¸³Æ®¸¦ °íÄ¡Áö ¾Ê°í ½ÇÇà½ÃŲ´Ù¸é ÀϹݻç¿ëÀÚÀÇ »ç¿îµå ÆÄÀÏ ¿¬ÁÖ´Â Çã¿ëµÈ´Ù. ÀÌ°ÍÀº º¸¾ÈÀÇ À§Çè Á¤µµ´Â ¾Æ´ÏÁö¸¸ ¾à°£ ¼º°¡½Ç ¼ö´Â ÀÖ´Ù.
IBM ThinkPad laptop computerÀÇ mwave sound card¸¦ ¸®´ª½º¿¡¼ »ç¿ëÇÏ°í ½Í´Ù¸é /usr/src/linux/Documentation/sound/mwaveÀ» Âü°íÇϱ⠹ٶõ´Ù.
ÀϺΠ±¸ÇüÀÇ 8 ºñÆ® »ç¿îµåºí¶ó½ºÅÍ Ä«µå¿¡´Â ¹Í¼ ȸ·Î°¡ ¾ø´Ù. ÀϺÎ
»ç¿îµå ÀÀ¿ëÇÁ·Î±×·¥Àº ¹Í¼ ÀåÄ¡¸¦ ¿¼ö ¾ø´Ù´Â °¡Á¤À» ÇÏÁö ¾Ê±â ¶§¹®¿¡
Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â °ÍÀÌ´Ù. Jens Werner (
werner@bert.emv.ing.tu-bs.de)¿¡ ÀÇÇϸé /dev/mixer
¸¦
/dev/null
¿¡ ¸µÅ© ½ÃÄѳõ´Â ¼ÓÀÓ¼ö¸¦ ¾²¸é ¹®Á¦°¡ ÇØ°áµÈ´Ù°í
ÇÑ´Ù.
Scott Manley ( spm@star.arm.ac.uk)¿¡ ÀÇÇϸé:
»õ·Î¿î ÇüÅÂÀÇ »ç¿îµåºí¶ó½ºÅÍ Ä«µå°¡ ÀÖ´Â °ÍÀ¸·Î º¸ÀδÙ. SB16À¸·Î ÆǸŠµÇ¾úÀ¸¸ç Ä«µå¿¡ Ç¥½ÃµÈ ¸ðµ¨ ¹øÈ£´Â CT4170 À̾ú´Ù. ÀÌ ³ð¿¡´Â DMA ä³ÎÀÌ Çϳª »ÓÀ̶ó¼ 16 ºñÆ® DMA »ç¿ë¿¡ ¹®Á¦°¡ ÀÖ´Ù. ÇØ°áÃ¥Àº µÎ¹ø° DMA¸¦ 1·Î ÁöÁ¤ÇÏ´Â °ÍÀÌ´Ù. ±×·¯¸é Á¦´ë·Î ÀÛµ¿ÇÒ °ÍÀÌ´Ù.
Kim G. S. OEyhus ( kim@pvv.ntnu.no)¿¡ ÀÇÇϸé:
»ç¿îµå Ä«µåÀÇ ¹Ìµð ÀÔ·Â ´ÜÀÚ¿¡ ¸¶½ºÅÍ Å°º¸µåÀÇ ¹Ìµð Ãâ·Â ´ÜÀÚ¸¦ ¾î¶»°Ô ¿¬°áÇÏ´ÂÁö ¾Ë¾Æº¸·Á°í »ç¿îµå °ü·Ã ¹®¼¿Í ÀÎÅͳÝÀ» µÚÁ® º¸¾ÒÁö¸¸ ¾Æ¹«·± ¼Òµæµµ ¾ø¾ú´Ù. ¹®Á¦´Â µÑ ´Ù °°Àº ÀåÄ¡¸¦, /dev/midi, »ç¿ëÇÑ´Ù´Â °ÍÀÌ´Ù. ÃÖ¼ÒÇÑ OSS »ç¿îµå ½Ã½ºÅÛ¿¡¼´Â ±×·¸´Ù. ±×·¡¼ °øÀ¯ÇÏ´Â ¹æ¹ýÀ» ã¾Æ³Â´Ù. ÀÌ·¸°Ô ÇÏ¸é ¿Ïº®ÇÏ°Ô ¹Ìµð¸¦ Áö¿øÇÏ´Â ¸Å¿ì °£´ÜÇÑ ½Åµð»çÀÌÀú°¡ µÈ´Ù.
CONNECTING A MIDI MASTER-KEYBOARD DIRECTLY TO A SOUNDCARD WITH MIDI
¹Ìµð ¸¶½ºÅÍ Å°º¸µå¿¡´Â ½Åµð»çÀÌÀú°¡ ¾ø°í ´ÜÁö ¹Ìµð Ãâ·Â ´ÜÀÚ ¸¸ÀÌ ÀÖÀ» »ÓÀÌ´Ù. Àû´çÇÑ ÄÉÀ̺íÀ» ÀÌ¿ëÇÏ¸é ´ëºÎºÐÀÇ »ç¿îµåÄ«µå¿¡¼ Á¦°øÇÏ´Â 15-pin D-SUB Æ÷Æ®¿¡ ¹Ìµð Ãâ·Â ´ÜÀÚ¸¦ ¿¬°áÇÒ ¼ö ÀÖ´Ù.
ÀÌ·± Å°º¸µå¸¦ ÀÌ¿ëÇÏ¸é ¹Ìµð ½Åµð»çÀÌÀú ÀåÄ¡¸¦ Á¦¾îÇÒ ¼ö ÀÖ´Ù. µû¶ó¼ Å°º¸µå·Î Á¦¾îÇÏ´Â °£´ÜÇÑ ½Åµð»çÀÌÀú°¡ µÇ´Â °ÍÀÌ´Ù.
¾Æ·¡ÀÇ ÇÁ·Î±×·¥À» ÄÄÆÄÀÏ ÇÑ ÈÄ ½ÇÇà ½ÃŲ´Ù. ÄÄÆÄÀÏ ¹æ¹ýÀº
gcc -o prog prog.c
¶ó°í ÇÏ¸é µÈ´Ù.
#include <fcntl.h>
main()
{
int fil, a;
char b[256];
fil=open("/dev/midi", O_RDWR);
for(;;)
{
a=read(fil, b, 256);
write(fil, b, a);
}
}
Matthew Inger ( mattinger@mindless.com)¿¡ ÀÇÇϸé:
Ensoniq PCI 128 Ä«µå¸¦ Á¦´ë·Î ÀÛµ¿½ÃÅ°´Âµ¥ ÇÊ¿äÇÑ Á¤º¸.
¹®Á¦´Â ÀÌ Ä«µå°¡ Ç÷¯±×¾ØÇ÷¹ÀÌ¿¡ ÀÇÇØ ÀÎÅÍ·´Æ® 15¸¦ ±âº»ÀûÀ¸·Î »ç¿ëÇÏ·Á ÇÑ´Ù´Â °ÍÀÌ´Ù. ±×·¯³ª ÀÌ´Â ¼¼ÄÁ´õ¸® ide ÄÜÆ®·Ñ·¯°¡ »ç¿ëÇÏ°í ÀÖ°í ´Ù¸¥ ÀåÄ¡¿Í °øÀ¯ÇÒ ¼ö ¾ø´Â °ÍÀÌ´Ù. µû¶ó¼ es1370 Ä«µå°¡ »ç¿ëÇÒ ÀÎÅÍ·´Æ®¸¦ °Á¦·Î ¹Ù²Ù¾î¾ß ÇÑ´Ù (À©µµÁî¿¡¼ »ç¿ëÇÏ´Â ÀÎÅÍ·´Æ® 11À» »ç¿ëÇÏ°Ô ÇÑ´Ù).
³»°¡ ÇÑ °ÍÀº:
a) BIOS¿¡¼ Ç÷¯±×¾ØÇ÷¹ÀÌ OS´Â ¾ø´Ù°í ¼³Á¤ÇÑ´Ù. ³ªÀÇ °æ¿ì´Â ÀÌ·¯ÇÑ ¼³Á¤ÀÌ advanced ¿É¼Ç¿¡ ÀÖ¾ú´Ù.
b) ¹ÙÀÌ¿À½ºÀÇ PCI ¼¼Æÿ¡¼ ÀÎÅÍ·´Æ® 15¸¦ leagcy ISA devices·Î ¼³Á¤ÇÑ´Ù. ³ªÀÇ °æ¿ì advanced ¿É¼Ç¿¡ PCI ¼¼Æà ¸Þ´º°¡ ÀÖ¾ú´Ù. ±×°÷ÀÇ Resource Exclusion area¿¡¼ ¼³Á¤ÇÏ¿´´Ù.
´Ù½Ã ¸®´ª½º·Î ºÎÆÃÇÏ¸é »ç¿îµå¸¦ »ç¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. (ºÎÆà ¸Þ¼¼Áö¿¡ ¾î¶² ¸»ÀÌ ³ª¿Ô´ÂÁö´Â ±â¾ïÇÒ ¼ö ¾ø´Ù). ¾ÈÀüÇÏ°Ô sndconfig¸¦ Àç ½ÇÇà½ÃŲ ÈÄ Å×½ºÆ® ¸Þ¼¼Áö¸¦ Ç÷¹ÀÌ ½ÃÄѺ¸´Ï ¼Ò¸®°¡ ±×·¸°Ô ÁÁÁö´Â ¾Ê¾ÒÁö¸¸ µÇ±â´Â µÇ¾ú´Ù. ±×·¯³ª CD¸¦ µ¹·Áº¸´Ï ¿Ïº®ÇÏ°Ô ¿¬ÁÖ µÇ¾ú´Ù.
À©µµ¿ìÁî ´ëÇؼ´Â °ÆÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø´Ù. ISA ¸ðµ©°ú »ç¿îµå Ä«µå¸¦ ¼³Ä¡ÇÏ¿© ½ÃÇèÇØ º» °á°ú ¾Æ¹«·± ¹®Á¦¾øÀÌ ÀÛµ¿ÇÏ¿´´Ù.
¹®Á¦´Â ¿©·¯ºÐÀÇ BIOS°¡ ³ªÀÇ °Í°ú ´Ù¸¦ ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù. ±×·¯³ª À§ µÎ°¡Áö Ç׸ñ¿¡ ´ëÇÑ ¼³Á¤À» ã¾Æ¼ Çϱ⸸ ÇÏ¸é µÈ´Ù. Çà¿îÀ» ¹Ù¶õ´Ù.
SoftOSS´Â Ä¿³Î »ç¿îµå µå¶óÀ̹ö¿¡ Æ÷ÇԵǾî ÀÖ´Â software-based ¿þÀ̺êÅ×ÀÌºí ½Åµð»çÀÌÀúÀ̸ç Gravis Utrasound Ä«µå¿Í ȣȯµÈ´Ù. ÀÌ µå¶óÀ̹ö¸¦ ÀÛµ¿½ÃÅ°·Á¸é GUS ȣȯ ¹Ìµð ÆÐÄ¡ ÆÄÀÏÀÌ ÇÊ¿äÇÏ´Ù. Ä¿³Î ¹®¼¿¡ "public domain MIDIA patchset available from several ftp sites"¶ó´Â ¸»ÀÌ ÀÖ´Ù.
4Front TechnologiesÀÇ À¥ÆäÀÌÁö http://www.opensound.com/softoss.html¿¡ ¼³¸í¿¡ µû¸£¸é ftp://archive.cs.umbc.edu/pub/midia/instruments.tar.gz¿¡¼ ³»·Á¹ÞÀ» ¼ö ÀÖ´Ù.