Login
Member Join
Id / Password
 

   
 
 
   
 
   °Ô½ÃÆÇ       FAQ
   ºñÇàÀåºñ    FAQ
   µå¶óÀ̹ö    FAQ
   ¼ÒÇÁÆ®¿þ¾î FAQ
   ±âŸ          FAQ
 

   Saitek
   CH products
   Cougar
   Afterburner¥±¹×Fox2 Pro
 

 
 
 
 
 
 
 
 
       ¢Á ºñÇàÀåºñ ¸Å´º¾ó ÀÔ´Ï´Ù.
 
 
>> Control Manager Scripting [ÄÁÆ®·Ñ ¸Å´ÏÀú ½ºÅ©¸³Æ®Çϱâ,CMS ÇÁ·Î±×·¡¹Ö °¡À̵å)

Introduction [¼­·Ð]

ÄÁÆ®·Ñ·¯ ÇÁ·Î±×·¡¹ÖÀÇ ´ëºÎºÐÀº GUI µµ±¸¸¦ ÀÌ¿ëÇØ¼­ ÇÒ ¼ö ÀÖÁö¸¸, GUI·Î Á÷Á¢ ¸¸µé ¼ö ¾ø´Â ±â´ÉÀ» ¸¸µé Çʿ䰡 ÀÖÀ» ¶§µµ ÀÖ½À´Ï´Ù. Control Manager´Â ±×·± ÇÊ¿äÇÑ ±â´ÉÀ» »ç¿ëÀÚ°¡ ¸¸µé ¼ö ÀÖµµ·Ï ÇØÁÖ´Â CMS¶ó°í ÇÏ´Â ¶Ù¾î³­ ÅØ½ºÆ® ½ºÅ©¸³Æ® µµ±¸¸¦ Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù.
´ÙÀ½ÀÇ ÀåµéÀº CMSÀÇ ±âº», CMS Script Editor(CMS ½ºÅ©¸³Æ® ÆíÁý±â)ÀÇ »ç¿ë¹ý, CMS ½ºÅ©¸³Æ® ¾ð¾îÀÇ ¿©·¯ ºÎºÐ, ±×¸®°í °£´ÜÇÑ ¿¹Á¦µéÀ» ´Ù·ì´Ï´Ù. ½ºÅ©¸³Æ®¸¦ Á÷Á¢ ¸¸µé¾îº¸±â Àü¿¡ ÀÌ ÀåÀ» ¿Ïº®È÷ Àо¾Æ¾ß ÇÕ´Ï´Ù.
CMS ½ºÅ©¸³Æ®´Â ´ëü·Î ¹è¿ì±â ½±±ä ÇÏÁö¸¸, ¡°Á÷°üÀû¡±À¸·Î ¾Ë¾Æ¼­ ¾µ ¼ö´Â ¾ø½À´Ï´Ù. Á»´õ ³ªÀº ÀÛ¾÷À» ÇÏ·Á¸é ¿©·¯ ±â´É°ú ¿¹Á¦µéÀ» °øºÎÇϽʽÿÀ.
CMS Basics [CMSÀÇ ±âÃÊ]

CMS´Â ÄÁÆ®·Ñ·¯¿¡ ÀÖ´Â ÄÁÆ®·ÑµéÀ» Á÷Á¢ Á¦¾îÇÏ´Â ±â´ÉÀ» ÇÕ´Ï´Ù. CMS´Â ½ºÅ©¸³Æ®ÀÇ ¸í·É¾î¿¡ µû¸¥ °ªÀ» ó¸®ÇÏ¿©, ¡°CMS Controls¡±¶ó°í ÇÏ´Â ¸ðÀÇ ÄÁÆ®·ÑÀÇ Æ¯¼öÇÑ ¼³Á¤À¸·Î 󸮵Ǵ °á°ú¸¦ Á¦°øÇÕ´Ï´Ù.
´Ù¸¥ ½ÇÁ¦ÀÇ ÀåÄ¡µé°ú ¸¶Âù°¡Áö·Î ¡°Add¡± ¹öưÀ¸·Î CMS Controls¸¦ ¸Ê¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. CMS Controls´Â Map Wizard¸¦ ÀÌ¿ëÇÒ ¶§ ½ºÅ©¸³Æ® µµ±¸¸¦ »ç¿ëÇÒ °ÍÀ̶ó°í ¼±ÅÃÇϸé ÀÚµ¿À¸·Î ¸Ê¿¡ Ãß°¡µÇ±âµµ ÇÕ´Ï´Ù.
CMS¸¦ »ç¿ëÇÒ ¶§ÀÇ ½Ã½ºÅÛ ¼³Á¤Àº Mapped Mode¸¦ ÀÌ¿ëÇÒ ¶§¿Í °ÅÀÇ ºñ½ÁÇÕ´Ï´Ù.:


´Ù¸¥ Á¡Àº ¿À¸¥ÂÊ ¾Æ·¡¿¡ CMS Script¿Í CMS Controls°¡ ±×·ÁÁ® ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù.
°³³äÀûÀ¸·Î´Â, USB ÀåÄ¡¿¡¼­ ÀåÄ¡ »ý¼º µ¥ÀÌÅÍ(device-generated data; ºÓÀº »öÀ¸·Î Ç¥½Ã)¸¦ Á÷Á¢ ¹Þ¾Æ¼­ CMS ½ºÅ©¸³Æ®·Î ³Ñ°ÜÁÝ´Ï´Ù. µ¥ÀÌÅÍ´Â ½ºÅ©¸³Æ®¿¡ µé¾îÀÖ´Â Áö½Ã ¸ñ·Ï¿¡ µû¶ó¼­ ó¸®µÇ¾î ½ºÅ©¸³Æ® »ý¼º µ¥ÀÌÅÍ(script-generated data; ÆÄ¶õ »öÀ¸·Î Ç¥½Ã)¸¦ »êÃâÇÕ´Ï´Ù.
½ºÅ©¸³Æ® »ý¼º µ¥ÀÌÅÍ´Â ¡°CMS Controls¡¯¶ó°í ÇÏ´Â ¸ðÀÇ ÀåÄ¡·Î ÀüÇØÁý´Ï´Ù. CMS Controls´Â ½ÇÁ¦ÀÇ USB Àåġó·³ ¹öư°ú ÃàÀÇ °ªÀ» »êÃâÇÕ´Ï´Ù. ÀÌ µ¥ÀÌÅÍ´Â USB ÀåÄ¡ÀÇ Ãà°ú ¹öưµéó·³ ¸Ê¿¡¼­ ÇÁ·Î±×·¡¹ÖÇØ¼­ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

The CMS Controls [CMS ÄÁÆ®·Ñ]
CMS Controls´Â 64Ãà°ú 128 ¹öưÀ¸·Î µÇ¾îÀÖ½À´Ï´Ù. À̸¦ ¸Ê¿¡ Ãß°¡Çϸé, ´Ù¸¥ ÄÁÆ®·Ñ·¯µé¿¡ ¾²ÀÌ´Â Device Tab°ú ¶È°°ÀÌ µ¿ÀÛÇÏ´Â Device TabÀÌ Selection Pane¿¡ ³ªÅ¸³³´Ï´Ù.
Selection PaneÀº ´ÙÀ½°ú °°ÀÌ º¸ÀÔ´Ï´Ù:

ÀÌ CMS Controls´Â Selection paneÀÇ ´Ù¸¥ ÄÁÆ®·Ñ·¯µé°ú µ¿ÀÏÇÏ°Ô ÀÛµ¿ÇÕ´Ï´Ù.
128°³ÀÇ ¹öư°ú 64Ãà °¢°¢À» ³ªÅ¸³»´Â ÁöÁ¡µéÀÌ ÀÖ½À´Ï´Ù.
¸¶¿ì½º¸¦ ±× À§·Î °¡Á®°¡¸é ±× ÁöÁ¡ÀÌ ¾î´À ¹öưÀ̳ª ÃàÀÎÁö¸¦ Ç¥½ÃÇØÁÖ´Â ÆË¾÷ ¶óº§ÀÌ ³ªÅ¸³³´Ï´Ù. ¶óº§ÀÌ º¸ÀÏ ¶§ ¸¶¿ì½º¸¦ Ŭ¸¯Çϸé ÇÁ·Î±×·¡¹ÖÇÒ ¼ö ÀÖµµ·Ï ±× ÃàÀ̳ª ¹öưÀÌ ¼±Åõ˴ϴÙ.
 
Programming the CMS Controls [CMS ÄÁÆ®·ÑÀÇ ÇÁ·Î±×·¡¹Ö]
ÀÌ Ãà°ú ¹öưµéÀ» ÇÁ·Î±×·¡¹ÖÇÏ´Â ¹æ¹ýÀº ½ÇÁ¦ ÀåÄ¡µéÀ» ÇÁ·Î±×·¡¹Ö ÇÏ´Â °Í°ú ¶È°°½À´Ï´Ù.
Direct Mode·Î ÀÛµ¿Çϵµ·Ï ¼³Á¤ÇÏ¿© Control Manager DeviceÀÇ ÃàÀ̳ª ¹öưÀ¸·Î ÁöÁ¤ÇÒ ¼öµµ ÀÖ°í, Programmed Mode·Î ¼³Á¤ÇÏ¿© ۰ªÀ» Àü¼ÛÇϵµ·Ï ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. Dialog Pane¿¡¼­´Â ½ÇÁ¦ÀÇ ÀåÄ¡¿¡¼­¿Í °°Àº ´ëȭâÀÌ ¾²ÀÔ´Ï´Ù.
CMS Controls¿Í ½ÇÁ¦ ÀåÄ¡¿ÍÀÇ ´Ù¸¥ Á¡Àº, CMS Controls¿¡¼­´Â CMS ½ºÅ©¸³Æ® ÆÄÀÏÀ» ÅëÇØ¼­ ¹öư°ú ÃàÀÇ °ªÀ» Á¤ÀÇÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. CMS´Â ½ÇÁ¦ ÀåÄ¡ÀÇ ¸ðµç ¹öư°ú ÃàµéÀ» Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù.
CMS ½ºÅ©¸³Æ®¿¡¼­ Á¤ÀÇÇÑ ´ë·Î µ¥ÀÌÅͰ¡ Á¶Çյǰųª ¼öÁ¤µÇ¾î CMS ControlsÀÇ Ãâ·Â°ªÀ¸·Î »êÃâµË´Ï´Ù. GUI´Â CMS Controls°¡ Windows¿¡¼­ Ȱ¼ºÈ­µÇ°Å³ª ۰ªÀ» º¸³»°Ô²û ÇÒ ¼ö ÀÖµµ·Ï CMS Controls¸¦ Control Manager DeviceÀÇ Ãà°ú ¹öư¿¡ ÁöÁ¤Çϴµ¥ ¾²ÀÔ´Ï´Ù.
CMS Controls´Â ±âº»ÀûÀ¸·Î ´Ù¸¥ ½ÇÁ¦ÀÇ CH ÀåÄ¡µé°ú ¶È°°ÀÌ ÇÁ·Î±×·¥ÇÒ ¼ö ÀÖ´Â ÇϳªÀÇ Å« ¡°ÀÚÀÛ¡± Á¶À̽ºÆ½ÀÔ´Ï´Ù.
Using the CMS Script Editor [CMS ½ºÅ©¸³Æ® ÆíÁý±âÀÇ ÀÌ¿ë]

CMS Script Editor´Â ¸Ê¿¡ ºÎ¼ÓµÈ CMS ½ºÅ©¸³Æ® ÆÄÀÏÀ» ¾²°í ¼öÁ¤Çϴµ¥ ¾²ÀÔ´Ï´Ù.
¿¡µðÅ͸¦ ÀÌ¿ëÇϱâ Àü¿¡, CMS ÇÁ·Î±×·¡¹Ö °¡À̵åÀÇ Á¤º¸µéÀ» Å͵æÇØ¾ß ÇÕ´Ï´Ù. ¹è¿ì±â°¡ ¾î·ÆÁö´Â ¾ÊÁö¸¸, ±âº»ÀûÀÎ ÇÁ·Î±×·¡¹ÖÀÇ °³³ä°ú »ç¿ë ±â´Éµé¿¡ ´ëÇÑ Áö½ÄÀÌ ÇÊ¿äÇÕ´Ï´Ù.

½ºÅ©¸³Æ® ÆÄÀÏÀº Ç×»ó ¸Ê ÆÄÀϰú ¿¬°èµË´Ï´Ù. ¸ÊÀ» ºÒ·¯¿À°í ÀúÀåÇϸé ÀÚµ¿À¸·Î ÇÔ²² ºÒ·¯Áö°í ÀúÀåµË´Ï´Ù. ½ºÅ©¸³Æ® ÆÄÀÏÀº ¸Ê ÆÄÀϰú °°Àº À̸§À» °¡ÁöÁö¸¸ È®ÀåÀÚ´Â .CMS·Î ´Ù¸¨´Ï´Ù.
±âº»ÀûÀ¸·Î À̰ÍÀº ±âº»ÀûÀ¸·Î Åõ°ú¼ºÀ» ¶ì¸ç, Script Editor¿¡ ÇÁ·Î±×·¡¹ÖÀÌ µÇ¾îÀÖÁö ¾ÊÀ¸¸é ¸Ê ±× ÀÚü·Î´Â ¾Æ¹« ±â´Éµµ ÇÏÁö ¾Ê½À´Ï´Ù.
¿¡µðÅ͸¦ ¿­¸é ´ÙÀ½ ±×¸²ÀÌ ³ªÅ¸³³´Ï´Ù:

CMS Editor È­¸éÀº ±âº»ÀûÀ¸·Î ³× ºÎºÐÀ¸·Î ±¸¼ºµË´Ï´Ù.
¸Ç À§ÂÊ¿¡´Â ¿¡µðÅÍÀÇ ÀÛ¾÷À» Á¦¾îÇÏ´Â ¿©·¯ ¹öưµéÀÌ ÀÖ´Â Åø¹Ù°¡ ÀÖ½À´Ï´Ù.
±× ¾Æ·¡´Â ½ºÅ©¸³Æ® ÆÄÀÏÀ» ÀÔ·ÂÇÏ´Â ¿¡µðÅÍ È­¸éÀÌ ÀÖ½À´Ï´Ù.
¿¡µðÅÍ È­¸éÀÇ ¾Æ·¡ÂÊ¿¡´Â ½ºÅ©¸³Æ® ±¸¹®À» Å×½ºÆ®ÇÒ ¶§ ³ªÅ¸³ª´Â ¿¡·¯ ¹Ú½º°¡ ÀÖ½À´Ï´Ù.
¸¶Áö¸·À¸·Î, µ¥ÀÌÅÍÀÇ ¸Ç ¾Æ·¡¿¡´Â ÅØ½ºÆ® Ä¿¼­ÀÇ À§Ä¡¸¦ º¸¿©ÁÖ´Â status bar°¡ ÀÖ½À´Ï´Ù.


Editor Tool Bar [ÆíÁý±â Åø¹Ù]
Editor Tool Bar¿¡´Â ¿¡µðÅÍÀÇ ÀÛµ¿À» Á¦¾îÇÏ´Â ¿©´ü °³ÀÇ ¹öưÀÌ ÀÖ½À´Ï´Ù.
Clear Script

¡°Clear Script¡±´Â ½ºÅ©¸³Æ® ÆÄÀÏ¿¡ ÀÖ´Â ¸ðµç ÇÁ·Î±×·¡¹ÖÀ» Áö¿ó´Ï´Ù. ´ÙÀ½ ±×¸²Ã³·³ »ý°å½À´Ï´Ù:


½ºÅ©¸³Æ®´Â ±âº» SCRIPT¿¡¼­ ENDSCRIPT »óÅ·Π¹Ù²ò´Ï´Ù.
Check Script

¡°Check Script¡± ¹öưÀº ÇöÀç ¿¡µðÅÍ¿¡ ÀÖ´Â ½ºÅ©¸³Æ®ÀÇ ¿¡·¯¸¦ Å×½ºÆ®Çϴµ¥ ¾²ÀÔ´Ï´Ù. ´ÙÀ½°ú °°Àº ¾ÆÀÌÄÜÀÔ´Ï´Ù:


´Ù¿î·Îµå Çϱâ Àü°ú °°ÀÌ ½ºÅ©¸³Æ®ÀÇ ¿¡·¯°¡ ºÐ¼®µË´Ï´Ù.
¿¡·¯°¡ ¹ß°ßµÇ¸é ÅØ½ºÆ® Ä¿¼­°¡ ¹ß°ßµÈ ¿¡·¯ ÁöÁ¡¿¡ À§Ä¡µÇ°í ¿¡µðÅÍ ÅØ½ºÆ® ±¸¿ªÀÇ ¾Æ·¡ÂÊ¿¡ Error Message ¹Ú½º°¡ ³ªÅ¸³³´Ï´Ù. ¸Þ½ÃÁö´Â ³ë¶õ»ö ÅØ½ºÆ®·Î ¶å´Ï´Ù.
½ºÅ©¸³Æ®¿¡ ÀÌ»óÀÌ ¾øÀ¸¸é, ³ì»ö ÅØ½ºÆ®·Î ÀÌ»óÀÌ ¾ø´Ù´Â ¸Þ½ÃÁö¸¦ ¾Ë·ÁÁÖ´Â ¹Ú½º°¡ ³ªÅ¸³³´Ï´Ù. ¸¶¿ì½º ¹öưÀ¸·Î Ŭ¸¯Çϸé Error Box´Â »ç¶óÁý´Ï´Ù.
Cut, Copy, and paste Text Buttons [Àß¶ó³»±â, º¹»çÇϱâ, ºÙ¿©³Ö±â ¹öư]

ÀÌ ¼¼ °³ÀÇ ¹öưµéÀº ±âº» Windows ±â´Éó·³ ÀÛµ¿µË´Ï´Ù. ¡°Cut(Àß¶ó³»±â)¡± ¹öưÀº ´ÙÀ½ÀÇ ¾ÆÀÌÄÜÀÔ´Ï´Ù:


¡°Copy(º¹»çÇϱâ)¡± ¹öưÀº ´ÙÀ½ ±×¸²°ú °°½À´Ï´Ù:

¡°Paste(ºÙ¿©³Ö±â)¡± ¹öưÀº ´ÙÀ½ ±×¸²ÀÔ´Ï´Ù.:

Help [µµ¿ò¸»]

ÀÌ ¹öưÀ» ´©¸£¸é ¸ÞÀÎ GUI¿¡¼­¿Í °°ÀÌ °¡À̵尡 ¿­¸³´Ï´Ù. ÇÑ °¡Áö ´Ù¸¥ Á¡Àº ¸ñÂ÷°¡ ¾Æ´Ï¶ó CMS ºÎºÐÀÌ ¿­¸°´Ù´Â °ÍÀÔ´Ï´Ù. ¾ÆÀÌÄÜÀº ´ÙÀ½°ú °°½À´Ï´Ù:


What¡¯s This? [µµ¿ò¸»2]

Script Editor¿¡´Â ¡°Whats¡¯s This?¡± ¹öưµµ ÀÖ½À´Ï´Ù:


±â´ÉÀº ¸ÞÀÎ GUI¿¡¼­¿Í °°½À´Ï´Ù.
Close [Á¾·á]
¡°Close¡± ¹öưÀº CMS Script Editor¸¦ Á¾·á½Ãŵ´Ï´Ù. ¸ÞÀÎ GUIÀÇ Á¾·á ¹öưó·³ »ý°å½À´Ï´Ù:


¸ÞÀÎ GUIÀÇ Close ¹öư°ú ´Ù¸¥ Á¡Àº, GUI¸¦ Á¾·áÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ¿¡µðÅ͸¦ Á¾·áÇÑ´Ù´Â °ÍÀÔ´Ï´Ù.

Editor Screen [ÆíÁý±â È­¸é]
ÆíÁý ¿µ¿ªÀÇ ¾Æ·¡ÂÊ¿¡´Â Error Message ¹Ú½º°¡ ÀÖ½À´Ï´Ù. ÀÌ ¹Ú½º´Â Check script ¹öưÀ» »ç¿ëÇÒ ¶§¸¸ º¸ÀÔ´Ï´Ù. üũ°¡ ³¡³ª¸é ½ºÅ©¸³Æ® üũ ÀÛ¾÷ÀÇ »óÅ º¸°í âÀÌ ¶å´Ï´Ù.
¿¡·¯°¡ ¹ß°ßµÇ¸é, ³ë¶õ »öÀÇ ¸Þ½ÃÁö·Î ¾î´À ºÎºÐ¿¡¼­ ¿¡·¯°¡ »ý°å´ÂÁö ¾Ë·ÁÁÝ´Ï´Ù. ÆíÁý È­¸éÀÇ ÅØ½ºÆ® Ä¿¼­´Â ¿¡·¯°¡ ¹ß»ýÇÑ ÁöÁ¡¿¡ ³õÀÔ´Ï´Ù. ¿¡·¯ ¸Þ½ÃÁö´Â º¸Åë ¸Å¿ì ºÐ¸íÇÏ°í ½ºÅ©¸³Æ®ÀÇ ½ÇÁ¦ ¿¡·¯´Â º¸Åë Ä¿¼­ À§Ä¡(¶Ç´Â ±× ¹Ù·Î ¾Õ)ÀÔ´Ï´Ù.
üũ°¡ ¼º°øÇϸé, ³ì»ö ÅØ½ºÆ®·Î ÇÁ·Î±×·¥ ¿©À¯°ø°£À» ¾ó¸¶³ª »ç¿ëÇÏ¿´´ÂÁö ¾Ë·ÁÁÖ´Â ¸Þ½ÃÁö°¡ ³ªÅ¸³³´Ï´Ù. ÀÌ ÁÙÀº ´ÙÀ½°ú °°Àº ½ÄÀ¸·Î Ç¥½ÃµË´Ï´Ù:
Script Compiled Okay! P: 100/6144 K: 10/1024
¡°P:¡± ´ÙÀ½ÀÇ °ªÀº ½ºÅ©¸³Æ®°¡ ¾ó¸¶³ª ¸¹Àº ½ºÅ©¸³Æ® ±â¾ï°ø°£À» ÀÌ¿ëÇϰí ÀÖ´ÂÁö¿Í Àüü ½ºÅ©¸³Æ® ±â¾ï°ø°£À» ³ªÅ¸³À´Ï´Ù. À§ÀÇ ¿¹¿¡¼­´Â, 6144Å©±âÀÇ ±â¾ï°ø°£ Áß 100¸¸Å­À» »ç¿ëÇϰí ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù.
¡°K:¡± ´ÙÀ½ÀÇ °ªÀº ¾ó¸¶³ª ¸¹Àº constant location(°íÁ¤ ±â¾ï°ø°£)À» »ç¿ëÇϰí Àִ°¡¸¦ ¶æÇÕ´Ï´Ù. Constant´Â ½ºÅ©¸³Æ®¿¡ ´ÙÀ½°ú °°Àº ÁÙÀ» ÀÔ·ÂÇÏ¸é »ý±é´Ï´Ù:
cms.a1 = 100;
Constant °ªÀº ÀÚµ¿À¸·Î 100À¸·Î ¸¸µé¾îÁý´Ï´Ù. CMS´Â ¶ÇÇÑ ÀÏÁ¤ÇÑ ±â´ÉµéÀ» À§ÇØ ³»ºÎÀûÀ¸·Î »ç¿ëÇÒ constant¸¦ ÀÚüÀûÀ¸·Î ¸¸µì´Ï´Ù. ¡°K:¡± °ªÀº 1024ÀÇ °¡¿ëÇÑ ±â¾ï°ø°£ Áß¿¡¼­ ½ºÅ©¸³Æ®°¡ »ç¿ëÇϰí ÀÖ´Â ¾çÀ» ³ªÅ¸³À´Ï´Ù.
Status Bar

