이번 두번째 글에서는 CTF 테마를 분해했거나 flash0:/ 설치용 테마팩을 받은 경우, 그 안에 포함되어 있는 RCO 파일을 수정하는 방법에 대해 알아보겠습니다. 실력만 된다면 원본 RCO 파일을 직접 수정해서 자신만의 테마를 만들 수도 있겠죠.
-------------------------------------------------------------------------------------------
/VSH/RESOURCE/ 폴더에 저장되어 있는 RCO 파일들은 XMB의 아이콘이나 메뉴 이름 등 주로 외형적인 기능을 담당하는데, RCO 파일들을 수정하기 전에 각각의 rco 파일이 무슨 기능을 담당하는지 알아보겠습니다.
RCO 파일이 담당하는 기능 열기
펌웨어가 새로 발표될때마다 기능의 추가나 변경이 일어나기 때문에, 아래의 RCO 파일은 펌웨어 버전에 따라 호환될 수도 있고 호환되지 않을 수도 있습니다.
대표적으로 테마 배경과 게임부팅화면, 볼륨바 등은 펌웨어 버전과 상관없이 거의 대부분의 펌웨어에서 호환되지만, system_plugin.rco, opening_plugin.rco 파일 등은 거의 호환되지 않습니다. 이러한 호환성은 계속 달라지기 때문에 RCO 파일을 적용하기 위해서는 해당 펌웨어에 호환되는 것만을 사용하는 것이 제일 좋습니다.
만약 CTF 테마가 아닌 낸드플래시에 직접 테마팩을 설치하는 경우, RCO 파일이 호환되지 않아 벽돌이나 반벽돌이 되는 일이 생기게 되므로 주의하세요.
01-12.BMP (13-27.BMP) : 테마 배경화면
content_browser_plugin.rco : 음악 재생, 사진 보기 메뉴중 공통된 아이콘 등
game_plugin.rco : 게임 메뉴 진입시 보이는 아이콘 등
GAMEBOOT.PMF : 게임/홈브류/어플리케이션 실행시 로딩 화면 (=게임부팅화면)
htmlviewer_plugin.rco : 인터넷 검색 메뉴의 하위 아이콘 등
impose_plugin.rco : 볼륨바 및 이퀄라이저 아이콘 등
msvideo_main_plugin.rco : 비디오 메뉴 진입시 목록 아이콘과 비디오 재생시 메뉴 아이콘 등
music_browser_plugin.rco : 음악 메뉴 진입시 목록 아이콘 등
music_player_plugin.rco : 음악 재생 메뉴의 전용아이콘 등
npadmin_plugin.rco : 플레이스테이션 네트워크 메뉴의 하위 아이콘 등
opening_plugin.rco : 쿨부팅시 나오는 오프닝화면 및 게임부팅화면 로고 등
osk_plugin_500.rco : 풀사이즈 키보드 화면 등
osk_utility.rco : 온스크린 키보드 화면 등
photo_browser_plugin.rco : 사진 메뉴 진입시 목록 아이콘 등
photo_player_plugin.rco : 사진 보기 메뉴의 전용 아이콘 등
radioshack_plugin.rco : 인터넷라디오 메뉴의 하위 아이콘 등
rss_browser_plugin.rco : RSS채널 메뉴의 하위 아이콘 등
savedata_plugin.rco : 세이브데이타 메뉴 진입시 아이콘 등
sysconf_plugin.rco : 설정 메뉴의 하위 아이콘 및 USB 연결시 화면 등
system_plugin.rco : 기본 메뉴 텍스트 및 XMB 사운드 등
system_plugin_bg.rco : 배경 웨이브 등 (펌웨어 5.00이상에서는 테마 배경을 '클래식'으로 선택시만 적용.)
system_plugin_fg.rco : 배터리 아이콘 및 로딩 아이콘 등
topmenu_icon.rco : XMB의 아이콘 등
topmenu_plugin.rco : XMB의 메뉴 텍스트 등
visualizer_plugin.rco : 음악 재생시 비주얼라이즈 화면 등
하지만 각각의 RCO 파일이 한 가지 아이콘이나 기능만을 담당하는 것이 아니고 여러 개의 요소를 모두 포함하고 있습니다. 그러니 직접 RCO 파일을 열어 확인해보는 것이 제일 확실합니다.
또한 위에 열거된 RCO 파일 외에 추가적으로 다른 RCO 파일까지 수정해 사용하는 테마도 존재합니다.
RCO 파일 수정에는 RCO Editor라는 PC용 툴을 주로 사용합니다. 사용법도 쉽고, 거의 모든 RCO 파일을 수정할 수 있어 현재의 테마팩 발전에 엄청난 공을 세운 툴이죠. 하지만 대부분의 RCO 파일은 용량을 줄이기 위해 암호화/압축되어 있어 'Resurssiklunssi'라는 홈브류로 디크립트하는 과정을 거쳐야 합니다.
RCO 파일 디크립트하는 방법 열기
만약 아래에서 설명할 RCO Editor로 수정하려는 RCO 파일을 불러왔을 때 위와 같은 에러가 나온다면 아래 방법대로 Resurssiklunssi를 이용해 디크립트해야합니다. 반대로 RCO Editor에서 위의 에러가 나오지 않고 정상적으로 열린다면 이미 디크립트되어 있는 파일이므로 따로 Resurssiklunssi를 사용할 필요는 없습니다.
--------------------------------------------------------------------------------
일반 홈브류와 똑같이 Resurssiklunssi를 받아 PSP에 설치하면 되지만, 한 가지 문제는 바로 Resurssiklunssi가 1.50 커널 전용 홈브류라는 점입니다.
구형 PSP의 경우 1.50 커널 애드온을 설치하면 구동이 가능하지만 신형 PSP는 1.50 커널 애드온을 설치할 수 없기에 불가능합니다. 이 경우, 최근 발표된 LEDA를 PSP에 설치해서 구동하거나 아니면 타임머신을 이용해 1.50+3.40 펌웨어(구형 PSP는 1.50 펌웨어)로 부팅해서 실행해야 합니다.
(개인적으로 3.xx 커널용으로 새로 발표되기를 제일 바라는 홈브류입니다.)
그럼 1.50 커널을 사용할 수 있다는 가정하에 Resurssiklunssi의 사용법에 대해 알아보겠습니다.
1. 위의 첨부파일을 받아 압축을 풀고 그 안의 'PSP' 폴더와 'rco' 폴더를 메모리스틱 최상위에 복사합니다.
(단 구형 PSP에서 1.50 커널 애드온을 이용해 구동하려는 경우 ms0:/PSP/GAME/Resurssiklunssi 폴더를 ms0:/PSP/GAME150/ 폴더로 이동해야 합니다.)
2. RCO를 디크립트 또는 압축하기 위해서는 펌웨어 2.70 이상에서 추출한 sysmem.prx 파일이 따로 필요합니다.
http://popotz.textcube.com/970에 있는 PSRA Dumper를 이용해 정식 펌웨어 2.70의 EBOOT.PBP 파일을 네모버튼으로 덤프합니다. 그 후 ms0:/f0/kd/sysmem.prx 파일을 복사해서 ms0:/rco/ 폴더에 넣어줍니다.
(그 후 ms0:/f0/ 폴더는 삭제해도 됩니다.)
3. 이제 디크립트하려는 RCO 파일을 모두 ms0:/rco/ 폴더로 복사하면 준비는 완료됩니다.
4. XMB의 게임 - 메모리스틱 메뉴에서 Resurssiklunssi를 실행하면 위와 같은 화면이 나오게 됩니다.
세모버튼 : flash0:/vsh/resource/ 폴더에 있는 모든 RCO 파일을 디크립트한다. (수정 가능하게 됨)
네모버튼 : flash0:/vsh/resource/ 폴더에 있는 모든 RCO 파일을 압축한다. (수정 불가능하게 됨)
동그라미버튼 : ms0:/rco/ 폴더에 있는 모든 RCO 파일을 압축한다. (수정 불가능하게 됨)
엑스버튼 : ms0:/rco/ 폴더에 있는 모든 RCO 파일을 디크립트한다. (수정 가능하게 됨)
5. 우리는 ms0:/rco/ 폴더에 있는 rco 파일을 디크립트해야 하므로 엑스버튼을 눌러줍니다. 디크립트하는 과정이 완료된 후 엑스버튼을 누르면 프로그램이 종료되고 XMB로 복귀합니다.
6. ms0:/rco/done/ 폴더에 가보면 디크립트된 RCO 파일이 저장되어 있는 것을 확인할 수 있습니다. 원본 파일과 용량을 비교해보면 더 늘어났겠죠. 이제 이 RCO 파일들은 RCO Editor에서 불러와 수정할 수 있는 상태가 된 것입니다.
# 설명하는 김에 Resurssiklunssi로 RCO 파일의 용량을 줄여 압축하는 방법에 대해서도 알아보겠습니다.
CTF 테마를 사용하는 경우에는 굳이 할 필요가 없겠지만 flash0에 직접 설치하는 경우에는 반드시 압축하는 것이 좋겠죠. Resurssiklunssi로 압축을 하게 되면 용량이 반 이상 줄어들게 됩니다.
1. 위의 디크립트할 때와는 반대로 이미 디크립트되어 RCO Editor에서 수정한 RCO 파일을 ms0:/rco/ 폴더로 복사합니다.
2. 다시 Resurssiklunssi를 실행하고 이번에는 동그라미버튼을 눌러 압축을 시작합니다. 잠시 후 압축 과정이 완료되면 엑스버튼을 눌러 프로그램을 종료합니다.
3. ms0:/rco/done/ 폴더로 가보면 압축된 RCO 파일이 저장되어 있는 것을 확인할 수 있습니다. (이전과는 반대로 원본 파일보다 용량이 줄어들어 있겠죠.)
4. 이렇게 압축된 RCO 파일을 CTF Manager를 통해 CTF로 생성하거나 flash0:/에 직접 설치하면 됩니다.
그럼 디크립트된 RCO 파일을 RCO Editor로 수정하는 방법에 대해서 알아보겠습니다. 무슨 RCO 파일이냐에 따라 수정할 수 있는 항목이 달라지게 되므로 간단한 사용법 정도만 다루도록 하겠습니다.
RCO Editor의 기본적인 사용법 열기
위 첨부파일을 받아 압축을 풀고 그 안의 'RCOEdit.exe'를 실행하면 위와 같은 프로그램이 실행됩니다.
이제 'Open RCO...' 버튼을 통해 디크립트된 rco 파일을 불러오거나 rco 파일을 바로 드래그해서 RCO Editor 창으로 끌어놓으면 수정이 가능합니다.
RCO Editor는 크게 4개의 탭이 존재하는데,
General Resour. : 아이콘, 로고 등의 이미지 관련
Text Data : 시스템 언어 설정에 따라 나타나는 메뉴 이름 등의 텍스트 관련
Page Data : 각 요소의 크기 및 위치 관련
Anim Data : 동적인 요소의 움직임이나 딜레이 등의 이벤트와 관련
RCO 파일 종류에 따라 담고 있는 정보가 다르기 때문에 RCO Editor로 수정할 수 있는 항목 역시 RCO 파일에 따라 달라지게 됩니다. 주로 사용되는 건 General Resour.탭과 Text Data탭이며 나머지 2개의 탭은 전문적인 내용으로서 특수한 경우에만 사용됩니다.
RCO Editor로 RCO 파일을 수정했을 경우에는 따로 저장해줄 필요 없이 바로바로 변경사항이 갱신되어 원본파일에 적용됩니다. 그리고 수정 전의 원본 파일은 *.rco.bak이라는 파일명으로 백업되어 만약 문제가 생겼을 때에 원래대로 쉽게 돌아갈 수 있습니다.
그리고 RCO Editor의 옵션 메뉴로 들어가면 위와 같은 항목의 설정을 변경할 수 있습니다.
기본적으로는 설정을 변경할 필요는 없으며, 저도 잘 설명할 자신이 없으므로 생략합니다. ㅡㅡ;
General Resour. 탭 사용법 열기
그럼 가장 기본이 되는 아이콘의 변경 방법에 대해 알아보겠습니다.
아이콘을 담당하는 RCO 파일을 불러오면 위처럼 General Resour. 탭에 포함되어 있는 그림 파일의 목록이 나오게 됩니다. (위의 화면은 XMB의 아이콘을 담당하는 topmenu_plugin.rco 파일을 불러온 모습입니다.)
그리고 오른쪽에는 그림 파일을 추출하거나 변경할 수 있는 버튼이 있고 그 아래에 미리보기창이 보입니다.
우선 버튼의 역할을 설명하자면...
Extract... : 현재 커서가 위치한 그림 파일 하나만을 추출합니다. (32비트 BMP, 8비트 BMP, DAT, GIM 형식으로 추출 가능합니다.)
Extract all... : 모든 그림 파일을 지정한 폴더로 추출합니다. (4가지 형식으로 모두 추출됩니다.)
Replace... : 현재 커서가 위치한 그림 파일 하나만을 교체합니다. (gim, mig, bmp, png 형식을 지원합니다.)
Replace multiple... : 지정한 폴더를 이용해 모든 그림 파일을 교체합니다. (교체를 위해서는 그림 파일 이름이 형식에 맞아야 합니다. 이 기능은 Extract all..과 연계해서 사용하면 좋습니다. 예를 들어 3.71용 RCO에서 모든 그림 파일을 추출한 뒤 5.00용 RCO에서 교체하는 등의 작업에 사용됩니다.)
미리 준비한 그림 파일이나 다른 테마에서 추출한 그림 파일이 있다면 바로 아이콘의 교체가 가능합니다.
또한 빈 그림파일을 지정해주면 그림 파일이 아예 보이지 않도록 할 수도 있습니다. (나중에 다룰 게임부팅화면의 로고 삭제 방법에서 이러한 방식을 사용하게 됩니다.)
그 아래로 미리보기 창이 보이는데, 이 창을 클릭하면 아래처럼 미리보기 창이 팝업창으로 뜨게 됩니다.
창의 크기 역시 변경이 가능하므로 크기가 큰 이미지 등을 확인할 때 사용할 수 있으며, 아이콘색상과 배경색상이 비슷해서 잘 구분이 가지 않을 경우, 마우스 오른쪽 버튼을 누르면 배경색상도 변경 가능합니다.
---------------------------------------------------------------------------------
테마를 만들 경우 제일 중요한 것이 바로 RCO 파일에서 사용할 그림 파일을 만드는 것이겠죠.
다른 테마에서 추출한 그림 파일을 그대로 사용하는 것이 아니고 스스로 아이콘 등을 만들 경우 단순한 그림 파일로만 저장하면 PSP에서는 제대로 나타나지 않게 됩니다.
이에 대한 설명은 길어질 것 같으니 다음 글에서 자세히 다루겠습니다.
Text Data 탭 사용법 열기
Text Data 탭에서는 XMB에서 보여지는 텍스트를 변경할 수 있습니다.
위의 화면은 XMB의 주요 메뉴 이름을 담당하는 topmenu_plugin.rco 파일을 불러온 모습입니다.
PSP의 메뉴 이름은 시스템 언어 설정에 따라 언어가 달라지는데, Text Data 탭의 오른쪽 Language 메뉴를 통해 언어를 선택할 수 있습니다.
그 후 왼쪽 목록을 선택해서 자신이 원하는 메뉴 이름으로 변경해주고, 그 아래 'Change' 버튼을 통해 저장하면 됩니다.
Ctrl+엔터 또는 shift+엔터를 통해 줄바꿈을 할 수 있으며, 스페이스바로 앞쪽에 여백을 줄 수도 있습니다.
몇몇 테마팩의 경우 메뉴 이름이 화면 아래에 나타나거나 위치가 달라지는 경우가 있는데, 바로 여기서 조절해주는 것이죠.
이제 이렇게 수정한 RCO 파일을 flash0:/의 원본파일과 교체하거나 CTF로 합쳐서 적용하면, 위의 그림처럼 변경된 메뉴 이름을 사용할 수 있습니다.
참고로 XMB의 거의 모든 주요 메뉴 이름은 topmenu_plugin.rco 파일에 담겨있으며, 다른 RCO 파일은 세부적인 메뉴 이름(사진 보기의 메뉴 등)을 담고 있습니다.
또한 자신이 사용하는 언어 외에 다른 언어의 메뉴 이름을 모두 삭제해주면 해당 RCO 파일의 용량을 많이 줄일 수도 있습니다.
기타 탭의 사용법 열기
위에서 잠깐 언급했듯이 나머지 Page Data, Anim Data 탭은각 요소의 위치나 동적요소의 제어에 사용됩니다.
하지만 변경할 수 있는 것이 제한적이며, 또 복잡한 감이 있어 특별한 일이 없는 경우 건드릴 필요는 없습니다.
예를 들어 topmenu_plugin.rco 파일은 Page Data 탭에서 XMB 메뉴의 위치를 조절할 수 있습니다.
그러면 위의 그림처럼 XMB 자체의 기본 위치가 변경됩니다.
그 외 다른 RCO 파일에서는 각 RCO 파일이 담당하는 요소의 위치를 변경할 수 있습니다.
배터리 아이콘이나 시계 아이콘의 위치 변경도 가능하죠.
또 opening_plugin.rco의 Anim Data 탭에서는 나중에 다룰 부팅영상 시간 등의 변경이 가능합니다.
하지만 RCO 파일에서 변경할 수 있는 범위는 극히 제한적이며, 좀 더 색다른 테마를 위해서는 나중에 다룰 PRX 파일을 수정하는 것이 좋습니다.
그 외 어떤 식으로 사용할지는 RCO 파일 종류에 따라 완전히 달라지므로 모두 설명할 수는 없고, 각자 테스트해가면서 알아가는 것이 좋습니다.
# 겨우 2번째 글인데도 힘들군요. 하고 싶은 말은 많은데 그걸 다 썼다가는 끝이 안날 것 같습니다. 또 제가 모르는 부분도 많구요. 몇 번만 만져보면 어느 정도 감이 생길테니 직접 테스트하면서 확인하는 것이 제일 좋겠네요. 테마를 만들거나 수정하는 건 경험을 쌓는 것이 제일입니다. 다른 테마의 RCO 파일을 들여다보면서 연구해보는 것도 좋겠네요.
# 지금까지는 서론이었고 다음 글에서는 테마 만들기의 가장 기본이 되는 RCO 파일에서 사용하는 아이콘 그림을 만드는 방법에 대해 알아보겠습니다. 그 후 RCO Editor를 이용해 할 수 있는 대표적인 활용법(게임부팅화면 로고 지우기, 게임부팅화면 시간 조절하기 등)을 다루는 것으로 RCO와 관련된 내용은 끝내야겠군요.
마침 오늘 CTF테마를 만들어보려했는데 +ㅁ+
답글삭제열심히 읽고 있습니다~~ 힘드셔도,, 수고해주세요..^^
답글삭제만약 신형 5.50 gen-a 사용잔데요 오프닝 플러그인.rco 를 디크립트를 해야 로고를 지울 수있다면..
답글삭제신형이니까 디크립트 자체를 못하는거죠?
@michael0404 - 2009/07/22 00:02
답글삭제michael0404 / 타임머신을 이용하면 가상으로 펌웨어1.50+3.40으로 부팅가능합니다. 거기서 디크립트가 가능하죠.
그게 아니라도 해외 포럼이나 자료실을 검색해보면 디크립트된 원본 RCO 파일이 올라와있으니 그걸 받아서 사용해도 되구요.
RCO파일에서 아이콘만 수정해서
답글삭제분해했던 파일들하고 다시 합치면 아이콘들만 안바뀌나요?
그렇게 했는데 안되네요''
5.0에서 오프닝플러그인.rco추줄해서 Resurssiklunssi_0.3를 사용했는데 디크립트가 안되네요. LEDA를 사용해서그런걸까요??
답글삭제5.50 GEN-D 인데
답글삭제rco파일 디그립트에서 5번과정에서 계속 에러납니다..
X버튼을 누르면
this application has crashed
Exception - Bus error (data)
EPC - 0890B294
Cause - 1000001C
Status - 20008613
BadVAddr - 80000000
zr 00000000 at 34000000 v0 09FA1B24 v1 00008613
a0 00000000 a1 00000000 a2 00000064 a3 001F0000
t0 34000001 t1 4000B000 t2 FFE0FFFF t3 DEADBEEF
t4 DEADBEEF t5 DEADBEEF t6 DEADBEEF t7 DEADBEEF
s0 08A2D04C s1 00010C0D s2 000194D8 s3 000193D8
s4 08A20000 s5 08910000 s6 08A1C440 s7 08910000
t8 DEADBEEF t9 DEADBEEF k0 09FFEF00 k1 00000000
gp 0891ED50 sp 09FFEA70 fp 08911A28 ra 08900890
라고 계속뜨네요
leda가 아닌 eloader 이용해서 Resurssiklunssi구동했습니다만 그게 이유인것같진 않습니다
왜 이럴까요..
디크립트된 rec 파일을 어디서받을수있나요?
답글삭제외국사이트들어가도 영어라서 뭘받아야될지 모르겠어요;;
도와주세요ㅠㅠ
@Hh5 - 2010/03/11 23:27
답글삭제Hn5 / 포포츠포럼에서 ZeNiMapia님이 작성하신 글을 참고하세요.
http://popotz.shworks.com/forum/viewtopic.php?id=946
(가입 필요)
Resurssiklunssi 로 디크립트 힘들면
답글삭제http://endlessparadigm.com/forum/showthread.php?tid=4142
여기에 자료가 있군요