
                  Tune 1000's Soft Karaoke file format          by John Zer
                  

  Kicsit foglalkoztam a file-okkal, s ezt sikerlt kihoznom. Lehet, hogy
 nem teljes, vagy hibs a lers, de ez van. Ajnlok az olvasshoz s a
 megrtshez egy kznl lev MIDI specifikcit...
 Figyeljetek a sttusztartsos sorozatokra! (pl. FF-et nem kell jra kirakni,
 elg csak az adatot) Tallkoztam tovbb 2 ismeretlen MIDI-s kddal, ezek
 FF 21 (01 00) s FF 3E (00). A ';' karakter s az utna ll karakterek
 megjegyzsek.
 

-> <HEADER>
-> Track 1, length: 25
       0    FF 58 04 04 02 18 08 ; Time signature
       0    FF 59 02 00 00 ; Key signature
       0    FF 51 03 07 B1 89 ; Set tempo
       0    FF 2F 00 ; Track end
       
 Teht: gy nz ki, hogy a track 1 egy inicializl track, benne
 tallhat meg a Kulcsa/Eljegyzse a zennek, illetve a tempja.
 A temp tapasztalatom szerint vltozhat a file-ban,

       
-> Track 2, length: 179
       0    FF 21    1 00 ; Unknown
       0    FF 03    C "Soft Karaoke" ; Seq/Track name
       0    FF 01   16 "@KMIDI KARAOKE FILE tm" ; Text event
       0    FF 01   26 "@KAll rights reserved, TUNE 1000 CORP." ; Text event
       0    FF 01    6 "@V0100" ; Text event
       0    FF 01   18 "@I 06-11-93, 17:00, V.T." ; Text event
       0    FF 01   2C "@KCopyright EMI International rights secured" ; Text event
       0    FF 2F 00 ; Track end
       
  Ez gy tnik, hogy egy azonost track, a dtumon kvl minden konstans
  benne.

       
-> Track 3, length: 964
       0    FF 21    1 00 ; Unknown
       0    FF 03    5 "Words" ; Seq/Track name
       0    FF 01    6 "@LENGL" ; Text event
       0    FF 01   22 "@TI LEFT MY HEART IN SAN FRANCISCO" ; Text event
       0    FF 01   1E "@TDouglass Cross / George Cory" ; Text event
       0    FF 01   2C "@TCopyright EMI International rights secured" ; Text event
       0    FF 01   2B "@WALL rights reserved. Not for broadcast or" ; Text event
       0    FF 01   1B "@Wtransmission of any kind." ; Text event
       0    FF 01   23 "@WDO NOT DUPLICATE. NOT FOR RENTAL." ; Text event
       
 Ez mr maga a lrai track, a @LENGL valsznleg azt jelenti, hogy
 angol nyelv, a @T<...> a megjelen cm 1.sora, a kvetkez @T<...> a
 2. sora, s a harmadik a 3. sor. A @W<...> a legelejn a lrai szveg
 helyn egyszer, vastagon megjelen szveget jelenti. Ez is 3x van.
 s itt jn a lnyeg:
       
    11F9    FF 01    2 "\I" ; Text event
     1AD    FF 01    5 " left" ; Text event
     17F    FF 01    3 " my" ; Text event
     116    FF 01    6 " heart" ; Text event
     9A7    FF 01    3 " in" ; Text event
     1C4    FF 01    4 " San" ; Text event
     155    FF 01    5 " Fran" ; Text event
     108    FF 01    3 "cis" ; Text event
     10C    FF 01    3 "co." ; Text event
     B3D    FF 01    5 "/High" ; Text event
      90    FF 01    3 " on" ; Text event
      96    FF 01    2 " a" ; Text event
      92    FF 01    6 " hill," ; Text event
     B48    FF 01    3 " it" ; Text event
     162    FF 01    6 " calls" ; Text event
      A4    FF 01    3 " to" ; Text event
      8D    FF 01    4 " me." ; Text event
     99D    FF 01    3 "\To" ; Text event
     1B9    FF 01    3 " be" ; Text event
     13A    FF 01    6 " where" ; Text event
     14C    FF 01    4 " lit" ; Text event
     ...             ...
       0    FF 2F 00 ; Track end
       
Teht ez lenne maga a szveg. A '/' jel egy j oldal kezdett jelenti,
a '\' jel pedig egy j sort. Valsznleg 3 sor lehet max. egy oldalon.

s itt egy normlis track:

-> Track 8, length: 834
       0    FF 21    1 00 ; Unknown
       0    FF 03    7 "Strings" ; Seq/Track name
       0    C3 31 ; Prog Change
       0    B3 07 68 ; Control change
       0    B3 0A 3A ; Control change
       0    B3 79 7F ; Control change
       0    00 00 ; Control change
       0    20 00 ; Control change
       0    0B 7F ; Control change
     1D5    5B 7F ; Control change
       0    5D 19 ; Control change
    1484    FF 01    2 "%-" ; Text event
       0    93 40 46 ; Note on: E 5 70
       ...
       1    3B 5E ; Note on: B 4 94
       3    37 54 ; Note on: G 4 84
       0    FF 01    2 "%+" ; Text event
      21       54 00 8E 01 56 00 16 ; SMPTE offset
      37       00 0A 3B 00 ; Sequence number
       8       3E    0 ; Unknown
       0    FF 2F 00 ; Track end

 Ami figyelemremlt, az az eleje fele lev '%-' szveg, ill. a vge fel
 lev '%+' szveg, ill. SMPTE offset s seq. number.
 Na, ha mgis megrtetttek volna, akkor csinljatok sok j Karaoke-s file-t,
 s kldjetek nekem is belle!

  Karaoke kicks ass!

                                                              John Zero