Editor È­¸éÀÇ ¾Æ·¡¿¡´Â Status Bar°¡ ÀÖ½À´Ï´Ù. ÀÌ ¹Ù´Â editor Ä¿¼­ÀÇ ÇöÀçÀÇ ÁÙ°ú ¿­À» º¸¿©ÁÖ´Â µ¥¿¡¸¸ ¾²ÀÔ´Ï´Ù. ÀÌ Á¤º¸´Â ¿¡·¯°¡ ¹ß°ßµÇ¾úÀ» ¶§ ±× À§Ä¡¸¦ ã¾Æ°¡´Âµ¥ À¯¿ëÇÕ´Ï´Ù.

CMS Script Elements [CMS ½ºÅ©¸³Æ®ÀÇ ±¸¼º ¿ä¼Ò]
Variables [º¯¼ö]

¡°º¯¼ö¡±°¡ CMSÀÇ ¸ðµç °ÍÀ̶ó°í ÇØµµ °ú¾ðÀÌ ¾Æ´Õ´Ï´Ù. º¯¼ö´Â ½ÇÁ¦ ÄÁÆ®·Ñ·¯¿Í CMS ÄÁÆ®·ÑÀÇ ¹öư°ú ÃàÀ» ³ªÅ¸³»´Âµ¥ ¾²À̸ç, ¸Å°³ÀÇ °á°ú´Â ½ºÅ©¸³Æ®ÀÇ Ã³¸®¿¡ µû¶ó ÀúÀåµË´Ï´Ù.
±âº»ÀûÀ¸·Î µÎ °¡ÁöÀÇ º¯¼ö°¡ Àִµ¥, Çϳª´Â ¾Æ³¯·Î±× º¯¼öÀÌ°í ¶Ç Çϳª´Â Bit º¯¼öÀÔ´Ï´Ù. ÀÌ ºÎºÐ¿¡¼­´Â ÀÌ ±âº» º¯¼öÀÇ Çü½Ä°ú ¿ë·ÊµéÀ» ¼³¸íÇÕ´Ï´Ù.
Analog Variables [¾Æ³¯·Î±× º¯¼ö]

¿ì¼± ±âº»ÀûÀÎ Çü½ÄÀº ¡°¾Æ³¯·Î±×¡± º¯¼öÀÔ´Ï´Ù. ¾Æ³¯·Î±× º¯¼ö´Â ¼öÄ¡°ªÀ» ³ªÅ¸³»´Âµ¥ ¾²ÀÔ´Ï´Ù. ÀÌ °ªÀº ½ÇÁ¦ ÀåÄ¡ÀÇ ÇöÀç Ãà°ª, CMS ÄÁÆ®·Ñ ÃàÀÇ °ª, ¶Ç´Â ½ºÅ©¸³Æ®¿¡¼­ Á¤ÀÇÇÑ ¿¬»ê °á°ú µîÀ» ³ªÅ¸³À´Ï´Ù.
¾Æ³¯·Î±× º¯¼ö´Â ¿¬»ê¿¡ ÃæºÐÇϰԲû ¸Å¿ì ³ÐÀº ¿µ¿ªÀ» °¡Áý´Ï´Ù. ±×·¸Áö¸¸, ½ÇÁ¦ ÀåÄ¡ÀÇ Ãà°ªÀº Ç×»ó 0¿¡¼­ 255±îÁö ÀÔ´Ï´Ù. Control Manager ͏®ºê·¹ÀÌ¼Ç ÀýÂ÷¿¡¼­ ÀÌ °ªÀÌ À¯ÁöµÇ¸ç, ½ÇÁ¦ ÀåÄ¡¿¡¼­ ÀÌ °ªµéÀÌ ³ªÅ¸³³´Ï´Ù.
CMS ControlsÀÇ Ãà¿¡ ÇÒ´çµÈ °ªµéµµ Control Manager Device·Î¼­ Windows·Î Àü¼ÛµÇ°Å³ª Up/Down À̳ª À§Ä¡°ªÀ» Àü¼ÛÇϴµ¥ ¾²À̹ǷÎ, ¿ª½Ã °ªÀº 0¿¡¼­ 255±îÁö ÀÔ´Ï´Ù.
¾î¶² °æ¿ìµç 0¿¡¼­ 255±îÁö°¡ ÃÖ´ë°ªÀÔ´Ï´Ù.
CMS Controls¿¡ °ªÀÌ ÀԷµDZâ Àü¿¡ CMS ½ºÅ©¸³Æ®¿¡¼­ °ªÀÌ Àû´çÇÑ ¿µ¿ªÀ¸·Î Á¶Á¤µË´Ï´Ù. CMS Controls Ãà¿¡ 0 ¹Ì¸¸ÀÇ °ªÀÌ ÇÒ´çµÇ¸é, ±× °ªÀº 0À¸·Î °£Áֵ˴ϴÙ.
°ªÀÌ 255º¸´Ù Å©¸é, 255·Î °£Áֵ˴ϴÙ. ÀÌ ¹ýÄ¢Àº CMS Controls¿¡ ÇÒ´çµÇ¾î ¸Ê¿¡¼­ ¾²ÀÏ °æ¿ì¿¡¸¸ Àû¿ëµÈ´Ù´Â °ÍÀ» ÁÖÀÇÇØÁֽʽÿÀ.
¿¬»êÀ̳ª ±âŸ ´Ù¸¥ ÀÛ¾÷Áß¿¡´Â ¼öÄ¡µéÀÌ ÀÌ °ªÀÇ ¿µ¿ªÀ» ³ÑÀ» ¼öµµ ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸ CMS¿¡ ¹®Á¦¸¦ ÀÏÀ¸Å°Áö´Â ¾Ê½À´Ï´Ù.
JS1.A1°ú °°Àº ½ÇÁ¦ ÄÁÆ®·Ñ·¯ Ãà¿¡¼­ º¸¸é, ͏®ºê·¹À̼ÇÀ» ÇÏ´õ¶óµµ Range(°ª ¹üÀ§)³ª Gain(ÀԷ°ª Á¶Á¤)°ªÀÌ Àû¿ëµÇ±â Àü¿¡ Ç×»ó ½ºÅ©¸³Æ®ÀÇ °ªÀ» ¹Þ½À´Ï´Ù. ÀÌ´Â ½ºÅ©¸³Æ®°¡ ÄÁÆ®·Ñ·¯ Ãà¿¡¼­ ¾ÈÁ¤ÀûÀ¸·Î Àüü ¿µ¿ªÀÇ ºñ·Ê ¼öÄ¡¸¦ °è»êÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» ¶æÇÕ´Ï´Ù.
ÁöÁ¤µÈ Gain°ú Range ¸Å°³º¯¼öµéÀº CMS Ãà¿¡ Á¦°øµÇ¾î ±×¿¡ ÇØ´çÇÏ´Â CMS Control Manager Device¿¡ Àü¼ÛµÉ ¶§¿¡¸¸ Àû¿ëµË´Ï´Ù. Gain°ú Range ¸Å°³º¯¼ö´Â CMS ÃàÀÌ Up/DownÀ̳ª À§Ä¡ °ªÀ» Àü¼ÛÇϴµ¥ ¾²ÀÏ ¶§´Â Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.
Bit Variables [ºñÆ® º¯¼ö]

±×´ÙÀ½ ±âº» Çü½ÄÀº ¡°Bit¡±º¯¼öÀÔ´Ï´Ù. ºñÆ® º¯¼ö´Â TRUE¿Í FALSEÀÇ µÎ °¡Áö °ª¸¸À» °¡Áý´Ï´Ù. ÀÌ °ªµéÀº ½ÇÁ¦ ÀåÄ¡³ª CMS ControlsÀÇ ¹öư À§Ä¡¸¦ ¶æÇϸç, TRUE´Â ¹öưÀÌ ´­¸° °ÍÀ», FALSE´Â ¹öưÀÌ ÇØÁ¦µÈ »óŸ¦ ³ªÅ¸³À´Ï´Ù.
ÀÌ °ªµéÀº ½ºÅ©¸³Æ® ÆÄÀÏ¿¡¼­ Á¤ÀÇÇÑ ³í¸® ¿¬»ê, °è»ê ºñ±³, ³í¸® ÀåÄ¡ÀÇ Ãâ·Â, ±âŸ TRUE/FASLE °ªÀÌ ÇÊ¿äÇÑ ±âŸ ´Ù¸¥ ÀÌÀ¯·Î ÀÎÇÏ¿© »êÃâµÉ ¼ö ÀÖ½À´Ï´Ù.
Constants [»ó¼ö]

»ó¼ö´Â ½ºÅ©¸³Æ®¿¡ ¼öÄ¡·Î ÀԷµǴ °ªÀÔ´Ï´Ù. ÀÌ °ªµéÀº ¡°241¡±°ú °°Àº ½ÊÁø¹ýÀÇ ¾Æ³¯·Î±× °ªÀ̳ª ¡°TRUE¡±¿Í ¡°FALSE¡±ÀÇ ºñÆ®°ªÀÌ µÉ ¼öµµ ÀÖ½À´Ï´Ù. »ó¼ö´Â ½ºÅ©¸³Æ®¿¡¼­ »ó¼ö°ªÀ» ÇÒ´çÇÒ ¼ö ¾ø´Â °æ¿ì¸¸ ¾Æ´Ï¸é ´Ù¾çÇÑ ¿ëµµ·Î ¾²ÀÔ´Ï´Ù.
»ó¼ö´Â ÇÊ¿äÇÒ ¶§ ½ºÅ©¸³Æ®¿¡¼­ Á¤ÀÇµÇ¸ç ¡°¾²±â¡±´Â ºÒ°¡´ÉÇÕ´Ï´Ù. ´Ù¸¥ ¾Æ³¯·Î±× °ª°ú ¸¶Âù°¡Áö·Î, »ó¼ö´Â ½ÇÁ¦ ÀåÄ¡¿¡ ÇÒ´çÇÒ ¼ö ¾ø½À´Ï´Ù.

ÇöÀç ¸ðµå ¼³Á¤¿¡ µû¶ó ¹Ì¸® ÁöÁ¤µÇ¾î¾ß ÇÏ´Â ¸î °¡ÁöÀÇ »ó¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ ¼öÄ¡µéÀº ´ÙÀ½ Àåµé¿¡¼­ ¿©·¯ °¡Áö ¸íĪÀ¸·Î ¼³¸íÇÕ´Ï´Ù.
Varlable Names [º¯¼ö À̸§]

CMS¿¡¼­ ¾²ÀÌ´Â ¸ðµç º¯¼öµéÀº Á¤ÇØÁø À̸§ÀÌ ÀÖ½À´Ï´Ù. À̸§µéÀº º¯¼öÀÇ Çü½Ä(¾Æ³¯·Î±×ÀÎÁö ºñÆ®ÀÎÁö), ±×¸®°í º¯¼ö°¡ ¹«¾ùÀ» ³ªÅ¸³»´ÂÁö¿¡ µû¸¨´Ï´Ù. ±× Áß ÈÄÀÚÀÇ °æ¿ì´Â ½ÇÁ¦ ÄÁÆ®·Ñ·¯ÀÇ ÄÁÆ®·Ñ, CMS ControlsÁßÀÇ Çϳª, ¶Ç´Â CMS¿¡¼­ Á¦°øÇÏ´Â ³»ºÎ º¯¼ö µîÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù.
General Naming Conventions [ÀÏ¹Ý ¸í¸í ±ÔÄ¢]

¾Æ³¯·Î±× º¯¼ö´Â ¡°A¡±·Î ½ÃÀÛÇϰí ÇØ´çÇÏ´Â ¾Æ³¯·Î±× º¯¼ö¸¦ ³ªÅ¸³»´Â ¼ýÀÚ°¡ ºÙÀ¸¸ç, ¡°A4¡±¿Í °°Àº ½ÄÀÔ´Ï´Ù. ÀÌ¿Í ºñ½ÁÇϰÔ, ºñÆ® º¯¼öµµ ¡°B¡±·Î ½ÃÀÛÇØ¼­ ÇØ´çÇÏ´Â ºñÆ® º¯¼ö¸¦ ³ªÅ¸³»´Â ¼ýÀÚ°¡ ºÙ½À´Ï´Ù. ¡°B14¡±Ã³·³ ¸»ÀÔ´Ï´Ù. ÀÌ ¿øÄ¢Àº ¸ðµç º¯¼öµé¿¡ Àû¿ëµË´Ï´Ù.
Variable Groups [º¯¼ö ±×·ì]

º¯¼öµéÀº ´ë°³ ¸î °³ÀÇ ±×·ì ¾È¿¡ Æ÷ÇԵ˴ϴÙ. ¾î¶² °æ¿ì¿¡´Â º¯¼öÀÇ À̸§ ÀÚü°¡ ÀÏÁ¤ÇÑ ±×·ìÀ» ±¸ºÐÇϱ⵵ ÇÕ´Ï´Ù. ¶Ç ¾î¶² °æ¿ì¿¡´Â º¯¼ö À̸§ÀÌ ÀåÄ¡ À̸§ µÚ¿¡ ¡°.¡±¿Í ÃàÀ̳ª ¹öưÀÇ ID°¡ µÚµû¸£°Ô²û Ç¥½ÃµË´Ï´Ù.

Real Controllers [½ÇÁ¦ ÄÁÆ®·Ñ·¯]

½ÇÁ¦ ÄÁÆ®·Ñ·¯ÀÎ ¸Ê¿¡ ÀÖ´Â CH USB ÀåÄ¡´Â ¡°JS1¡±¿¡¼­ JS16¡±±îÁö(¹°·Ð, ¸î °³ÀÇ Á¶À̽ºÆ½À» °¡Áö°í ÀÖ´À³Ä¿¡ µû¶ó)·Î ÁöÁ¤µË´Ï´Ù. ¡°JS1¡± ÄÁÆ®·Ñ·¯´Â GUIÀÇ ¸Ê¿¡¼­ Device TabÀÇ °¡Àå ¿ÞÂÊ¿¡ ÀÖ½À´Ï´Ù(¡°Program Settings¡±ÅÇÀº Á¦¿Ü) ¡°JS2¡±´Â ±× ¿À¸¥ ÂÊ¿¡ ÀÖ°í, ±×·± ½ÄÀ¸·Î ¼ø¼­°¡ Á¤ÇØÁý´Ï´Ù.
±× ÄÁÆ®·ÑÀÇ Æ¯Á¤ÇÑ ÄÁÆ®·ÑÀ» ÁöÁ¤Çϱâ À§Çؼ­´Â ÄÁÆ®·Ñ·¯ÀÇ ID, ´ÙÀ½¿¡ ¡°.¡±°¡ ºÙ°í ±×´ÙÀ½¿¡ ¾Æ³¯·Î±× ¶Ç´Â ºñÆ® º¯¼ö°¡ ºÙ½À´Ï´Ù. ¿¹¸¦ µé¸é, ¸ÊÀÇ ¸Ç ¿ÞÂÊ ÀåÄ¡ ÅÇÀÌ FighterStickÀ̸é, FighterStickÀÇ XÃàÀº ´ÙÀ½°ú °°ÀÌ Ç¥ÇöµË´Ï´Ù:
JS1.A1
±×¸®°í ±× ½ºÆ½ÀÇ 7¹ø ¹öưÀº ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù:
JS1.B7

±× ´ÙÀ½ ¿À¸¥ÂÊ ÅÇÀÇ ÀåÄ¡°¡ Pro ThrottleÀ̶ó¸é, ¸¶ÀÌÅ©·Î ½ºÆ½ÀÇ ¹öưÀº ¡°JS2.B1¡±ÀÌ µË´Ï´Ù. Ãà°ú ÇÞÀÇ °æ¿ì¿¡´Â Ãà°ú ¹öưÀÌ ½±°Ô ½Äº°µÇÁö´Â ¾Ê½À´Ï´Ù. ÀÌ·± °æ¿ì¿¡´Â GUI°¡ Dialog Pane¿¡¼­ ÀåÄ¡ À̸§¿¡ ÀûÀýÇÑ ÁöÁ¤ÀÚ¸¦ ºÎ¿©Çϸç, ãÀ» ¶§´Â ±×°ÍÀ» ÀÌ¿ëÇÏ¸é µË´Ï´Ù.
¿¹¸¦ µé¸é, CombatStickÀÇ 1¹ø ÇÞÀº, ½ÇÁ¦·Î 7¹ø ¹öưÀÔ´Ï´Ù. À̸¦ GUI¿¡¼­´Â ¡°hat 1 Up [B7]¡±À̶ó°í º¸¿©ÁÖ¸ç, ½ºÅ©¸³Æ®¿¡¼­´Â B7À» »ç¿ëÇÏ°Ô µË´Ï´Ù.
¸¶Âù°¡Áö·Î, ½º·ÎƲ ÃàÀº ¡°Throttle [A3]¡±À̶ó°í º¸ÀÔ´Ï´Ù.
JSx ÀåÄ¡¿¡¼­ ÀÎ½ÄµÈ ÃàµéÀº XÃà¿¡¼­ VÃà±îÁö°¡ °¢°¢¡°A1¡±¿¡¼­ ¡°A6¡±±îÁö°¡ µË´Ï´Ù. ¹öưÀº ¡°B1¡±¿¡¼­ ¡°B40¡±±îÁö ÀÔ´Ï´Ù.
»óÇÑÀÎ ¡°B40¡±´Â ¾ÕÀ¸·Î ´õ ´Ã¸± ¼ö ÀÖ°Ô Çϱâ À§ÇÑ °ÍÀÔ´Ï´Ù. ½ÇÁ¦·Î´Â ÄÁÆ®·Ñ·¯°¡ B16 ÀÌ»óÀÇ ¹öưÀº °¡ÁöÁö ¾Ê½À´Ï´Ù.
À§ÀÇ ±ÔÄ¢¿¡ ÇϳªÀÇ ¿¹¿Ü°¡ ÀÖ½À´Ï´Ù. Å×½ºÆ® È­¸é¿¡¼­ ¹öưÀ¸·Î ³ªÅ¸³ªÁö ¾Ê´õ¶óµµ, ½ÇÁ¦ ÀåÄ¡ÀÇ POV À§Ä¡´Â ¡°B25¡±¿¡¼­ ¡°B32¡±±îÁöÀÇ ¹öưÀÌ µË´Ï´Ù.
¡°B25¡±¹öưÀº ¡°POV Up¡±À̰í, °Å±â¼­ºÎÅÍ ¼ýÀÚ¼øÀ¸·Î POVÀÇ ½Ã°è¹æÇâ À§Ä¡ ¼ø¼­¸¦ ³ªÅ¸³»¾î ¡°B32¡±´Â ¡°POV Up/Left¡±°¡ µË´Ï´Ù. ±×·¯¹Ç·Î, ¿¹¸¦ µé¸é CMS ½ºÅ©¸³Æ®¿¡¼­ POV Up À§Ä¡´Â ¡°JS1.B25¡±°¡ µÇ°í, POV Up/Right À§Ä¡´Â ¡°JS1.B26¡± µîÀÌ µË´Ï´Ù.
ÀÌ À̸§µéÀº POV¸¦ ¾î¶² ¸ðµå·Î ÇÁ·Î±×·¥ÇÏ´ÂÁö¿Í´Â »ó°üÀÌ ¾øÀ¸¸ç, POVÀÇ ¿òÁ÷ÀÓ¿¡ µû¶ó¼­ ¼³Á¤µÇ¸ç, ¶Ç´Â ¹öưÀ̳ª ۰ªÀ» Àü¼ÛÇϵµ·Ï ÇÁ·Î±×·¡¹ÖÇÏ¿©µµ CMS ½ºÅ©¸³Æ®¿¡¼­ B25¡¦B32ÀÇ À̸§À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÇÞÀ» POV·Î ¼³Á¤ÇßÀ» ¶§´Â ÀÌ À§Ä¡µéÀº Å×½ºÆ® È­¸é¿¡¼­ º¸ÀÌ´Â À§Ä¡¶ó´Â °ÍÀ» ÁÖÀÇÇØÁֽʽÿÀ. Pro Throttle¿¡¼­´Â, À̰ÍÀÌ ½ÇÁ¦ÀÇ À§Ä¡¿Í ¹Ýµå½Ã ÀÏÄ¡ÇÏÁö´Â ¾Ê½À´Ï´Ù.
ÇÑ ¿¹·Î, ¡°POV Up¡±Àº ½ÇÁ¦·Î´Â ÇÞÀ» ¿À¸¥ÂÊÀ¸·Î ¿òÁ÷ÀÌ´Â °ÍÀÔ´Ï´Ù. ¿©±â¼­ºÎÅÍ ½Ã°è¹æÇâ ¼øÀ¸·Î ´Ù¸¥ À§Ä¡µéµµ Á¤ÇØÁý´Ï´Ù.
½ÇÁ¦ ÀåÄ¡ÀÇ Ãà°ú ¹öư¿¡ °ªÀ» ÇÒ´çÇÒ ¼ö´Â ¾ø½À´Ï´Ù. ÀÌ °ªµéÀº ÀåÄ¡ ±× ÀÚü·Î¸¸ Á¦¾îµË´Ï´Ù. ±×¸®°í ÀÌ °ªµéÀº Àбâ Àü¿ëÀÔ´Ï´Ù.
GUI¿¡¼­ ͏®ºê·¹À̼ÇÀÌ Á¤È®È÷ µÇ¾ú´Ù¸é ÄÁÆ®·Ñ¿¡¼­ ÀԷµǴ ¾Æ³¯·Î±× °ªÀÇ ¹üÀ§´Â 0¿¡¼­ 255±îÁöÀÔ´Ï´Ù.


CMS Controls [CMS ÄÁÆ®·Ñ]
GUI¿¡¼­ ÇÁ·Î±×·¥ÇÑ CMS Controls´Â JSx ÀåÄ¡¿Í ºñ½ÁÇÏ°Ô Ç¥½ÃµÇÁö¸¸, ¡°JSx¡±°¡ ¾Æ´Ï¶ó ¡°CMS¡±¶ó´Â Á¢µÎ»ç°¡ ºÙ½À´Ï´Ù. ¿¹¸¦ µé¸é:
CMS.B1
CMS.A13

¸Ê¿¡¼­´Â ÇÑ ¼¼Æ®ÀÇ CMS Controls¸¸ÀÌ ÀÖÀ» ¼ö ÀÖÀ¸¹Ç·Î, ¼ýÀÚ ½Äº°ÀÚ´Â Çʿ䰡 ¾ø½À´Ï´Ù. CMS¿¡´Â ¡°A1¡±¿¡¼­ ¡°A64¡±±îÁöÀÇ 64Ãà°ú, ¡°B1¡±¿¡¼­ B128¡±±îÁöÀÇ 128 ¹öưÀÌ Æ÷ÇԵ˴ϴÙ.
ÀÌ °ªµéÀº CMS Controls ÅÇÀÌ ¼±ÅõǾîÀÖÀ» ¶§ GUI¿¡¼­ ÇÁ·Î±×·¡¹ÖÇÒ ¼ö ÀÖ´Â Ãà°ú ¹öưµé°ú ÀÏÄ¡ÇÕ´Ï´Ù. CMS º¯¼ö´Â Àбâ¿Í ¼³Á¤ÀÌ ¸ðµÎ °¡´ÉÇÕ´Ï´Ù.
CMS´Â º¯¼ö°ªÀ» ¼³Á¤ÇÔÀ¸·Î½á CMS ControlÀÇ Ãâ·Â°ªÀ» Á¦¾îÇÕ´Ï´Ù.
JSx º¯¼ö¿Í ¸¶Âù°¡Áö·Î, CMS ¾Æ³¯·Î±× °ªÀÇ ¹üÀ§µµ 0¿¡¼­ 255±îÁö ÀÔ´Ï´Ù. ÀÌ °ªÀ» ³ÑÀ» ¼öµµ ÀÖÁö¸¸, ÃʰúµÈ °ªµéÀº Control Manager¿¡ ÀÇÇØ ÃÖ¼Ò°ªÀ̳ª ÃÖ´ë°ªÀ¸·Î ³ª¿É´Ï´Ù.
GUI¿¡¼­ CMS Control ÃàÀ» ÁöÁ¤ÇÒ ¶§, ±× ÃàÀº CMSÀÇ ¼³Á¤°ªÀÎ 0¿¡¼­ 255±îÁö¸¦ ÃÖ´ë°ª°ú ÃÖ¼Ò°ªÀ¸·Î °¡Áý´Ï´Ù.
Internal Variables [³»ºÎ º¯¼ö]

