VGM檔音樂資料庫

[回到前頁]

  在此本研究室提供VGM檔驅動UM3567 / YM2413的程式,為
8051組合語言版本,使用晶體震盪器頻率為11.0592Mhz,UM3567
/ YM2413使用晶體震盪器頻率為3.579545Mhz,使用8051的I/O埠P0
連接UM3567 / YM2413的資料匯流排,P2.7連接INI、P2.6連接CS、
P2.5連接WR、P2.4連接A0,VGM檔資料放在0x0100∼0xFFFF的地
方,因此0x0100∼0x013F為檔頭資料,目前該版本程式長度為256
個位元組,定址在0x0000∼0x00FF,僅能單首、多次播放VGM檔
的音樂資料。

  在此本研究室也提供VGM檔的樣本,供有興趣的網友來驗證
VGM檔的驅動程式,該VGM檔的樣本為科學忍者隊(科學小飛俠)
,音樂長度一分16秒。

(1)、VGM檔驅動程式,8051組合語言版本原始碼: 1 2 3

(2)、VGM檔的樣本: 1

註:當您以8051的 I/O埠連接UM3567 / YM2413的資料匯流排與控制
  線時,請在8051的I/O埠加上提昇(Pull-Up)電阻,避免I/O埠的驅
  動能力不足。

(3)、VGM檔驅動程式,8051 Keil C 版本原始碼: 1 2 3 4

(4)、VGM檔驅動電路(必須配合8051 Keil C 版本的程式):1

註:使用Uv3版本V3.51編輯,C編譯器版本V8.08,此VGM檔C語
  言驅動程式適用於任何版本的8051,目前僅支援VGM檔格式
  版本為V1.01;如果以Uv4 V4.02編輯,C51 V9.01編譯,建議在
  Delay()、AccessYM2413(unsigned char Addr, Data)、InitYM2413()、
  SetTimer0()前面加上Void,避免編譯時產生警告訊息。

(5)、VGM檔驅動程式,8051 Keil C 版本原始碼編譯的Hex檔:1

註:此Hex檔為已經編譯好並且匯入GA.vgm(定址在0x0800)的完整
  HEX檔與GA.vgm檔,請參考上述電路圖正確連接,並且燒入
  具有16K-Bytes內建Flash ROM的8051中,則將可以播放出「科
  學忍者隊」的片頭音樂一次。

註:YM2413使用說明書下載位置,UM3567除了 IC腳位與 YM2413
  不同外,其餘IC內部的暫存器與使用方法,幾乎完全相同。