
æã
圌ãã¯ç§ã«å°ããŸã-ã©ããã£ãŠãšãã¥ã¬ãŒã¿ãæžãã®ã§ããïŒ å€±æããã³ã³ãœãŒã«ã®äŸã§çããããšããŸãã
ãšãã¥ã¬ãŒã·ã§ã³ã¯ã»ãšãã©ç¡éã®ã¿ã¹ã¯ã§ãããäžæ£ç¢ºãã¯åžžã«æ®ããŸãã3DOãšãã¥ã¬ãŒã·ã§ã³ã«ã©ãã ãè²»ãããããšèãããããè©ãããããŸããã3DOãšãã¥ã¬ãŒã·ã§ã³ã§ãã¹ãŠãéåžžã«è¯ãããšã¯ç¢ºãã§ãã ããã§ãæ°ããç ç²è
ãèŠã€ããæãæ¥ãŸããããããŠãããã¯ã¢ã¿ãªã»ãžã£ã¬ãŒã§ããããšã倿ããŸããã 1000æé-
ãã§ããã¯ã¹ãããžã§ã¯ãã§ãã®ã³ã³ãœãŒã«ããšãã¥ã¬ãŒãããããã®ã«ãŒãã«ã®éçºã«ã»ãŒå€ãã®æéãè²»ãããçŸåšã®95ïŒ
ãã99ïŒ
ã«äºææ§ãäžããã«ã¯ããããããã«å€ãã®æéãããããæ®ãã®1ïŒ
ã«ã¯å¥ã®ããããã1000æéã§ã¯ãªãããããããããã¯ãã§ã«åŸ®åŠãªã°ãªããã®ãããã°ã«é¢ããå¥ã®éå±ãªè©±ã§ãã

ãªããžã£ã¬ãŒãªã®ãïŒ ãŸããæ¢åã®ãšãã¥ã¬ãŒã¿ãŒã§ã¯ãšãã¥ã¬ãŒããäžååã§ããã 第äºã«ãããã¯ãããææžåããããŠãã
ããã®ãããã®ä»æ§ãåè·¯å³ããããŠ
HDLã³ãŒããã
ãããŸã ïŒ
æåã®æ®µéã¯ãæµã«é¢ããæ
å ±ã®åéã§ãïŒ300æéïŒ
以äžã®ç»åã¯ããæ°ã«å
¥ãã®ã²ãŒã ã³ã³ãœãŒã«ã®ãšãã¥ã¬ãŒã¿ãŒãäœæããããã«å¿
èŠãªäž»èŠæ
å ±ãåéããããã®ç°¡ç¥åãããã¢ã¯ã·ã§ã³ãã©ã³ã瀺ããŠããŸãã