CMS´Â ½ºÅ©¸³Æ®¿¡¼­ »ç¿ëÇÒ ³»ºÎ ¡°½ºÅ©·¡Ä¡ ÆÐµå¡± º¯¼ö¸¦ Á¦°øÇÕ´Ï´Ù. ÀÌ º¯¼öµéÀº GUI¿¡¼­ Á÷Á¢ ÇÁ·Î±×·¥ÇÒ ¼ö´Â ¾øÀ¸¸ç, CMS ControlsÀ¸·Î¸¸ ÇÁ·Î±×·¥ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ º¯¼öµéÀº ÀúÀåÀÛ¾÷ µî¿¡ ¾²ÀÔ´Ï´Ù. CMS Controls·Î Control Manager Device ¹öư°ú ÃàÀ» Á¦¾îÇϰųª ۰ªÀ» Àü¼ÛÇϴµ¥ º¯¼öµéÀÌ ½ÇÁ¦·Î ÇÊ¿äÇÏÁö ¾ÊÀ» ¶§¿¡¸¸ ¾²´Â °ÍÀÌ ÁÁ½À´Ï´Ù.

³»ºÎ º¯¼ö¿¡´Â 256°³ÀÇ ³»ºÎ ¾Æ³¯·Î±× °ªµé°ú 1024°³ÀÇ ºñÆ® °ªÀÌ ÀÖ½À´Ï´Ù. ÀÌ °ªµéÀº ¾î¶² ¡°ÀåÄ¡(device)¡±¿¡µµ ¿¬°áµÇ¾îÀÖÁö ¾ÊÀ¸¹Ç·Î, Á¢µÎ±âÈ£ ¾øÀÌ Ç¥±âµË´Ï´Ù. º¯¼ö À̸§µéÀº ¡°A1¡±¿¡¼­ A256¡±±îÁö¿Í, ¡°B1¡±¿¡¼­ B1024¡±±îÁöÀÔ´Ï´Ù.
Device Variables [ÀåÄ¡ º¯¼ö]

¡°Device Variables(ÀåÄ¡ º¯¼ö)¡±¶ó°í ÇÏ´Â º¯¼öµéµµ ÀÖ½À´Ï´Ù. ÀÌ º¯¼öµéÀº ½ºÅ©¸³Æ® ¾ð¾î¿¡ ¾²ÀÌ´Â ±â´Éµé, ƯÈ÷ ŸÀ̸ÓÀÇ ÇöÀç »óŸ¦ ³ªÅ¸³»´Â ºñÆ® °ªÀÔ´Ï´Ù.
³ªÁß¿¡ Á»´õ ÀÚ¼¼È÷ ¼³¸íÇϰÚÁö¸¸, Áö±ÝÀº ±×·± °ÍÀÌ ÀÖ´Ù´Â Á¤µµ¸¸ ¸»¾¸µå¸®°Ú½À´Ï´Ù. ÀåÄ¡ º¯¼ö¿¡´Â 256°³ÀÇ °ªÀÌ ÀÖÀ¸¸ç, ¡°D1¡±¿¡¼­ ¡°D256¡±±îÁö·Î À̸§Áö¾îÁö°í Á¢µÎ±âÈ£´Â ¾ø½À´Ï´Ù.
Special Variables [Ưº° º¯¼ö]

CURRENTMODE¶ó°í ÇÏ´Â ¶Ç ÇϳªÀÇ ³»ºÎ º¯¼ö°¡ ÀÖ½À´Ï´Ù. À̰ÍÀº Control ManagerÀÇ ÇöÀç ¸ðµå¸¦ ³ªÅ¸³»¸ç, º¸Åë FighterStickÀ̳ª Pro ThrottleÀ» ÅëÇØ ¼³Á¤µË´Ï´Ù.
CURRENTMODE º¯¼ö¿¡ °ªÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ°í, ±×·¯¸é ¸ÊÀº À§ÀÇ ÀåÄ¡µé¿¡¼­ ¼³Á¤ÇÏ´Â ´ë·Î ¸ðµå°¡ ¹Ù²î°Ô µË´Ï´Ù. ½ºÅ©¸³Æ®´Â ±× ÀåÄ¡µéÀÇ LED Ç¥½Ã±â¿¡ ¿µÇâÀ» ÁÖÁö´Â ¸øÇÏÁö¸¸, ½ºÅ©¸³Æ®¸¦ ÅëÇØ CURRENTMODE¸¦ ¼³Á¤Çϸé Control Manager ¸ðµå¿Í Á¶Á¾ÀåÄ¡ÀÇ LED°¡ ¿¬µ¿µË´Ï´Ù.
Predefined Constants [¼± ÁöÁ¤ »ó¼ö]

CURRENTMODE º¯¼ö¸¦ ¼³Á¤Çϰųª üũÇϴµ¥ ¾²ÀÌ´Â ¼¼ °¡ÁöÀÇ ¼± ÁöÁ¤ »ó¼öµéÀÌ ÀÖ½À´Ï´Ù. ÀÌ °ªµéÀº MODE1, MODE2, MODE3ÀÌ °¢°¢ 0, 1, 2¿¡ ´ëÀÀÇÕ´Ï´Ù.


Operators [¿¬»êÀÚ]
Analog Operators [¾Æ³¯·Î±× ¿¬»êÀÚ]

CMS´Â ¾Æ³¯·Î±×°ª°ú ºñÆ®°ªÀÇ ¡°Operators(¿¬»êÀÚ)¡±¸¦ Á¦°øÇÕ´Ï´Ù. ¾Æ³¯·Î±× °ª¿¡ Áö¿øµÇ´Â ¿¬»êÀÚ´Â ±âº»ÀûÀÎ °è»ê±â´ÉÀ» ÇÏ´Â ¡°+¡±, ¡°-¡°, ¡°*¡±, ¡°/¡± ±âÈ£ÀÔ´Ï´Ù.

JS1.A1 + 100 // Addition
CMS.A1 - A27 // Subtraction
A2 * 5 // Multiplication
JS1.A1 / 2 // Division

À§ ¿¹µéÀº ¸ðµÎ ¾Æ³¯·Î±× °ªÀ¸·Î ÁöÁ¤µÉ ¼ö ÀÖ´Â(JSx º¯¼ö´Â Á¦¿Ü) À¯È¿ÇÑ ¾Æ³¯·Î±× °ªÀ» »êÃâÇÕ´Ï´Ù.
Logical Operators [³í¸® ¿¬»êÀÚ]

³í¸® ¿¬»êÀ» À§Çؼ­, CMS´Â AND, OR, NOTÀÇ ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. ³í¸®¿¬»êÀÚ¿¡ Àͼ÷ÇÏÁö ¾ÊÀº °æ¿ì¸¦ À§ÇØ, ¿¬»êÀº ¸Å¿ì °£´ÜÇÕ´Ï´Ù.

¿¹¸¦ µé¸é:
JS1.B1 AND JS1.B4
¿©±â¼­´Â JS1ÀÇ B1°ú B4°¡ TRUE »óÅÂÀÌ¸é °á°ú°ªÀÌ TRUE°¡ µË´Ï´Ù.
ORµµ ºñ½ÁÇÏ°Ô ¾²ÀÔ´Ï´Ù:
JS1.B1 OR JS1.B4
¿©±â¼­´Â JS1ÀÇ B1À̳ª B4°¡ TRUE »óÅÂÀÌ¸é °á°ú°ªÀÌ TRUE°¡ µË´Ï´Ù.

NOT ¿¬»êÀÚ´Â ´Ü¼øÈ÷ ÀÔ·Â »óŸ¦ ¹ÝÀü½ÃŰ´Â °ÍÀÔ´Ï´Ù. º¸±â:
NOT JS1.B1
¿©±â¼­´Â JS1.B1ÀÌ FALSE »óŶó¸é TRUE°ªÀÌ µÇ°í, ±× ¹Ý´ëµµ °°½À´Ï´Ù.
Comparison Operators [ºñ±³ ¿¬»êÀÚ]

ºñ±³ ¿¬»êÀÚ´Â ¾Æ³¯·Î±× º¯¼öÀÇ °ªµéÀ» ºñ±³Çϴµ¥ ¾²ÀÔ´Ï´Ù. ¿©±â¿¡´Â ¿©¼¸ °³ÀÇ ¿¬»êÀÚ°¡ ÀÖ½À´Ï´Ù. ´Ü¾î³ª ±âÈ£¸¦ ¸ðµÎ ÇÁ·Î±×·¡¹Ö¿¡ ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ´Ü¾î³ª ±âÈ£µéÀº ¿¬»ê°á°ú°¡ ¼­·Î °°½À´Ï´Ù.

Less Than (¹Ì¸¸) "LT" ¶Ç´Â "<"
Less Than or Equal To (ÀÌÇÏ) "LE" ¶Ç´Â "<="
Equal To (°°´Ù) "EQ" ¶Ç´Â "==" ("="¸¦ µÎ¹ø ¾¸)
Greater Than or Equal To (ÀÌ»ó) "GE" ¶Ç´Â ">="
Greater Than (º¸´Ù Å©´Ù) "GT" ¶Ç´Â "<"
Not Equal To (°°Áö ¾Ê´Ù) "NE" ¶Ç´Â "!="
ÀÌ ¿¬»êÀÚµéÀÇ ÀÌ¿ëÀº ½ºÅ©¸³Æ® ÆÄÀÏ ¸¸µé±â ºÎºÐ¿¡¼­ ´õ ÀÚ¼¼ÇÏ°Ô ´Ù·ì´Ï´Ù.
Assignment Operator [ÁöÁ¤ ¿¬»êÀÚ]

ÁöÁ¤ ¿¬»êÀÚ´Â ¡°=¡± ±âÈ£ÀÔ´Ï´Ù. ÀÌ ¿¬»êÀÚ´Â º¯¼ö¸¦ ÀÏÁ¤ÇÑ °ªÀ¸·Î ¼³Á¤ÇϰԲû ÇØÁÝ´Ï´Ù. ÀÌ´Â »ó¼ö, Ãà °ª, ±âŸ ÀúÀåµÈ °ªµéÀÔ´Ï´Ù. ÀÌ ³»¿ëÀº Statements(±¸¹®) ºÎºÐ¿¡¼­ ´Ù·ì´Ï´Ù.
Expressions [¿¬»ê½Ä]

¿¬»ê½ÄÀº ±âº»ÀûÀ¸·Î °ªÀ» °¡Áö´Â ¸ðµç °ÍÀ̸ç, ¾Æ³¯·Î±×¿Í ºñÆ®°ª ¸ðµÎ °¡´ÉÇÕ´Ï´Ù. ¸ðµç º¯¼öµéÀº À§¿¡ ¼³¸íÇÑ ¿¬»êÀÚµéÀ» ÀÌ¿ëÇÏ¿© ¸¸µé¾îÁö´Â º¹ÀâÇÑ ¿¬»êÀÎ ¿¬»ê½ÄÀÔ´Ï´Ù. ¿¬»ê½Ä¿¡´Â Çʿ信 µû¶ó ¿¬»êµéÀ» ¹­¾îÁÖ´Â °ýÈ£°¡ Æ÷ÇԵ˴ϴÙ. ´ÙÀ½Àº ¿¬»ê½ÄÀÇ ¿¹ÀÔ´Ï´Ù.
JS1.B1 OR JS1.B2
(JS1.A1 + JS1.A2) / 2
(JS1.B1 AND JS1.B2) OR B2 OR (CMS.B1 AND CMS.B2)

¿¬»ê½ÄÀº CMS Controls·Î º¸³»Á®¼­ ¸ÊÀÇ ÇöÀç »óŸ¦ Á¤ÀÇÇÏ´Â °ªÀ» ¸¸µå´Âµ¥ ¾²ÀÌ´Â, CMS ½ºÅ©¸³Æ®ÀÇ Ãʼ®ÀÔ´Ï´Ù.

Scripting Reference [½ºÅ©¸³Æ® Âü°í] -- PART 1
 
Basic Scripting [±âº» ½ºÅ©¸³Æ® ÀÛ¾÷]

Ç¥ÁØ ½ºÅ©¸³Æ® ¾ð¾î¸¦ ±¸Ã¼ÀûÀ¸·Î ¼³¸íÇϱâ Àü¿¡, ÀÛµ¿¹æ½ÄÀ» °£´ÜÈ÷ ¼³¸íÇϰڽÀ´Ï´Ù. ¿ì¼± »ý°¢ÇÒ °ÍÀº, ½ºÅ©¸³Æ®´Â CMS°¡ Mapped Mode¿¡ ÀÖÀ» ¶§ 󸮡°ÇÒ ÀÏÀÇ ¸ñ·Ï¡±À̶ó´Â °ÍÀÔ´Ï´Ù.
½ºÅ©¸³Æ®´Â µ¥ÀÌÅÍ Àü¼Û, ƯÁ¤ÇÑ ±â´ÉÀÇ Ã³¸® µîÀ» CMS¿¡ ¾Ë¸³´Ï´Ù.
¸ñ·ÏÀÇ °¢ Ç׸ñµé(statement; ¸í·É±¸¹®À̶ó°í ÇÏ´Â)Àº CMS°¡ Á¦°øÇÏ´Â ±â´ÉÀ» ÀÌ¿ëÇÏ¿© ½ÇÇàÇÒ ÇൿµéÀ» Á¤ÀÇÇÕ´Ï´Ù.

½ºÅ©¸³Æ®¸¦ ¸¸µå´Â °ÍÀº ±âº»ÀûÀ¸·Î ÇÁ·Î±×·¥ÀÌ µû¶ó¾ß ÇÒ ¹æÇâÀ» ¼³Á¤ÇÏ´Â °ÍÀÔ´Ï´Ù. ÇÊ¿äÇÑ Ç׸ñµéÀ» ¸¸µå´Â °ÍÀº °£È¤ ±î´Ù·Ó±âµµ ÇÏÁö¸¸, ±âº»ÀûÀ¸·Î ÇØÁÖ¾î¾ß ÇÒ ÀÏÀÔ´Ï´Ù.
The Script Loop [½ºÅ©¸³Æ® ·çÇÁ]

Control ManagerÀÇ ÀÛ¾÷Àº ´ÙÀ½°ú °°Àº ¹Ýº¹ÀûÀÎ ¡°loop(Áֱ⼺)¡±ÀÛ¾÷ÀÔ´Ï´Ù.
1. ½ÇÁ¦ ÀåÄ¡¿¡¼­ »õ Ãà°ª°ú ¹öư »óŸ¦ ¾ò´Â´Ù.
2. ½ºÅ©¸³Æ®¿¡¼­ Á¤ÀÇÇÑ ¹æ¹ý´ë·Î »õ °ªÀ» ó¸®ÇÏ¿© CMS Controls¿¡¼­ ¹öư°ú ÃàÀÇ »õ ¸í·ÉÀ» ¸¸µç´Ù.
3. GUI¿¡¼­ ¸¸µé¾îÁø ¸ÊÀ¸·Î »õ CMS ControlÀÇ ¸í·É±¸¹®À» ó¸®ÇÏ¿© Control Manager DeviceÀÇ Ãà°ú ¹öư, ۰ª, ¸¶¿ì½º ¿òÁ÷ÀÓÀ» ¸¸µé¾î³½´Ù.
4. 1´Ü°è·Î µ¹¾Æ°¡¼­ À§ °úÁ¤À» ¹Ýº¹ÇÑ´Ù.
·çÇÁ´Â ±âº»ÀûÀ¸·Î ½ÇÁ¦ µ¥ÀÌÅÍÀÇ º¯°æ, Áö³­ ·çÇÁ°¡ ¹Ýº¹µÈ ½Ã°£ µîµî ¸î °¡Áö ¿äÀο¡ µû¶ó ÀÏÁ¤ÇÏ°Ô Á¤±âÀûÀ¸·Î ½ÇÇàµË´Ï´Ù. ´Ü¼øÇØ º¸ÀÌÁö¸¸, ÁÖÀǰ¡ ÇÊ¿äÇÕ´Ï´Ù.

2´Ü°è°¡ ½ÇÇàÁßÀÏ ¶§, ½ºÅ©¸³Æ®´Â ù° ÁÙ¿¡¼­ ½ÃÀÛÇÏ¿© ¸¶Áö¸· ÁÙ±îÁö ó¸®ÇÕ´Ï´Ù. ¿©±â¿¡´Â ¸Å¿ì ÀûÀº ½Ã°£¸¸ÀÌ °É¸®Áö¸¸, ½ºÅ©¸³Æ®ÀÇ ¸í·ÉµéÀº µ¿½Ã¿¡ ¶Ç´Â ÀÓÀÇ·Î ÀÌ·ç¾îÁöÁö ¾Ê°í, ¼ø¼­´ë·Î ÀÌ·ç¾îÁý´Ï´Ù.
°°Àº 󸮱Ⱓ Áß¿¡´Â ½ºÅ©¸³Æ® ¸í·É±¸¹®ÀÌ ÀÌÀüÀÇ ½ºÅ©¸³Æ® ³»¿ë¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¸é, 10¹øÂ° ÁÙ¿¡¼­ ¹«¾ð°¡°¡ ¹Ù²î¾ú´Ù¸é, ´ÙÀ½¹ø¿¡ ½ºÅ©¸³Æ®°¡ ´Ù½Ã ó¸®µÉ ¶§±îÁö 9¹øÂ° ÁÙ¿¡´Â ¿µÇâÀ» ¹ÌÄ¡Áö ¸øÇÕ´Ï´Ù.
ÀÌ ÀÛ¾÷ 󸮼ӵµ´Â °ÅÀÇ µ¿½Ã¿¡ °¡±õ½À´Ï´Ù.
¶Ç ÇѰ¡Áö, 1´Ü°è¿¡¼­ ¾ò¾îÁø ½ÇÁ¦ ÀåÄ¡ÀÇ °ªÀÇ º¯°æÀ» Á¦¿ÜÇϸé, 1,3,4´Ü°è¿¡¼­´Â º¯¼öµéÀÇ °ªÀÌ º¯ÇÏÁö ¾Ê½À´Ï´Ù. 2´Ü°è µ¿¾È¿¡¼­¸¸ ½ºÅ©¸³Æ® ¸í·É±¸¹®ÀÇ °á°ú°¡ ¹Ù²ò´Ï´Ù.

A Simple Script [°£´ÜÇÑ ½ºÅ©¸³Æ® ¿¹]

°£´ÜÇÑ ½ºÅ©¸³Æ® ¿¹Á¦°¡ Á¶±Ý ÀÌÇØ¿¡ µµ¿òÀÌ µÉ ¼ö ÀÖÀ» °Í °°½À´Ï´Ù. ¾î¶² ÀÌÀ¯·Î ÇØ¼­ ÇϳªÀÇ Á¶À̽ºÆ½¿¡ ¸ÊÀ» ¸¸µé·Á°í ÇÑ´Ù°í ÇØº¸°Ú½À´Ï´Ù. Á¶À̽ºÆ½ 2¹ø ¹öưÀÌ ÇØÁ¦µÇ¾úÀ» ¶§ Control Manager Device 1ÀÌ ´­·¯Áö°í ±× ¹Ý´ëµµ °¡´ÉÇϵµ·Ï ÇÏ°í ½Í´Ù°í ÇØ º¾´Ï´Ù.
´Ü¼øÇÑ ¿¹ÀÌÁö¸¸, µ¥ÀÌÅͰ¡ ½Ã½ºÅÛ¿¡¼­ ¾î¶»°Ô ¿òÁ÷ÀÌ´ÂÁö¸¦ º¸¿©ÁÝ´Ï´Ù.

À§ÀÇ ³»¿ë¿¡ µû¶ó ½ºÅ©¸³Æ®¸¦ ¸¸µé¸é ÀÌ·± ½ÄÀ¸·Î µÉ °ÍÀÔ´Ï´Ù:
SCRIPT
CMS.B1 = NOT JS1.B2;
ENDSCRIPT

½ºÅ©¸³Æ®´Â ½ÇÁ¦·Î´Â SCRIPT¿Í ENDSCRIPT ¸í·ÉÁÙ »çÀÌÀÇ ÇÑ ÁÙ·Î ÀÌ·ç¾îÁý´Ï´Ù. ¸í·É±¸¹®ÀÇ ³»¿ëÀº ´Ü¼øÈ÷ CMS.B1(CMS ControlsÀÇ Ã¹ ¹øÂ° ¹öư)À» JS1.B2(Á¶À̽ºÆ½ÀÇ 2¹ø ¹öư)ÀÇ ¹Ý´ë·Î ¼³Á¤ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù.
·çÇÁ°¡ ½ÇÇàµÉ ¶§¸¶´Ù, JS1.B2ÀÇ »óŰ¡ üũµÇ°í ±× ¹Ý´ë°ªÀÌ CMS.B1¿¡ Àü¼ÛµË´Ï´Ù.
CMS.B1Àº Windows¿¡¼­ ÀÚµ¿À¸·Î ÀνĵǴ ÀåÄ¡°¡ ¾Æ´Ï¹Ç·Î, GUI¿¡¼­ CMS ControlÀÇ 1¹ø ¹öưÀ» ¼±ÅÃÇØ³õ¾Æ¾ß ÇÕ´Ï´Ù. ±× ¹öưÀ» DX Mode·Î ¼³Á¤Çϰí CM Device 1, Button 2·Î ÁöÁ¤ÇÕ´Ï´Ù.
¿©·¯ °³ÀÇ ÀåÄ¡µéÀÌ ±× ¹öưÀ» Á¦¾îÇÏÁö ¾Êµµ·Ï Çϱâ À§ÇØ GUI¿¡¼­ ÀÌÀü¿¡ ÀÖ´ø CM Device 1, Button 2ÀÇ ÁöÁ¤°ªÀ» »èÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸ÊÀ» ¼³Á¤ÇÏ°í ´Ù¿î·ÎµåÇϸé, Á¶À̽ºÆ½ÀÇ 2¹ø ¹öưÀ» ÇØÁ¦Çϸé Button 2°¡ ´­·¯Áö°í Á¶À̽ºÆ½ ¹öưÀ» ´©¸£¸é Button 2°¡ ÇØÁ¦µÇ´Â °ÍÀ¸·Î ÀÛµ¿ÇÏ°Ô µË´Ï´Ù.


Script Definition [½ºÅ©¸³Æ® Á¤ÀÇ]

