*************************************************** * * * Eternal SPU Plugin v.1.41 * * Official Manual * * * *************************************************** What's new? v.1.40 -> v.1.41 (31 May, 2003) ------------------------------------------------------------------------ * SPUt@CL^SPUAL^t@CC * VC^tF[XSPUplayCDDAchannel()̃oOC * XAobt@I[o/A_[t[̉ASYύX * ̑AׂoOC What's new? v.1.30 -> v.1.40 (17 May, 2003) ------------------------------------------------------------------------ * LinuxEternal SPU Plugint@[Xg[XB * I[fBIfoCX̒ljB SDL (Simple DirectMedia Layer)WaveMapperWindowsɒlj܂B LinuxłłSDLOSST|[gĂ܂B * Oނ̃o[u^CvljB("Freeverb","Iori's","Neill's") "Neill's"Neill Corlett̉͌ʂɊÂĂAPS@ɌȂ ߂GtFNg|邱Ƃł܂BNeill CorlettɊӂ܂B * mCYG~[V̉ǁB ܂Őmł͂ȂmCYG~[Vɋߕt܂B łقڊmȎȂĂƎv܂B * sb`W[VǁB ̃\tgŖ̂sb`W[VC܂B łقڊmȎȂĂƎv܂B * fR[hꂽXADMAǏoɑΉBTales of Destinỹx[^ 悤ɂȂB * "ׂpfBEX"KONAMĨ\tgŐĂ CB * X̃obt@ӂꎞ̑Ώ@CBGȂȂƎv܂B * "Record"@\VB VSPUt@CɌ݊͂܂AVSPUt@Cł̓WX^݁E ǏoADMA݁EǏoAXAECDDAXg[L^ł܂B * "Cache VAG decode"IvVljB łA݊ႢƂĂ܂Bۂɖ N\tg{mFĂ邽߁A{@\̎gp͂߂܂B * o[ũ~LVO@CB * "Update before accessing register"̊DF`FbNݒp~B * SPUasync - SmoothCB "Update before accessing register"Ɠɐݒ肵Ă삷悤 Ȃ܂B * ̑AyȃoOCB * PSXG~[^J҂ւ̏ : CDDAXg[Đ̌݊グ邽߂̐VC^[tF[X ܂B void CALLBACK SPUpalyCDDAchannel( short *pcm, int nbytes); ̊gƂCDDATEhSPUvOCčĐ邱Ƃ \ɂȂ܂B܂ACDDAĐg`DMAǂݏo\ɂȂ܂B Xɏڂꍇ͎BɘAĉB ------------------------------------------------------------------------ # ڎ ------------------------------------------------------------------------ 0. Tv 1. gp@ 2. ݒ 2-1-0. [Audio device] - DirectSound / SDL / WaveMapper / OSS 2-1-1. [Audio device] - Buffer size 2-2-0. [Audio out method] - Thread / Timer / SPUasync 2-2-1. [Audio out method] - Async mode 2-3-0. [Misc] - Show realtime config window 2-3-1. [Misc] - Wait for XA buffer is free 2-3-2. [Misc] - Cache VAG decode 2-3-3. [Misc] - Fine tune 2-3-4. [Misc] - Reverb 2-4-0. [Special game fix] - Update before accessing register 2-4-1. [Special game fix] - SPU IRQ-Wait CPU action 2-4-2. [Special game fix] - SPU IRQ-Force interruption flag7 3. SPUt@Co͋@\ 3-1. L^@ 3-2. Đ@ 4. FAQ 5. Ɛӓ 6. ӎ 7. NWbg ------------------------------------------------------------------------ 0. Tv ------------------------------------------------------------------------ Eternal SPU PlugińAPlayStationG~[^pTEh(SPU)vOC łBȉPlayStationG~[^Ŏgpł邱ƂmFĂ܂B - PSEmu Pro : discontinued - ePSXe : http://www.epsxe.com/ - AdriPSX ILE : http://www.adripsx.com/ - PCSX : http://www.pcsx.net - PSinex : http://psinex.psxemu.com/ - FPSE : discontinued ------------------------------------------------------------------------ 1. gp@ ------------------------------------------------------------------------ ͂߂ɁAWindowsł"spuEternal.dll"ALinuxł"libspuEternal.so.1.41" eG~[^̃vOCi[tH_ɃCXg[ĉB G~[^NASPUvOCݒʂ[Eternal SPU Plugin x.x] IĉB ------------------------------------------------------------------------ 2. Configuration ------------------------------------------------------------------------ 2-1-0. [Audio device] - DirectSound / SDL / WaveMapper / OSS I[fBIfoCXIł܂B [DirectSound] : DirectSoundgăTEho͂s܂B DirectX3ȏオKvłBWindowsł݂̂̍ڂłB [SDL] : SDL (Simple DirectMedia Layer)găTEho͂ s܂B"SDL.dll"ȉ̂ꂩ̃fBNg CXg[ĂKv܂ (Windowsł̏ꍇ) 1. G~[^̎st@CfBNg 2. "System"fBNg 3. pX̒ʂfBNg lɁALinuxłł"libSDL.so"CXg[ ĂKv܂B [Wave Mapper] : WIWindows Wave Mappergpďo͂s܂B WavefoCXł͎gpł܂B Windowsł݂̂̍ڂłB [OSS] : OSS(Open Sound System(TM))hCogpďo͂ s܂BLinuxł݂̂̍ڂłB ------------------------------------------------------------------------ 2-1-1. [Audio device] - Buffer size TEhobt@TCY[0-999]͈̔͂Őݒł܂BftHgl64 łAgp҂̊ɍœKȒlݒ肷邱Ƃ߂܂B * lقǃTEh̒x͂ȂȂ܂B * lɒ[ɏƃv`mCY܂B ------------------------------------------------------------------------ 2-2-0. [Audio out method] - Thread / Timer / SPUasync I[fBIo͕@Ił܂B gp҂̊ɍœKȕ@w肵ĉB [Thread] --> [Timer]x͍łAׂ̕傫Ȃ܂B [Timer] --> [Thread]x͒ႢłAׂ̕Ȃ܂B [SPUasync] --> łxo͕@łB * [SPUasync]ɐݒ肵ꍇ́ATEhobt@̒lʏ傫 ݒ肷Kv܂iv`mCYh~̂߁jB * G~[^T|[gĂKv܂B ------------------------------------------------------------------------ 2-2-1. [Audio out method] - Async mode [SPUasync]̃[hwł܂B [Simple] --> Gȏs܂B t[[gsɂȂƉтpɂɔ܂B SPUPSXG~[^CPURAƓ܂B [Wait] --> t[[gꍇAœKȃt[[gɂȂ悤ɃEFCg |܂Bt[[gႢꍇAJԂ̂h ߂ɒxNA܂B SPUPSXG~[^CPURAƓ܂B [Smooth] --> t[[gɉāATv̗ʂ߂܂B т͔ɂȂ܂Aȉ̂悤ȉ̍ĐSPU-IRQ gp\tgł́AG~[gɖ肪\Ȃ܂B Ex.) * Valkyrie Profile <ENIX> * Star Ocean 2 <ENIX> * MetalGear Solid <KONAMI> ...etc ------------------------------------------------------------------------ 2-3-0. [Misc] - Show realtime config window sɐݒύXł悤ɁAʃRtBOEBhE\܂B EBhE[hŃG~[^s鎞̂ݗLɂ悤ɂĉB ------------------------------------------------------------------------ 2-3-1. [Misc] - Wait for XA buffer is free XAf[^SēقXAobt@܂ŁAG~[^ҋ@ ܂B̋@\Lɂ邱ƂɂāAG~[^̃^C~O ߂ɋNXÃv`mCY܂B * XA̍Đ́AFPS limitOĂG~[^̑肪łȂȂ܂B * G~[^̓삪sɂȂꍇ܂B ------------------------------------------------------------------------ 2-3-2. [Misc] - Cache VAG decode VAGubNɃfR[hς݃TvLbVāAs܂B ł͖cĂ܂B ------------------------------------------------------------------------ 2-3-3. [Misc] - Fine tune ̍Đsb`ij߂邱Ƃ\łB 10 : Ȃ܂B -10 : ႭȂ܂B 120 : 1IN^[uȂ܂B -120 : 1IN^[uႭȂ܂B ------------------------------------------------------------------------ 2-3-4. [Misc] - Reverb o[uG~[Ṽ^CvIł܂B [Off] --> o[uG~[Vs܂B [TiMidity] --> TiMidityŎgĂ郊o[ułB Oo[WƓʂ܂B [Freeverb] --> FreeverbŎgĂ郊o[ułB ÏłB [Iori's] --> Iori̎sɂ郊o[ułB"Neill's"̐xɂ͋͂ɋyȂ ̂́AnCNIeBł邱Ƃ͊młB [Neill's] --> Neill Corlett̉͌ʂɊÂo[ułB łxƎv܂B ------------------------------------------------------------------------ 2-4-0. [Special game fix] - Update before accessing register ̃IvV́Ã\tgɂs邽߂̂̂łB \tgV[ɂĂ͑ȕׂ邱Ƃ܂B [`FbNȂ] --> WX^ǂݍݎDirectSoundobt@XV܂B * ėp [`FbN] --> WX^ǂݍݎDirectSoundobt@XV܂B ȉ̂悤ȃ\tgŌʂ܂B Ex.) * FinalFantasy8 <SQUARE> : ^CgBGMAOiÑe[} * FinalFantasy9 <SQUARE> : Disc3.q_Kf̃e[} * ChronoCross <SQUARE> : BGM59 * DragonQuest7 <ENIX> : GfBOBGM * z`2 <KONAMI> : ʏogBGM(Vo) ...etc [`FbN] --> {o[Wp~B ------------------------------------------------------------------------ 2-4-1. [Special game fix] - SPU IRQ-Wait CPU action ̃IvV͐^Cg̃\tgɓĂ邽߁AɗLɂ ̃\tgŕQo邩܂Bȉ̃\tgŌʂ܂B Ex.) * Valkyrie Profile <ENIX> * Star Osean...
krynikon