콘텐츠로 이동

압축

여러 포맷의 롬 파일을 압축하거나, 압축된 파일을 원본으로 복원하는 탭입니다. 파일 하나하나를 확인해서 압축인지 해제인지, 어떤 툴로 처리할지까지 전부 자동으로 판단합니다.

  • 원본 파일을 넣으면 자동으로 압축됩니다.
  • 압축된 파일을 넣으면 자동으로 압축이 해제됩니다.
  • 여러 파일/폴더를 한 번에 넣고 순서대로 일괄 처리할 수 있습니다.

키파일 필요 여부는 포맷마다 다릅니다. 아래 키파일이 필요한 경우 항목을 꼭 확인하세요.


변환 가능 조합

대상 압축 해제
CHDMAN ISO(표준), CUE(BIN), GDI, CCD(IMG) → CHD CHD → ISO, CUE(BIN), GDI (원본 종류에 따라 자동 결정)
Switch NSP, XCI → NSZ, XCZ NSZ, XCZ → NSP, XCI
Azahar (3DS) 3DS, CCI, CIA → ZCCI ZCCI → CCI
Dolphin ISO(비표준), GCM, WBFS, WIA, GCZ → RVZ RVZ → GCM 또는 WBFS (원본 종류에 따라 자동 결정, 둘 다 아니면 ISO)

화면 구성

  • 파일 목록 — No, 파일명, 변환(입력→출력 뱃지), 용량, 진행률, 상태(대기중/변환중/완료/실패/취소/미지원)가 표시됩니다.
    • 파일이나 폴더를 목록에 드래그 앤 드롭하면 추가됩니다. 폴더를 드롭하면 하위 폴더까지 전부 재귀적으로 뒤져서, 지원하는 확장자를 가진 파일만 골라 추가합니다(하위 목록 참고).
    • 파일 추가 버튼으로 여는 파일 선택 창도 지원 확장자로만 필터링되어 있습니다.
    • 이미 목록에 있는 파일(같은 경로)은 다시 드래그해도 중복 추가되지 않습니다.
    • 목록에서 우클릭하면 폴더 열기, 선택 삭제, 전체 삭제 메뉴를 사용할 수 있습니다.
  • 파일 추가 / 폴더 추가 / 선택 삭제 / 전체 삭제
  • 설정 — 압축 세부 옵션(레벨, 알고리즘 등)을 여는 버튼
  • 시작 / 취소

image


자동 판별 방식과 지원 확장자

목록에 추가할 수 있는 확장자는 다음으로 고정되어 있습니다.

.iso .cue .gdi .ccd .chd .nsp .nsz .xci .xcz .gcm .wbfs .gcz .wia .rvz .3ds .cci .cia .zcci

이 목록에 없는 확장자는 드래그해도, 파일 선택 창에서도 아예 추가되지 않습니다.

여기서 주의할 점: .bin.img는 이 목록에 없습니다. CD 이미지의 실제 데이터 파일이지만, 이 탭에서는 CUE/CCD가 참조하는 파일로만 취급되고 단독으로는 추가할 수 없습니다. - BIN 트랙을 압축하고 싶으면 BIN이 아니라 그 BIN을 참조하는 CUE 파일을 넣어야 합니다. CUE를 압축 대상으로 지정하면 chdman이 알아서 같은 폴더의 BIN을 찾아 함께 처리합니다. - IMG도 마찬가지로, 같은 폴더의 CCD 파일을 넣어야 인식됩니다.

확장자가 아니라 파일 내용(헤더)으로 정확한 포맷과 압축/해제 방향을 다시 한 번 판별합니다. 예를 들어 .iso, .gdi, .chd, .rvz, .wbfs, .wia, .gcz, .cci, .cia, .zcci는 파일 시그니처(매직 바이트)를 직접 읽어서 실제 포맷을 확정합니다. 그래서 확장자만 봐서는 헷갈리는 ISO(GC/Wii 표준 ISO vs CHDMAN용 CD ISO)도 정확하게 구분됩니다.


처리 순서와 재시작 규칙

  • 목록에 추가된 순서대로 하나씩 처리합니다.
  • 시작을 다시 누르면, 이미 완료되었거나 미지원으로 표시된 항목은 건너뛰고, 실패하거나 취소된 항목만 다시 시도합니다. 즉 일부만 실패했을 때 목록을 다시 정리할 필요 없이 시작 버튼만 다시 누르면 됩니다.
  • 처리 중 취소하면, 그 시점에 대기중이거나 진행 중이던 나머지 항목은 전부 "취소" 상태로 표시되고 더 진행되지 않습니다.

포맷별 세부 동작