¸ÊÀ» »õ·Î ¸¸µé¸é, Control Manager´Â Ç×»ó ±×¿¡ Æ÷ÇÔµÈ ½ºÅ©¸³Æ® ÆÄÀÏÀ» ¸¸µì´Ï´Ù. ½ºÅ©¸³Æ® ÆÄÀÏÀº ÅØ½ºÆ® ÆÄÀÏÀÔ´Ï´Ù. ¸Ê ÆÄÀϰú ÆÄÀϸíÀº °°Áö¸¸, È®ÀåÀÚ´Â ¡°.MAP¡±ÀÌ ¾Æ´Ï¶ó ¡°.CMS¡±ÀÔ´Ï´Ù.
½ºÅ©¸³Æ®´Â óÀ½¿¡´Â ºñ¾îÀÖ°í, ½ºÅ©¸³Æ®ÀÇ ½ÃÀÛ°ú ³¡À» ¾Ë¸®´Â ¸í·É±¸¹®¸¸ ÀÖ½À´Ï´Ù. ºó ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°½À´Ï´Ù:
SCRIPT
ENDSCRIPT
ºó ½ºÅ©¸³Æ®´Â ¾Æ¹«·± ±â´Éµµ ÇÏÁö ¾Ê½À´Ï´Ù. SCRIPT¿Í ENDSCRIPT ¸í·É±¸¹® »çÀÌ¿¡ ½ÇÇàÇÒ µ¿ÀÛÀ» Á¤ÀÇÇÏ´Â ½ºÆ®¸³Æ® ¸í·É±¸¹®À» ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.
±×·¸Áö ¾ÊÀ¸¸é, ¸Ê¿¡¼­ ½ÇÇàµÇ´Â µ¿ÀÛµéÀº ½ÇÁ¦ ÀåÄ¡¿Í GUI¿¡¼­ Á¤ÀÇÇÑ °Í¿¡ µû¸£°Ô µË´Ï´Ù

SCRIPT¿Í ENDSCRIPT »çÀÌ¿¡ µé¾î°¥ ±â´ÉµéÀº ´ÙÀ½ ¸î °³ÀÇ Àå¿¡¼­ ´Ù·ì´Ï´Ù. ±× Àü¿¡, ¸î°¡Áö ÁÖÀÇÇØ¾ß ÇÒ »çÇ×ÀÌ ÀÖ½À´Ï´Ù.

Case Sensitivity [´ë¼Ò¹®ÀÚ ±¸ºÐ]

CMS ½ºÅ©¸³Æ® ¾ð¾î´Â ´ë¼Ò¹®ÀÚ ±¸ºÐÀ» ÇÏÁö ¾ÊÀ¸¸ç, ¡°SCRIPT¡±´Â ¡®script¡±³ª ¡°ScRiPt¡±¸¦ ¶È°°ÀÌ ÀνÄÇÕ´Ï´Ù. ¸¶Âù°¡Áö·Î ¡°JS1.A1¡±Àº ¡°js1.a1¡±°ú °°½À´Ï´Ù. Àбâ ÁÁµµ·Ï ´ë¼Ò¹®ÀÚ¸¦ ±¸º°Çؼ­ ¾²´Â °Íµµ ±¦Âú½À´Ï´Ù. ¿¹¸¦ µé¸é, ¡°EXITCASE¡±³ª ¡°exitcase¡±¶ó°í ¾²Áö ¾Ê°í ¡°ExitCase¡±¶ó°í ¾²´Â °Í µîÀÔ´Ï´Ù. ÆÄÀÏ¿¡ ÀÔ·ÂµÈ ¹«¾ùÀ̵çÁö ´ë¼Ò¹®ÀÚ ±¸ºÐ ¾øÀÌ °°Àº °á°ú°¡ Ãâ·ÂµË´Ï´Ù.
Comments [ÁÖ¼® ´Þ±â]

Comment(ÁÖ¼®)´Â ½ºÅ©¸³Æ®ÀÇ ±â´ÉÀ» ¼³¸íÇØÁִ ǥ½ÃÀÔ´Ï´Ù. ²À ÇÊ¿äÇÏÁö´Â ¾ÊÀ¸¸ç ½ºÅ©¸³Æ®ÀÇ ±â´É¿¡ ¿µÇâÀ» ¹ÌÄ¡Áöµµ ¾Ê½À´Ï´Ù. ½ºÅ©¸³Æ®ÀÇ ¾î´À °÷¿¡³ª ¾µ ¼ö ÀÖ½À´Ï´Ù. Comment´Â ¡°//¡± ±âÈ£¸¦ ¾Õ¿¡ ºÙ¿© Ç¥½ÃÇÕ´Ï´Ù. ¡°//¡±À¸·Î ½ÃÀÛÇÏ´Â ¹®ÀåÀº ±× ÁÙÀÇ ³¡±îÁö Àû¿ëµÇ´Â °ÍÀ¸·Î °£Áֵ˴ϴÙ. ¿¹¸¦ µé¸é:
// This is a comment.
Conment´Â ²À ÇÊ¿äÇÑ °ÍÀº ¾Æ´ÏÁö¸¸, »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿À·¡°£¸¸¿¡ ½ºÅ©¸³Æ® ÀÛ¾÷À» ÇØ¼­ ½ºÅ©¸³Æ®¿¡ ¾î¶² ±â´ÉÀ» ³Ö¾ú¾ú´ÂÁö Àß ¸ð¸¦ ¶§ µµ¿òÀÌ µÇ¸ç, °£´ÜÇÑ ÁÖ¼®À» ºÙÀ̱⸸ ÇØµµ Å©°Ô µµ¿òÀÌ µË´Ï´Ù.
Semicolons [¼¼¹ÌÄÝ·Ð]

´ëºÎºÐÀÇ ½ºÅ©¸³Æ® ¸í·É±¸¹®Àº ±× ÁÙÀÇ ½ÇÁ¦ ±â´É ¹®ÀåÀÇ ³¡¿¡ ¼¼¹ÌÄÝ·ÐÀÌ µé¾î°©´Ï´Ù. ¼øÈ¯ Á¦¾î(Flow-control) ¸í·É±¸¹®°ú ¸î°¡Áö ´Ù¸¥ ±â´Éµé¿¡¼­´Â ÀÌ ±ÔÄ¢¿¡ ¿¹¿Ü°¡ »ý±â´Âµ¥, ÀÌ´Â Àû´çÇÑ ºÎºÐ¿¡¼­ ¼³¸íÇϰڽÀ´Ï´Ù. ¼¼¹ÌÄÝ·ÐÀº comment ºÎºÐÀÇ ¾Õ¿¡ µé¾î°¡¾ß Çϸç, ±×·¸Áö ¾ÊÀ¸¸é commentÀÇ ÀϺηΠ°£Áֵ˴ϴÙ.
º¸±â
CMS.A1 = JS1.A1; // Copy Joystick 1 X Axis to CMS Axis 1
¡°//¡±·Î ½ÃÀ۵Ǵ comment ºÎºÐÀº ±âº»ÀûÀ¸·Î ½ºÅ©¸³Æ®¿¡¼­ ¾ø´Â °Í°ú ¸¶Âù°¡Áö¶ó´Â Á¡À» ±â¾ïÇϽʽÿÀ.
Assignment statement [ÁöÁ¤ ¸í·É±¸¹®]

½ºÅ©¸³Æ®¿¡¼­ °¡Àå ´Ü¼øÇϸ鼭µµ ÈçÈ÷ ¾²ÀÌ´Â ÀÛ¾÷ÀÌ º¯¼öÀÇ °ªÀ» ÇÒ´çÇÏ´Â °ÍÀÔ´Ï´Ù. ÀÌ ÀÛ¾÷Àº ¡°=¡±¸¦ ½á¼­ ÀÌ·ç¾îÁö¸ç, ¼öÇÐ µî½Äó·³ ¾²ÀÔ´Ï´Ù. ¿¹¸¦ µé¸é:
CMS.A1 = JS1.A2;
¿©±â¼­´Â CMSÀÇ 1¹ø ÃàÀÌ JS1 ÀåÄ¡ÀÇ 2¹ø Ãà(YÃà)ÀÇ ÇöÀç °ª°ú °°¾ÆÁö°Ô µË´Ï´Ù. ¸¶Âù°¡Áö·Î(ºñÆ®°ªÀÇ °æ¿ì):
CMS.B1 = JS1.B5;
¿©±â¼­´Â CMS ControlsÀÇ 1¹ø ¹öưÀÌ JS1 ÀåÄ¡ÀÇ 5¹ø ¹öưÀÇ »óÅÂ¿Í °°¾ÆÁý´Ï´Ù.
¡°=¡± ¿ÞÂÊÀÇ º¯¼ö´Â ¼³Á¤ÇÒ ¼ö ÀÖ´Â º¯¼ö¶ó¾ß ÇÕ´Ï´Ù. ¿©±â¿¡´Â °íÀ¯ º¯¼ö(built-in variables)¿Í CMS º¯¼öµéÀÌ Æ÷ÇԵ˴ϴÙ. ½ºÅ©¸³Æ®·Î´Â ½ÇÁ¦ ÀåÄ¡ÀÇ °ªÀ» ¹Ù²Ü ¼ö ¾ø±â ¶§¹®¿¡, ¡°=¡±ÀÇ ¿ÞÂÊ¿¡ JSx º¯¼ö¸¦ ³ÖÀ» ¼ö´Â ¾ø½À´Ï´Ù.
¡°=¡±ÀÇ ¿À¸¥ÂÊ¿¡´Â Àû´çÇÑ ½ÄÀ» ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. ¿©±â¿¡´Â ¼ö½Ä ¿¬»êÀÚ, ³í¸® ¿¬»êÀÚ, °ýÈ£, ±âŸ µîµî ÇÊ¿äÇÑ ¾î¶² º¯¼öµç ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. ¿¹·Î:
CMS.A1 = JS1.A1 + JS1.A2 + 10;
CMS.B1 = (JS1.B5 OR JS1.B6) AND NOT (JS1.B6 OR JS2.B7);

½ÄÀÌ ¡°;¡±·Î ³¡³ª´Â °Í¿¡ ÁÖÀÇÇϽʽÿÀ. ÀÌ ±âÈ£´Â ¸ðµç ÁöÁ¤ ¸í·É±¸¹®¿¡ µé¾î°¡¾ß ÇÕ´Ï´Ù. ´Ù¸¥ Á¾·ùÀÇ ¸í·É±¸¹®Àº ³ªÁß¿¡ ¼³¸íÇϰÚÀ¸³ª, ´Ù¸¥ °æ¿ìµé¿¡¼­´Â ¡°;¡± ±âÈ£°¡ ÇÊ¿äÇÒ ¶§µµ ÀÖ°í ±×·¸Áö ¾ÊÀ» ¶§µµ ÀÖ½À´Ï´Ù.
ÀÌ ³»¿ëÀº °¢°¢ÀÇ ¸í·É±¸¹® ºÎºÐ¿¡¼­ ±â´É°ú ÇÔ²² ¼³¸íÇÕ´Ï´Ù. º¸ÅëÀº, ¡°;¡±´Â ÇÊ¿äÇÏÁö ¾ÊÀº °÷¿¡ »ç¿ëÇÏ´õ¶óµµ ¹®Á¦°¡ ¾øÀ¸¹Ç·Î, ÇÊ¿ä ¿©ºÎ¸¦ Àß ¸ð¸£°ÚÀ¸¸é ±¸¹®ÀÇ ³¡¿¡ ³Ö¾îÁֽʽÿÀ
Arithmetic Comparisons [ºÎµî½Ä]
³í¸®½Ä¿¡´Â ºÎµîÈ£¸¦ ¾µ ¼ö ÀÖ½À´Ï´Ù. ³í¸®½ÄÀº TRUE¿Í FALSE·Î ÀÌ·ç¾îÁý´Ï´Ù. »ç¿ëÇÒ ¼ö ÀÖ´Â ºÎµîÈ£´Â ¿©¼¸ °³°¡ ÀÖ½À´Ï´Ù.
³í¸® ¿¬»êÀÚ¿Í ¸¶Âù°¡Áö·Î, ÅØ½ºÆ®¿Í ±âÈ£ ¸ðµÎ¸¦ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç, ´ÙÀ½°ú °°½À´Ï´Ù.

Less Than (¹Ì¸¸) "LT" ¶Ç´Â "<"
Less Than or Equal To (ÀÌÇÏ) "LE" ¶Ç´Â "<="
Equal To (°°´Ù) "EQ" ¶Ç´Â "==" ("="¸¦ µÎ¹ø ¾¸)
Greater Than or Equal To (ÀÌ»ó) "GE" ¶Ç´Â ">="
Greater Than (º¸´Ù Å©´Ù) "GT" ¶Ç´Â "<"
Not Equal To (°°Áö ¾Ê´Ù) "NE" ¶Ç´Â "!="
ºÎµîÈ£ÀÓÀ» ³ªÅ¸³»·Á¸é, ´ë°ýÈ£·Î ¹­½À´Ï´Ù. ±×·¯¸é ¾ðÁ¦µç ºñÆ® º¯¼ö·Î ÀνÄÀÌ µË´Ï´Ù. ºÎµî½ÄÀº ´ÙÀ½°ú °°Àº ÇüÅÂÀÔ´Ï´Ù:
[ JS1.A1 > JS2.A1 ]
À̰ÍÀº JS1.A1ÀÌ JS2.A1º¸´Ù Å©¸é TRUE¶ó´Â ¶æÀÔ´Ï´Ù.
ºÎµî½Ä¿¡ °ýÈ£°¡ ÀÖ´õ¶óµµ, ºÎµî½ÄÀº ´ë°ýÈ£ ¾È¿¡ ÀÖ¾î¾ß ÇÑ´Ù´Â °ÍÀÌ Áß¿äÇÕ´Ï´Ù. ÀÌ´Â IF/THRN ¸í·É¹®(³ªÁß¿¡ ¼³¸íÇÕ´Ï´Ù)°ú ¸¶Âù°¡ÁöÀÔ´Ï´Ù.
ºÎµî½ÄÀÌ ¾²ÀÌ´Â °æ¿ì¿¡´Â ¸î °¡Áö°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é, ½º·ÎƲÀÌ ÀÏÁ¤ À§Ä¡ ÀÌ»ó¿¡ ÀÖÀ» ¶§ WEPÀ» Ȱ¼ºÈ­Çϱâ À§ÇÑ °æ¿ì°¡ µÉ ¼ö ÀÖ½À´Ï´Ù.
Ãà°ªÀº 0¿¡¼­ºÎÅÍ 255±îÁöÀ̰í, ÃÖ´ë ½º·ÎƲ À§Ä¡´Â ³»ºÎÀûÀ¸·Î´Â ÃÖ¼Ò°ª¿¡ ÇØ´çÇϸç, ½º·ÎƲÀº JS1.A3À̶ó´Â Á¡À» ±â¾ïÇϽʽÿÀ. ´ÙÀ½ÀÇ ¿¹¿Í °°ÀÌ ¾µ ¼ö ÀÖ½À´Ï´Ù:
SCRIPT
CMS.B1 = [JS1.A3 < 25];
ENDSCRIPT

ÀÌ·¸°Ô Çϸé JS1.A3ÀÌ 90% ÀÌ»óÀÇ À§Ä¡ÀÏ ¶§ CMS.B1ÀÌ ON »óŰ¡ µË´Ï´Ù. ±×¸®°í, WEPÀ» Á¦¾îÇϴ Ű°ªÀ» Àü¼ÛÇϰųª DX ¹öưÀ» Ȱ¼ºÈ­ÇϰԲû GUI¿¡¼­ CMS1.B1 ¹öưÀ» ÇÁ·Î±×·¡¹ÖÇÕ´Ï´Ù.
Conditional Statements [Á¶°Ç ¸í·É±¸¹®]

ÇöÀçÀÇ Ãà °ª°ú ¹öư º¯¼ö¿¡ µû¶ó ÀÏÁ¤ÇÑ Á¶°ÇÀÌ ºÎÇյǸé ÄÚµåÀÇ ÇÑ ºí·ÏÀ» ½ÇÇàÇÏ°í ±×·¸Áö ¾Ê´Ù¸é ´Ù¸¥ ºí·ÏÀ» ½ÇÇàÇÏ°Ô ÇØÁÖµµ·Ï ½ºÅ©¸³Æ®ÀÇ ¼øÈ¯À» Á¦¾îÇÏ´Â Çü½ÄÀÌ ¸î °¡Áö ÀÖ½À´Ï´Ù.

IF/THEN

°¡Àå ±âº»ÀûÀÎ °ÍÀÌ IF/THEN ºí·ÏÀÔ´Ï´Ù. ÀÌ´Â ´ÙÀ½°ú °°Àº Á¦¾î¹ýÀ» °¡Áý´Ï´Ù:
IF ¾î¶² Á¶°ÇÀÌ ÃæÁ·µÇ¸é THEN ¾î¶² ÀÛ¾÷À» ½ÇÇàÇÔ.
IF/THEN ¸í·É±¸¹®Àº ±¸¹® ³¡¿¡ ¼¼¹ÌÄÝ·ÐÀ» ÇÊ¿ä·Î ÇÏÁö ¾Ê½À´Ï´Ù.
¿¹¸¦ µé¾î, JS1.B4°¡ ON »óÅÂÀÏ ¶§¿¡¸¸ ¹«¾ð°¡¸¦ ÇÏ·Á¸é, ½ºÅ©¸³Æ®ÀÇ ÇÑ ºÎºÐ¿¡ ´ÙÀ½°ú °°ÀÌ ½á³Ö½À´Ï´Ù:
IF( JS1.B4 ) THEN
// Do something
ENDIF

¿©±â¼­´Â JS1.B4°¡ TRUE(´©¸¥ »óÅÂ)À̸é THEN°ú ENDIF »çÀÌÀÇ ¸í·É±¸¹®(µé)ÀÌ ½ÇÇàµË´Ï´Ù. JS1.B4°¡ FALSE(ÇØÁ¦µÈ »óÅÂ)À̸é, ½ºÅ©¸³Æ®ÀÇ ±× ºÎºÐÀº °Ç³Ê¶Ù¾îÁý´Ï´Ù.

IF ±¸¹®ÀÇ °ª¿¡´Â º¹ÀâÇÑ ½ÄÀÌ ¾²ÀÏ ¼öµµ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é, JS1ÀÇ 1¹ø°ú 2¹ø ¹öưÀÌ µ¿½Ã¿¡ ´­·¯Á® ÀÖÀ» ¶§ ÇÑ ºí·ÏÀÇ ±¸¹®À» ½ÇÇàÇÏ·Á¸é, ´ÙÀ½°ú °°ÀÌ ½ºÅ©¸³Æ®¸¦ ¸¸µì´Ï´Ù:
IF( JS1.B1 AND JS1.B2 ) THEN
// Do something
ENDIF


IF/THEN/ELSE

½ÄÀÇ °á°ú¿¡ µû¶ó µÑ Áß ÇϳªÀÇ ¸í·É±¸¹® ±×·ìÀ» ½ÇÇàÇÏ°Ô ÇÏ´Â IF/THEN/ELSE Çü½Äµµ ÀÖ½À´Ï´Ù. ÀÌ ±â´ÉÀº À§¿¡ ¼³¸íÇÑ IF/THEN°ú ºñ½ÁÇÏÁö¸¸ IF ±¸¹®ÀÌ FALSE°¡ µÇ¾úÀ» ¶§ ½ÇÇàÇÒ ½ºÅ©¸³Æ® ¿µ¿ªÀÌ ÁÖ¾îÁý´Ï´Ù. IF/THEN ±¸¹®°ú °°ÀÌ, ³¡¿¡ ¼¼¹ÌÄÝ·ÐÀ» ºÙÀÌÁö ¾Ê½À´Ï´Ù.
¿¹¸¦ µé¾î, JS1.B4°¡ ´­·ÁÀÖÀ» ¶§ ½ºÅ©¸³Æ®ÀÇ ÇÑ ºÎºÐÀ» ½ÇÇàÇÏ°í ±×·¸Áö ¾ÊÀ» ¶§´Â ´Ù¸¥ ºÎºÐÀ» ½ÇÇàÇϰíÀÚ ÇÑ´Ù¸é, ´ÙÀ½°ú °°ÀÌ ½á³Ö½À´Ï´Ù:

IF( JS1.B4 ) THEN
// Do something here if JS1.B4 is TRUE
ELSE
// Do something here if JS1.B4 is FALSE
ENDIF

Nesting IF/THEN and IF/THEN/ELSE [Áߺ¹µÈ IF/THEN°ú IF/THEN/ELSE ±¸¹®]

IF/THEN°ú IF/THEN/ELSE ºÎºÐÀº ¡°Áߺ¹¡±µÉ ¼ö ÀÖ½À´Ï´Ù. Áï, IF³ª ELSEÀý ¾È¿¡ ¶Ç ´Ù¸¥ IFÀýÀÌ µé¾î°¥ ¼ö ÀÖ½À´Ï´Ù:
IF( JS1.B4 ) THEN
IF( JS1.B5 ) THEN
// Do thing #1
ELSE
// Do thing #2
ENDIF
ELSE
IF( JS1.B6 ) THEN
// Do thing #3
ELSE
// Do thing #4
ENDIF
ENDIF

Sequences [¼ø¿­]

CMS¿¡¼­ ÀνÄÇÏ´Â ¶Ç ´Ù¸¥ ¼øÈ¯ Á¦¾î ¹æ½ÄÀº ¡°SEQUENCE(¼ø¿­)¡±ÀÔ´Ï´Ù. ¼ø¿­Àº ¡°SEQUENCE¡±¶ó´Â ¸í·É¾î·Î ½ÃÀÛÇØ¼­ ¡°ENDSEQUENCE¡±¶ó´Â ¸í·É¾î·Î ³¡³³´Ï´Ù.
À̰ÍÀº ±âº»ÀûÀ¸·Î ½ºÅ©¸³Æ®ÀÇ µ¶¸³µÈ ÇÑ ºÎºÐÀÇ ÀÛ¾÷(event)ÀÇ ¼ø¼­¸¦ Á¤Çؼ­ Àüü ½ºÅ©¸³Æ® ³»¿¡¼­ ½ÇÇàÇϰԲû ÇØÁÖ´Â µ¶Æ¯ÇÑ ¹æ¹ýÀÔ´Ï´Ù. ¼ø¿­Àº Á¶°Ç¿¡ ¸Â±â¸¸ ÇÏ¸é ½ºÅ©¸³Æ®ÀÇ °¢ Áֱ⸶´Ù ¼ø¿­ÀÇ ±¸¹® ¼ø¼­´ë·Î ½ÇÇàµË´Ï´Ù.

¼ø¿­ÀÌ ±× Áֱ⿡¼­ ´õ ÀÌ»ó ½ÇÇàµÉ ¼ö ¾ø´Â ÁöÁ¡¿¡ À̸£¸é ¹öưÀ» Ŭ¸¯ÇØ¾ß Çϸç, ±×·¯¸é ±× ¼ø¿­ ´ÙÀ½ À§Ä¡ÀÇ ½ºÅ©¸³Æ®°¡ ½ÇÇàµË´Ï´Ù.
±×¸®°í ´ÙÀ½ ¼ø¼­¿¡´Â ¼ø¿­ÀÌ ¸ØÃß¾ú´ø À§Ä¡·Î °¡°Ô µË´Ï´Ù. ¼ø¿­ÀÌ ¸ØÃß¾ú´ø Á¶°ÇÀÌ µÇ¸é, ¹öưÀ» ´­·¯¾ß Çß´Ù´Â °ÍÀÌ Ç¥½Ã µÇ°í ±× ÁöÁ¡¿¡¼­ºÎÅÍ ´Ù½Ã ¼ø¿­ÀÌ ¸ØÃâ ¶§±îÁö °è¼Ó ÁøÇàµË´Ï´Ù. óÀ½ÀÇ ¼ø¿­ ÁßÁö Á¶°ÇÀ» µÎ ¹øÂ° ÁøÇà°úÁ¤¿¡¼­ ¸¸³ªÁö ¾Ê´Â´Ù¸é, ¼ø¿­ÀÌ °Ç³Ê¶Ù¾îÁö°í ´ÙÀ½ ÁֱⰡ ½ÇÇàµË´Ï´Ù.
¼ø¿­Àº ¾à°£ÀÇ ¿¹¿Ü¸¦ Á¦¿ÜÇϸé ÁÖ ½ºÅ©¸³Æ®¿¡¼­ ¾²´Â ´ëºÎºÐÀÇ ±¸¹®À» Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù¼ø¿­ ³»¿¡¼­´Â SELECT ºí·ÏÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.

