Koei Tecmo Audio SRSA SRST: Difference between revisions

From XentaxWiki
Jump to navigation Jump to search
imported>Ikskoks
imported>Ikskoks
 
(29 intermediate revisions by the same user not shown)
Line 1: Line 1:
== SRSA, SRST ==  
== SRSA, SRST ==  
* ''' Game ''':    Hyrule Warriors: Age of Calamity <br>
 
* ''' Format Type ''':    Audio <br>  
* ''' Format Type ''':    Audio <br>  
* ''' [http://en.wikipedia.org/wiki/Endianness Endian Order] ''': Little Endian <br>
* ''' [http://en.wikipedia.org/wiki/Endianness Endian Order] ''': Little Endian <br>
Line 69: Line 69:
   x bytes - entry data
   x bytes - entry data
}
}
</pre>
</div>
<br>
<div class="toccolours mw-collapsible" id="mw-customcollapsible-myDivision" style="width:800px; overflow:auto;">
<pre>
// Persona 5 Strikers
// Extra header structure
8 bytes (char) - magic // "IDRK0000"
4 bytes (uint32) - file size
4 bytes - nulls
4 bytes (uint32) - data size?
4 bytes - nulls
4 bytes (uint32) - file size (repeated)
8 bytes - nulls
4 bytes - unknown
4 bytes (char) - magic  // "MG4\x0D"
4 bytes - nulls
4 bytes - unknown
4 bytes - nulls
</pre>
</pre>
</div>
</div>
Line 75: Line 96:


Not written yet.
Not written yet.
=== QuickBMS Scripts ===
* [https://forum.xentax.com/viewtopic.php?p=176959#p176959 Fairy Tail script]
Other scripts:<br>
Credits:<br>
'''DKDave''' for explaining the process.<br>
'''Joschka''' for writing those scripts.<br>
'''srsa.bms'''
<div class="toccolours mw-collapsible" id="mw-customcollapsible-myDivision" style="width:800px; overflow:auto;">
<pre>
get NAME basename
get SIZE asize
string NAME + ".ktsl2asbin"
set OFFSET 16
math SIZE - OFFSET
log NAME OFFSET SIZE
</pre>
</div><br>
'''srst.bms'''
<div class="toccolours mw-collapsible" id="mw-customcollapsible-myDivision" style="width:800px; overflow:auto;">
<pre>
get NAME basename
get SIZE asize
string NAME + ".kns"
findLoc OFFSET string "KTSS" ""
math SIZE - OFFSET
log NAME OFFSET SIZE
</pre>
</div><br>


=== Notes and Comments ===  
=== Notes and Comments ===  


None.
None.
=== Games ===
List of games using this file format:
* Dead or Alive 6
* Fairy Tail
* Fire Emblem Warriors: Three Hopes
* Hyrule Warriors: Age of Calamity
* Persona 5 Strikers
* Samurai Warriors 5
* Stranger of Paradise: Final Fantasy Origin


=== Compatible Programs ===  
=== Compatible Programs ===  
Line 84: Line 150:
* Foobar + vgmstream plugin  (after deleting header and changing extension, see details [https://forum.xentax.com/viewtopic.php?f=17&t=23252 here]).
* Foobar + vgmstream plugin  (after deleting header and changing extension, see details [https://forum.xentax.com/viewtopic.php?f=17&t=23252 here]).
* [https://forum.xentax.com/viewtopic.php?f=10&t=21679 Cethleann]
* [https://forum.xentax.com/viewtopic.php?f=10&t=21679 Cethleann]
* [https://github.com/Hairo/kvs-tools kvs-tools]
* [https://www.loverslab.com/topic/120211-vagonumero13-tools-redelbe-rdbtool-g1mtools-doa6decsave-update-17-aug-redelbe-30/ SRSxtool]


=== See Also ===  
=== See Also ===  

Latest revision as of 20:15, 27 December 2022

SRSA, SRST


Format Specifications

// SRSA file format

// header chunk
4 bytes (char) - magic  // "ASRS"
4 bytes - nulls
4 bytes (uint32) - total file size
4 bytes - nulls

x bytes - KTSR data


// SRST file format

// header chunk
4 bytes (char) - magic  // "TSRS"
4 bytes - nulls
4 bytes (uint32) - total file size
4 bytes - nulls

x bytes - KTSR data

Related Structures

// KTSR audio file format

// header chunk
4 bytes (char) - chunk magic  // e.g. "KTSR"
4 bytes (uint32) - chunk type   // e.g. "0x02 0x94 0xDD 0xFC" 
2 bytes (uint16) - version?   // "1"
1 byte - null
1 byte (uint8) - platform   //  0x01 - PC
                            //  0x03 - PS Vita
                            //  0x04 - Switch
4 bytes - game ID
8 bytes - nulls
4 bytes (uint32) - file size
4 bytes (uint32) - file size (repeated)
32 bytes - reserved


// entries
num_of_entries *
{
   4 bytes (uint32) - entry type   // "0x09 0xD4 0xF4 0x15" - config?
                                   // "0x61 0x72 0xDB 0xA8" - padding
                                   // "0xC9 0xC4 0x8E 0xC1" - unknown
                                   // "0xA9 0xD2 0x3B 0xF1" - config?
                                   // "0xC5 0xCC 0xCB 0x70" - sound data
                                   // "0xBD 0x88 0x8C 0x36" - config?
   4 bytes (uint32) - entry size
   x bytes - entry data
}


// Persona 5 Strikers
// Extra header structure

8 bytes (char) - magic // "IDRK0000"
4 bytes (uint32) - file size
4 bytes - nulls
4 bytes (uint32) - data size?
4 bytes - nulls
4 bytes (uint32) - file size (repeated)
8 bytes - nulls
4 bytes - unknown
4 bytes (char) - magic  // "MG4\x0D"
4 bytes - nulls
4 bytes - unknown
4 bytes - nulls

MultiEx BMS Script

Not written yet.


QuickBMS Scripts

Other scripts:

Credits:
DKDave for explaining the process.
Joschka for writing those scripts.

srsa.bms

get NAME basename
get SIZE asize
string NAME + ".ktsl2asbin"
set OFFSET 16
math SIZE - OFFSET
log NAME OFFSET SIZE


srst.bms

get NAME basename
get SIZE asize
string NAME + ".kns"
findLoc OFFSET string "KTSS" ""
math SIZE - OFFSET
log NAME OFFSET SIZE


Notes and Comments

None.

Games

List of games using this file format:

  • Dead or Alive 6
  • Fairy Tail
  • Fire Emblem Warriors: Three Hopes
  • Hyrule Warriors: Age of Calamity
  • Persona 5 Strikers
  • Samurai Warriors 5
  • Stranger of Paradise: Final Fantasy Origin

Compatible Programs

See Also