vgmrips

The forum about vgm files
It is currently 2017-07-29, 13:46:44

All times are UTC + 1 hour [ DST ]




Post new topic Reply to topic  [ 10 posts ] 
Author Message
 Post subject: vgmspec151.txt ?
PostPosted: 2012-06-05, 0:54:33 

Staff Staff
Programmers Programmers
Offline
User avatar

Joined: 2012-04-22, 4:03:45
Posts: 203
Location: New York, NY, USA
I'm looking for vgmspec151.txt for comparison purposes to later VGM specs (particularly header size). Anyone here still have a copy of it?


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-05, 1:07:20 

Contributors Contributors
Artists Artists
Offline
User avatar

Joined: 2012-03-30, 9:28:37
Posts: 182
Location: Hagan, GA, USA
http://www.smspower.org/forums/download.php?id=2234
There ya go.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-05, 2:19:51 

Staff Staff
Programmers Programmers
Offline
User avatar

Joined: 2012-04-22, 4:03:45
Posts: 203
Location: New York, NY, USA
thx!


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-05, 5:00:51 

Programmers Programmers
Offline

Joined: 2012-06-04, 5:24:46
Posts: 19
I would say use the 1.60 spec, since the 1.51 spec had at least 6 revisions that I could find. When I opened the 1.60 spec, I discovered that even the latest 1.51 revision in that thread (http://www.smspower.org/forums/viewtopic.php?t=11965) seemed incomplete.

You can find the 1.60 spec here: http://www.smspower.org/uploads/Music/vgmspec160.txt

Also, according to eh 1.60 spec, the 1.51 spec has a header size of 0x80.

Edit: Also be sure to get a file that matches the spec you are using. Shinobi (Arcade) seems to have the size 0x40 header from an early v1.51, while MegaRace (PC/DOS) seems to have the full 0x80 header.


Last edited by snakemeat on 2012-06-05, 5:28:10, edited 1 time in total.

Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-05, 8:17:02 

Staff Staff
Programmers Programmers
Musicians Musicians
Contributors Contributors
Offline
User avatar

Joined: 2011-12-01, 20:20:07
Posts: 2730
Location: Germany
Wow ... That must be the first revision of vgm spec 1.51 I released ever.

Actually I released a new v1.51 spec almost everytime I updated something.
I recommend to use the v1.60 spec instead. The only difference between 1.51 final and 1.60 are the DAC Stream commands and the PCM RAM writes for the RF5Cxx chips.
I'll sort my stuff and upload the final 1.51 spec to SMSPower. (I found 3 different revisions, too.)

About the header size: In vgm spec. 1.51 I made this rule:
Code:
- The header must have at least 64 bytes. If the VGM data starts at an offset
  that is lower than 0x80, all overlapping header values will be zero.

v1.51 VGMs with a header size of 0x40 bytes are valid. Shinobi (Arcade) uses only the YM2151, so it doesn't need any header data past 0x40.
MegaRace on the other side uses the YM3812 chip, whose header value is at 0x50, so its header must have at least 0x54 bytes.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-05, 22:33:10 

Staff Staff
Programmers Programmers
Offline
User avatar

Joined: 2012-04-22, 4:03:45
Posts: 203
Location: New York, NY, USA
Which VGM packs are actually set to v1.51 (and preferably links to them)?

Regarding versioning and such, it's almost a certainty that I'd be programming either one or both of two possible outcomes from processing a VGM thru the new VGMTool - keep the version the same, or update the version and resulting header to the next highest "stable" version (for pre-1.50 non-YM2612 this will almost certainly result in an update to 1.50, for post-1.50 and pre-1.50 YM2151 it'll likely update to 1.60 or 1.61 until 1.70 is finalized even tho VB sent me a preliminary copy of it). This will be the primary reason for me collecting the various versions of VGM spec, and I'll almost certainly add some sort of checkbox toggle to choose the processing behavior.

The hard part will be processing the rest of a VGM file acc. to version updating, eg optimization of YM2612 DAC data and such.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-05, 22:59:03 

Staff Staff
Programmers Programmers
Musicians Musicians
Contributors Contributors
Offline
User avatar

Joined: 2011-12-01, 20:20:07
Posts: 2730
Location: Germany
Almost all VGM packs without tables should be v1.51. (A few of them are 1.60.)
For new packs I minimize the version of every VGM by running vgm_ptch over it when repacking, so new YM2151 VGMs have always v1.50, for example.

btw: I recommend to check the source of vgm_ptch and the functions that do MinHeader and MinVer.
I'm sure you can find them useful.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-06, 1:39:06 

Staff Staff
Programmers Programmers
Offline
User avatar

Joined: 2012-04-22, 4:03:45
Posts: 203
Location: New York, NY, USA
ValleyBell wrote:
Almost all VGM packs without tables should be v1.51. (A few of them are 1.60.)
For new packs I minimize the version of every VGM by running vgm_ptch over it when repacking, so new YM2151 VGMs have always v1.50, for example.

btw: I recommend to check the source of vgm_ptch and the functions that do MinHeader and MinVer.
I'm sure you can find them useful.


"without tables" - I'm confused what you mean by this; are you referring to the info table that most of the approved submission threads have on this forum?

"vgm_ptch" - Is that short for "patch" ? It's one of the few tools not listed in your VGMTools readme. Also, if a YM2151 VGM were to also have a post-1.50 chip (eg, the OKIM6295), would vgm_ptch leave it as a 1.60 VGM?


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-06, 4:48:07 

Programmers Programmers
Offline

Joined: 2012-06-04, 5:24:46
Posts: 19
ValleyBell wrote:
About the header size: In vgm spec. 1.51 I made this rule:
Code:
- The header must have at least 64 bytes. If the VGM data starts at an offset
  that is lower than 0x80, all overlapping header values will be zero.



Thanks, I overlooked that info. That really clears it up then.


Top
 Profile  
 
 Post subject:
PostPosted: 2012-06-06, 8:36:36 

Staff Staff
Programmers Programmers
Musicians Musicians
Contributors Contributors
Offline
User avatar

Joined: 2011-12-01, 20:20:07
Posts: 2730
Location: Germany
neologix wrote:
"without tables"
Yes, I mean the info table. All newer packs have one, all older packs (that are made before vgmrips startet) don't.

neologix wrote:
"vgm_ptch"
Yes, that's short for "patch". It's actual homepage is here, but I haven't updated that one in ages.
neologix wrote:
Also, if a YM2151 VGM were to also have a post-1.50 chip (eg, the OKIM6295), would vgm_ptch leave it as a 1.60 VGM?
Yes, for a YM2151 + OKIM6295 VGM it would leave the version at 1.61.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC + 1 hour [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group