±âº»ÀûÀÎ ±â´É À̿ܿ¡, SEQUENCE ¾È¿¡¼­¸¸ ¾µ ¼ö ÀÖ´Â ¼¼ °¡ÁöÀÇ Æ¯¼öÇÑ ±â´ÉÀÌ ÀÖ½À´Ï´Ù. ÀÌ ±â´ÉµéÀº WAIT, WHILE, DELAY ±¸¹®ÀÔ´Ï´Ù.
WAIT and WHILE

WAIT ±¸¹®°ú WHILE ±¸¹®Àº ÁÖ¾îÁø Á¶°ÇÀÌ TRUE°¡ µÉ ¶§±îÁö ¼ø¿­ÀÌ Á¤ÁöÇÑ´Ù´Â Á¡¿¡¼­ ¼­·Î ¸Å¿ì ºñ½ÁÇÕ´Ï´Ù. µÑÀÇ Â÷ÀÌÁ¡Àº, WAIT ±¸¹®¿¡¼­´Â FALSE¿¡¼­ TRUE·Î ¹Ù²ð Áú¹®½ÄÀ» ÇÊ¿ä·Î Çϴµ¥ ºñÇØ, WHILE ±¸¹®Àº ½ÇÇàÁß¿¡ ±¸¹®ÀÌ TRUEÀÎÁö¸¦ üũÇϱ⸸ ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù.
À̸¦ Á»´õ ¼³¸íÇϱâ À§ÇØ, ´ÙÀ½ÀÇ µÎ ¼ø¿­À» ºñ±³Çغ¸°Ú½À´Ï´Ù:
// Sequence 1
//
SEQUENCE
WHILE( JS1.B1 );
B1 = TRUE;
DELAY( 10 );
B1 = FALSE;
DELAY( 10 );
ENDSEQUENCE

// Sequence 2
//
SEQUENCE
WAIT( JS1.B1 );
B1 = TRUE;
DELAY( 10 );
B1 = FALSE;
DELAY( 10 );
ENDSEQUENCE

ù ¹øÂ° ¼ø¿­¿¡¼­´Â, JS1.B1À» ´©¸£°í ÀÖÀ» ¶§ ¼ø¿­ÀÌ °è¼Ó ½ÇÇàµË´Ï´Ù. B1 ºñÆ®°ªÀº JS1.B1ÀÌ ´­·ÁÀÖ´Â µ¿¾È ON »óŰ¡ µË´Ï´Ù.
µÎ ¹øÂ° ¼ø¿­¿¡¼­´Â, JS1.B1ÀÌ Ã³À½ ´ÝÇûÀ» ¶§ ¼ø¿­ÀÌ Çѹø ½ÇÇàµË´Ï´Ù. ¼ø¿­ÀÌ ´Ù½Ã ½ÇÇàµÇ·Á¸é JS1.B1À» ¶¼¾ú´Ù ´Ù½Ã ´­·¯¾ß ÇÕ´Ï´Ù. JS1.B1À» Çѹø ´©¸¦ ¶§¸¶´Ù B1°ªÀº Çѹø TRUE°¡ µÇ¾ú´Ù°¡ FALSE·Î ¹Ù²ò´Ï´Ù.
DELAY

DELAY ±¸¹®Àº ¹Ì¸® Á¤ÇØÁø ½Ã°£ µ¿¾È ¼ø¿­À» Àá½Ã Á¤Áö½Ãŵ´Ï´Ù. DELAY °ªÀº ¼ø¿­ ÁֱⰡ ÁßÁöµÇ´Â ۰ª ¹Ýº¹ ½Ã°£(Character-time)À» ³ªÅ¸³À´Ï´Ù. ۰ª ¹Ýº¹ ½Ã°£Àº Control Manager GUIÀÇ Program Setting ÅÇ¿¡¼­ Á¤ÇÑ ¡°Character Rate(۰ª ¹Ýº¹ ¼Óµµ)¡±¿Í ´ëÃæ ºñ½ÁÇÕ´Ï´Ù.
±âº»°ªÀÎ 50Àº delay °ªÀÌ ÇÑ´Ü°è ´Ã¾î³ª¸é delay ½Ã°£ÀÌ 50¹Ð¸®ÃÊ(0.5ÃÊ) ´Ã¾î³­´Ù´Â °ÍÀ» ¶æÇÕ´Ï´Ù.
DELAY ¼ø¿­Àº ´ÙÀ½ÀÇ ¿¹¿Í °°½À´Ï´Ù:
// Wait until Button 4 on JS1 is pressed, then flash Button 1 on the
// CMS Controls 2 times.
//
SEQUENCE
WAIT( JS1.B4 ); // Wait for the JS1 button to get pressed
CMS.B1 = TRUE; // Turn on the CMS button
DELAY( 10 ); // Wait about half a second
CMS.B1 = FALSE; // Turn off the CMS button
DELAY( 10 ); // Wait about half a second
CMS.B1 = TRUE; // Turn on the CMS button
DELAY( 10 ); // Wait about half a second
CMS.B1 = FALSE; // Turn off the CMS Button
ENDSEQUENCE

JS1.B4¸¦ ´©¸¦ ¶§¸¶´Ù CMS.B1ÀÌ Å°°ª ¹Ýº¹¼Óµµ¿¡ µû¶ó¼­ ¾à 0.5ÃÊ °£°ÝÀ¸·Î µÎ ¹ø ÄÑÁ³´Ù ²¨Áý´Ï´Ù.


Scripting Reference [½ºÅ©¸³Æ® Âü°í] -- PART 2

Nesting [°ãÄ¡±â]

SEQUENCE/ENDSEQUENCE ºí·ÏÀº IF/THEN°ú IF/THEN/ELSE ºí·Ï ¾È¿¡ °ãÃÄ ¾µ ¼ö ÀÖ½À´Ï´Ù. IFÀÇ °á°ú¿¡ µû¶ó¼­ ±× ºí·ÏÀÌ °Ç³Ê¶Ù¾îÁö¸é ÀÌµé ºí·ÏÀÇ ¾È¿¡ ÀÖ´Â ¼ø¿­Àº ÀÌ¹Ì ½ÃÀ۵Ǿú´ø °ÍÀ̶ó°í ÇØµµ ³¡±îÁö ½ÇÇàµÇÁö ¾Ê´Â´Ù´Â Á¡À» ±â¾ïÇϽʽÿÀ.
½±°Ô ¸»Çϸé IF ÀýÀÌ ÁßÁöµÇ¸é ±× ¾È¿¡ ÀÖ´Â ¼ø¿­µµ Á¤ÁöµË´Ï´Ù. ÀÌ´Â »óȲ¿¡ µû¶ó¼­ µµ¿òÀÌ µÉ ¼öµµ ÀÖ°í ±×·¸Áö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù.
Logical Device [³í¸® ÀåÄ¡]

³í¸® ÀåÄ¡´Â ŸÀÌ¸Ó µî¿¡ ¾²ÀÔ´Ï´Ù. ³í¸® ÀåÄ¡´Â ¡°D1¡±¿¡¼­ ¡°D256¡±±îÁöÀÇ 256°³°¡ °¡¿ëÇÕ´Ï´Ù. ÀåÄ¡ ±â´ÉÀÌ ½ÇÇàµÉ ¶§ ÁöÁ¤ÀÚ°¡ ÇÒ´çµË´Ï´Ù. ±× ´ÙÀ½¿¡ ±× ±â´ÉÀÇ »óÅ¿¡ µû¶ó ID°¡ ¾²ÀÔ´Ï´Ù.
³× °¡Áö Á¾·ùÀÇ ÀåÄ¡¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼¼ °¡Áö´Â ŸÀ̸ÓÀ̰í, ³ª¸ÓÁö´Â ÁÖ¾îÁø Á¶°ÇÀÌ TRUEÀÏ ¶§ ªÀº ÆÞ½º¸¦ »ý¼ºÇϴµ¥ ¾²ÀÔ´Ï´Ù.
Timer Device [ŸÀÌ¸Ó ÀåÄ¡]

ŸÀÌ¸Ó ÀåÄ¡´Â ÇϳªÀÇ ºñÆ® °ª(½ÄÀ¸·Î µÈ)À¸·Î Á¦¾îµË´Ï´Ù. CMS°¡ ÀνÄÇϴ ŸÀ̸ӿ¡´Â ¼¼ °¡Áö Á¾·ù°¡ ÀÖ½À´Ï´Ù. ŸÀ̸ӵéÀº ½Ã°£ °è»ê ±â´ÉÀ» Á¦°øÇϴµ¥ °¡Àå ¸¹ÀÌ ¾²À̸ç, ÇÊ¿äÇÏ´Ù¸é ´Ù¸¥ ÀåÄ¡¿Í °áÇÕµÇ¾î ´õ¿í Á¤±³ÇÑ ½Ã°£Â÷ ¼ø¿­À» ¸¸µé¾î ³¾ ¼öµµ ÀÖ½À´Ï´Ù.
On Delay Timer

ù ¹øÂ° ¼³¸íÇÒ Å¸À̸Ӵ On-Delay ŸÀ̸ÓÀÔ´Ï´Ù. ÀÌ Å¸À̸Ӵ ŸÀ̸Ӹ¦ Á¦¾îÇÏ´Â ½Ä(ÀԷ°ª)ÀÌ TRUEÀÌ¸é °ü·ÃµÈ ÀåÄ¡ÀÇ º¯¼ö¸¦ ÁöÁ¤µÈ ½Ã°£µ¿¾È TRUE·Î ¼³Á¤ÇÕ´Ï´Ù.
ÀåÄ¡ º¯¼ö°¡ ÀÏ´Ü ¼³Á¤µÇ¸é, ÀԷ°ªÀÌ FALSE°¡ µÉ ¶§±îÁö ±× °ªÀÌ À¯ÁöµË´Ï´Ù. ±×·¯¸é ÀåÄ¡ º¯¼ö°ªÀÌ FALSE°¡ µÇ°í ŸÀ̸Ӱ¡ ÃʱâÈ­µË´Ï´Ù. ¾î¶² º¯°æÄ¡°¡ ÀÖ´õ¶óµµ ½Ã°£ Áö¿¬°ªÀÌ ÃʱâÈ­µË´Ï´Ù.
¿¹:
TIMER( ONDELAY, D5, 10 ) = JS1.B2;
ù ¹øÂ°ÀÇ º¯¼ö(ONDELAY)´Â ŸÀ̸ÓÀÇ Á¾·ù¸¦ Á¤ÇÕ´Ï´Ù. µÎ ¹øÂ° º¯¼ö(D5)´Â ½ºÅ©¸³Æ®¿¡¼­ ÀÌ Å¸À̸Ӹ¦ ÀνÄÇϰԲû Çϱâ À§ÇÑ ÀåÄ¡ º¯¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¼¼ ¹øÂ° º¯¼ö(10)´Â GUI Program Setting ÅÇÀÇ Character Rate ¼³Á¤¿¡ ±âÃÊÇØ¼­ ´ÜÀ§ ½Ã°£À» Á¤ÇÕ´Ï´Ù.
JS1.B2´Â ÀÔ·ÂÀåÄ¡ÀÔ´Ï´Ù. À̰ÍÀÌ TRUEÀ̸é, ½Ã°£ÀÌ ½ÃÀ۵˴ϴÙ. JS1.B2´Â ÃÖ¼ÒÇÑ Á¤ÇØÁø ½Ã°£ µ¿¾È °ªÀÌ À¯ÁöµÇ¸ç, ±× ´ÙÀ½ D5°¡ TRUE°¡ µÇ¾î JS1.B2°¡ ÇØÁ¦µÉ ¶§±îÁö TRUE·Î À¯ÁöµË´Ï´Ù. Á¤ÇØÁø ½Ã°£ ÀÌÀü¿¡ JS1.B2°¡ ÇØÁ¦µÇ¸é, D5´Â TRUE°¡ µÇÁö ¾Ê½À´Ï´Ù.
ŸÀ̸Ӹ¦ Á¦´ë·Î ¾²·Á¸é, ½ºÅ©¸³Æ®ÀÇ ¾î´À ºÎºÐ¿¡ D5¸¦ ÁöÁ¤ÇØÁÖ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¸é:

SCRIPT
TIMER( ONDELAY, D5, 10 ) = JS1.B2;
CMS.B1 = D5;
ENDSCRIPT

ÀÌ·¸°Ô Çϸé CMS.B1ÀÌ 10 ´ÜÀ§½Ã°£ µ¿¾È ³»Áö JS1.B2°¡ ´­·ÁÀÖ´Â »óÅ·Π¾à 0.5ÃÊ ÈÄ¿¡ ÄÑÁý´Ï´Ù. Á¤ÇØÁø ½Ã°£ ÀÌÀü¿¡ JS1.B2°¡ ÇØÁ¦µÇ¸é ŸÀ̸Ӱ¡ ÃʱâÈ­µÇ°í CMS.B1¿¡ ¼³Á¤°ªÀÌ Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.



Off Delay Timer

µÎ ¹øÂ°ÀÇ Å¸ÀÌ¸Ó Á¾·ù´Â Off-DelayÀÔ´Ï´Ù. Off Delay ŸÀ̸ӴÂ, ÀԷ°ªÀÌ TRUEÀÌ°í °è¼Ó TRUEÀÎ µ¿¾È ÀåÄ¡ º¯¼ö°¡ Áï½Ã TRUE·Î ¼³Á¤µË´Ï´Ù. ÀԷ°ªÀÌ FALSE°¡ µÇ¸é, ÀÏÁ¤ÇÑ ½Ã°£ Áö¿¬°ªÀÌ ½ÃÀ۵˴ϴÙ. Áö¿¬ ½Ã°£ÀÌ ³¡³ª¸é ÀåÄ¡ º¯¼ö´Â FALSE°¡ µË´Ï´Ù.
ÀåÄ¡ º¯¼ö°¡ FALSE°¡ µÇµµ·Ï Á¤ÇØÁø ½Ã°£ ÀÌÀü¿¡ ÀԷ°ªÀÌ ´Ù½Ã TRUE°¡ µÇ¸é ŸÀ̸Ӱ¡ ÃʱâÈ­µÇ°í, ÀԷ°ªÀÌ ´Ù½Ã FALSE°¡ µÇ¸é Áö¿¬ ½Ã°£ÀÌ Ã³À½ºÎÅÍ ´Ù½Ã ½ÃÀ۵˴ϴÙ.
Off-DelayÀÇ ¿ë¹ýÀº On-Delay¿Í ²Ï ºñ½ÁÇÕ´Ï´Ù:
TIMER( OFFDELAY, D3, 20 ) = JS2.B3;
ù ¹øÂ° º¯¼ö´Â OFFDELAY ŸÀ̸Ӷó´Â °ÍÀ» Á¤ÀÇÇϰí, µÎ ¹øÂ° º¯¼ö´Â ÀåÄ¡ º¯¼ö¸¦ ÁöÁ¤Çϸç, ¼¼ ¹øÂ° º¯¼ö´Â Áö¿¬ ½Ã°£ÀÇ ±æÀ̸¦ ¼³Á¤ÇÕ´Ï´Ù. À§ÀÇ ¿¹¿¡¼­, JS2.B3À» ´©¸£¸é D3´Â Áï½Ã TRUE°¡ µË´Ï´Ù.
D3´Â JS2.B3°¡ ÇØÁ¦µÉ ¶§±îÁö °è¼Ó TRUEÀ̸ç, JS2.B3°¡ ÇØÁ¦µÇ¸é ¾à 1Ãʰ£ÀÇ Áö¿¬ ½Ã°£ÀÌ ½ÃÀ۵˴ϴÙ. ±× ½Ã°£ÀÌ Áö³ª¸é D3Àº FALSE°¡ µË´Ï´Ù.
ÀÌ ±â´ÉÀº ¿©·¯ °¡Áö ¿ëµµ·Î À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, ÀüÅõºñÇà ½Ã¹Ä·¹À̼ǿ¡¼­ Æ®¸®°Å¸¦ ´ç°åÀ» ¶§ °Ç Ä«¸Þ¶ó¸¦ Ȱ¼ºÈ­ÇϰԲû ÇÏ°í Æ®¸®°Å¸¦ ³õÀº ÈÄ ÀÏÁ¤ ½Ã°£µ¿¾È °Ç Ä«¸Þ¶ó°¡ µ¹¾Æ°¡°Ô²û ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯ÀÚ¸é ÀÌ·± ½ÄÀ¸·Î ½ºÅ©¸³Æ®¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù:
SCRIPT
TIMER( OFFDELAY, D1, 200 ) = JS1.B1;
CMS.B1 = D1;
ENDSCRIPT

Æ®¸®°Å¸¦ ´ç±â¸é D1°ú CMS.B1ÀÌ TRUE°¡ µÇ¾î, Æ®¸®°Å¸¦ ³õÀº ÈÄ ¾à 10ÃÊ ÈıîÁö °è¼Ó TRUE°¡ µË´Ï´Ù.
´Ü, GUI¿¡¼­ Press, Release ¸í·É¾î¸¦ »ç¿ëÇÏ¿© CMS.B1À» ´­·¶À» ¶§ ¡°Ä«¸Þ¶ó ½ÃÀÛ¡±¿¡ ÇØ´çÇϴ Ű°ªÀÌ Àü¼ÛµÇ°í CMS.B1ÀÌ ÇØÁ¦µÇ¾úÀ» ¶§ ¡°Ä«¸Þ¶ó ÁßÁö¡± ۰ªÀÌ Àü¼ÛµÇµµ·Ï ÇÁ·Î±×·¡¹ÖÇØ¾ß ÇÕ´Ï´Ù.

Interval Timer

¼¼ ¹øÂ° ŸÀ̸Ӵ Interval ŸÀ̸ÓÀÔ´Ï´Ù. ÀÌ Å¸À̸Ӵ ±ôºýÀ̿͵µ °°ÀÌ ÀԷ°ªÀÌ TRUEÀÏ ¶§ ÀåÄ¡ º¯¼ö¸¦ °è¼Ó TRUE¿Í FALSE·Î ¹Ýº¹µÇ°Ô ÇÕ´Ï´Ù. ¿ë¹ýÀº On-Delay¿Í Off-Delay¿Í ºñ½ÁÇÏÁö¸¸, ´ÙÀ½°ú °°ÀÌ µÎ ¹øÂ°ÀÇ ½Ã°£°£°ÝÀ» ÁöÁ¤ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù:
TIMER( INTERVAL, D7, 30, 40 ) = JS2.B4;
óÀ½ÀÇ µÎ º¯¼öµéÀº ŸÀÌ¸Ó Á¾·ù¿Í ÀåÄ¡ º¯¼ö¸¦ Á¤ÀÇÇÕ´Ï´Ù. ³ªÁßÀÇ µÎ º¯¼ö´Â °¢°¢ TRUE ½Ã°£°ú FALSE ½Ã°£À» Á¤ÀÇÇÕ´Ï´Ù. ÀԷ°ªÀÌ Ã³À½ TRUE°¡ µÇ¸é TRUE ŸÀ̸Ӱ¡ ½ÃÀ۵ǰí, ¾Õ¿¡ Ç¥½ÃµÈ ½Ã°£ µ¿¾È ½Ã°£ÀÌ Áö³ª¸é FALSE°¡ µÇ¸ç, ±× ´ÙÀ½ µÚ¿¡ Ç¥½ÃµÈ ½Ã°£µ¿¾È ŸÀ̸Ӱ¡ ÀÛµ¿ÇÑ ÈÄ TRUE·Î ¹Ù²î´Â °úÁ¤ÀÌ ¹Ýº¹µË´Ï´Ù.
ÀÌ °úÁ¤Àº JS2.B4°¡ ´­·ÁÀÖ´Â µ¿¾È °è¼ÓµË´Ï´Ù.
ÀÌ Å¸À̸Ӵ ¿©·¯ ±â´É¿¡ À¯¿ëÇÕ´Ï´Ù. ÇϳªÀÇ ¿¹·Î ¡°¹Ì¼¼ Æ®¸² Á¶Á¾¡± ±â´ÉÀ» µé¾îº¸°Ú½À´Ï´Ù:
SCRIPT
TIMER( INTERVAL, D1, 20, 100 ) = JS1.B2;
TIMER( INTERVAL, D2, 20, 100 ) = JS1.B3;
CMS.B1 = D1;
CMS.B2 = D2;
ENDSCRIPT

À§ÀÇ ¿¹¿¡¼­´Â JS1.B2°¡ ´­·ÁÀÖ´Â µ¿¾È D1ÀÌ 5ÃÊ °£°ÝÀ¸·Î ±ôºýÀ̰í, JS1.B3ÀÌ ´­·ÁÀÖ´Â µ¿¾È¿¡´Â D2°¡ 5Ãʸ¶´Ù ±ôºýÀÌ°Ô µË´Ï´Ù. GUI¿¡¼­ CMS.B1¿¡ ¡°Trim Up¡± ۸¦ ¸ÅÇÎÇϰí CMS.B2¿¡ ¡°Trim Down¡± ۸¦ ¸ÅÇÎÇϸé, ÀÌ ¹öưµéÀ» ´©¸£°í ÀÖ´Â µ¿¾È Ç×°ø±âÀÇ Æ®¸²ÀÌ ±×ÂÊ ¹æÇâÀ¸·Î ´À¸®°Ô Á¶Á¤µË´Ï´Ù.
Pulse Device
³× ¹øÂ°ÀÇ ÀåÄ¡ Á¾·ù´Â ¡°Pulse¡± ÀåÄ¡ÀÔ´Ï´Ù. óÀ½¿¡´Â ÀԷ°ªÀÌ TRUEÀÏ ¶§ ÀÌ ÀåÄ¡ÀÇ ÀåÄ¡ º¯¼ö°¡ TRUE°¡ µË´Ï´Ù. ½ºÅ©¸³Æ®ÀÇ ´ÙÀ½ ÁֱⰡ ½ÇÇàµÉ ¶§ ÀåÄ¡ º¯¼ö´Â FALSE°¡ µÇ°í °è¼Ó FALSE »óÅ·Π³²¾ÆÀÖ´Ù°¡ ÀԷ°ªÀÌ FALSE°¡ µÇ¸é ´Ù½Ã TRUE·Î ¹Ù²ò´Ï´Ù.
Pulse ±â´ÉÀº ½ºÅ©¸³Æ®ÀÇ ´Ù¸¥ ºÎºÐ¿¡¼­ ¾î¶² ÀÛ¾÷ÀÇ ½ÇÇàÀ» ÀνÄÇÒ Çʿ䰡 ÀÖÀ» ¶§ ¾µ¸ð°¡ ÀÖÁö¸¸, ÀÛ¾÷ Ç¥½Ã°¡ °è¼Ó ON »óÅ·Π³²¾ÆÀÖÀ¸¸é ¹®Á¦°¡ ¹ß»ýÇÒ ¼öµµ ÀÖ½À´Ï´Ù. Pulse ÀåÄ¡¸¦ ÀνÄÇÏ°Ô ÇÏ·Á¸é, ´ÙÀ½°ú °°Àº Äڵ带 ³Ö½À´Ï´Ù:
PULSE( D2 ) = B1;
À§ÀÇ ¿¹¿¡¼­, B1ÀÌ Ã³À½ TRUE·Î ÀÎ½ÄµÈ ½ºÅ©¸³Æ®ÀÇ Á⵿ֱ¾È D2´Â TRUE »óŰ¡ µË´Ï´Ù. ½ºÅ©¸³Æ®ÀÇ ´ÙÀ½ Áֱ⿡¼­´Â FLASE·Î µÇµ¹¾Æ°©´Ï´Ù.
Pulse ÀåÄ¡´Â ۰ªÀ» Á÷Á¢ Àü¼ÛÇϴµ¥´Â Àû´çÇÏÁö ¾Ê½À´Ï´Ù. ۰ª ÇÁ·Î¼¼¼­°¡ °ªÀ» Á¤È®È÷ ÀνÄÇϱ⿡´Â Pulse ÀåÄ¡ÀÇ ÀÎ½Ä ÁֱⰡ ³Ê¹« ª½À´Ï´Ù.
ÀÌ·± ¹®Á¦°¡ ÀÖ´Ù¸é, Off-Delay Timer¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù:
SCRIPT
PULSE( D2 ) = B1;
TIMER( OFFDELAY, D3, 10 ) = D2;
CMS.B1 = D3;
ENDSCRIPT

