倚天中文下並不是不可能....只是不穩定
http://www.wretch.cc/album/album.php?id=kikiqqp&book=4
至少我當時在PE2下還可以用就是了
DOSBox 與 Roland MT-32 模擬器
版主: DearHoney
- BooBooBird
- 神人
- 文章: 1424
- 註冊時間: 2001-12-11 08:00
- 來自: 不知有漢 無論魏晉
現在才看到這一篇...
瘋狂時代(Day of the Tentacle)一定要玩光碟版,全程語音跟音效就像卡通一樣。當初買了光碟版後來不見了心痛得要命,最後還是請四腳動物馱回來。不過DOSBox的弱點是不支援最棒的HQ2X, HQ3X擴展模式。SCUMM模擬器有支援HQ,但是使用SCUMM時片頭會掉音。畫面和音效無法兩全啊~~
倚天中文不能用是因為它用了一些tweak,當初有些顯示卡跑倚天中文也是亂碼。我記得它的ET16有兩個版本的執行檔,其中一個相容性較高,要不就是要下參數。不過真的有什麼東西還需要倚天中文啊...
DOOM2不能跑是應該的,DOSBox的目標年代在3D流行之前。請愛玩2D遊戲
看了一下我的DOSBox目錄,我喜歡的DOS遊戲除了DOTT還有
Another World
DOH (打磚塊)
The Incredible Machine
Ultima 7 (這個要用 Exult 才能跑)
瘋狂時代(Day of the Tentacle)一定要玩光碟版,全程語音跟音效就像卡通一樣。當初買了光碟版後來不見了心痛得要命,最後還是請四腳動物馱回來。不過DOSBox的弱點是不支援最棒的HQ2X, HQ3X擴展模式。SCUMM模擬器有支援HQ,但是使用SCUMM時片頭會掉音。畫面和音效無法兩全啊~~
倚天中文不能用是因為它用了一些tweak,當初有些顯示卡跑倚天中文也是亂碼。我記得它的ET16有兩個版本的執行檔,其中一個相容性較高,要不就是要下參數。不過真的有什麼東西還需要倚天中文啊...
DOOM2不能跑是應該的,DOSBox的目標年代在3D流行之前。請愛玩2D遊戲
看了一下我的DOSBox目錄,我喜歡的DOS遊戲除了DOTT還有
Another World
DOH (打磚塊)
The Incredible Machine
Ultima 7 (這個要用 Exult 才能跑)
Re: DOSBox 與 Roland MT-32 模擬器
這篇好久沒有討論囉,發表一下我的心得。
關於倚天中文支援的問題,我認為是DOSBOX內建的Shell的問題,
我試過用DOSBOX載入真實MSDOS的影像開機,再進倚天,就沒有
亂碼的問題了。
再來就是OPL2/OPL3模擬問題,我發現到目前(DOSBOX 0.72)的
OPL2/OPL3模擬程式中,一直都還存在一個BUG(我認為是BUG,但不知道是否真的就是BUG)。以OPL3來說,其模擬程式為ymf262.c,裡面
處理KSL似乎將1跟2的值弄反了,造成模擬出來的聲音跟真實的OPL3
有差異(我實際比對過DOSBOX跟真實YMF262的聲音)。以下是原始程式片段:
/* set ksl & tl */
INLINE void set_ksl_tl(OPL3 *chip,int slot,int v)
{
OPL3_CH *CH = &chip->P_CH[slot/2];
OPL3_SLOT *SLOT = &CH->SLOT[slot&1];
int ksl = v>>6; /* 0 / 1.5 / 3.0 / 6.0 dB/OCT */
SLOT->ksl = ksl ? 3-ksl : 31;
SLOT->TL = (v&0x3f)<<(ENV_BITS-1-7); /* 7 bits TL (bit 6 = always 0) */
應加上一個對調1跟2的指令,如下:
/* set ksl & tl */
INLINE void set_ksl_tl(OPL3 *chip,int slot,int v)
{
OPL3_CH *CH = &chip->P_CH[slot/2];
OPL3_SLOT *SLOT = &CH->SLOT[slot&1];
int ksl = v>>6; /* 0 / 1.5 / 3.0 / 6.0 dB/OCT */
if (ksl == 1 || ksl == 2) ksl ^= 0x03;
SLOT->ksl = ksl ? 3-ksl : 31;
SLOT->TL = (v&0x3f)<<(ENV_BITS-1-7); /* 7 bits TL (bit 6 = always 0) */
我重新compile後,發現聲音跟真實YMF262聲音更接近了,雖然還是存在些微差異(因逆向工程要完全解出正確的參數真的不容易,只能很近似),但我認為音色不在是「不正確」了!以上小小的分享。
關於倚天中文支援的問題,我認為是DOSBOX內建的Shell的問題,
我試過用DOSBOX載入真實MSDOS的影像開機,再進倚天,就沒有
亂碼的問題了。
再來就是OPL2/OPL3模擬問題,我發現到目前(DOSBOX 0.72)的
OPL2/OPL3模擬程式中,一直都還存在一個BUG(我認為是BUG,但不知道是否真的就是BUG)。以OPL3來說,其模擬程式為ymf262.c,裡面
處理KSL似乎將1跟2的值弄反了,造成模擬出來的聲音跟真實的OPL3
有差異(我實際比對過DOSBOX跟真實YMF262的聲音)。以下是原始程式片段:
/* set ksl & tl */
INLINE void set_ksl_tl(OPL3 *chip,int slot,int v)
{
OPL3_CH *CH = &chip->P_CH[slot/2];
OPL3_SLOT *SLOT = &CH->SLOT[slot&1];
int ksl = v>>6; /* 0 / 1.5 / 3.0 / 6.0 dB/OCT */
SLOT->ksl = ksl ? 3-ksl : 31;
SLOT->TL = (v&0x3f)<<(ENV_BITS-1-7); /* 7 bits TL (bit 6 = always 0) */
應加上一個對調1跟2的指令,如下:
/* set ksl & tl */
INLINE void set_ksl_tl(OPL3 *chip,int slot,int v)
{
OPL3_CH *CH = &chip->P_CH[slot/2];
OPL3_SLOT *SLOT = &CH->SLOT[slot&1];
int ksl = v>>6; /* 0 / 1.5 / 3.0 / 6.0 dB/OCT */
if (ksl == 1 || ksl == 2) ksl ^= 0x03;
SLOT->ksl = ksl ? 3-ksl : 31;
SLOT->TL = (v&0x3f)<<(ENV_BITS-1-7); /* 7 bits TL (bit 6 = always 0) */
我重新compile後,發現聲音跟真實YMF262聲音更接近了,雖然還是存在些微差異(因逆向工程要完全解出正確的參數真的不容易,只能很近似),但我認為音色不在是「不正確」了!以上小小的分享。
Re: DOSBox 與 Roland MT-32 模擬器
這邊可否向您請教,載入 DOS boot image 的方式?cbreak 寫:關於倚天中文支援的問題,我認為是DOSBOX內建的Shell的問題,我試過用DOSBOX載入真實MSDOS的影像開機,再進倚天,就沒有亂碼的問題了。
啊~這一段太難了,我們一般人也做不來cbreak 寫:再來就是OPL2/OPL3模擬問題....OPL2/OPL3模擬程式中,一直都還存在一個BUG.... 處理KSL似乎將1跟2的值弄反了,造成模擬出來的聲音跟真實的OPL3有差異
Re: DOSBox 與 Roland MT-32 模擬器
要boot msdos,就是在DOSBox裡面輸入指令:
boot msdos.img
這樣就能模擬MSDOS軟碟開機了,但缺點是會看不到原先
mount的目錄,必須將你要看到的檔案,全都做成IMG檔,
然後用:
boot msdos.img 所有資料影像檔.img
載入才行,而且還要自己配置EMS/XMS,是真的麻煩許多。
boot msdos.img
這樣就能模擬MSDOS軟碟開機了,但缺點是會看不到原先
mount的目錄,必須將你要看到的檔案,全都做成IMG檔,
然後用:
boot msdos.img 所有資料影像檔.img
載入才行,而且還要自己配置EMS/XMS,是真的麻煩許多。
Re: DOSBox 與 Roland MT-32 模擬器
關於DOSBox的OPL3模擬BUG,我附上MP3的比較檔案吧。
http://210.70.87.210:81/share/FM_comp.zip
這是用大富翁2的音樂做測試的,其中:
FM_YMF262.mp3是真正的OPL3錄音
FM_DOSBox_original.mp3是目前DOSBox 0.72的錄音
FM_DOSBox_patched.mp3是做了KSL修正的錄音
從一開頭的前奏應該很明顯可以聽出音色的不同。
另外附上KSL修正後的DOSBox.exe檔案,因為我用MinGW
compile,不知為什麼,生成的執行檔,size大了許多,
且還要連結另外兩個DLL檔,請把DOSBox_comp.zip解壓縮
到原先DOSBox的目錄覆蓋即可。
http://210.70.87.210:81/share/DOSBox_comp.zip
http://210.70.87.210:81/share/FM_comp.zip
這是用大富翁2的音樂做測試的,其中:
FM_YMF262.mp3是真正的OPL3錄音
FM_DOSBox_original.mp3是目前DOSBox 0.72的錄音
FM_DOSBox_patched.mp3是做了KSL修正的錄音
從一開頭的前奏應該很明顯可以聽出音色的不同。
另外附上KSL修正後的DOSBox.exe檔案,因為我用MinGW
compile,不知為什麼,生成的執行檔,size大了許多,
且還要連結另外兩個DLL檔,請把DOSBox_comp.zip解壓縮
到原先DOSBox的目錄覆蓋即可。
http://210.70.87.210:81/share/DOSBox_comp.zip
Re: DOSBox 與 Roland MT-32 模擬器
真的耶!是聽得出來聲音差異的,您真的太強了。
Re: DOSBox 與 Roland MT-32 模擬器
的確是這樣,一年多... 前有試著改dosbox , 把 ET倚天在 dosprompt 的亂碼問題改掉, 不過沒有詳測.DearHoney 寫:cbreak 寫:關於倚天中文支援的問題,我認為是DOSBOX內建的Shell的問題,我試過
TO cbBreak : dosbox.exe 執行檔太大的問題可以用
strip -x src/dosbox.exe 把debug_info 去除,即可變小.