I've got a problem with this big file from Conception 2: Children of the Seven Stars for PC: The size of that one is at about 2.7GB, but I only see the file 00000000 (size is 10KB) when opening this archive with 7z. On the other hand, 7z notes that there are data behind the lonesome file I see. Question for me is now:
How can I make all those other files visible? It can't be that the file I can unpack from that one is the only file in it, 'cause that would make this file full of air...
Offtopic: Into Commodore 64 (6502) coding, pixeling or music?
Xentax is looking for new members for the C64 activities!
Just drop us a message at forum@xentax.com and join the Scene Team!
Forum rules: Click here
Xentax is looking for new members for the C64 activities!
Just drop us a message at forum@xentax.com and join the Scene Team!
Forum rules: Click here
Conception 2's .cfsi archive full of air?
- DKDave
- veteran
- Posts: 123
- Joined: Mon May 06, 2019 6:07 pm
- Has thanked: 1 time
- Been thanked: 42 times
Re: Conception 2's .cfsi archive full of air?
There are over 8,500 files in that archive.
This script should extract them all for you. It's specific to this archive, so probably won't work on anything else.
# CFSI extract
Set DATA_START 0x2d7a0
Goto 0x0003
For B = 1 to 405
# Get folder name/entry count
Get NAME_SIZE Byte
GetDString FOLDER_NAME NAME_SIZE
Get FOLDER_ITEMS Byte
If FOLDER_ITEMS = 0xFC
Get FOLDER_ITEMS Short
Endif
# Process entries for this folder
For A = 1 to FOLDER_ITEMS
Get NAME_SIZE Byte
GetDString FILENAME NAME_SIZE
Get OFFSET Long
XMath OFFSET "DATA_START + (OFFSET * 0x10)"
Get SIZE Long
Set OUT_FILE ""
String OUT_FILE + FOLDER_NAME
String OUT_FILE + FILENAME
Log OUT_FILE OFFSET SIZE
Next A
Next B
This script should extract them all for you. It's specific to this archive, so probably won't work on anything else.
# CFSI extract
Set DATA_START 0x2d7a0
Goto 0x0003
For B = 1 to 405
# Get folder name/entry count
Get NAME_SIZE Byte
GetDString FOLDER_NAME NAME_SIZE
Get FOLDER_ITEMS Byte
If FOLDER_ITEMS = 0xFC
Get FOLDER_ITEMS Short
Endif
# Process entries for this folder
For A = 1 to FOLDER_ITEMS
Get NAME_SIZE Byte
GetDString FILENAME NAME_SIZE
Get OFFSET Long
XMath OFFSET "DATA_START + (OFFSET * 0x10)"
Get SIZE Long
Set OUT_FILE ""
String OUT_FILE + FOLDER_NAME
String OUT_FILE + FILENAME
Log OUT_FILE OFFSET SIZE
Next A
Next B
"Each person is born with their fate written into their own genetic code. It's unchangeable, immutable. But that's not all there is to life." - Dr. Naomi Hunter