ÀÌ ¿¹¿¡¼­´Â, D2 Æ®¸®°ÅÀÇ ÂªÀº ÆÞ½º·Î D3¿¡ Off-Delay°¡ Àû¿ëµË´Ï´Ù. D3ÀÌ TRUE°¡ µÇ°í D2°¡ ´ÙÀ½ Áֱ⿡¼­ FLASE°¡ µÇ¸é, D3ÀÇ Å¸À̸Ӱ¡ ÀÛµ¿Çϱ⠽ÃÀÛÇÕ´Ï´Ù. Off-Delay´Â ۰ª ¹Ýº¹¼Óµµ¿Í Á÷Á¢ ¿¬µ¿µÇ¹Ç·Î, ۰ª ÇÁ·Î¼¼¼­°¡ °ªÀ» ÃæºÐÈ÷ ÀνÄÇÒ ¼ö ÀÖÀ» ¸¸Å­ÀÇ ±æÀÌ·Î º¯¼ö°ªÀÌ À¯ÁöµË´Ï´Ù.
µ¿ÀÛÀÌ ÀνĵÇÁö ¸øÇϸé, Program Settings¿¡¼­ Character Rate¸¦ ´Ã¸®°Å³ª Off-Delay ±¸¹®ÀÇ ½Ã°£ °ªÀ» ´Ã·Áº¸½Ê½Ã¿À.
Scale Function [½ºÄÉÀÏ ±â´É]

¡°SCALE¡± ±â´ÉÀº CMS controls¿Í ½ÇÁ¦ ÄÁÆ®·Ñ·¯·Î ºñÇàÇÒ ¶§ ½ºÄÉÀÏ º¯¼ö¸¦ ¼³Á¤Çϴµ¥ ¾²ÀÔ´Ï´Ù. ÀÌ ±â´ÉÀº ¡°Centered¡± Ç¥½Ã¸¦ Á¦¿ÜÇÏ¸é ´Ù¸¥ GUIÀÇ ¸ðµç ½ºÄÉÀÏ º¯¼ö ¼³Á¤µéº¸´Ù ¿ì¼±ÇÕ´Ï´Ù. ¿©±â¿¡´Â µ¥µåÁ¸(deadzone), ¹Î°¨µµ(sensitivity), ÀԷ°ª °î¼±(gain curve) µîµîÀÌ Æ÷ÇԵ˴ϴÙ. º¸ÅëÀº Axis Dialog¿¡¼­ ¼³Á¤µË´Ï´Ù. SCALE ±â´ÉÀÇ °á°ú°ªÀº ´Ù¸¥ SCLASE ±â´ÉÀÌ ½ÇÇàµÉ ¶§±îÁö Àû¿ëµË´Ï´Ù.
SCALE ±¸¹®Àº ´ÙÀ½°ú °°½À´Ï´Ù:
SCALE( CMS.A1, 100, 5, GAIN6 );
ù ¹øÂ° º¯¼ö´Â ½ºÄÉÀÏ º¯¼ö°¡ Àû¿ëµÉ ÃàÀ» Á¤Çϸç, ¿©±â¼­´Â CMS.A1ÀÔ´Ï´Ù. µÎ ¹øÂ° º¯¼ö´Â ¡°Sensitivity(¹Î°¨µµ)¡±°ªÀ̸ç, -100¿¡¼­ 100±îÁöÀÇ °ªÀ» ÆÛ¼¾Æ®·Î ÀÔ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼¼ ¹øÂ° º¯¼ö´Â DeadZone º¯¼öÀ̸ç ÀÌ ¿ª½Ã ÆÛ¼¾Æ® °ªÀÔ´Ï´Ù. ¸¶Áö¸· °ªÀº GAIN °ªÀ̸ç, GAIN1¿¡¼­ GAIN11±îÁö¸¦ ¾µ ¼ö ÀÖ½À´Ï´Ù.
À̵éÀº °¢°¢ GUI¿¡¼­ Àû¿ëÇÒ ¼ö ÀÖ´Â 11°³ÀÇ gain(ÀԷ°ª Á¶Á¤) ¼³Á¤°ú ÀÏÄ¡ÇÕ´Ï´Ù. GAIN6Àº ¼öÆòÀ̸ç, ´Ù¸¥ °ªµéÀº GUIÀÇ Gain È­¸éÀÇ ¿ÞÂÊ ¾Æ·¡¿¡¼­ ¿À¸¥ÂÊ À§·Î ¿Ã¶ó°¡´Â Á÷¼±ÀÔ´Ï´Ù. GAIN1¿¡¼­ GAIN5±îÁö´Â Áß¾ÓÂÊÀÌ ´ú ¹Î°¨ÇÏ°í °¡ÀåÀÚ¸®ÂÊÀÌ ´õ ¹Î°¨ÇÕ´Ï´Ù. GAIN7¿¡¼­ GAIN11±îÁö´Â ±× ¹Ý´ë·Î, Áß¾ÓÂÊÀÌ ´õ ¹Î°¨ÇÏ°í ¹Ù±ùÂÊÀÌ ´ú ¹Î°¨ÇÕ´Ï´Ù.
SCALE ¼³Á¤À» ÀÌ¿ëÇÏ¸é ¿©·¯ ¸ðµå¸¦ »ç¿ëÇÏ´Â ÇÁ·Î±×·¥¿¡¼­ ¼¼ °¡Áö ¸ðµç ¸ðµåÀÇ gain °ªÀ» ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÄÁÆ®·Ñ·¯ÀÇ µ¿ÀÛ(º¸ÅëÀÇ ÀϹÝÀûÀÎ °æ¿ì)¿¡ »ó°ü ¾øÀÌ Æ¯Á¤ÇÑ ¹ÝÀÀÀÌ ÇÊ¿äÇÏ´Ù¸é °£´ÜÈ÷ GUI¿¡¼­ ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
SCALE ±¸¹®Àº ¼øÇ×Áß¿¡´Â º¸ÅëÀÇ Á¶Á¾À» Çϰí Âø·ú½Ã¿¡´Â ¹Ì¼¼Á¶Á¾À» ÇÏ°í ½ÍÀ» ¶§¿Í °°ÀÌ ºñÇàÁß¿¡ ½ºÆ½ÀÇ ¹ÝÀÀÀ» ¹Ù²Ù°íÀÚ ÇÒ ¶§¿¡¸¸ ÇÊ¿äÇÕ´Ï´Ù. ¿¹Á¦´Â Sample Scripts ºÎºÐÀ» º¸½Ê½Ã¿À.

Select Function [¼±Åà ±â´É]

SELECT ±â´ÉÀº ÇöÀçÀÇ ¾Æ³¯·Î±× º¯¼ö°ª¿¡ ±âÃÊÇØ¼­ ¸î °¡Áö ´Ù¸¥ ±â´ÉµéÀ» ½ÇÇàÇÒ ¶§ ¾²ÀÔ´Ï´Ù. ÀÌ ±â´ÉÀº ¼³¸í¼­¿¡¼­ °¡Àå º¹ÀâÇÑ ºÎºÐÀÌÁö¸¸, ¸Å¿ì ¾µ¸ð°¡ ÀÖ½À´Ï´Ù. ±âº»ÀûÀ¸·Î´Â ¾Æ³¯·Î±× ÀԷ°ªÀ» Àû¿ëÇϰí, ±× °ªÀÇ ¹üÀ§¸¦ ÆÇ´ÜÇØ¼­ ±× ¿µ¿ª¿¡ ÁöÁ¤µÈ ÀÛ¾÷À» ½ÇÇàÇÏ´Â °ÍÀÔ´Ï´Ù.
ÀÌ ±¸¹®Àº ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Â ¡°case¡±³ª switch¡± ±¸¹®ÀÇ ¼öÁ¤ÆÇÀ¸·Î ÀÌÇØÇÒ ¼ö ÀÖ½À´Ï´Ù. SELECT ±â´ÉÀº SEQUENCE ºí·Ï ¾È¿¡¼­´Â »ç¿ëÇÒ ¼ö ¾ø´Ù´Â °ÍÀ» ÁÖÀÇÇØ ÁֽʽÿÀ.
Select ºí·ÏÀÇ ±âº» Çü½ÄÀº ´ÙÀ½°ú °°½À´Ï´Ù:
SELECT( INPUTVALUE, TYPE ) OF
// CASE Definitions go here
ENDSELECT

¡°INPUTVALUE¡±´Â ºí·ÏÀ» Á¦¾îÇÏ´Â ¾Æ³¯·Î±× °ªÀ̸ç, ´ÜÀÏ º¯¼ö³ª ¼öÇнÄÀÌ ¾²ÀÏ ¼ö ÀÖ½À´Ï´Ù. ¡°TYPE¡±´Â ¡°POSITION¡±À̳ª ¡°RANGE¡±µÑ Áß ¾î´À °ÍÀ» »ç¿ëÇØµµ µÇ¸ç, select ±¸¹®ÀÇ ÀÛµ¿¹ýÀ» Á¦¾îÇÕ´Ï´Ù.
±âº»ÀûÀ¸·Î, TYPE°¡ ¡°POSITION¡±À¸·Î µÇ¾î ÀÖÀ¸¸é, Select ±¸¹®Àº ÇöÀç ¿µ¿ªÀ» ¹þ¾î³ª¸é¼­ Á¤ÇØÁø °ÍÀ» ½ÇÇàÇÏ°í »õ·Î¿î ¿µ¿ªÀ¸·Î µé¾î°¡¸é¼­ Á¤ÇØÁø °ÍÀ» ½ÇÇàÇÔÀ¸·Î½á ÇöÀç ÀԷ°ªÀÇ ¿µ¿ª º¯È­¿¡ ¹ÝÀÀÇÕ´Ï´Ù.
TYPE°¡ ¡°RANGE¡±·Î ¼±ÅõǾîÀÖ´Ù¸é, Select ±¸¹®Àº ÇöÀç ¿µ¿ª¿¡¼­ »õ ¿µ¿ªÀ¸·Î ¿òÁ÷ÀÓ¿¡ µû¶ó ¹ÝÀÀÇÏ´Â °ÍÀº °°Áö¸¸, °¢ ¿µ¿ª »çÀÌÀÇ ¸ðµç ¿µ¿ªµéÀÌ ½ÇÇàµË´Ï´Ù.
¿¹¸¦ µé¾î ÀԷ°ªÀÌ 1¹ø ¿µ¿ª¿¡¼­ 3¹ø ¿µ¿ªÀ¸·Î °ð¹Ù·Î ¹Ù²ï´Ù¸é, POSITION Çü½Ä¿¡¼­´Â 1¹ø ¿µ¿ªÀ» ºüÁ®³ª°¡ 3¹ø ¿µ¿ªÀ¸·Î µé¾î°¡´Â °ÍÀ¸·Î ÀνÄÇÕ´Ï´Ù.
¹Ý¸é, ¡°RANGE¡± Çü½Ä¿¡¼­´Â, 1¹ø ¿µ¿ªÀ» ³ª°¡¼­ 2¹ø ¿µ¿ªÀ¸·Î µé¾î°¡°í, ´Ù½Ã 2¹ø ¿µ¿ªÀ» ³ª°¡¼­ 3¹ø ¿µ¿ªÀ¸·Î µé¾î°¡´Â °ÍÀ¸·Î Àνĵ˴ϴÙ.
¹°·Ð, ¡°POSITION¡± Çü½Ä¿¡¼­´Â °ÔÀÓÁß ÀԷ°ªÀÇ ¿òÁ÷ÀÓÀÌ ¾î´ÀÁ¤µµ ºü¸£°Ô ÀÌ·ç¾îÁö¸é 2¹ø ¿µ¿ªÀ» ÀνÄÇÏÁö ¸øÇϰí 3¹ø ¿µ¿ªÀ¸·Î Áö³ªÄ¡°Ô µÇ¹Ç·Î, ¿òÁ÷ÀÓÀÌ »ó´ëÀûÀ¸·Î ´À¸±¼ö·Ï Á¤È®ÇØÁý´Ï´Ù.
Select ±¸¹®ÀÇ ´ÙÀ½¿¡ ¿À´Â ´Ü¾î´Â ¡°OF¡±ÀÔ´Ï´Ù.
ÀÌ ´Ü¾îÀÇ µÚ¿¡´Â ¡°CASE¡± ±¸¹®µéÀÌ µû¶ó¿À¸ç, ±× °¢°¢Àº ¿µ¿ª ÇѰè¿Í ±× ¿µ¿ªÀ» µé¾î°¡°í ³ª¿Ã ¶§ ½ÇÇàµÉ µ¿ÀÛµéÀ» Á¤ÀÇÇÕ´Ï´Ù. ÀÌ ±¸¹®µéÀº ¡°CASE¡±·Î ½ÃÀ۵Ǹç, ¾ç¼öÀÇ »ó¼ö¿Í ÄݷРǥ½Ã°¡ µÇ¿¡ ¿É´Ï´Ù. ¿µ¿ª ÁøÀÔ ÇൿÀº Ç×»ó Á¤ÇØ¾ß ÇÕ´Ï´Ù.
¡°EXITCASE¡±¶ó´Â ´Ü¾î·Î ÁøÀÔ°ú ÀÌÅ» ÇൿÀ» ºÐ¸®ÇÔÀ¸·Î½á ¿µ¿ª ÀÌÅ»½ÃÀÇ Çൿµµ Æ÷ÇÔ½Ãų ¼ö ÀÖÁö¸¸, EXITCASE´Â ¼±ÅûçÇ×ÀÔ´Ï´Ù. ¸ðµç °æ¿ìÀÇ ¸¶Áö¸·¿¡´Â ¡°BREAK¡± ±¸¹®À» ºÙ¿© Ç¥½ÃÇÕ´Ï´Ù.
Select ºí·ÏÀÇ ¿¹´Â ´ÙÀ½°ú °°½À´Ï´Ù:
SELECT( JS1.A1, RANGE ) OF
CASE 0:
B1 = TRUE;
EXITCASE:
B1 = FALSE;
BREAK;

CASE 64:
B2 = TRUE;
EXITCASE:
B2 = FALSE;
BREAK;

CASE 128:
B3 = TRUE;
EXITCASE:
B3 = FALSE;
BREAK;

CASE 192:
B4 = TRUE;
EXITCASE:

B4 = FALSE;
BREAK;

ENDSELECT
¿©±â¼­´Â JS1.A1 ÃàÀÌ 4°³ÀÇ ¿µ¿ªÀ¸·Î ³ª´¹´Ï´Ù. Ç¥ÁØ Ãà ¿µ¿ª(0~255)ÀÌ JS1.A1¿¡ Àû¿ëµÇ¸ç, ÀÌ ¿µ¿ªÀÌ 64, 128, 192ÀÇ °ªÀ§Ä¡¿¡¼­ µ¿ÀÏÇÑ Å©±â·Î 4µîºÐµË´Ï´Ù. ÄÁÆ®·ÑÀÌ ÀÌ ¿µ¿ªÀ» Áö³ª¸é, ÄÁÆ®·ÑÀÇ ¿òÁ÷ÀÓ¿¡ µû¶ó ¸Ç ¾Æ·¡¿¡¼­ºÎÅÍ B1ÀÌ ÄÑÁö°í, ±× ´ÙÀ½ B2, B3, ¸¶Áö¸·À¸·Î ¸Ç À§¿¡¼­ B4°¡ ÄÑÁý´Ï´Ù.
ÁöÁ¤µÈ ¿µ¿ªÀº ÇÑ °ª¿¡¼­ ´Ù¸¥ °ª±îÁö¶ó´Â Á¡À» ÁÖÀÇÇϽʽÿÀ. Áï, ¡°CASE¡± ´ÙÀ½ÀÇ °ªÀº ¿µ¿ªÀÇ ¾Æ·¡ÂÊ ÇѰèÀ̸ç, À§ÂÊ ÇѰè´Â ÇÑ ´Ü°è ³ôÀº CASE °ªÀÇ -1±îÁö ÀÔ´Ï´Ù.
°¡Àå ³ôÀº °ªÀÇ ¿µ¿ªÀº ±× ¿µ¿ªÀÇ ÃÖ¼Ò°ªº¸´Ù ³ôÀº ¸ðµç °ªÀÔ´Ï´Ù. À§ÀÇ ¿¹¿¡¼­´Â, JS1.A1ÀÇ 191 ÀÌ»óÀÇ ¸ðµç °ªµéÀÌ 4¹øÂ° ¿µ¿ªÀÌ µË´Ï´Ù.
°¡Àå ³·Àº ¿µ¿ªÀÇ CASE ±¸¹®ÀÌ 0º¸´Ù Å©´Ù¸é, 0¿¡¼­ ÃÖ¼Ò case°ª±îÁö´Â ¡°¾Æ¹«°Íµµ ½ÇÇàµÇÁö ¾Ê´Â¡± ¿µ¿ªÀÌ µË´Ï´Ù. ÀԷ°ªÀÌ Á¤ÀÇµÈ °¡Àå ÀÛÀº °ª ¿µ¿ªº¸´Ù ÀÛÀÚ¸é, ±× ¿µ¿ªÀ¸·Î µé¾î°¡°í ³ª°¥ ¶§ ¾Æ¹« °Íµµ ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù.
°¢°¢ÀÇ caseµéÀº EXITCASE:¸¦ °¡Áý´Ï´Ù. ÀԷ°ªÀÌ ±× ¿µ¿ª¿¡ µé¾î°¥ ¶§ CASE¿Í EXITCASE ±¸¹® »çÀÌÀÇ Äڵ尡 ½ÇÇàµË´Ï´Ù. ¾Æ³¯·Î±× °ªÀÌ ÀÏÁ¤ÇÑ ¿µ¿ªÀ» ¹þ¾î³ª¸é EXITCASE:¿Í BREAK ±¸¹® »çÀÌÀÇ Äڵ尡 ½ÇÇàµË´Ï´Ù.
CMS´Â ¿µ¿ªÀÌ ¹Ù²î´Â µ¿¾È ۰ª ÇÁ·Î¼¼¼­¿ÍÀÇ µ¿½Ã¼ºÀ» À¯ÁöÇϹǷÎ, EXITCASE ±¸¹®ÀÇ Å°°ªÀº »õ ¿µ¿ªÀÇ CASE ±¸¹®º¸´Ù ¸ÕÀú Àü¼ÛµË´Ï´Ù.
À§¿¡ ¼³¸íÇÑ ¹Ù¿Í °°ÀÌ, EXITCASE´Â ¼±ÅûçÇ×ÀÔ´Ï´Ù. Case´Â ´ÙÀ½°ú °°ÀÌ ¾µ ¼öµµ ÀÖ½À´Ï´Ù:
CASE 100:
B1 = TRUE;
BREAK

ÀÌ °æ¿ì¿¡´Â, ÀԷº¯¼ö°¡ óÀ½ 100À» ³ÑÀ¸¸é B1ÀÌ ¼³Á¤µË´Ï´Ù. ´Ü, ÀÌ °æ¿ì¿¡´Â B1À» FALSE·Î ¸¸µå´Â ¼³Á¤ÀÌ ¹öư µî¿¡ ÀÇÇØ¼­ ÀÌ·ç¾îÁ®¾ß Çϸç, ±×·¸Áö ¾ÊÀ¸¸é °è¼Ó B1ÀÌ ON »óÅ·ΠÀÖ°Ô µË´Ï´Ù.
Statement in CASE Definitions [CASE Á¤ÀÇ ³»ÀÇ ±¸¹®]

CASE Á¤ÀÇ ³»¿¡¼­´Â ¹®Á¦ ¹ß»ýÀ» ¹æÁöÇϱâ À§ÇØ ¸î °¡Áö Á¾·ùÀÇ ±¸¹®¸¸À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÇÒ ¼ö ÀÖ´Â ±¸¹®µé¿¡´Â IF/THEN, IF,THEN/ELSE, SCALE ±¸¹®µé°ú ±âº» ÁöÁ¤ ÀÛ¾÷ (¡°=¡±) µîÀÌ ÀÖ½À´Ï´Ù. ¼ø¿­Àº »ç¿ëÇÒ ¼ö ¾øÀ¸¸ç, ÀåÄ¡ À̸§Àº ¿Ïº®È÷ ÀÎ½Ä °¡´ÉÇÏÁö¸¸ ÀåÄ¡ Á¤Àǵµ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
±×·¸Áö¸¸, Select ºí·Ï¿¡¼­ ÀÌ Ç׸ñµéÀ» Á¦¾îÇÒ ¼ö´Â ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ ¿¹¿¡¼­´Â, js1.a1ÀÇ °ªÀÌ 128(Áß¾Ó)º¸´Ù Å©¸é ¼ø¿­ÀÌ ½ÇÇàµË´Ï´Ù:
SCRIPT
// First, set it up so B1 is TRUE when we're above center.
//
SELECT( JS1.A1, POSITION ) OF

CASE 0:
BREAK;

CASE 128:
B1 = TRUE;
EXITCASE:
B1 = FALSE;
BREAK;

ENDSELECT
// Now run a sequence based on B1 (We're not in the
// select block now so anything goes);
//
SEQUENCE
WAIT( B1 ); // Wait for b1
CMS.B1 = TRUE; // Turn on CMS.B1
DELAY( 20 ); // Leave it on for about a second
CMS.B1 = FALSE; // Turn it off
ENDSEQUENCE

ENDSCRIPT
ÀÌ ±â´ÉÀ¸·Î ¹«¾ùÀ» ÇÒ ¼ö ÀÖ´Â Áö¸¦ °£´ÜÇϰԸ¸ ¼³¸íÇßÁö¸¸, ÀÌ ±â´ÉÀ¸·Î ÇÒ ¼ö ÀÖ´Â Àϵé°ú ±â´ÉÀ» ÀûÇÕÇÏ°Ô Á¶ÇÕÇÏ´Â ¿©·¯ ¹æ¹ýµéÀÌ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.

Setting the Mapper Mode [¸ÅÆÛ ¸ðµå ¼³Á¤]

