USB 카트리지 덤퍼나 기타 합법적인 방법으로 ROM 파일을 확보했다면, 이제 ROM 해킹(Rom Hacking) 씬에 직접 참여해볼 준비가 된 것입니다. 국제 패칭 시스템(International Patching System, .IPS) 파일은 프로그래머가 원본 게임의 코드를 배포하지 않고도 변경된 게임 ROM 데이터를 공유할 수 있도록 해줍니다. 덕분에 파생 저작물 게임을 배포할 때 발생할 수 있는 라이선스 문제를 상당 부분 피할 수 있습니다.
Windows나 macOS에서는 이런 패치 파일을 적용하려면 별도의 전용 유틸리티가 필요하지만, 리눅스에서는 간단한 파이썬(Python) 스크립트 하나면 충분합니다. 컴파일된 프로그램이 아닌 인터프리터 방식의 스크립트이기 때문에 대부분의 최신 GNU/Linux 배포판에서 별도의 빌드 과정 없이 바로 실행할 수 있다는 점이 큰 장점입니다.
Lazy IPS로 IPS 패치 적용하기
먼저 Boris Timofeev가 개발한 Lazy IPS라는 패키지가 필요합니다. 이 도구는 lazy_ips.py.zip이라는 이름으로 배포되며, 안전을 위해 사용 전에 백신 검사를 거치는 것이 좋습니다. 압축은 노틸러스(Nautilus) 등 파일 관리자에서 파일을 마우스 오른쪽 버튼으로 클릭한 뒤 "여기에 압축 풀기"를 선택하거나, 터미널에서 unzip 명령어를 입력해 해제할 수 있습니다. 압축을 풀면 lazy_ips.py라는 단일 파일이 생성됩니다.
파일을 더블클릭하거나 터미널에서 ./lazy_ips.py를 입력해 스크립트를 실행하세요. 실행 권한을 요청하는 메시지가 나타나면 허용하면 됩니다. 프로그램 창은 시스템의 GTK 테마 색상에 맞춰 표시되므로, 사용자 지정 GTK 색상이나 글꼴을 사용 중이더라도 자연스럽게 어울립니다. 참고로 이 도구는 root 권한 없이도 정상적으로 작동하니 굳이 관리자 권한으로 실행할 필요가 없습니다.
패치 적용 단계
첫 번째 파일 입력 칸 옆의 'Open' 버튼을 클릭하고, 열리는 창에서 패치를 적용할 ROM 파일을 선택합니다. ROM의 확장자는 게임이 원래 구동되던 하드웨어 종류에 따라 달라질 수 있습니다.
다음으로 두 번째 'Open' 버튼을 눌러 적용할 IPS 패치 파일을 선택하세요. 이때 'Create a backup file'(백업 파일 생성) 옵션에 체크가 되어 있는지 반드시 확인하시기 바랍니다. 안전을 위해 원본 ROM의 사본을 다른 디렉터리에 추가로 보관해두는 것도 좋은 습관입니다.
준비가 끝났으면 'Execute' 버튼을 클릭하고 화면에 'Done'이 표시될 때까지 잠시 기다립니다. 작업이 완료되면 'Quit' 버튼을 눌러 프로그램을 종료할 수 있습니다.
패치 결과 확인하기
패치가 제대로 적용되었는지 확인하려면 Lazy IPS에서 사용했던 ROM 파일을 마우스 오른쪽 버튼으로 클릭한 뒤 속성 창을 열어보세요. 파일의 수정 날짜가 프로그램을 실행한 날짜와 일치하면 정상적으로 패치된 것입니다. 또한 같은 디렉터리에 생성된 .bak 파일은 Lazy IPS가 자동으로 만들어둔 원본 백업이므로, 문제가 생길 경우 이를 통해 언제든 되돌릴 수 있습니다.
저자 소개

Kevin Arrows
Kevin Arrows는 10년 이상의 업계 경험을 갖춘 베테랑 기술 전문가입니다. Microsoft Certified Technology Specialist(MCTS) 자격증을 보유하고 있으며, 최신 기술 동향을 꾸준히 학습하는 데 남다른 열정을 지니고 있습니다. 소프트웨어 개발, 사이버 보안, 클라우드 컴퓨팅 등 폭넓은 분야에서 활발하게 집필 활동을 이어오고 있으며, 복잡한 기술 개념을 명확하고 간결하게 풀어내는 능력으로 동료들에게 폭넓은 인정과 신뢰를 받고 있습니다.