You Dont Know Jack SRF: Difference between revisions

From XentaxWiki
Jump to navigation Jump to search
Line 24: Line 24:
=== MultiEx BMS Script ===  
=== MultiEx BMS Script ===  
  IDString 0 srf1 ;
  IDString 0 srf1 ;
  FindLoc DUMMYL String snd 0 ;
  Get FILELNGH Long 0 ;
  Math DUMMYL += 4 ;
  ReverseLong FILELNGH ;
GoTo DUMMYL 0 ;
  Get HEADLNGH Long 0 ;
  Get FILECNTL Long 0 ;
  ReverseLong HEADLNGH ;
  ReverseLong FILECNTL ;
  SavePos FILESTART 0 ;
  SavePos FILESTART 0 ;
  Do ;
  Do ;
  GoTo FILESTART 0 ;
  GoTo FILESTART 0 ;
  Get FILENAME Long 0 ;
GetDString FILENAME 4 0 ;
  ReverseLong FILENAME ;
  Get SUBCOUNT Long 0 ;
  ReverseLong SUBCOUNT ;
For T = 1 To SUBCOUNT ;
GetDString SUBNAME 4 0 ;
String FILENAME += SUBNAME ;
  Get FILEOFF Long 0 ;
  Get FILEOFF Long 0 ;
  ReverseLong FILEOFF ;
  ReverseLong FILEOFF ;
  Get FILESIZE Long 0 ;
  Get FILESIZE Long 0 ;
  ReverseLong FILESIZE ;
  ReverseLong FILESIZE ;
Log FILENAME FILEOFF FILESIZE 0 0 ;
String FILENAME -= SUBNAME ;
Next T ;
  SavePos FILESTART 0 ;
  SavePos FILESTART 0 ;
Log FILENAME FILEOFF FILESIZE 0 0 ;
  While FILESTART < HEADLNGH ;
Math EXTRCNT += 1 ;
  While EXTRCNT <> FILECNTL ;


Untested second script for larger HD files:
Please note this is a revised script from the one bundled with Multiex 4.1.0 by default.
IDString 0 srf1 ;
Get DUMMYL Long 0 ;
Get FILECNTL Long 0 ;
ReverseLong FILECNTL ;
SavePos FILESTART 0 ;
Do ;
GoTo FILESTART 0 ;
Get FILENAME Long 0 ;
ReverseLong FILENAME ;
Get SUBTOTAL Long 0 ;
ReverseLong SUBTOTAL ;
For T = 1 to SUBTOTAL
Get DUMMYL Long 0 ;
Get FILEOFF Long 0 ;
ReverseLong FILEOFF ;
Get FILESIZE Long 0 ;
ReverseLong FILESIZE ;
Log FILENAME FILEOFF FILESIZE 0 0 ;
Next T ;
SavePos FILESTART 0 ;
Math EXTRCNT += 1 ;
While EXTRCNT <> FILECNTL ;


=== Compatible Programs ===  
=== Compatible Programs ===  

Revision as of 19:18, 4 August 2005

Choose archive extension:

SRF


Format Specifications

char {4}   - Header (srf1)
uint32 {4}   - Archive Size

// for each file

uint32 {4}   - File Size (including these two 4-byte fields)
char {4}     - File Type/Extension (32 terminated)
byte {X}     - File Data


MultiEx BMS Script

IDString 0 srf1 ;
Get FILELNGH Long 0 ;
ReverseLong FILELNGH ;
Get HEADLNGH Long 0 ;
ReverseLong HEADLNGH ;
SavePos FILESTART 0 ;
Do ;
GoTo FILESTART 0 ;
GetDString FILENAME 4 0 ;
Get SUBCOUNT Long 0 ;
ReverseLong SUBCOUNT ;
For T = 1 To SUBCOUNT ;
GetDString SUBNAME 4 0 ;
String FILENAME += SUBNAME ;
Get FILEOFF Long 0 ;
ReverseLong FILEOFF ;
Get FILESIZE Long 0 ;
ReverseLong FILESIZE ;
Log FILENAME FILEOFF FILESIZE 0 0 ;
String FILENAME -= SUBNAME ;
Next T ;
SavePos FILESTART 0 ;
While FILESTART < HEADLNGH ;

Please note this is a revised script from the one bundled with Multiex 4.1.0 by default.

Compatible Programs

NOTE: The following only applies to the smaller 'QFold' SRF files, not the larger files often
installed by these games  
  • You Don't Know Jack!
  • You Don't Know Jack! Volume 2
  • You Don't Know Jack! Volume 3
  • You Don't Know Jack! UK
  • You Don't Know Jack! Germany
  • You Don't Know Jack! Japan
  • HeadRush
  • Austin Powers: Operation Trivia
Not a complete list, needs more testing