½ºÅ©¸³Æ®¿¡¼­ ÇöÀçÀÇ Mapper Mode¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯ÀÚ¸é, CURRENTMODE º¯¼ö¸¦ ¿øÇÏ´Â ¸ðµå·Î ¼³Á¤ÇÏ¸é µË´Ï´Ù:
CURRENTMODE = MODE2;
ÀÌ·¸°Ô Çϸé, ÄÁÆ®·Ñ·¯¿¡ Mode Á¦¾î ±â´ÉÀÌ ¾øÀ» ¶§³ª ÀåÄ¡ÀÇ ¸ðµå Á¦¾î ¹öưÀÌ ¾Æ´Ï¶ó ÀÏ¹Ý ¹öưÀ¸·Î ¸ðµå¸¦ Á¦¾îÇϰíÀÚ ÇÒ ¶§ ½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇÏ¿© ¸ÅÆÛ ¸ðµå¸¦ Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ü, CMS¿¡¼­ ¸ðµå¸¦ ¼³Á¤ÇÒ ¶§¿¡´Â ¸ðµå º¯°æ ±â´ÉÀÌ ÀÖ´Â ½ÇÁ¦ ÀåÄ¡ÀÇ ¸ðµå Ç¥½ÃµîÀÌ ÇöÀç ¸ðµå¿¡ ¸Â°Ô Ç¥½ÃµÇÁö ¾Ê´Â´Ù´Â Á¡¿¡ À¯ÀÇÇϽʽÿÀ.
ÀåÄ¡ÀÇ ¸ðµå Ç¥½ÃµîÀº ÀåÄ¡ÀÇ Mode ¹öưÀ» »ç¿ëÇÏ¿´À» ¶§¿¡¸¸ Á¤»óÀûÀ¸·Î Ç¥½ÃµË´Ï´Ù.
»ç¿ëÇÒ ¼ö ÀÖ´Â ¸ðµå´Â MODE1, MODE2, MODE3À̸ç, ¼ýÀÚ°ª 0,1,2¸¦ ¾µ ¼öµµ ÀÖ½À´Ï´Ù. ±×·¯¸é ¸ðµå º¯°æ ½ºÀ§Ä¡ ÇÁ·Î±×·¡¹ÖÀ» Á»´õ ½±°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±¸Ã¼ÀûÀÎ ¿¹Á¦¿Í »ç¿ë¹ýÀº Sample Scripts ºÎºÐÀ» º¸½Ê½Ã¿À.
CMS¿¡¼­ Mode¸¦ Á¦¾îÇÏ´Â ¸ÊÀ» ¸¸µé¸é, Control Manager GUIÀÇ ¡°Program Setting¡±À¸·Î °¡¼­ ¡°Mode Control¡±À» CMS Controls¡±·Î ¹Ù²Ù¾î¾ß ÇÕ´Ï´Ù.
±×·¯¸é Dialog Pane¿¡ Mode 2¿Í Mode 3 ÅÇÀÌ È°¼ºÈ­µÇ´Â ´ë½Å, FighterStickÀ̳ª ProThrottleÀÇ Mode ¼¼ÆÃ ±â´ÉÀº ºñȰ¼ºÈ­µË´Ï´Ù.
°¢ ¸ðµåÀÇ ¼³¸íÀº Mapper Modes ºÎºÐÀ» º¸½Ê½Ã¿À.

 
Miscellaneous Topics [±âŸ »çÇ×]
Programming Tips [ÇÁ·Î±×·¡¹Ö ÆÁ]

½ºÅ©¸³Æ® ÀÛ¾÷À» ÇÒ ¶§ÀÇ ¸î °¡Áö ÆÁÀ» ¾Ë·Áµå¸³´Ï´Ù. ÇÁ·Î±×·¡¹ÖÇÏ´Â ¹ýÀº ¾Æ´ÏÁö¸¸, ½ºÅ©¸³Æ®¸¦ ´õ ½±°Ô ¸¸µé°í Å×½ºÆ®ÇÒ ¼ö ÀÖÀ¸¸ç, ³ªÅ¸³¯ ¼ö ÀÖ´Â ¹®Á¦µéÀ» ÇØ°áÇϴµ¥ µµ¿òÀÌ µÇ´Â ¹æ¹ýµéÀÔ´Ï´Ù.

ÆÁ #1 Çѹø¿¡ ÇÑ °¡ÁöÀÇ ±â´É¸¸À» ¸¸µé °Í

Çѹø¿¡ ½ºÅ©¸³Æ®¿¡ ÇѰ¡Áö ±â´É¸¸À» ¸¸µé°í ÃÖ¼ÒÇÑÀÇ ¸ÊÀ» ¸¸µé¾î ±â´ÉÀÌ Á¦´ë·Î ÀÛµ¿ÇÏ´ÂÁö È®ÀÎÇØº¾´Ï´Ù. Àӽ÷Π¡°ÀÛµ¿ÇÏ´Â ¸Ê¡±À» ¸¸µé¾î ƯÁ¤ÇÑ ±â´ÉÀÌ ÀÛµ¿ÇÏ´ÂÁö¸¦ È®ÀÎÇÏ°í ¿Í ±× ±â´ÉÀ» GUI¿¡¼­ ÇÒ´çÇØº¾´Ï´Ù. ±×·¯¸é Å×½ºÆ®¿ëÀ¸·Î ´Ù¿î·ÎµåÇÏ´Â ½Ã°£ÀÌ Àý¾àµÇ¸ç, ¼öÁ¤Çϱ⵵ ½±½À´Ï´Ù.
¸¸µé¾îº» ±â´ÉÀÌ Á¦´ë·Î ÀÛµ¿Çϸé, ½ÇÁ¦·Î »ç¿ëÇÒ ¸Ê¿¡ ºÙ¿©³Ö±â¸¦ ÇØ¼­ ÃÖÁ¾ÀûÀÎ Å×½ºÆ®¸¦ ÇÕ´Ï´Ù.
ÆÁ #2 ½ºÅ©¸³Æ® üũ ¹öưÀ» ±â¾ïÇÒ °Í

½ºÅ©¸³Æ® ÆÄÀÏÀ» ´Ù¿î·ÎµåÇϱâ Àü¿¡ CMS ¿¡µðÅÍ¿¡¼­ Script Check ¹öưÀ» ÀÌ¿ëÇÏ´Â ½À°üÀ» µéÀ̽ʽÿÀ. ±×·¯¸é ¿ÀŸ¿Í ¿ÀÀÛµ¿À» »¡¸® ã¾Æ³¾ ¼ö ÀÖ°í, ½Ã°£°ú ´Ù½Ã ÆíÁýÀÛ¾÷À» ÇØ¾ß ÇÏ´Â ³ë·ÂÀÌ Àý¾àµË´Ï´Ù.

ÆÁ #3 ¸ÊÀ» ½ÇÇàÇϱâ Àü¿¡ ²À ÀúÀåÇÒ °Í

ÀÌ´Â ¹ö±× ¼öÁ¤À» ÇÒ ¶§ ¸Å¿ì Áß¿äÇÑ »çÇ×ÀÔ´Ï´Ù. ¸ÊÀ» ½ÇÇàÇØ¼­ ۰ªÀÌ »êÃâµÇ°Å³ª ¿ÀÀÛµ¿ÀÌ µÇ¸é, ¸ÊÀÌ ¹Ù²î¾î¹ö¸± ¼öµµ ÀÖ½À´Ï´Ù. ÀúÀåÀ» ¸ÕÀú ÇϽʽÿÀ. ±×·¯¸é ¹®Á¦°¡ »ý±â´õ¶óµµ ÀÛ¾÷³»¿ëÀÌ ¸ÁÃÄÁöÁö ¾Ê½À´Ï´Ù.

ÆÁ #4 ¿ì¼± ¡°º¸À̰ԡ± ÇÒ °Í

óÀ½ ¾î¶² ±â´ÉÀ» ¸¸µé ¶§ Æã¼ÇŰ(F1, F2 µî)¿Í °°Àº ¡°º¸ÀÌÁö ¾Ê´Â¡± ۰ªÀ» »ç¿ëÇÏ´Â °ÍÀº ÇÇÇϰí, ±×´ë½Å ¡°a¡±³ª ¡°b¡±Ã³·³ º¸À̴ Ű°ªÀ¸·Î ¸¸µå½Ê½Ã¿À. ¿ÀÀÛµ¿ÀÌ ÀÖÀ» ¶§ ±âº» ۵éÀº Windows ¸Þ´º³ª ±â´ÉÀÌ ½ÇÇàµÇ´Â µîÀÇ ¹®Á¦¸¦ ¹ß»ý½Ãų À§ÇèÀÌ ´õ Àû½À´Ï´Ù.
¶ÇÇÑ Å°°ªÀ» ¸Þ¸ðÀåÀ̳ª ´Ù¸¥ ÅØ½ºÆ® ÆíÁý±â·Î È®ÀÎÇϱ⵵ ½±½À´Ï´Ù. ŰÅ×½ºÆ® À¯Æ¿¸®Æ¼¿¡¼­´Â ۸¦ ´©¸£°í ¶¼´Â °ÍÀÌ º¸ÀÌÁö¸¸, ´Ù¸¥ Windows ÇÁ·Î±×·¥¿¡¼­´Â º¸ÀÏ ¼öµµ ÀÖ°í º¸ÀÌÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù.
¸Þ¸ðÀåÀ» ÀÌ¿ëÇϸé ۰ª ÀÛµ¿»óŸ¦ Àß ¾Ë¾Æº¼ ¼ö À־, °ÔÀÓ¿¡¼­ ¾î¶»°Ô ÀÛµ¿ÇÒÁö¸¦ ´õ Àß È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸Þ¸ðÀå¿¡¼­ ¿øÇÏ´Â ´ë·Î ۰ªÀÌ ³ª¿Â´Ù¸é, ½ºÅ©¸³Æ®·Î µ¹¾Æ°¡¼­ ½ÇÁ¦·Î ¿øÇϴ Ű·Î ¹Ù²Ù¾îÁÖ¸é µË´Ï´Ù.

ÆÁ #5 óÀ½ÀÇ Å×½ºÆ®¿¡´Â Keytest¿Í Test/Calibrate¸¦ ÀÌ¿ëÇÒ °Í

¸ÊÀ» óÀ½ Å×½ºÆ®¸¦ ÇÒ ¶§´Â Test/Calibrate È­¸é°ú Keytest À¯Æ¿¸®Æ¼¸¦ ÀÌ¿ëÇϽʽÿÀ. Ãà, ¹öư, ۰ªÀ» º¸¸é ½ºÅ©¸³Æ®ÀÇ À߸øµÈ ºÎºÐÀ» ½±°Ô ¾Ë ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± À¯Æ¿¸®Æ¼µéÀ» ÀÌ¿ëÇϸé Control Manager¿¡¼­ ºüÁ®³ª°¡¼­ °ÔÀÓÀ» ½ÇÇàÇÏ´Â °Íº¸´Ù ÈξÀ ºü¸¨´Ï´Ù.
ÃÖÁ¾ÀûÀ¸·Î´Â °ÔÀÓ¿¡¼­ Å×½ºÆ®ÇØ¾ß ÇÏÁö¸¸, GUI¿¡¼­ Å×½ºÆ®¸¦ Çϸé Control Manager¿Í °ÔÀÓÀ» ¿Ô´Ù°¬´Ù ÇÏ´Â ¼ö°í¸¦ ´ú ¼ö ÀÖ½À´Ï´Ù. ¿îÀÌ ÁÁ´Ù¸é, ½ÇÁ¦·Î °ÔÀÓ¿¡ µé¾î°¬À» ¶§ ¼öÁ¤ÇÒ »çÇ×ÀÌ º°·Î ¾øÀ» °ÍÀÔ´Ï´Ù.
ÆÁ #6 ½ºÅ©¸³Æ®ÀÇ ¼öÁ¤

Ưº°È÷ ÇÒ ÀÏÀÌ ¾øÀÌ ½ºÅ©¸³Æ®¸¦ ¿­¾ú´Ù¸é, µð¹ö±ëÀÇ Ã¹ ¹øÂ° ±ÔÄ¢ ? ¡°ÇÏ·Á°í Çß¾ú´ø °Í¸¸À» ÇÏ¶ó¡± ? À» ¸í½ÉÇϽʽÿÀ.
CMS´Â ¡°»ý°¢¡±À» ÇÏÁö ¾ÊÀ¸¸ç, ½ºÅ©¸³Æ®¿¡¼­ Áö½ÃÇÑ °Í¸¸À» ½ÇÇàÇÕ´Ï´Ù. CMS¿¡¼­ ¾î¶»°Ô ½ÇÇàµÇ´ÂÁö¸¦ º¸°í, ½ºÅ©¸³Æ®¸¦ º» ÈÄ, ¾îµð¿¡¼­ ¾î¶² ¹®Á¦°¡ ½ÇÇàµÇ´ÂÁö¸¦ È®ÀÎÇØº¸½Ê½Ã¿À. º¸ÅëÀº ÀÛµ¿ÇÏ´Â ºÎºÐÀÇ ½ºÅ©¸³Æ® À§Ä¡¸¦ ã´Â °ÍÀÌ ¾î·ÆÁö ¾ÊÀ¸¸ç, ±× ºÎºÐºÎÅÍ º¸¸é µË´Ï´Ù.

ÆÁ #7 ½ÇÇàµÇ°í ÀÖ´Â À߸øµÈ ½ºÅ©¸³Æ®´Â Á¾·áÇÒ °Í

CMS¿¡¼­´Â ½ºÅ©¸³Æ®¸¦ ¸¸µå´Â °ÍÀÌ °¡´ÉÇϸç, ¸ÊÀÌ ½ÇÇàµÇ°í ÀÖÀ» ¶§¿¡´Â À̰ÍÀÌ ¹®Á¦°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. º¸ÅëÀº ½ºÅ©¸³Æ®¸¦ ´Ý´Â ÀÛµ¿Àº ³ªÅ¸³ªÁö ¾Ê±â ¶§¹®¿¡ ۰¡ ´­·ÁÀÖ´Â »óŰ¡ ¹ß»ýÇÏ´Â °Í Á¤µµ ÀÌ»óÀÇ ¿ÀÀÛµ¿Àº º°·Î ¾øÁö¸¸, ±×°ÍÀÌ ¾à°£ÀÇ ¹®Á¦¸¦ ¹ß»ý½Ãų ¼ö´Â ÀÖ½À´Ï´Ù. ±×·² ¶§¸¦ ´ëºñÇÑ ¾à°£ÀÇ ÆÁÀ» ¸»¾¸ µå¸®ÀÚ¸é:
1. GUI¿¡¼­ ¼öÁ¤ÀÛ¾÷À» Çϰí ÀÖ´Ù¸é, Direct Mode ¹öưÀ» Ŭ¸¯Çؼ­ ¸ÊÀ» ´ÝÀ» ¼ö ÀÖ½À´Ï´Ù.
2. ¾î¶² Ű¿¡ ¹®Á¦°¡ ÀÖ´ÂÁö ¾È´Ù¸é, Űº¸µå·Î ±× ۸¦ ŸÀÌÇÎÇØ¼­ ۰ªÀÇ ¿ÀÀÛµ¿À» ¸ØÃâ ¼ö ÀÖ½À´Ï´Ù.
3. ۰ªÀÇ ¿ÀÀÛµ¿À¸·Î ÀÎÇÏ¿© Windows¿¡ ¹®Á¦°¡ ¹ß»ýÇϸé Á¶±Ý ´õ ¾î·Æ°Ô µË´Ï´Ù. ¸¶¿ì½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù¸é, ¿ª½Ã Direct Mode·Î °¡¼­ ¸ÊÀ» ´ÝÀ» ¼ö ÀÖ½À´Ï´Ù.
۰ª ¿ÀÀÛµ¿À¸·Î ÀÎÇØ¼­ ½Ã½ºÅÛÀÌ ¾î¶² µ¿ÀÛÀ» ÇÑ´Ù¸é ¹®Á¦°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. ÀÏ·Ê·Î TAB ۰¡ ´­·ÁÀÖ´Â »óŰ¡ µÇ¸é, Ä¿¼­°¡ µ¥½ºÅ©Å¾ ÁÖÀ§¸¦ °è¼Ó µ¹°Ô µÇ¸ç, ¸¶¿ì½º¸¦ »ç¿ëÇϱâ Èûµé¾îÁý´Ï´Ù.
±×·± °æ¿ì¿¡´Â, CH USB ÀåÄ¡¸¦ »ÌÀ¸¸é Control Manager°¡ Direct Mode·Î µ¹¾Æ¿É´Ï´Ù. ÀåÄ¡¸¦ »ÌÀ¸¸é ¹®Á¦°¡ ÇØ°áµÉ °ÍÀÔ´Ï´Ù. Mode°¡ ¹Ù²ï ÈÄ¿¡ ÀåÄ¡¸¦ ´Ù½Ã ²ÈÀ» ¼ö ÀÖ½À´Ï´Ù.
¾î¶² ¹®Á¦µéÀº ÇØ°áÇϱâ Èûµé±âµµ ÇÕ´Ï´Ù. ¹®Á¦ ÇØ°áÀÇ ÁÖ¾ÈÁ¡Àº ¾î¶² ¹æ¹ýÀ¸·Îµç Control Manager¸¦ Direct Mode·Î µ¹·Á³õ´Â °ÍÀÔ´Ï´Ù.

ÆÁ #8 ½ÃÀÛ½ÃÀÇ ¹®Á¦ ÇØ°á

Windows ½ÃÀ۽ÿ¡ CMSart À¯Æ¿¸®Æ¼¸¦ ½ÇÇàÇϵµ·Ï ¼³Á¤ÇÏ¿´´Ù¸é, ½ºÅ©¸³Æ® ¼öÁ¤ÀÛ¾÷½Ã¿¡ ¹®Á¦°¡ ÀÖ´Â ¸ÊÀ» ´Ù¿î·ÎµåÇØ³õÁö ¾Êµµ·Ï ÁÖÀÇÇϽʽÿÀ. Windows¸¦ ´Ù½Ã ½ÃÀÛÇÒ ¶§ ¸ÊÀÌ ÀÚµ¿À¸·Î ½ÇÇàµË´Ï´Ù. ±×·¯¸é Windows ½ÃÀÛ°ú µ¿½Ã¿¡ ¹®Á¦°¡ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.
¹°·Ð, CMStart¸¦ ºÒȰ¼ºÈ­½ÃŰ°Å³ª Á¦´ë·Î µÈ ¸ÊÀ» ´Ù¿î·ÎµåÇØ¼­ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù.

½ºÅ©¸³Æ® ¿¹Á¦ #1 Ãà °áÇÕ
ÀÌ Àå¿¡´Â ½ºÅ©¸³Æ® ¿¹Á¦°¡ µé¾îÀÖ½À´Ï´Ù.
¸ðµç °ÍÀ» ´Ù Æ÷ÇÔÇÏÁö´Â ¾ÊÀ¸¸ç ±×´ë·Î »ç¿ëÇϱâ À§ÇÑ °Íµµ ¾Æ´ÏÁö¸¸, ÀڽŸ¸ÀÇ CMS¸¦ ¸¸µå´Âµ¥ µµ¿òÀÌ µÉ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
¿¹Á¦Áß ¾î¶² ºÎºÐµéÀº ÁÖ¼®ÀÌ ´Þ·Á Àֱ⠶§¹®¿¡ ¹®ÀåÀÌ ±é´Ï´Ù. ½±°Ô ÀÐÀ¸·Á¸é, ¸í·ÉÁÙÀÌ ´ÙÀ½ ÁÙ·Î ³Ñ¾î°¡¼­ È¥¶õµÇÁö ¾Ê°Ô²û Help âÀ» ÃÖ´ë·Î ÇϽʽÿÀ.

ÀÌ ¿¹Á¦´Â CMS¸¦ ÀÌ¿ëÇÏ¿© ÀÏÁ¤ÇÑ Á¶°Ç¿¡¼­ ¿©·¯ ÃàµéÀ» ÇϳªÀÇ ÃàÀ¸·Î ¼³Á¤ÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁÝ´Ï´Ù. ÀÌ ¿¹¿¡¼­´Â Åä ºê·¹ÀÌÅ©¸¦ Y Ãà Çϳª·Î °áÇÕÇÕ´Ï´Ù.
ÀÌ ±â´ÉÀº ¾×¼¿·¹ÀÌÅÍ¿Í ºê·¹ÀÌÅ© Æä´ÞÀ» º°µµ·Î Áö¿øÇÏÁö ¾Ê°í ¼¾ÅͰªÀÌ ¾×¼¿°ú ºê·¹ÀÌÅ©ÀÇ ±âº»°ªÀ¸·Î ÁÖ¾îÁö´Â ·¹ÀÌ½Ì ½Ã¹Ä·¹ÀÌÅÍ¿¡¼­ ¾µ¸ð°¡ ÀÖ½À´Ï´Ù.
½ºÅ©¸³Æ®¸¦ ½ÃÀÛÇϱâ Àü¿¡, ¹®Á¦°¡ ¹«¾ùÀÎÁö »ìÆìº¸°í, ÇöÀç »óŸ¦ ÆÄ¾ÇÇϰí, ÇØ°áÇÒ ¹æ¹ýÀ» ãµµ·Ï ÇÕ´Ï´Ù.
ÀÌ ¿¹Á¦¿¡¼­ À¯¿ëÇÑ »ç½ÇÀº ¸ðµç ÃàµéÀº 0¿¡¼­ 255±îÁöÀÇ ¹üÀ§¸¦ °¡Áø´Ù´Â °ÍÀÔ´Ï´Ù. À̰ÍÀº ½ÇÁ¦ ÄÁÆ®·Ñ·¯¿¡¼­»Ó¸¸ ¾Æ´Ï¶ó CMS Controls¸¦ ÅëÇØ Windows·Î º¸³»Áö´Â °ªµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.
¾Ë¾Æ¾ß ÇÒ µÎ ¹øÂ° »ç½ÇÀº, ProPedal¿¡¼­ ¿ÞÂÊ Åä ºê·¹ÀÌÅ©´Â A1 ÃàÀÌ¸ç ¿À¸¥ÂÊ Åä ºê·¹ÀÌÅ©´Â A2 ÃàÀ̶ó´Â °ÍÀÔ´Ï´Ù. Test/Calibration È­¸é¿¡¼­ ÀÌ °ªµé°ú ¹æÇâÀ» ã±â ½¬¿ì¸ç, GUI¿¡µµ ÀåÄ¡ À̸§ÀÌ ³ª¿É´Ï´Ù.
¸¶Áö¸·À¸·Î ¾Ë¾Æ¾ß ÇÒ »çÇ×Àº °ÔÀÓ¿¡¼­ ÇÊ¿äÇÑ µ¿ÀÛÀÔ´Ï´Ù. º¸ÅëÀº 0ÀÌ ÃÖ´ë ½º·ÎƲÀ̰í, 255°¡ ÃÖ´ë ºê·¹ÀÌÅ©, ±×¸®°í 128ÀÌ ½º·ÎƲ°ú ºê·¹ÀÌÅ© ¸ðµÎ ÀÛµ¿ÇÏÁö ¾ÊÀº »óÅÂÀÔ´Ï´Ù. ´Ü, °æ¿ì¿¡ µû¶ó ¹Ù²ð ¼ö ÀÖ½À´Ï´Ù.
¿ä¾àÇÏÀÚ¸é, µÎ°³ÀÇ Åä ºê·¹ÀÌÅ© ÃàÀÌ ÀÖ°í, µÎ ÃàÀº ³õ¾ÒÀ» ¶§ 0°ú ÃÖ´ë·Î ´­·¶À» ¶§ 255ÀÇ °ªÀ» °¡Áý´Ï´Ù. ¿ì¸®°¡ ÇÒ ÀÏÀº ÇϳªÀÇ Æä´ÞÀÌ 0¿¡¼­ 128±îÁöÀÇ °ªÀ» »êÃâÇÏ°í ´Ù¸¥ Æä´Þ¿¡¼­´Â 128¿¡¼­ 255±îÁöÀÇ °ªÀ» »êÃâÇϵµ·Ï ÇÏ´Â °ÍÀÔ´Ï´Ù.
ÀÌ´Â °£´ÜÇÑ »ê¼öÀ̹ǷÎ, ¿ì¸®°¡ ÇÒ Àϵµ °£´ÜÇÕ´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹¹®]

