然后?!
----------------------------------------------
以下为日志
-----------------------------------------------
PS C:\Users\liu\Desktop\rix\dro2midi-1.5-win32> .\dro2midi.exe .\49.9.imf 48.952.mid
Input file appears to be in IMF type-0 format.
File extension is .imf - using 560Hz speed (rename to .wlf if this is too slow)
Using conversion constant of 49716.0
// Ch01 <- Inst#067 @ line 127: Marimba [13]
** New instrument in use on channel 2
** Copy this into inst.txt to assign it a MIDI patch:
NO 11-31/2D-00/C8-F5/2F-F5/0C/00-00: patch=?
>> Using similar match: Inst#270 @ line 384: Electric Guitar (muted) [29]
// Ch02 <- Inst#270 @ line 384: Electric Guitar (muted) [29]
** New instrument in use on channel 7
** Copy this into inst.txt to assign it a MIDI patch:
NO 4E-48/0F-06/20-2F/F1-05/02/00-00: patch=?
>> Using similar match: Inst#055 @ line 110: Oboe [69]
// Ch07 <- Inst#055 @ line 110: Oboe [69]
(此处省略超过5k字)
// Ch01 <- Inst#018 @ line 66: Gunshot [128]
// Ch01 <- Inst#067 @ line 127: Marimba [13]
// Ch01 <- Inst#018 @ line 66: Gunshot [128]
// Ch01 <- Inst#067 @ line 127: Marimba [13]
// Ch01 <- Inst#018 @ line 66: Gunshot [128]
Conversion complete. Wrote 48.952.mid
Total pitchbent notes: 1179
Total notes: 1179
Notes still active at end of song: 0
--------------------------------------------------------------
日志结束
----------------------------------------------------------------
此时得到了一个 48.952.mid 的文件,这里面纪录了音乐的乐谱。
等等!
** Copy this into inst.txt to assign it a MIDI patch:
NO 11-31/2D-00/C8-F5/2F-F5/0C/00-00: patch=?
>> Using similar match: Inst#270 @ line 384: Electric Guitar (muted) [29]
// Ch02 <- Inst#270 @ line 384: Electric Guitar (muted) [29]
这是什么玩意?

也就是说 NO 11-31/2D-00/C8-F5/2F-F5/0C/00-00 这是YM3812 的乐器参数
此处省略几千字关于 .ins 和 .sbi 乐器格式的研究,感兴趣我再发吧。结论就是
NO 11-31/2D-00/C8-F5/2F-F5/0C/00-00 等效于 这个sbi文件(红框内是sbi文件的有效值)

这里有个恶心的点,请注意看偏移地址46、44 45,即倒数第二行的 14 、12 13 列,其和软件列出的 /0C/00-00 刚好是相反的。
还有些乐器,软件已知是和GM 中那些乐器相近音色的就会直接映射,如下。
// Ch01 <- Inst#067 @ line 127: Marimba [13]
没关系,到其目录下找inst.txt 文件 中的第127 行

等效于 sbi 文件中有效值部分 32 11 44 00 F8 F5 FF 7F 00 00 0E
如此就可以得到.rix 文件中包含的 .ins 文件
用OpenMPT 整理整理即可得到
链接:
https://pan.baidu.com/s/1SXBejhbR6w6TfZDQYvW7kw 提取码: wjmi 复制这段内容后打开百度网盘手机App,操作更方便哦
用OpenMPT 打开。
这个过程中得到的铺子是接近100%完整的(有些神奇到不能再神奇的pitch bent 可能要手动调一下),乐器也是。
不过因为OpenMPT 不支持 打击乐模式,要是碰到像仙剑那种用打击乐的还得抓脑袋一下。
以此留存方式,望诸位多多分享,让圈内得出些更完美的“考古”结果!