ã芧ã®ããã«ããã®æ®µéã¯åžžã«ãgoogleããšããèšèã«éå®ããããã®ã§ã¯ãªããæ¬æ Œçã§æãéèŠãªéçºæ®µéã§ãããããã¯ç ç©¶å
šäœã§ãã ãã°ãŒã°ã«ãã«ã€ããŠã¯ããŸããã³ã³ãœãŒã«ã®ãµãã·ã¹ãã ã®ç¹èš±ããããã®ããŒãã³ã°ã®ããŒã¿ã·ãŒããæ€çŽ¢ããã³ã³ãœãŒã«ã®æè¡é¢ã«é¢é£ãããªãœãŒã¹ã®æ
å ±ãèªãããšããå§ãããŸãã ããã«ãèŠã€ãã£ããã®ã«åºã¥ããŠãèšç»ã«åŸã£ãŠããŒã¿åéã«çŠç¹ãåœãŠãŸãã
誰ãããå¥ã®ç¥èæº-ä»ã®äººã
ã®ãããžã§ã¯ã-ãããããšãæ£ããææããŠããŸãã ãããžã§ã¯ãã«åå ãããå Žåãããã¯æ£ããèãã§ãããããã§ãªãå Žåãå°ãªããšãä»ã®äººã®ééããç¹°ãè¿ããªãããã«ãå°ãªããšãããªãèªèº«ã®ãªãªãŒã¹ãŸã§ããã®ãããªæ
å ±æºã«äŸåããããšã¯ãå§ãããŸããã ãžã£ã¬ãŒã®å Žåã
ä»®æ³ãžã£ã¬ãŒãããžã§ã¯ãããããŸãããããæ¹åãããã£ãã®ãèŠããŠããŸãã
ãã³ãŒãèªäœãèŠããšããã«ãã®ã¢ã€ãã¢ãç Žæ£ããŸã
ã ã
åè·¯ã®åãå€ãã¯ãèŠçŽ ã®åäœã¢ãŒããã¿ã€ã€ãããã³ããã¥ã¡ã³ããèŠã€ããããšãã§ããªãã£ããããã®çµè«ã®å°ãªããšãäžéšã®ç®çã«é¢ããæçšãªæ
å ±ã«ãªãå¯èœæ§ããããããæåã«å¿
ãå®è¡ããå¿
èŠãããã¿ã¹ã¯ã§ãã å¯èœã§ããã°ãåè·¯åºæ¿ã®ã³ã³ãã¥ãŒã¿ãŒæå±€æ®åœ±ãè¡ãããšãã§ããŸãããå€ãã³ã³ãœãŒã«ã«ã¯éåžž2ã€ã®å±€ãããããã€ã€ã«ã§åè·¯å³ãäœæããã«ã¯åçŽãªãã«ãã¡ãŒã¿ãŒã§ååã§ãã
ãšãã¥ã¬ãŒãããããã©ãããã©ãŒã
çšã®ãœãããŠã§ã¢ã®æ€çŽ¢ã¯ãå°æ¥ãšãã¥ã¬ãŒãããããœãããŠã§ã¢èªäœïŒãã³ã-BIOSãROMãISOïŒãšããã®ãã©ãããã©ãŒã çšã®éçºããŒã«ã®äž¡æ¹ã察象ãšããŠããŸãã åŸè
ã¯ãèŠçŽ ããŒã¹ã®å
éšæ§é ãç¹å®ããã®ã«åœ¹ç«ã€ãã¹ããäœæããããã«ç¹ã«éèŠã§ããããã«ããããã®ãã¹ãã®çµæã¯å°æ¥åœ¹ç«ã€å¯èœæ§ããããå°æ¥ã®ãšãã¥ã¬ãŒã¿ãå®éã®ããŒããŠã§ã¢ã«æºæ ããŠãããã©ããã確èªã§ããŸãã å€ãã®å Žåãå
ã®SDKã¯ææ°ã®OSãšäºææ§ããªãããããããã®SDKãææ°ã®ã³ã³ãã€ã©ã«é©åãããããå€ãPCãšãã¥ã¬ãŒã¿ãŒã䜿çšããŠãã¹ããèšè¿°ããå¿
èŠããããŸãã éçºããŒã«ãæ¬åœã«æªãå Žåã¯ãç¬èªã®ã¢ã»ã³ãã©ãŒããŸãã¯åçŽãªã³ã³ãã€ã©ãŒãäœæããããšãæå³ããããŸãã ç§ãä¿¡ããŠãéçºããŒã«ã®æºåã¯å°æ¥äœåãå ±ãããã§ããããããã¯å€ãã®æéãç¯çŽããã®ã«åœ¹ç«ã¡ãŸãã
ãã³ãã«ã€ããŠã¯ã誰ãã以åã«äœæããããšããªãå ŽåãROMãååŸããããã®æãç°¡åãªæ¹æ³ã¯ãããããã¯ãã ä»ãããã«ããã°ã©ãã§ãã®å
容ãèªã¿åãããšã§ããããè€éã§ããããããã°ã€ã³ã¿ãŒãã§ã€ã¹ãŸãã¯äœãä»ããŠã³ã³ãœãŒã«ãã³ã³ãã¥ãŒã¿ã«æ¥ç¶ããæ¹æ³ãèŠã€ããããšã§ãããã€ãã®æ¡åŒµããŒãã䜿çšããŠãPCãšããŒã¿ã亀æããããã®ç¹å¥ãªããã°ã©ã ãäœæããŸãã ããšãã°ã3DOã§ARMããã»ããµã®JTAGã«æ¥ç¶ããŠROMããã³ãããã³ã³ãœãŒã«ã®ãã¡ã¯ããªãããã°ããŒãã«ãæ¥ç¶ããŠã³ãŒããå®è¡ããŸããããã®ãããã³ã³ãããŒã©ãŒãšFPGAãåããå°ããªããã€ã¹ãäœæããå¿
èŠããããŸããã
å
çŽ ããŒã¹ã®æ±ºå®ã¯ããã®æ®µéã®ã¿ã¹ã¯ã®äžã§æãéèŠã§ãã ãã¹ãŠã®ã³ã³ããŒãã³ãã«ã€ããŠååãªè©³çްãªããã¥ã¡ã³ããèŠã€ããããšãã§ããå Žåããã¹ãŠãæ£åžžã§ããããšãã¥ã¬ãŒã¿ã®äœæãéå§ã§ããŸãããäž»èŠãªã³ã³ããŒãã³ãã®äžã§å®éã®ãã©ãã¯ããã¯ã¹ã«ééããå Žåã¯ã©ãã§ããããã ããã€ãã®ãªãã·ã§ã³ããããŸãã ããªãã¯é¡ã§è¡åããããšãã§ããŸãïŒã¹ãã«ãæéããéãèš±ãã°ïŒ-ããã¯ããããéãããšãèšãæããã°-ãããå
šäœãé¡åŸ®é¡ã§æ®åœ±ããããã€ã¹åè·¯ã埩å
ããããšã§ãã ç§ã¯ãã®ãããªããšããã£ãããšã¯ãããŸããããããããŠåŸãããæ
å ±ã®åŠçãèªååããå¿èåãŸãã¯æèœãããã°ãããã¯win-winãœãªã¥ãŒã·ã§ã³ã§ãã
ããããžã«å¿ããŠããã©ãã¯ããã¯ã¹ã®ã€ã³ãµãŒããããã¹ããšãªããµãŒããããã¹ããé©çšãŸãã¯çµã¿åãããããšãã§ããŸãã ã©ã¡ãã®å Žåããããžã¿ã«ä¿¡å·ã¢ãã©ã€ã¶ãŒãšãªã·ãã¹ã³ãŒãã¯é©åãªå Žæã«é
眮ãããŸãã ã€ã³ãµãŒããããã¹ããæãŸãããšé«éã§ãããã®ã¢ãããŒãã§ã¯ãã³ã³ãœãŒã«å
ã§ç®çã®ããã€ã¹ããã¹ãããç¹å¥ãªã³ãŒããèšè¿°ããŸãã SDKã®ããŒã¿ãŸãã¯ãã®ä»ã®èæ
®äºé
ã«åºã¥ããŠãããªããã»ããµããã¹ãããŠããå Žåãã¬ãžã¹ã¿ã«æžã蟌ãããã®ããŸããŸãªãªãã·ã§ã³ãäœæããç»é¢äžã®çµæãåæããŠãçºçããäžæãšé
å»¶ãä¿®æ£ããŸãã
ããšãã°ãäžå€®åŠçè£
眮ãšçŽæ¥é£åããªãå Žåãªã©ãã€ã³ãµãŒããããã¹ãã«åºã¥ããŠã³ã³ããŒãã³ãã®åäœã倿ããããšãé£ããå ŽåããããŸãã ãã®å ŽåããªããµãŒããããã¹ããå®è¡ããã®ãåççã§ãããã®ãããPCã«æ¥ç¶ããããã®ç¹å¥ãªããªã³ãåè·¯åºæ¿ãäœæãããã¹ãæžã¿ã®ããããããã«è»¢éããŠãããä¿¡å·ãå
¥åã«éä¿¡ããŠåºåãèªã¿åããŸãããããã¯ãã¹ãŠããªãã®ç²Ÿç¥çèœåã«äŸåããŸãã å¯äžã®ããšã¯ããã®è¶
å°ååè·¯ã®ã©ãã§ã©ã®ãããªå
¥åãšåºåãæ£ç¢ºã«ç¥ãå¿
èŠããããšããããšã§ããããã¯ãã³ã³ããŒãã³ãã®çžäºæ¥ç¶ã«ãã£ãŠãç¹ã«æ·±å»ãªå Žåã¯ãã©ãã¯ãåæããããšã«ãã£ãŠéšåçã«æ±ºå®ã§ããŸãïŒèãäžããããšã¯ãå§ãããŸãã-å£ããŸãïŒã ããºã«ãè§£ããå Žåããããèªäœã亀æããå¿
èŠã¯ãããŸããããæçµçã«çµè«ãæ£ããããšãæçµçã«ç¢ºèªããããã«ãšãã¥ã¬ãŒã·ã§ã³ãFPGAã«æ¥ç¶ããããšã¯ç°¡åãªæé ã§ã¯ãããŸããããFPGAã«ãã¬ãã£ãã¯ã¹ãä»ãããå Žåã¯-ããªãã¯ãã§ã«å·ã€ããŠããŸãã
ãžã£ã¬ãŒã¯ã©ãã§ããïŒ ç§ãèšã£ãããã«ã
ããã ã仿§ãåè·¯å³ã«ã¯ãœãŒã¹
HDLã³ãŒãããããŸã ã ãã¡ãããåäœãããã¬ãã£ãã¯ã¹ã欲ããã®ã§ãããäžèšã®ãã¹ãŠãæã£ãŠããã®ã§ããããªãã§å®å
šã«å®è¡ã§ãããšèšã£ãŠãå®å
šã§ãã ãããã£ãŠãç§ã¯ããã«ããã¥ã¡ã³ããå°å·äŒç€Ÿã«æã¡èŸŒã¿ãŸããã
- ãã¯ãã«ã«ãªãã¡ã¬ã³ã¹ããã¥ã¢ã«ãã ãšãžã§ãªãŒ ïŒãããã¯æåãªæŒ«ç»ã®ããŒããŒã§ã¯ãããŸããããã³ã³ãœãŒã«ã®ã¡ã€ã³ãããã¯ãäžè¬çãª3DOã¹ã¿ã€ã«ãããã«èŠãããšãã§ããŸããã¢ã¿ãªïŒ;
- Motoroll M68000 Famalyããã°ã©ããŒãºãªãã¡ã¬ã³ã¹ããã¥ã¢ã« -ã³ã³ãœãŒã«ã®CPUã«é¢ããããã¥ã¡ã³ãã
- ãã¬ãã£ãã¯ã¹ã®æŠç¥å³ -äœãäœãšã©ã®ããã«çžäºäœçšããããçè§£ããããšã¯éåžžã«éèŠã§ãã
ãã¡ãããããã¯ãã¹ãŠã®ããã¥ã¡ã³ãã§ã¯ãããŸããããäž»èŠéšåã®ã¿ã§ã.EEPROMãã¯ã©ãŒããªã©ã®ããããçš®é¡ã®å°ããªãã®ã®ããŒã¿ã·ãŒããæ¢ãå¿
èŠããããŸãããã©ã€ãã³ã³ãœãŒã«ãšã«ãŒããªããžããªãç¶æ
ã§ãããã®åçãå®éã«èŠã€ããé»åéšåã«ããŒã¯ãä»ããŠæ€çŽ¢ããå¿
èŠããããŸããã
ããããHDLã³ãŒãã¯ã¯ã©ãã¯ããã®ãéåžžã«é£ããããšãããããŸããã æ±èã®ããŸãç¥ãããŠããªãHDLã§æžãããŠãããçŸä»£ã®VerilogãŸãã¯VHDLã«é¢é£ããŠãC ++ã«é¢é£ããŠã¢ã»ã³ãã©ãŒã«äŒŒãŠããã100åã®ãã¡ã€ã«ã«æ£ãã°ã£ãŠãããã³ã³ããŒãã³ãã念é ã«çœ®ãããšã¯ã§ããŸããïŒå°ãªããšãç§ã«ãšã£ãŠïŒã ãã®ã³ãŒããããç§ã¯ahem ... "book"ãäœæããå¿
èŠããããŸãã-ããã§ã¯-翻蚳è
ãæžããŸãããïŒ
ã³ãŒããgithubã«é
眮ããŸã ïŒçªç¶ã誰ã§ãå¿
èŠã§ãïŒããã³ãŒãã¯1åã®äœ¿çšã«å¿
èŠã ã£ããããVirtual Jaguarã®äœæè
ããäŸãåãäžãã蚱容å¯èœãªçµæãââæçæéã§éæããããšã«ã®ã¿çŠç¹ãåœãŠãããšã«æ±ºããŸãã-ã€ãŸãããã®ã³ãŒãã¯éåžžã«çè§£ãã«ããã§ãã
æ±èã®HDLã¯ãæ§æãç·©ãéåžžã«ç¹æ®ãªèšèªã§ããããšã倿ããŸãããããšãã°ããã®äžã®åè·¯ã®èšè¿°ã¯ç·©ãã§ãã ååè·¯ã®ãããæ·±åºŠã¯ããã¹ãŠã®ã¢ãžã¥ãŒã«ããªã³ã¯ããŠåè§£ããããšã«ãã£ãŠã®ã¿æããã«ãªãããã§ããããããã§ãŒã³ã®ãããæ·±åºŠãšå¹
ãæ±ºå®ããããã«ã倿°ã®ãã¥ãŒãªã¹ãã£ãã¯ãèšè¿°ããå¿
èŠããããŸããã ããããåè·¯ã®ãããæ·±åºŠãã³ã³ããã¹ããã確ç«ã§ããªãã£ãå€ç«ããã±ãŒã¹ããŸã ãã£ãããããã®åè·¯ã¯åäžã§ãããšä»®å®ããŸããïŒããã¯æ£åœåãããŸããïŒã ç°¡åãªäŸã瀺ããŸãã
DEF ND2 (z:OUT; a,b:IN);
ãã®èŠçŽ ã¯éåžžã«ç°ãªãæ¹æ³ã§äœ¿çšã§ããŸãã
// : label := ND2 (z, a, b); label := ND2 (z[2], a[0..1]); //a[0..1] â label := ND2 (z[2], a[0-1]); // label := ND2 (z[1], a{5}, b[2]); //{} - // : label[0-4] := ND2 (z[0-4], a{9-13}, b); // b , label[0-4] := ND2 (z[0-4], a{9-13}, b[9-13]); // label[0..4] := ND2 (z[0..4], a{9..13}, b[9..13]); // label[0..4] := ND2 (z[0..4], a[0..4], b[0-7]); // b 8- label[0-4] := ND2 (z[0-4], a[0-4], b[0..7]); //
ãã®å
šäœã®åç©åã¯ãããšãã°ããã§ãŒã³zãaãŸãã¯bãã©ããã§å®£èšããå¿
èŠããªããæåã«äœ¿çšãããšãã«å®£èšããããšèŠãªããããã§ãŒã³ã®æã«ç©Žãããå ŽåããããŸããããšãã°ãz [0..5]ããã³z [10..12]-zããªãããšã¯æ£åžžã§ã[6..9]ãFPGAã®åã
ã®ä¿¡å·ã®ã¬ãã«ã§ãã¹ãŠãå£ããŠæé©åãããŠããå Žåãã³ã³ãã€ã«ã«ãšã£ãŠç¢ºãã«éèŠã§ã¯ãããŸããããå©çšå¯èœãªãã¹ãŠã®æ§é æ
å ±ãä¿åããå¥ã®ã¿ã¹ã¯ããããŸãããããã£ãŠãåè§£ã«ã¯èå³ããããŸããã ãããéåžžã®ããã°ã©ã ã³ãŒãã§ã¯ãªãããŒããŠã§ã¢èšè¿°èšèªã§ãããšããäºå®ã¯ãç«ã«å°ãæ²¹ã远å ããããããã¹ãŠã®ãããã¯ã䞊è¡ããŠå®è¡ãããã³ãŒãå
ã®é åºã¯å®å
šã«éèŠã§ã¯ãªãããã翻蚳è
ã¯ãªã³ã¯ãå¥ã®æç« ã§åæããå¿
èŠããããŸãã
åå¥è§£æåšããã³æ§æè§£æåšã®éçºã®æåŸã«ããã¹ãŠã®ãã§ãŒã³ãçµ±åããããšãã«ãã³ãŒãããäžçš®ã®æ¬ãäœæãããã€ãŸãããã䟿å©ãªãã¬ãŒã³ããŒã·ã§ã³ã«å€æããæãæ¥ãŸããã ãããè¡ãã«ã¯ãã³ãŒãã®ãããã¯ã«ãããããã€ã³ãããŠã³ã¡ã³ããæœåºããå¿
èŠããããäžããé ã«ãã¹ãŠã®ã¢ãžã¥ãŒã«ããã¹ãããŸãããããããã¯ã®æ¥ç¶ã¬ãã«ã§ãã§ãŒã³ãé£çµããã³åè§£ããããããå®å
šãªã€ã³ã©ã€ã³ãäœæããããšã¯åžžã«å¯èœã§ã¯ãããŸããã§ããããã®ãããªå Žåããšãã°ãæ¥ç¶ããããå«ããå¿
èŠããããŸããã
R1count := R1COUNT( count[0..5] = reghalf @ sysr1[0..4],
ããããã¹ãŠã®ã¡ã«ããºã ã®æºåãæŽã£ãããããšãã°ãND2ïŒzãaãbïŒãz <=ãïŒaïŒbïŒã«çœ®ãæãããªã©ãçµæã®ãæžç±ãã®èªã¿ããããæ¹åããå¿
èŠããããŸããã çŽ100åã®ããªããã£ããäœæãããæ©èœããªããããã¯ãåé€ãããæçµçã«ãšãã¥ã¬ãŒã·ã§ã³èªäœãéå§ããããšãã§ããŸããïŒ
äœããããŸããïŒ 5ããã»ããµã®ã·ã¹ãã ïŒOB-ãããªDACãžã®ããŒã¿ã®æºåãšäŸçµŠãæäŸãDSP-ãµãŠã³ããæ
åœãGPU-ã°ã©ãã£ãã¯ã·ãŒã³ã®æ§ç¯ãæ
åœãBlitter-ããªãŽã³ã®å¡ãã€ã¶ããæ
åœãm68k-ãã®ãã¹ãŠã®çµæžãå¶åŸ¡ïŒãããã®ããã»ããµã«ã¯å
±éã®ã¡ã¢ãªç©ºéãããããããã£ãŠãå®è³ªçã«å¶éãªãã«äºãã®I / Oã¬ãžã¹ã¿ã«æžã蟌ãããšãã§ããŸããã€ãŸãããã®æ··ä¹±ãæé©åããããšã¯å°é£ã§ãã
2çªç®ã®æ®µéã¯ãä»®æ³ãã©ãããã©ãŒã ã®äœæïŒ500æéïŒã§ãã
Phoenixãããžã§ã¯ãã¯ããšããšãã«ããã©ãããã©ãŒã ãšãã¥ã¬ãŒã¿ãŒãšããŠèšèšãããŸãããããã¯ãé床ã®å®è¡ãæ£åœã§ããããšã倿ããå Žåã«ãŸãã«åœãŠã¯ãŸããŸãã åãã©ãããã©ãŒã ã¯ãåºæ¬ãã©ãããã©ãŒã ã®ã¯ã©ã¹ããç¶æ¿ãããããã€ã¹ã®åºæ¬ã¯ã©ã¹ããç¶æ¿ãããèŠçŽ ãããªãŒæ§é ã§äœæããã³æ§æããããšã«ãã圢æãããŸãã ã€ãŸããC ++èšèªã®OOPæ©èœã䜿çšãããŸãã ã»ãšãã©ã®ãšãã¥ã¬ãŒã¿ãŒã¯ã¹ã¿ã€ã«Cã§èšè¿°ãããŠãããç§ã®æèŠã§ã¯ãéçºããã»ã¹ãéåžžã«è€éã«ãªã£ãŠããŸãã åºæ¬ã¯ã©ã¹ã¯ããããã¬ãŒãå«ããšãã¥ã¬ãŒã¿ãŒã®ããã³ããšã³ããžã®çµ±åã¢ã¯ã»ã¹ãæäŸããŸãã

ãã©ãããã©ãŒã ã¯ã©ã¹ã§ã¯ãéåžžãã³ã³ãœãŒã«ã¡ã¢ãªã«ãŒããå®è£
ãããã®ãã¹ãŠã®ã³ã³ããŒãã³ããæ¥ç¶ããŸãã ããã€ã¹ã®ã¯ã©ã¹ã§ã¯ããã®æ©èœããšãã¥ã¬ãŒããããä¿åããã倿°ãšãããã¬ãŒã®ãã©ãŒããããæžã蟌ãŸããŸãããŸããããã€ã¹ãããã»ããµãŒã§ããå Žå-
åè§£ããã³ãããã°æ©èœãå®è£
ãããŠããå Žåããšãã¥ã¬ãŒããããåœä»€ã誀ã£ãŠå®è£
ãããŠãããããã¬ãŒã¯ãšã©ãŒã®æ€çŽ¢ã倧å¹
ã«ç°¡çŽ åããããã
ããã«
ãããè¡ãããšããå§ãããŸã
ãŸãããã³ãããŒããŒã«ã€ããŠãèšåããå¿
èŠããããŸãããã®ã¿ã¹ã¯ã¯ããã³ãã®æ£åœæ§ã確èªãããšãã¥ã¬ãŒã¿ã§äœ¿çšããã圢åŒã«å€æããããšã確èªããããšãšããã£ã¹ã¯äžã®ã¹ãã¬ãŒãžã®åœ¢åŒã«äŸåããªããã§ãã¯ãµã ãæœåºããããšã§ãã ãã§ãã¯ãµã ã¯ãã²ãŒã ãã¬ã€ã®ä¿åãšã®ãŠããŒã¯ãªæ¥ç¶ãããã³åé¡ã®ããã²ãŒã ã§ã®æŸèæã®äœ¿çšãšãã2ã€ã®ããšã«å¿
èŠã§ãã ããšãã°ããžã£ã¬ãŒ
ã®ã¢ããã¥ã¢éçºã®äžéšã¯ å®éã®ããŒããŠã§ã¢ã§
ãã¹ããããããšã¯ãªã ãäžéšã®ãšãã¥ã¬ãŒã¿ãŒã§åäœããã®ã¯ãããã®ãšãã¥ã¬ãŒã¿ãŒã§ã®ã¿ãã¹ããããŠããããã§ãããããã£ãŠããšãã¥ã¬ãŒã¿ãŒãäœæãããšãã¯æ³šæããŠãã ããããŸãã¯èªæžã
ãã®ããããã©ãããã©ãŒã ã®ã¹ã±ãããçè§£ããããšã¯ãããå€ã®ä»äºã§ããããã®åŸãäž»ãªäœæ¥ãå§ãŸããŸã...
CPU M68000
ç§ãã¡ã®äžå€®åŠçè£
眮ã¯åœæéåžžã«äººæ°ã®ããM68000ã§ããããããžã§ã¯ãã³ãŒããéãå¿
èŠã®ãªãé©åãªã©ã€ã»ã³ã¹ããã£ãŠããéåžžã«åªããããã¥ã¡ã³ããšéåžžã«å€ãã®æ¢è£œã®ãšãã¥ã¬ãŒã¿ãåããŠããŸãã ããããç§ã«ãšã£ãŠã¯ãæäœæ¥ã§æžãããæ°ããããã»ããµãŒã¯ãã³ã¬ã¯ã¿ãŒã®ãããªãã®ã§ããæ°ãããŠããŒã¯ãªãã®ãªã®ã§ãä»ã®èª°ããé£ããŠè¡ãããšã¯ãããŸãããç§ãã¡ãç¬èªã«äœæããŸããããã«ã
æåããã«ã¯ãããã»ããµãŒããçè§£ãããå¿
èŠããããŸãã圌èªèº«ã§ã
ããã»ããµãšãã¥ã¬ãŒã¿ã¯ã©ã®ããã«æžãããŠããŸããïŒ ãã ããç¶ãã䟡å€ã®ããæãåçŽãªããŒãžã§ã³ã§ã¯ããããã¯æ®éã®éèš³ãšããŠæžãããŠããŸãã PCã®ã¢ãã¬ã¹ã§ã³ãã³ããèªã¿åãïŒã¬ãžã¹ã¿ãŒã¯åœä»€ã«ãŠã³ã¿ãŒïŒããã®ã¿ã€ããå€å¥ããå®éã®ããã»ããµãŒã§å®è¡ããå¿
èŠãããã¬ãžã¹ã¿ãŒã§ã¢ã¯ã·ã§ã³ãå®è¡ããŸãã å²ã蟌ã¿åŠçã¯ãå€éšããã€ã¹ã¯ã©ã¹ããæž¡ãããåŒã³åºãããªã²ãŒãã®åœ¢åŒã§å®è£
ã§ããŸãã
ããã«ããããçš®é¡ã®ã¯ãŒã«ãªæé©åãè¡ãã¹ãã§ã¯ãããŸãããã³ãŒããäžæçã«ãªããããããã©ãŒãã³ã¹ã®äœäžã«ãããŠãŒã¶ãŒãããããæãããšããŠããéçºã®æåŸã«æé©åããæ¹ãè¯ãããã§ãã
ã³ãã³ãã€ã³ã¿ãŒããªã¿ãŒãšéã¢ã»ã³ãã©ãŒãäœæããåŸãçµæã®ããã»ããµãŒããã¹ãããã®ãçã«ããªã£ãŠããŸããããã§ãå©çšå¯èœãªãšã¯ã¹ããªãšã³ã¹ã掻çšã§ããŸãã å€ãã®æ¢è£œã®ãã¹ãããããŸã-ééããªãããããå®è¡ããŠãåœä»€ã®å®è£
ã®ãšã©ãŒãèŠã€ããŠãã ããã ããªããéãæã£ãŠãããªããããªã
ã¯ééããªãããªãã®ãã¹ããæžãã¹ãã§ããããããç§ã¯CD-iã®ããã«ãåæ§ã®ããã»ããµãšã»ãšãã©ã®åœä»€ãäžèŽãããã®ã§ãããã ãã¹ãã¯å°æ¥éåžžã«éèŠã§ããæé©åãå®è¡ããäœãå£ããŠããªãããšã確èªããå¿
èŠããããšããŸãããã
ããªã¿ãŒ
ãã®ããªãããŒãªããšã¯ããžã£ã¬ãŒã§ããªãŽã³ãããæ£ç¢ºã«ã¯ãããªãŽã³ã®ã¹ãã£ã³ã©ã€ã³ãæç»ããŸãããŸããåè§åœ¢ãå¡ãã€ã¶ããç»é¢ã®å¹³é¢ã§ããããå転ãããã·ã§ãŒãã£ã³ã°ãè¡ããZãããã¡ãŒãæäœããæ¹æ³ãç¥ã£ãŠããŸãã ç§ãå§ããã®ã¯ãã®éšåã§ãããæ®å¿µãªããããŒããŠã§ã¢ãªãã§å¥å
šãªãã¹ããè¡ãããšã¯ã§ããŸããã§ããããHDLã³ãŒãã®ååšã¯æ¬åœã«åœ¹ç«ã¡ãŸããã å®éãCã«äŒŒããã®ã³ãŒãã®ãã©ã³ã¹ã¬ãŒã¿ãŒããã§ã«äœæããŠãããããç°ãªããããã¯ãåæããªãããå¿
èŠã«å¿ããŠãã³ãŒããšå
ã®HDLã³ãŒããæ¯èŒãããã¹ããè¡ãããšãã§ããŸããã ããšãã°ãHDLãããŒããã£ã¹ãã®ã³ãŒãã¯æ¬¡ã®ãšããã§ãã
lowen <= width[4] | width[5]; ya[0] <= lowen ? 0 : {ytm[2],ytm[1],ytm[0],0}[width[2..3]]; ya[1] <= lowen ? 0 : {ytm[3],ytm[2],ytm[1],ytm[0]}[width[2..3]]; ya[2] <= width[5] ? 0 : {ytm[4],ytm[3],ytm[2],ytm[1],ytm[0],0,0,0}[width[2..4]]; ya[3] <= width[5] ? 0 : {ytm[5],ytm[4],ytm[3],ytm[2],ytm[1],ytm[0],0,0}[width[2..4]]; ya[4] <= width[5] ? 0 : {ytm[6],ytm[5],ytm[4],ytm[3],ytm[2],ytm[1],ytm[0],0}[width[2..4]]; ya[5] <= width[5] ? 0 : {ytm[7],ytm[6],ytm[5],ytm[4],ytm[3],ytm[2],ytm[1],ytm[0]}[width[2..4]]; ya[6] <= {ytm[8],ytm[7],ytm[6],ytm[5],ytm[4],ytm[3],ytm[2],ytm[1],ytm[0],0,0,0,0,0,0,0}[width[2..5]]; ya[7] <= {ytm[9],ytm[8],ytm[7],ytm[6],ytm[5],ytm[4],ytm[3],ytm[2],ytm[1],ytm[0],0,0,0,0,0,0}[width[2..5]]; ya[8] <= {ytm[10],ytm[9],ytm[8],ytm[7],ytm[6],ytm[5],ytm[4],ytm[3],ytm[2],ytm[1],ytm[0],0,0,0,0,0}[width[2..5]]; ya[9] <= {ytm[11],ytm[10],ytm[9],ytm[8],ytm[7],ytm[6],ytm[5],ytm[4],ytm[3],ytm[2],ytm[1],ytm[0],0,0,0,0}[width[2..5]]; ya[10] <= {ytm[12],ytm[11],ytm[10],ytm[9],ytm[8],ytm[7],ytm[6],ytm[5],ytm[4],ytm[3],ytm[2],ytm[1],0,0,0,0}[width[2..5]]; ya[11] <= {ytm[13],ytm[12],ytm[11],ytm[10],ytm[9],ytm[8],ytm[7],ytm[6],ytm[5],ytm[4],ytm[3],ytm[2],0,0,0,0}[width[2..5]]; ya[12] <= {ytm[14],ytm[13],ytm[12],ytm[11],ytm[10],ytm[9],ytm[8],ytm[7],ytm[6],ytm[5],ytm[4],ytm[3],0,0,0,0}[width[2..5]]; ya[13] <= {0,ytm[14],ytm[13],ytm[12],ytm[11],ytm[10],ytm[9],ytm[8],ytm[7],ytm[6],ytm[5],ytm[4],0,0,0,0}[width[2..5]]; ya[14] <= {0,0,ytm[14],ytm[13],ytm[12],ytm[11],ytm[10],ytm[9],ytm[8],ytm[7],ytm[6],ytm[5],0,0,0,0}[width[2..5]]; ya[15] <= {0,0,0,ytm[14],ytm[13],ytm[12],ytm[11],ytm[10],ytm[9],ytm[8],ytm[7],ytm[6],0,0,0,0}[width[2..5]];
ãããŠãããã¯C ++ã§æ©èœããåçç©ã§ãã
int ya=0; if(width<48) { if((width>>2)<2)ya=ytm>>(2-(width>>2)); else if((width>>2)>2)ya=ytm<<((width>>2)-2); else ya=ytm; ya&=0xffffff; }
æ¯èŒãã¹ãã«ãããTomïŒJerryã®ãã¹ãŠã®ã³ã³ããŒãã³ããæ§ç¯ããããšãå¯èœã«ãªããŸããããæåã®æäœã§æäœæ§ãæåŸ
ãããŸããããã¡ãããå®çŸããŸããã§ããããèãããããšã©ãŒã®æ°ã¯æ ¹æ¬çã«åæžãããŸããã
ããç§ã«èãããŸã-Jaguarã3DOã§ãã£ãã®ãšåãããšãããããšã¯å¯èœã§ããïŒããŒããŠã§ã¢ã¯ä»»æã®è§£å床ã§ã¬ã³ããªã³ã°ããŸããïŒ ç°¡åãªçãã¯ããŒã§ãã ãã ããGPUã³ãŒããéã³ã³ãã€ã«ãããšãããããåã²ãŒã ã§åå¥ã«å¯èœã§ãããã®çç±ã¯ãããªãã¿ãŒãç·ã§æç»ãããç·ããã®ããªãŽã³ãGPUããã°ã©ã ã«ãã£ãŠåœ¢æãããåã²ãŒã ã«åºæã§ãããæ®å¿µãªãããGPUã¯ã¹ããŒã¹ã«å®å
šã«ã¢ã¯ã»ã¹ã§ããæ¬æ ŒçãªRISCããã»ããµãŒã§ãã³ã³ãœãŒã«ã¡ã¢ãªãã·ã§ãŒããŒå
ã«ã¯å®è£
ã§ããŸããã
2äººã®æ¥œããå人GPUãšDSP
圌ãã¯æ¬åœã«é¢çœãã§ã-圌ãã¯éåžžã«å€ãã®ããŒããŠã§ã¢ãšã©ãŒãæã£ãŠããŸãïŒ ãããŠããããã¯éåžžã«äŒŒãŠãããããã€ãã®æç€ºãç°ãªãã ãã§ãã ãããã£ãŠã1ã€ã®ããã»ããµãããå Žåãå¥ã®ããã»ããµããããŸãã ããã§ã®ããã»ã¹ã¯ãã£ãšæ¥œããã£ãã§ãããªããªããç§ã¯ãã§ã«ããªãã¿ãŒã«ä¹ã£ãŠããŠãHDLãããã¯ã®äžéšãäžèŽããŠãããããäœæ¥ãå°ãªããªããŸããã
Jaguarã®æãäžå¿«ãªããŒããŠã§ã¢ãšã©ãŒã®äž»ãªåå ã¯ã
ã¹ã³ã¢ããŒããããã¯ã§ãããããã¯ãããçš®ã®ã¹ãŒããŒã¹ã«ã©ãŒæ§ã®åå ã§ãããããèŠããšããããããçè§£ããããšãããããã«é¢é£ããåé¡ããããã°æ®µéã«å»¶æããçç±ããããã§ãããã ãã®ã³ãŒãã¯ã³ã³ãœãŒã«ã®äœè
ã«ãšã£ãŠã¯é£ããããã§ãããã§äœãèµ·ãã£ãŠããã®ããçè§£ããã®ã¯ããªãé£ããã§ããããã®ç®çã¯éåžžã«æç¢ºã§ããã1ãã1ãç¹°ãè¿ãã ãã§ééããç¹°ãè¿ãããšãã§ããåœç¶ããšãã¥ã¬ãŒã·ã§ã³é床ãèŽåœçã«äœäžããŸãã ããšãã°ãLOADåœä»€ã¯ãåãã¬ãžã¹ã¿ã«æžãèŸŒãæ¬¡ã®åœä»€ã®å®è¡åŸã«ãå®å
ã¬ãžã¹ã¿ã®å
容ãäžæžãã§ããŸãã ãŸããäž»ãªå¥è·¡ã¯ããã¥ã¡ã³ãã«èšèŒãããŠããŸãããèšèŒãããŠããªãå¥è·¡ãèŠã€ããããšãã§ããŸããã äžè¬ã«ãã«ãŒã«ã®ãªãåœä»€ã®ã¬ãŒã¹ã¯ãžã£ã¬ãŒã«ãšã£ãŠæ®éã§ãã
ããã»ããµãæ±ãå Žå
ãããã¥ã¡ã³ãã«
èšèŒãããŠãããããæ£ç¢ºã«ç®è¡ãµãã·ã¹ãã ã®ãã¹ãŠã®ãã©ã°ã®èšç®ãæ£ç¢ºã«åçŸããããšã
éåžžã«éèŠã§ãã ãæåããŸããããäºææ§ã«ãã©ã¹ã®åœ±é¿ãäžããŸããããããã©ãŒãã³ã¹ã倧å¹
ã«äœäžããŸããã å®éããããã®ããã»ããµã®ALUãšã·ãããŠãããã¯åžžã«ãã©ã°ã圢æããŸãã ïŒããã¥ã¢ã«ã«ãããšïŒæªå®çŸ©ã®ãã©ã°ç¶æ
ã®åœä»€ã«ã€ããŠã¯ããã©ã°ã®åœ¢æãé€ããŠããµãã·ã¹ãã ãçµæã䜿çšããªãããã«ããå¿
èŠããããŸãã ã¯ããã¯ãµã€ã¯ã«ããšã«1ã€ã®åœä»€ãæã€26 + MHzã®åšæ³¢æ°ãšåæ§ã®ãªãŒããŒããããæã€2ã€ã®ããã»ããµ-ããã¯ããã©ãŒãã³ã¹ã«å€§ããªææãäžããŸãããäºææ§ãæãéèŠã§ãïŒ
ãªããžã§ã¯ãããã»ããµïŒOBïŒ
ãã®ãã«ãŒãã¯éåžžã«çãããã®ã§ãDACã®ã¹ãã£ã³ã©ã€ã³ãæç»ããã ãã§ãªããã¹ãã©ã€ããã¹ã±ãŒãªã³ã°ããŠãããã®ã©ã€ã³ã«æžã蟌ãããšãã§ããŸãããŸããGPUãèµ·åããããšãã§ããŸããé çªã«ããªããžã§ã¯ãããã»ããµã«å²ã蟌ã¿ãéä¿¡ããå¿
èŠããããŸãããªããžã§ã¯ãããã»ããµã¯ãã©ã€ã³ãæç»ããGPUãèµ·åãç¶ããå¿
èŠããããŸãã
ãã®ãããã¯ã¯ãããããæãè€éãªã¹ããŒããã·ã³ã§ããããšãããããã®ãããªãã®ã
ã¹ã±ããããããšã
ãå§ãã ãŸã ã å°ãªããšãæ°çŸè¡ã®ãªããã³ãŒããããæç¢ºã«ãªããŸãã

äžè¬çã«ãå埩å¯èœãªã¢ã«ãŽãªãºã ã®ã¹ã±ããã«å€§éã®çŽã䜿ããã¡ã¢ãèšç»ã仮説ãªã¹ãã«ããã€ãã®ããŒããè²»ãããŸããã 圌ããèšãããã«-
æªãéçã¯è¯ãã¡ã¢ãª ïŒã³ã³ãã¥ãŒã¿ãå«ãïŒ
ãããåªããŠããŸã ã
ç¬¬äžæ®µé-ã«ããã ã·ã®ç©ãïŒ200æéïŒ
ãã®ããããã¹ãŠã®ãããã¯ã¯æºåãã§ããŠçµã¿ç«ãŠãããŠããŸãããããŒãã£ãŒã®æ³åã«ããã°ã圌ãã¯åããããããŸãã ããªãã¯ç²Ÿç¥çã«ããã«åããŠããªãã®ã§ãé»ãç»é¢ã芳å¯ããããã¢ãŒãã£ãã¡ã¯ãããŸã ãã«ãªã£ããããã®ã¯ãŸã äžå¿«ã§ãã ãã ãã䟿å©ãªãããã¬ãŒãäœæããã®ãé¢åã§ã¯ãªãå Žåã¯ãæåã®åœä»€ã§å€§éã®ãšã©ãŒã衚瀺ãããããšãããã«ããããŸãã äœæããŠããªãå Žåã¯ãéçºç°å¢ã®ãããã¬ãŒãšprintfã䜿çšããŠãããã°ã§ããŸããããããã¬ãŒã®äœæã¯ã¯ããã«ç°¡åã§ãã

éã¢ã»ã³ãã©ãŒãšåçŽãªã³ã³ãœãŒã«åºå以å€ã«äœã䜿çšããŸããïŒ ããšãã°ãã©ã®ãµãã·ã¹ãã ããã®ã¡ã¢ãªé åã«æžã蟌ãã ããç¹ã«5ã€ã®ãžã£ã¬ãŒããã»ããµã瀺ããœãŒã¹ãããã¯ã誰ããããã£åã§ãããã远跡ããã®ã«éåžžã«åœ¹ç«ã¡ãŸããïŒå€ãã®å ŽåãBlitterã§ããïŒã
ãããã¬ãŒã§ã®å®è¡ãèªã¿åãããŸãã¯æžã蟌ã¿ã®ããã®åçŽãªãã¬ãŒã¯ãã€ã³ãã«å ããŠãã³ãŒããããªã³ããã³ãã®äžæåæ¢æ©èœãå®è£
ãããšäŸ¿å©ã§ããããšãã°ãGPUãŸãã¯DSPãå
éšã¡ã¢ãªãè¶
ããŠãããã©ããã確èªããããã§ããã°ãã·ã£ããããŠã³ããŠãããã¬ãŒã«å¶åŸ¡ã転éããŸãã ãããã£ãŠãããšãã°ããžã£ã¬ãŒã§é倧ãªããŒããŠã§ã¢ãšã©ãŒãç¹å®ããŸããã åãæ¿ããã³ã¯ã䜿çšããŠãã©ã°ã¬ãžã¹ã¿ã«ãšã³ããªãäœæãããå Žåãæ¬¡ã®åœä»€ãã¬ãžã¹ã¿ã®å
容ãèªã¿åãå Žåãå®éã®ããŒããŠã§ã¢ã§ã¯å€ããã³ã¯ããã®ãã®ã§ããå¿
èŠããããŸãã ãã®ãšã©ãŒãå®è£
ããå¿
èŠããããŸãããããããªããšãWolfenshtainãšå€ãã®ã²ãŒã ãæ©èœããŸããã§ããã ã¯ãããšãã¥ã¬ãŒã·ã§ã³ã§ã¯ãæ©èœã ãã§ãªããã°ãå®è£
ããå¿
èŠããããŸãïŒ

圌ãã¯å€ãã®ãšã©ãŒãä¿®æ£ãããã¹ãŠãæ©èœããŠããããã«èŠããŸããïŒ ããããããã¯çµããã§ã¯ãªããããã¯ç©ãã®å§ãŸãã«éããŸããïŒ æ¬¡ã«ãå©çšå¯èœãªãã¹ãŠã®æ¹æ³ã§ãã¹ãŠã®å©çšå¯èœãªã²ãŒã ã®ãã¹ããéå§ããå¿
èŠããããŸãïŒ ãããŠããã§ã®äž»ãªããšã¯ããšã©ãŒãèŠã€ããããšã ãã§ãªããåå ãç°¡åã«èŠã€ããããããã«ãšã©ãŒãåçŸå¯èœã«ããããšã§ããããŸãã ãã©ãŒã©ã ã®ã¡ã³ããŒã¯ãããæäŒã£ãŠãããŸããå€ãã²ãŒã ããã¬ã€ããã®ã¯æ¥œããã§ããã100ã²ãŒã ã ãããã¹ãããã®ã¯éåžžã«é£ããã®ã§ããšãŠãæè¬ããŠããŸãã
çµè«ãšããŠ
ãšãã¥ã¬ãŒã¿ã®ããã©ãŒãã³ã¹ãåäžãããããã®åºæ¬çãªãã¯ããã¯ã«ã€ããŠå°ãã話ããŸãã
- ååŠç åå©çšãããããŒã¿ïŒäž»ã«ãã¯ã¹ãã£ãŒïŒãããå ŽåãæãåŠçããããªãã·ã§ã³ãåå©çšã®ããã«èŠããŠä¿åããã®ã¯çã«ããªã£ãŠããŸãã
- ã€ã³ã¿ãŒããã¯æ€åº ã ããã»ããµãç¹å®ã®ã€ãã³ããäºæããŠãããšå€æã§ããå Žåãã€ãã³ããçºçããåã«ãã®åœä»€ããšãã¥ã¬ãŒãããå¿
èŠã¯ãããŸããã
- ã©ã³ã¿ã€ã éåå ã ãã£ãã·ã¥ã®èгç¹ããã¯ãè€æ°ã®ã³ãŒããå³å¯ã«é çªã«äœåºŠãå®è¡ããããããè€æ°ã®ã³ãŒããããããäœåºŠãå®è¡ããæ¹ãé©åã§ãã ã€ãŸããå¯èœã§ããã°ããã¹ãŠã®ããã€ã¹ããšãã¥ã¬ãŒãããã®ã§ã¯ãªããã¡ãžã£ãŒã®å¯èœãªéãæå€§ã®éšåã§åããã€ã¹ãå®è¡ããããšããå§ãããŸãã
- åã³ã³ãã€ã« ã åã³ã³ãã€ã«ã¯åçã§ãéçã§ãããŸããŸããã éçã¯æéã§ããããšãã¥ã¬ãŒããããããã€ã¹ã³ãŒãã®çš®é¡ãå°ãªãå Žåã«ã®ã¿å¯èœã§ãã ããšãã°ã3DO SDKã®DSPã³ãŒãã«ã¯æ°çŸã®ããŒã«ããããããéåžžã¯éçåã³ã³ãã€ã«ãå®è¡ããŸããéåžžãCPUã³ãŒãã¯å€æ§ããããããããã§ã¯åçåã³ã³ãã€ã«ãå¿
èŠã§ãã
- ãµãã·ã¹ãã ã®äžŠåãšãã¥ã¬ãŒã·ã§ã³ ã ããã¯äºææ§ãæãªãããšãªãåžžã«å¯èœã§ãããšã¯éããŸãããå€ããã«ãããã»ããµã·ã¹ãã ã¯ãæãä¿¡é Œæ§ã®é«ãåææè¡ã䜿çšããŠããªãããšãå€ãããšãã¥ã¬ãŒã·ã§ã³ã¹ããªãŒã ã®éåæã¯ããªãŒãºããã®ä»ã®ãšãã¥ã¬ãŒã·ã§ã³ãšã©ãŒã«ã€ãªããå¯èœæ§ãããããã®ä¿®æ£ã«ãããã«ãã¹ã¬ããã«ããã²ã€ã³ãå®å
šã«ç¡å¹ã«ã§ããããã§ãã
ãšãã¥ã¬ãŒã¿ãŒãæ£åžžã«äœæããã«ã¯ãæçµçã«äœãå¿
èŠã§ããïŒ æ£ç¢ºæ§ãšå¿èåã«ã¯ç¹å¥ãªãã®ã¯ãªããšæããŸããã¹ãã«ã¯ã¹ãã«ãšãšãã«çºéããŸãã ç¹å¥ã§éæ³çãªæ¹æ³ã¯ãããŸããã