ÀÌ ¿¹¿¡¼­ ¿ì¸®°¡ »ç¿ëÇÒ GUIÀÇ Ã¹ ¹øÂ° Device TabÀÇ Á¶Á¾ ÇÚµéÀÌ JS1À̶ó°í °¡Á¤ÇÕ´Ï´Ù. ±×¸®°í ProPedalÀº GUIÀÇ µÎ ¹øÂ° Device Tab¿¡ ÀÖ°í JS2¶ó°í °¡Á¤ÇÕ´Ï´Ù. »ç¿ëÀÚ ¿©·¯ºÐÀÇ ÀåÄ¡°¡ ÀÌ¿Í ´Ù¸£´Ù¸é, °¢ÀÚ¿¡ ¸Â°Ô ¹Ù²Ù¾îÁÖ¾î¾ß ÇÕ´Ï´Ù. À§ÀÇ °¡Á¤¿¡ µû¸¥ ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°À» °ÍÀÔ´Ï´Ù:
SCRIPT
CMS.A1 = 128 + (JS2.A2/2) - (JS2.A1/2);
ENDSCRIPT

½ÇÁ¦·Î´Â ´Ü ÇÑ ÁÙÂ¥¸® ½ºÅ©¸³Æ®ÀÔ´Ï´Ù. ÀÌ ½ºÅ©¸³Æ®´Â 128ÀÇ ¼¾ÅͰª¿¡¼­ ½ÃÀ۵ǰí, ÇÑÂÊ Àý¹ÝÀº YÃà °ª, ±×¸®°í ´Ù¸¥ ÇÑÂÊ Àý¹ÝÀº X Ãà °ªÀÌ ´õÇØÁý´Ï´Ù.
±×·¡¼­, ¿ì¸®°¡ ¿øÇÏ´Â ´ë·Î ¿À¸¥ÂÊ Åä ºê·¹ÀÌÅ©(A2)¸¦ ´©¸£¸é 128¿¡¼­ 255±îÁö °ªÀÌ ´Ã¾î³ª¸ç, ¿ÞÂÊ Åä ºê·¹ÀÌÅ©(A1)À» ´©¸£¸é ÃÖÃÊÀÇ 128¿¡¼­ 0ÂÊÀ¸·Î °ªÀÌ ÁÙ¾îµì´Ï´Ù.
¸ÊÀ» ¿Ï¼ºÇÏ·Á¸é, GUI¿¡¼­ Ãà ÇÒ´çÀ» ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. YokeÀÇ XÃàÀº CM Device 1ÀÇ XÃàÀ¸·Î ÇÒ´çÇϰí, YokeÀÇ YÃàÀº »ç¿ëÇÏÁö ¾ÊÀ» °ÍÀ̹ǷΠ¡°None¡±À¸·Î ÇÒ´çÇÕ´Ï´Ù. CMS ControlsÀÇ 1¹ø ÃàÀº CM Device 1ÀÇ YÃàÀ¸·Î ÇÒ´çÇÕ´Ï´Ù.


½ºÅ©¸³Æ® ¿¹Á¦ #2 ¸Ê ¸ðµå Á¦¾î

Setting the Mode ºÎºÐ¿¡¼­ ¼³¸íÇÑ ´ë·Î, CMSÀÇ CURRENTMODE º¯¼ö·Î ¸Ê ¸ðµå¸¦ Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¿¹Á¦¿¡¼­´Â FighterStick°ú ProTrottleÀÇ Çϵå¿þ¾î ¸ðµå ½ºÀ§Ä¡Ã³·³ ÀÛµ¿ÇÏ´Â ¸ðµå ¼øÈ¯ ½ºÀ§Ä¡¸¦ ¸¸µé °ÍÀÔ´Ï´Ù.
¿©±â¼­ ¿ÀÁ÷ Áß¿äÇÑ »ç½Ç ÇѰ¡Áö´Â ¼¼ ¸ðµå¸¦ ¼øÈ¯Çϱâ À§Çؼ­ CURRENTMODE º¯¼ö¸¦ 0,1,2, ±×¸®°í ´Ù½Ã 0À¸·Î µ¹·Á¾ß ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù.
ÀÌ ¿¹¿¡¼­´Â ³»ºÎ ¾Æ³¯·Î±× º¯¼öÁßÀÇ ÇϳªÀÎ A1À» »ç¿ëÇØ¼­ ¼³Á¤ÇϰíÀÚ ÇÏ´Â ¸ðµå¸¦ ±â¾ïÇϰԲû ÇÒ °ÍÀÔ´Ï´Ù. º¯¼ö´Â ¹öưÀ» Çѹø ´©¸¦ ¶§¸¶´Ù Áõ°¡Çϸç, º¯¼ö°¡ 2¸¦ ³ÑÀ» ¶§´Â 0À¸·Î ÃʱâÈ­µË´Ï´Ù. WAIT() ±â´ÉÀ» ÀÌ¿ëÇÏ¸é ¹öưÀ» Ŭ¸¯ÇÒ ¶§±îÁö °úÁ¤À» ¸ØÃâ ¼ö ÀÖÀ¸¹Ç·Î À̸¦ À§ÇØ ¼ø¿­ÀÌ °¡Àå ½¬¿î ¹æ¹ýÀ̶ó°í »ý°¢µË´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹¹®]

ÀÌ ¸Ê¿¡¼­´Â, ¸Ê¿¡¼­ CombatStick¸¸ ÀνÄÇÏ°í ±× ÀåÄ¡ÀÇ Button 2¸¦ ¸ðµå º¯°æ ¹öưÀ¸·Î ¾´´Ù°í °¡Á¤ÇÕ´Ï´Ù. ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°ÀÌ µÉ °ÍÀÔ´Ï´Ù:
SCRIPT
SEQUENCE
WAIT( JS1.B2 ); // Wait here until JS1.B2 clicks
A1 = A1 + 1; // Add 1 to our Mode counter
IF( [ A1 > 2 ] ) THEN // If the value is over 2 then
A1 = 0; // set it to 0
ENDIF
CURRENTMODE = A1; // Now copy it to CURRENTMODE
ENDSEQUENCE
ENDSCRIPT

JS1.B2¸¦ Çѹø Ŭ¸¯ÇÒ ¶§¸¶´Ù A1ÀÌ 1¾¿ Áõ°¡ÇÕ´Ï´Ù. A1ÀÌ 2¸¦ ³ÑÀ¸¸é, ´Ù½Ã 0ÀÌ µË´Ï´Ù. ±×·¯¸é °ªÀº 0, 1, 2, 0, 1, 2 µîÀ¸·Î ¼øÈ¯µË´Ï´Ù. ±×·³À¸·Î½á ÀǵµÇß´ø ´ë·Î ¼¼ ¸ðµå°¡ ¼øÈ¯µË´Ï´Ù. CM Device ÃàÀ̳ª ¹öưÀ» Á¦¾îÇÏ´Â °ÍÀº ¾Æ´Ï¹Ç·Î, ¸Ê°ú Ãæµ¹ÀÌ ÀϾÁö ¾Êµµ·Ï CombatStickÀÇ Button 2¸¦ »©°í´Â GUI¿¡¼­ ¡°None¡±À¸·Î ÇÒ´çÇϵµ·Ï ÇÕ´Ï´Ù.



½ºÅ©¸³Æ® ¿¹Á¦ #3 Æ®¸² Áöµ¿ Á¶Á¤

ÀÌ ¿¹Á¦´Â ÀÚµ¿ Æ®¸²Á¶Á¤ ±â´ÉÀÔ´Ï´Ù. ¿¹Á¦»ó¿¡¼­, Á÷¼± ¼öÆòºñÇàÀ» ÇÒ ¶§±îÁö Á¶À̽ºÆ½À» ¿òÁ÷ÀÔ´Ï´Ù. ±× ½ÃÁ¡¿¡¼­ ±× À§Ä¡·Î ÃàÀ» °íÁ¤ÇÏ´Â ¹öưÀ» ´©¸¨´Ï´Ù. ¹öưÀ» ´©¸£°í ÀÖÀ¸¸é¼­ Á¶À̽ºÆ½À» Áß¾ÓÀ¸·Î ¿øÀ§Ä¡ ½ÃŰ°í ¹öưÀ» ¶Á´Ï´Ù.
±×·¯¸é Á¶À̽ºÆ½ÀÌ Áß¾Ó¿¡ ÀÖÀ» ¶§ÀÇ Æ®¸² ¼³Á¤ÀÌ À¯ÁöµÇ¸ç, Á¶À̽ºÆ½À» ¿òÁ÷ÀÌ¸é ±×ÂÊÀ¸·Î ¿òÁ÷ÀÓÀÌ ÁÖ¾îÁý´Ï´Ù. Æ®¸²À» ÃʱâÈ­ÇÏ·Á¸é, Á¶À̽ºÆ½À» Áß¾Ó¿¡ ³õÀº ä·Î ±× ¹öưÀ» ´Ù½Ã ´©¸¨´Ï´Ù.
ÀÌ ¿ª½Ã °£´ÜÇÑ »ê¼ö¹®Á¦ÀÔ´Ï´Ù. ¿øÇÏ´Â Æ®¸² À§Ä¡ÀÇ °ªÀ» ã°í, ±× ´ÙÀ½¿¡´Â ±× °ª°ú Á¶À̽ºÆ½ÀÌ Áß¾Ó¿¡ ÀÖÀ» ¶§ÀÇ °ª°úÀÇ Â÷À̸¦ °è»êÇÕ´Ï´Ù.
ÀÌ Â÷À̰¡ ÆÄ¾ÇµÇ¸é ½ÇÁ¦ Á¶À̽ºÆ½ °ª¿¡ ÀÌ ¼öÄ¡¸¦ Ãß°¡ÇÏ¿© ¡°Æ®¸² Á¶Á¤µÈ¡± °ªÀ» ¸¸µé¾î³À´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹Á¦]

ÀÌ ¿¹Á¦¿¡¼­´Â ¸Ê¿¡¼­ CombatStick ÇѰ¡Áö¸¸ JS1·Î ÀνÄÇϰí, CombatStickÀÇ Button 2¸¦ ¡°Æ®¸²¡± ¹öưÀ¸·Î »ç¿ëÇÑ´Ù°í °¡Á¤ÇÕ´Ï´Ù.
½ºÅ©¸³Æ®´Â µÎ ´Ü°èÀÇ °úÁ¤À¸·Î µÇ¾îÀÖ½À´Ï´Ù. óÀ½¿¡´Â Button 2¸¦ ´­·¶À» ¶§ÀÇ Æ®¸²°ªÀ» °è»êÇϰí, ±× ´ÙÀ½¿¡´Â Button 2°¡ ÇØÁ¦µÇ¸é Æ®¸²°ªÀ» Àû¿ëÇÕ´Ï´Ù. XÃà°ú YÃàÀÇ Æ®¸²°ª Â÷À̸¦ ±â¾ïÇϵµ·Ï °¢°¢ ³»ºÎ º¯¼ö A1°ú A2¸¦ ÀÌ¿ëÇÒ °ÍÀÔ´Ï´Ù.
Á¶À̽ºÆ½ÀÇ Æ®¸²°ªÀº °è¼Ó ¾÷µ¥ÀÌÆ®ÇÏ¿© ¹öưÀÌ ÇØÁ¦µÇ¾îÀÖ´Â µ¿¾È °è¼Ó Àû¿ëµÇµµ·Ï ÇÕ´Ï´Ù. ¹Ý¸é, óÀ½ ¹öưÀ» Ŭ¸¯ÇßÀ» ¶§¸¸ Æ®¸²°ª Â÷À̸¦ °è»êÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
¾ÕÀÇ »çÇ×À» À§Çؼ­´Â IF/ENDIF ºí·ÏÀÌ Àû´çÇϰí, µÚÀÇ »çÇ׿¡´Â SEQUENCE°¡ Àû´çÇÕ´Ï´Ù.
½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°ÀÌ µÉ °ÍÀÔ´Ï´Ù:

SCRIPT
IF( NOT JS1.B2 ) THEN // If Button 2 is released then
CMS.A1 = JS1.A1 + A1; // add the X offset to the stick X value
CMS.A2 = JS1.A2 + A2; // and add the Y offset to the stick Y value
ENDIF
SEQUENCE
WAIT( JS1.B2 ); // Wait until Button 2 clicks
A1 = JS1.A1 - 128; // Calculate the X offset and save it in A1
A2 = JS1.A2 - 128; // Calculate the Y offset and save it in A2
ENDSEQUENCE
ENDSCRIPT

GUI¿¡¼­ ¸î °¡Áö ÀåÄ¡ ÇÒ´çÀ» ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. ¿ì¼±, CombatStickÀÇ X¿Í YÃàÀº °ü°è ¾øÀ¸¹Ç·Î ¡°None¡±À¸·Î ¹Ù²ß´Ï´Ù. ±× ´ÙÀ½, CMS.A1°ú CMS.A2ÀÇ °ªÀ» CM Device 1ÀÇ XÃà°ú YÃà¿¡ ÇÒ´çÇÏ¿© Windows¿¡¼­ ¼öÁ¤µÈ °ªÀÌ Àû¿ëµÇµµ·Ï ÇÕ´Ï´Ù.


½ºÅ©¸³Æ® ¿¹Á¦ #4 »çÀü º¯¼ö ÁöÁ¤

ÀÌ ¿¹Á¦¿¡¼­´Â ½ºÅ©¸³Æ®¸¦ óÀ½ ½ÇÇàÇÒ ¶§ ¾î¶² º¯¼ö¸¦ ƯÁ¤ÇÑ °ªÀ¸·Î ¼³Á¤ÇÏ´Â ÇѰ¡Áö ¹æ¹ýÀ» ¼³¸íÇÕ´Ï´Ù. º¸ÅëÀº, óÀ½ ½ºÅ©¸³Æ®°¡ ½ÃÀÛµÉ ¶§´Â ½ºÅ©¸³Æ®¿¡¼­ ¾²´Â ¾Æ³¯·Î±× °ªÀº 0À¸·Î, ¸ðµç ºñÆ® º¯¼öµéÀº FLASE·Î ¼³Á¤µË´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì¿¡´Â ÀÌ´ë·Î µÎ¾îµµ ÁÁÁö¸¸, ´Ù¸¥ °ªÀÌ ÇÊ¿äÇÒ ¶§µµ ÀÖ½À´Ï´Ù.
ÇѰ¡Áö ¿¹´Â ½º·ÎƲÀ» Á¶Á¤ÇÒ ¶§ÀÔ´Ï´Ù. 0°ªÀº ¡°ÃÖ´ë ½º·ÎƲ¡±À̸ç, ½ºÅ©¸³Æ®°¡ óÀ½ ½ÃÀÛµÉ ¶§ °©ÀÚ±â ÃÖ´ë ½º·ÎƲ »óŰ¡ µÇ´Â °ÍÀº ÁÁÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù.
¿©±â¼­ÀÇ ÇѰ¡Áö ¹æ¹ýÀº ½ºÅ©¸³Æ®°¡ óÀ½ ÁøÇàµÇ´ÂÁö ¾Æ´ÑÁö¸¦ ¾Ë°Ô²û ÇÏ´Â °ÍÀÔ´Ï´Ù. ´ÙÇàÈ÷µµ, ÀÌ´Â ±×¸® ¾î·ÆÁö ¾Ê½À´Ï´Ù. ¿ì¸®´Â ¸ÊÀÌ Ã³À½ ½ÃÀÛµÉ ¶§ ³»ºÎ ¾Æ³¯·Î±× º¯¼öµéÀº 0À¸·Î, ºñÆ® º¯¼öµéÀº FLASE·Î ¼³Á¤µÈ´Ù´Â °ÍÀ» ¾Ë°í ÀÖ½À´Ï´Ù.
µû¶ó¼­ ³»ºÎ ºñÆ® º¯¼ö·Î ¡°Ã³À½ ÁøÇࡱÀÌ Ç¥½ÃµÇ´Â ³»ºÎ ºñÆ® º¯¼ö¸¦ ¼±ÅÃÇÏ¸é µË´Ï´Ù. ºñÆ® º¯¼ö°¡ FALSEÀ̸é, ¸ÊÀÌ ÃʱâÈ­µÈ µÚ óÀ½ ½ÇÇà°úÁ¤¿¡ ÀÖ´Â °ÍÀ̰í À̶§ ¿øÇÏ´Â º¯¼ö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×¸®°í ³­ ÈÄ¿¡´Â ¿ì¸®°¡ ¼±ÅÃÇÑ ºñÆ® º¯¼ö¸¦ TRUE·Î ¸¸µé°í ÀÌÈÄ °è¼Ó ±× °ªÀ» TRUE·Î ³²°ÜµÎ¸é µË´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹¹®]

ÀÌ ¿¹¹®¿¡¼­´Â Æ®¸² ÀÚµ¿ Á¶Á¤ ¿¹Á¦¿¡¼­¿Í Á¶°ÇÀÌ °°´Ù°í °¡Á¤ÇÕ´Ï´Ù. ¿ì¸®°¡ ¸¸µé °ÍÀº ¸ÊÀÌ ½ÃÀÛµÉ ¶§ CMS.A1°ú CMS.A2°¡ Áß¾Ó¿¡ ÀÖµµ·Ï ÇÏ´Â °ÍÀÔ´Ï´Ù. ³»ºÎ ºñÆ® º¯¼ö B1À» ¡°ÃÖÃÊ ½ÇÇࡱ Ç¥½Ã·Î »ç¿ëÇÒ °ÍÀ̸ç, ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù:
SCRIPT
IF( NOT B1 ) THEN // If our first pass flag is false then
B1 = TRUE; // set flag TRUE so it won't run again
CMS.A1 = 128; // force the values in CMS.A1 and
CMS.A2 = 128; // CMS.A2 to 128.
ENDIF
ENDSCRIPT


ÀÌ ¿¹Á¦¿¡¼­´Â, CMS.A1°ú CMS.A2¿¡ ÇÊ¿äÇÑ °ÍÀ» Á¦¿ÜÇϸé GUI¿¡ ¾Æ¹«°Íµµ ÇÒ´çÇÏÁö ¾Ê½À´Ï´Ù.



½ºÅ©¸³Æ® ¿¹Á¦ #5 º¹¼ö ۰ª Àü¼Û

¹öư Çϳª¸¦ ´­·¯¼­ ¿©·¯ °³ÀÇ Å°°ª ¹®ÀåÀ» º¸³»¾ß ÇÒ ¶§µµ ÀÖ½À´Ï´Ù. Çѹø ´©¸¦ ¶§¸¶´Ù ´ÙÀ½¹ø ¹®ÀåÀÌ Àü¼ÛµË´Ï´Ù. GUI¿¡¼­´Â ÀÌ·± ±â´ÉÀ» ¸¸µé ¼ö ¾øÁö¸¸, CMS¿¡¼­´Â È®½ÇÈ÷ °¡´ÉÇÕ´Ï´Ù.
ÀÌ ¿¹Á¦¿¡¼­´Â °£´ÜÈ÷ CMS ControlsÀÇ ¸î¸î ¹öưÀ¸·Î °¢°¢ÀÇ ¹öưÀ¸·Î ÇØ´çÇÏ´Â ¹®ÀåµéÀ» GUI¸¦ ÀÌ¿ëÇÏ¿© Àü¼ÛÇϵµ·Ï ÇÁ·Î±×·¡¹Ö ÇÕ´Ï´Ù. ½ºÅ©¸³Æ®´Â Á¤È®ÇÑ ¹öưÀ» ´­·¶À» ¶§ ¹®ÀåµéÀ» ¼øÈ¯ÇÕ´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹Á¦]

¸î °¡ÁöÀÇ ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. °¡Àå °£´ÜÇÑ ¹æ¹ýÀº ¼ø¿­À» ÀÌ¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ¸Ê¿¡¼­ CombatStick Çϳª¸¸À» JS1À¸·Î »ç¿ëÇϰí Button 2¸¦ ¸Þ½ÃÁö ¼øÈ¯¿¡ ¾´´Ù°í °¡Á¤ÇÕ´Ï´Ù.
¶ÇÇÑ, 4°³ÀÇ ¸Þ½ÃÁö°¡ ÀÖ°í À̸¦ CMS.B1¿¡¼­ºÎÅÍ CMS.B4±îÁö¿¡ Àû¿ë½ÃŲ´Ù°í °¡Á¤ÇÕ´Ï´Ù ±×·¯¸é ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù:
SCRIPT
SEQUENCE
WAIT(JS1.B2); // Wait the first click
CMS.B1 = TRUE; // Press CMS Controls Button 1
WAIT(JS1.B2); // Wait for the next click
CMS.B1 = FALSE; // Release CMS Control Button 1
CMS.B2 = TRUE; // Press CMS Controls Button 2
WAIT(JS1.B2); // Wait for the next click
CMS.B2 = FALSE; // Release CMS Control Button 2
CMS.B3 = TRUE; // Press CMS Controls Button 3
WAIT(JS1.B2); // Wait for the next click
CMS.B3 = FALSE; // Release CMS Control Button 3
CMS.B4 = TRUE; // Press CMS Controls Button 4
WAIT(JS1.B2); // Wait for the next click
CMS.B4 = FALSE; // Release CMS Control Button 4
ENDSEQUENCE
ENDSCRIPT

¶Ç ´Ù¸¥ ¹æ¹ýÀ¸·Î¼­ SELECT ±â´ÉÀ» »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù. SELECT´Â ³»ºÎ ¾Æ³¯·Î±× º¯¼öÁßÀÇ Çϳª·Î Á¦¾îµÇ¸ç, ÀÌ °ªÀ» JS1.B2·Î Á¦¾îÇÕ´Ï´Ù.
¿ì¼± ¹öưÀÌ Å¬¸¯µÇ±â¸¦ ±â´Ù¸®°í, ±× ´ÙÀ½ »õ °ªÀ» ¼³Á¤ÇÕ´Ï´Ù. SELECT ±¸¹®À¸·Î ÀÌ·¯ÇÑ °úÁ¤À» ¸¸µé ¼ö ÀÖ°í, °¢°¢ÀÇ °æ¿ì¿¡ CMS.BxÁßÀÇ Çϳª¸¦ Ãâ·ÂÇÏ¿© ¹®ÀåÀÌ »êÃâµË´Ï´Ù.
ÀÌ´Â ´ÙÀ½°ú °°ÀÌ ¸¸µé¸é µË´Ï´Ù:
SCRIPT
SEQUENCE
WAIT( JS1.B2 ); // Wait until Button 2 is pressed
A1 = A1 + 1; // Increment our message counter
IF( [ A1 > 3 ] ) THEN // If A1 is over three then
A1 = 0; // Reset A1 to 0
ENDIF
ENDSEQUENCE

SELECT( A1, POSITION ) OF
CASE 0:
CMS.B1 = TRUE; // Set the bit for our first message
EXITCASE:
CMS.B1 =