CHDMAN 계열 (ISO / CUE / GDI / CCD ↔ CHD)

  • ISO/CUE/GDI → CHD: 파일을 그대로 chdman에 넘겨 압축합니다.
  • CCD → CHD: CCD는 chdman이 직접 다루지 못하는 포맷이라, 내부적으로 CCD/IMG를 먼저 임시 BIN+CUE로 변환한 뒤 그 임시 파일을 chdman으로 CHD 압축하고, 작업이 끝나면 임시 BIN/CUE는 자동으로 삭제됩니다. 최종적으로 남는 건 CHD 파일 하나뿐입니다.
  • CHD → 해제: CHD 내부에 기록된 원본 소스 타입을 CHD 헤더에서 직접 읽어 판단합니다.
    • 원본이 GD-ROM이었으면 → GDI로 복원
    • 원본이 BIN/CUE였으면 → CUE(+BIN)로 복원
    • 원본이 ISO/DVD였으면 → ISO로 복원
    • 헤더를 읽는 데 실패하면 안전하게 ISO로 취급합니다.
    • 즉 CHD 하나만 봐서는 겉보기엔 다 똑같아도, 실제로 풀었을 때 나오는 확장자는 원본에 따라 달라집니다.

Switch (NSP/XCI ↔ NSZ/XCZ)

압축 레벨

zstd 계열은 압축 레벨을 0~22까지 지정할 수 있지만, RomForge에서는 3~18까지만 지정 가능합니다. 19 이상은 속도가 급격히 느려지는 데 비해 압축률 차이는 미미해서 제외했습니다. (설정값이 어떤 이유로든 3 미만으로 내려가 있으면 실행 시 자동으로 3으로 보정됩니다.)

압축 모드

  • 블록: 탐색 가능, 고속 — 에뮬레이터에서 사용 가능
  • 블록리스: 탐색 불가, 고압축 (블록 대비 압축률 차이는 크지 않음)

압축 무결성 검증

압축 후 원본과 데이터가 동일한지 BLAKE3 해시로 검증합니다. 다른 플랫폼은 크게 문제가 없지만, Switch는 현세대 기기라 포맷이 바뀔 가능성이 있으므로 검증을 권장합니다. 검증 없이 원본을 삭제했다가 복구가 불가능해질 수 있습니다.

{FB6E9983-B013-4436-8FCF-1926D90C7FD7}

아자하르 (3DS: 3DS/CCI/CIA ↔ ZCCI)

압축 레벨 옵션만 있어 별도 설명은 생략합니다. 단, CIA는 본편(게임 타이틀)만 CCI로 복원할 수 있습니다. 업데이트나 DLC용 CIA를 넣으면 "업데이트/DLC 파일은 CCI 복원이 불가능합니다(본편만 가능)" 오류가 뜨고 해당 항목은 실패 처리됩니다.

돌핀 (GC/Wii: ISO/GCM/WBFS/WIA/GCZ ↔ RVZ)

압축 레벨 옵션만 있어 별도 설명은 생략합니다.

{1BAE73AF-AF18-46C2-8130-689E2D6311ED}


키파일이 필요한 경우

이 탭의 모든 변환이 키파일을 요구하는 건 아니지만, 아래 경우는 키파일이 없으면 아예 실행되지 않습니다.

변환 키파일 필요 여부
NSP/XCI → NSZ/XCZ (압축) 필요 (prod.keys 없으면 즉시 오류)
NSZ/XCZ → NSP/XCI (해제) 필요 (마찬가지로 prod.keys 필요)
CCI/CIA → ZCCI (압축) 암호화된 롬이면 필요. CIA는 항상 암호화되어 있어 사실상 항상 필요하고, CCI는 이미 복호화된 파일이 아닌 이상 대부분 필요합니다.
ZCCI → CCI (해제) 필요 없음 — 압축을 풀기만 하며 별도 복호화를 하지 않습니다.
CHDMAN / Dolphin 관련 전부 필요 없음

Switch는 압축·해제 양쪽 다 키파일이 무조건 있어야 하고, 3DS는 압축(→ZCCI)할 때만 필요하고 해제(→CCI)할 때는 필요 없다는 점이 서로 다르니 헷갈리지 않도록 주의하세요.


사용 방법

  1. 압축하거나 해제할 파일 또는 폴더를 목록에 드래그 앤 드롭합니다. 폴더째로 드롭하면 하위 폴더까지 뒤져서 지원 확장자 파일만 자동으로 담깁니다.
  2. 목록의 "변환" 뱃지에서 입력→출력 방향이 원하는 대로 잡혔는지 확인합니다.
  3. 필요하면 설정에서 포맷별 압축 옵션(압축 레벨, 알고리즘, 블록 모드, 검증 여부 등)을 조정합니다.
  4. 시작을 눌러 진행합니다. Switch/3DS 관련 파일이 섞여 있다면 미리 키파일이 등록되어 있는지 확인하세요.
  5. 실패한 항목이 있으면 로그에서 사유를 확인하고, 필요한 조치(키파일 등록, CUE로 다시 넣기 등) 후 시작을 다시 누르면 실패한 항목만 재시도됩니다.