세가 새턴(이하 SS)에 대한 자세한 자료는 야바 시뮬레이터 위키피디아를 보면 됩니다.
 https://wiki.yabause.org/index.php5?title=SH-2CPU 

먼저 ss의 메모리는 2개의 존으로 나뉘는데 하나는 고단존, 크기는 0x100000, 즉 1m이고 주소는 0x060000-0x06100000입니다. 이 부분을 고단존이라고 합니다. 런닝 프로그램 dma 복사 따위는 비교적 빠릅니다. 일반적으로 ss 게임 프로그램 쪽의 파일들은 여기에 우선적으로 놓습니다.

다른 하나는 저단 구역으로 크기도 0x100000, 이것도 1m이며 주소는 0x00200000-0x00300000이고 이 부분을 저단 구역이라고 하며 속도는 고단 구역보다 느리지만 육안으로 구별할 수 없고 프로그램도 달릴 수 있습니다.


ss의 현존분은 vdp1 vdp2입니다.
vdp1 크기는 512kb 주소 0x5c0000-0x05C80000이며, vdp1은 일반적으로 활성 블록을 처리하는 레이어로 사용됩니다.
vdp2 크기는 512kb 주소에서 0x5e0000-0x05e80000이며, vdp2는 일반적으로 배경 레이어로 사용됩니다.

또한 색상표가 있는데 주소는 0x05F00000이고 크기는 4kb, 즉 0x1000이며 vdp1 및 vdp2 레이어로 16색 또는 256색일 때 색상표로 사용됩니다.
자세한 자료를 보고 싶으면 위의 인터넷 주소로 가시면 아주 상세하게 쓰여 있습니다.

ss 본체는 전원을 켠 후, 먼저 bios를 실행하고, bios에 예약된 전원 켜기 애니메이션을 재생하고, 재생하는 동안 일련의 조작과 각종 초기화 및 검증을 수행합니다(ss 본체는 대부분 국내에서 직독을 했기 때문에, 광 드라이브 잠금 해제 및 원본 디스크 검증은 제쳐두고, 그곳은 복잡합니다. 사실 저도 잘 모르겠습니다. 그래서 다음 설명은 모두 디폴트 광 드라이브와 다른 검증은 통과했습니다.)

첫 번째 bios 애니메이션을 재생한 후 프로그램이 카세트를 삽입했는지 여부를 우선적으로 검사합니다. 네, 잘못 보지 않았습니다. 카세트의 우선도가 CD보다 높습니다. 카세트가 삽입되지 않았거나 카세트 안에 있는 ip 헤드의 데이터와 bios가 일치하지 않는 것을 감지해야 CD를 읽을 수 있습니다.

방금 ip 헤더 데이터에 대해 말했는데, 여기서 전개 설명을 하겠습니다.
ss는 cdrom CD를 매개로 하고 포맷도 표준인 ISO9660 파일 시스템이기 때문에 ISO9660 파일 시스템 중 하나는 CD의 처음 32kb는 그대로 두고 이 32kb 안에 다른 데이터를 넣을 수 있다는 것입니다.
그래서 SEGA는 제가 알기로는 sega cd 본체부터 이렇게 플레이한 것 같습니다. 이 32kb를 가지고 와서 게임 정보 및 검사 데이터를 넣습니다. 이곳은 sega cd에서 ss에서 dc까지 모두 그렇습니다(단, dc가 처음의 32kb를 읽는 것이 아닙니다) 세가의 오래된 전통 기술이라고 할 수 있습니다.

새턴에 대해 말하자면, 우리는 보통 이 32kb 데이터를 ip 파일이라고 합니다. ss가 켜졌을 때, 카세트가 본체에 꽂혀 있지 않거나 카세트 안의 ip 파일의 헤더가 정확하지 않으면 CD-ROM의 처음 32kb 데이터를 읽습니다. 이 32kb는 기본적으로 ss의 높은 메모리 0x06002000으로 읽힙니다. 즉, 32kb는 0x8000 크기이고 주소는 0x06002000-0x0600a000입니다(주의, 여기는 고정되어 있으며 변경할 수 없습니다).

32kb 데이터를 메모리에 읽으면 첫 번째 동영상을 재생한 바이오스는 06002100이라는 곳, 즉 ip 파일의 0x100 주소로 건너뜁니다.(여기서 중점적으로 말하면, 여기의 주소는 redump와 같은 2352bin 형식이 아닌 2048의 ISO 형식의 주소를 가리킨다. bin 형식은 edcecc 검사를 포함하고 있기 때문에 실제로 2352bin 형식에는 2048바이트마다 304바이트 섹터 데이터가 포함되어 있으며, 이 2048바이트의 데이터가 올바른지 검사 및 수정하기 위해 사용됩니다. 그 중 16바이트 섹터 머리 데이터는 2048데이터의 머리 부분에 있고, 뒤에 남은 edcecc 검사 데이터는 끝에 있습니다. 아래 그림 보기)

0x100 여기서부터는 ip데이터와 SEGA의 큰 글자를 체크하는 곳입니다. 즉, 이 데이터가 bios 내의 일치 여부를 판단하여 일치하지 않으면 bios의 9구 관리 화면으로 돌아갑니다.

ip 파일에 대한 설명을 계속 진행합니다. 인터넷에 비교적 자세한 자료가 있을 것입니다. 여기서 간단히 말씀드리자면, ip 파일의 처음 0x100바이트는 게임 이름 버전 연도와 같은 게임 정보입니다. 0x100부터가 프로그램 입구입니다. sega 화면을 표시하고 데이터를 검증한 후 마지막으로 게임에 들어갑니다.

여기서 ip헤드의 0xf0이라는 주소를 중점적으로 말하는데, 이 주소는 매우 중요합니다. 프로그램이 ip파일 입구에 들어간 후, 즉 0x100 여기에서는 검사데이터와 세가화면을 표시한 후, 이 주소(보통 이 주소는 0x06004000 또는 0x06010000)에 따라 디스크 내의 첫 번째 파일을 이 주소로 읽으면 해당 게임의 메인 프로그램 파일(주의, 여기는 고정되어 있으므로 변경할 수 없음)로 간주할 수 있습니다. 그리고 일반적인 게임은 바로 이 주소로 건너뛰어 게임을 시작합니다. 또한 주의하십시오. ip는 메모리에 있는 주소입니다.

그러나 몇 가지 예외가 있습니다. 예를 들어, 내가 몇몇 capcom 게임을 만났을 때, ip 파일을 메모리에 저장하여 자주 사용하는 함수를 여기에 넣어 게임에서 호출하거나, 어떤 게임은 메인 프로그램 파일을 읽은 후에 메인 프로그램의 시작 부분으로 건너뛰지 않고 머리 N 바이트를 건너뜁니다.
어쨌든 세가의 대자검사가 정상으로 나온 후, 본격적으로 각종 조작을 시작할 수 있고, 주도권은 게임에게 돌아갑니다.

여기까지 얘기하자면 작동 원리를 알았으니 ISO 미러를 재구성하는 것은 간단합니다.

먼저 게임의 ip파일을 추출하여 하드디스크에 복사한 후 makeisofs와 같은 ISO파일을 만드는 도구를 이용하여 쉽게 게임을 미러링할 수 있습니다.
(다시 한 번 주의하십시오. MODE2/2352 게임의 경우 미러 안의 게임 파일을 모두 하드 드라이브에 복사하는 것은 어려운 일이 되었습니다. 가상 CDE2/2352 포맷을 사용하여 일부 파일을 복사할 때 항상 알림 오류가 발생하므로 미러를 직접 수정하여 edcecc 검사 데이터가 일치하지 않는 경우를 제외하고 원본 redump 파일에 이 문제가 발생하는 것은 MODE2/2352 포맷이 edcc 데이터를 대부분 줄이고 용량을 절약하기 때문에 디스크 한 장에 더 많은 데이터를 저장할 수 있기 때문입니다.

그러나 MODE2/2352 포맷의 데이터도 문제를 가져왔습니다. 그것은 바로 이러한 데이터를 수정할 수 없다는 것입니다. 즉, CD-ROM에서 가져온 데이터가 손상되었을 수도 있습니다. 따라서 MODE2/2352 데이터는 일반적으로 소리나 CG 영상과 같은 것입니다. 데이터가 약간 손상되었다 하더라도, 기껏해야 잡음이나 화면과 같은 것은 잘못된 프로그램을 읽은 후에 여기에 실행되어 블랙 스크린이 나타날 때보다 훨씬 낫습니다.

그러면 게임이 MODE2/2352 포맷을 사용하고 있는지 어떻게 구분하면 간단합니다. redump의 bin 파일을 예로 들자면 압축을 풀면 게임 후에 cue 파일이 하나 있을 것입니다. 메모장으로 이 cue 파일을 열면 모두 영어로 되어 있습니다. 이 cue에 MODE22352 같은 단어가 들어 있는지 검색해 보세요. 없으면 만사입니다. 있다면 그 파일들을 추출해 보십시오.

물론 마지막 경우도 있습니다. MODE2/2352 포맷은 아니지만 항상 그렇게 많은 파일이 추출되지 않습니다. 이 파일들에 대해서는 일반적으로 트랙 파일의 인덱스입니다. 대부분의 게임들은 이러한 인덱스에 따라 파일을 위치시키지 않기 때문에 이 파일들은 남기지 않아도 됩니다. 이런 파일들은 보통 CDDA track 같은 단어나 .da 접미사가 붙은 파일들이며, 이것들은 무시하셔도 됩니다. 없어도 됩니다.

그 위에 가득 찬 무더기는, 사실 대부분 원리 설명으로, 실제로 조작해 보면 2단계에 불과합니다.
1 가상 드라이브 미러링 후 ip 파일 추출
2 하드 드라이브에 게임 파일 복사
3 ISO 미러링 생성

이렇게 생성된 ISO 미러링을 에뮬레이터로 테스트할 수 있습니다(많은 트랙을 가지고 있는 일부 게임에서 ISO를 직접 테스트하면 게임에서 검은 화면과 같은 현상이 발생할 수 있습니다. 그것은 트랙을 읽는 데 오류가 있기 때문입니다. 만약 트랙이 있다면, 다음 방법으로 트랙을 로딩한 후 테스트하십시오)

ISO 형식은 트랙이 없기 때문에, 만약 게임에서 트랙을 사용했다면 어떻게 해야 재생 트랙을 불러올 수 있습니까? (만약 게임에 트랙이 하나밖에 없다면, 이 트랙은 아마도 ss 디스크의 트랙이라는 경고일 것입니다. 테스트 기간 동안 첨부하지 않아도 됩니다. 나중에 완성할 때 다시 넣을지 고려하십시오)

사실 방법도 간단합니다만, 여기에서는 첨부한 게임을 예로 들어 보겠습니다.
당신이 생성한 ISO를 원본 redump 파일과 함께 놓고 메모장으로 원본 cue 파일을 엽니다.

CATALOG 0000000000000
FILE "AI Shougi (Japan) (Track 1).bin" BINARY
  TRACK 01 MODE1/2352
    INDEX 01 00:00:00
FILE "AI Shougi (Japan) (Track 2).bin" BINARY
  TRACK 02 AUDIO
    INDEX 00 00:00:00
    INDEX 01 00:02:00


이 cue 파일 안에 "AI Shougi (Japan) (Track 1).bin" 이라는 파일명이 있는 것을 발견할 수 있습니다. 이름을 당신의 ISO 이름으로 바꾸고, 중국어 이름일 수 없으며, 접미사도 변경해야 합니다. 그리고 이름 앞뒤의 "기호는 모두 그대로 두고, 그 다음 줄의 2352를 2048로 변경하여 저장하면 됩니다.


수정된 cue 파일은 이렇습니다.

CATALOG 0000000000000
FILE "1.iso" BINARY
  TRACK 01 MODE1/2048
    INDEX 01 00:00:00
FILE "AI Shougi (Japan) (Track 2).bin" BINARY
  TRACK 02 AUDIO
    INDEX 00 00:00:00
    INDEX 01 00:02:00
이렇게 가상 드라이브로 이 cue를 불러올 때 자동으로 트랙이 로딩되는데, 그 동안 에뮬레이터로 테스트하거나 다른 도구로 포장된 bin+cue 파일을 재생성해도 됩니다.

이쯤 되면 이번 호는 마치겠습니다만, 이건, 한화 튜토리얼이라기보다는 거울 수정 재구성 튜토리얼입니다.
한화 과정에서 많은 문서를 수정해야 하기 때문에 문서가 줄어들거나 커지기 때문에 단순히 미러링 조작이 번거롭습니다. 미러링을 다시 하면 이 부분에 대한 부담이 없습니다. 문자 라이브러리 텍스트를 찾는 것도 좀 더 수월합니다. 이론적으로 대부분의 ss게임은 이 방법으로 미러링을 다시 할 수 있습니다. 적은 부분은 LBA를 직접 위치시켜 읽는 게임의 예외로 인해 현재로서는 경험하지 못한 것입니다.
또한 일부 게임에서는 파일 이름으로 읽지 않고 CD에 있는 파일의 번호에 따라 읽습니다(예를 들어 프로그램이 CD에 있는 5번째 파일을 직접 지정해서 읽습니다-_-) 따라서 이러한 게임에 대해서는 CD에서 파일 수를 늘리거나 줄이면 안 됩니다.

물론 미러링을 다시 하는 것도 단점이 있습니다. 미러링을 다시 한 후 미러링이 원래 미러와 비교했을 때 차이가 매우 크다고 할 수 있기 때문에 패치가 더 클 수도 있기 때문에 패치를 직접 나누는 방식은 불가능할 수 있습니다. 미러링 파일 전체만 공유하면 법에 저촉되는 결과를 초래할 수 있습니다. 물론 이 부분은 저희 논의의 대상이 되지 않습니다.

마지막 규칙: 압축 팩 ss_make_iso.rar (1155 K) 다운로드 횟수: 15, 압축 팩에 일반 IP 파일이 들어 있습니다. 압축 팩을 풀면 가상 광 드라이브로 로드됩니다.
게임 미러링에 들어가서 게임 파일을 data 디렉토리에 모두 복사한 후 ip.bin 파일의 헤더와 0xf0 주소를 수정하여 원래 게임과 동일하게 변경

마지막으로 더블클릭하여 1.bat를 실행하시면 됩니다(iso의 이름을 수정하시려면 메모장으로 bat파일을 열어 해당 이름을 수정하시면 됩니다)

다른 압축 패키지는 게임입니다. AI Shougi (Japan) 을 테스트하기 위해 작은 압축 패키지를 선택했습니다. zip (1835 K) 다운로드 수: 5

마지막으로 sonic3D의 큰 자료, sky0611의 회초리 및 여러분의 성원에 감사드리며, 많은 분들이 ssdc의 품에 안긴 것을 환영합니다. 모르는 것이 있으면 답글을 달아주세요.

 

ip 파일을 추출하는 방법을 따로 보내주세요, 압축팩 안의 ip 파일로 만든 미러를 사용할 수 없다면 원본 ip 파일을 사용해 볼 수 있으며 추출 방법은 다음과 같습니다.
가상 CD-ROM을 사용하여 원본 미러를 로드한 후 IsoBuster라는 도구를 사용합니다. (메이크업 π로 검색하여 다운로드하십시오)
IsoBuster를 열고 게임 디스크로 이동합니다.
볼륨 레이블에서 마우스 오른쪽 버튼으로 데이터 추출 선택 - 세그먼트 주소 지정, 유형 선택 사용자 데이터-2048, 길이 선택 16, 포인트 추출 시작, ip.bin 파일로 저장하시면 됩니다.

 

현재 삼국지2 적벽대전만 있습니다 게임 많은 프로그램들이 ip안에 있는 함수를 사용하고 있기 때문에 교체가 불가능하고 원본 ip파일만 사용할 수 있습니다.

----------------------------------------------------------------

안녕하세요, 세가 토성의 중국화 강좌가 또 있습니다. 이번에는 게임 속 그림의 중국화에 대해 이야기하겠습니다.
아래의 설명은 모두 저의 개인적인 경험과 추측입니다. 만약 틀린 말이 있으면, 시정해 주십시오.

저번 튜토리얼에서 말씀드린 게임을 예로 들려고 했는데, 그 게시물에 한화의 문제가 있어서 마침 그 게임으로 먼저 튜토리얼 시범을 보여드리도록 하겠습니다.

본 게시물은 다음과 같은 소프트웨어와 관련이 있습니다. 소프트웨어의 사용과 다운로드는 메이크업 π 검색 학습을 요청하며, 본 게시물은 지나치게 많은 소개를 하지 않습니다.

1 야바우스(ss 에뮬레이터)
2 winhex(16진수 편집 소프트웨어)
3 CrystalTile2 이하 ct2(국내 한화팀 거물들이 쓴 소프트웨어로, 주요 용도는 도트 매트릭스 생성 및 편집)
4 Photoshop (이미지 편집 소프트웨어)

위의 3가지 소프트웨어는 당신이 잘 알고 있는 다른 소프트웨어로 대체할 수 있으며, 주로 목적을 달성하면 됩니다.

먼저 시뮬레이터를 실행해서 게임을 켠 다음 수정해야 할 화면이 나올 때까지 게임을 실행하면 됩니다.

yabause 에뮬레이터는 저장된 레이어를 열고 닫는 단축키를 제공하므로
오른쪽 작은 숫자 키패드 12 34 56과 같은 레이어 바로 가기 키를 볼 수 있습니다. 

그래서 게임 화면에서 어떤 레이어를 켜거나 끄려고 시도합니다.
이 게임에서 키패드의 1버튼을 눌렀을 때 텍스트 레이어가 모두 사라졌기 때문에 텍스트 레이어가 VDP1 안에 있는 것을 확인할 수 있습니다.

그리고 나서 우리는 시뮬레이터의 vdp1 옵션에 들어가서 살펴보았습니다.

vdp1의 왼쪽 창 인터페이스에서, 우리는 다른 활성 블록을 차례로 훑어본 다음, 그 중에서 텍스트를 나타내는 활성 블록을 찾습니다.
주의하십시오. 구체적인 활동 블록을 찾은 후, 중간의 vdp 명령 정보 창에 많은 매개변수를 기록해야 합니다.
Texture address : 이 이미지 데이터는 vdp1에 있는 주소 12280 (vdp1부터 주소가 5c00000이므로 실제 주소는 5c0000+12280 = 5c12280)

Texture width : 그림 너비 176

Texture height: 그림 높이 32

color mode: 그림 표시 방식(여기서는 4bpp 16bank) 즉, 반 바이트는 1픽셀, 1바이트는 2픽셀, 반 바이트의 최대값은 0xf이므로 최대 16컬러만 표시할 수 있습니다.

color bank : 이 그림은 색상표의 번호 3380을 사용합니다. (번호가 특정 주소로 변환되는 자세한 알고리즘을 잘 모르며, 4로 나누면 되는 것 같습니다?자료를 보니 초기 야바 시뮬레이터의 팔레트가 왼쪽으로 3자리 이동하였으므로 4로 나누어야 하며 저해상도 포맷이면 8로 나누어야 함) 그리고 vdp1의 팔레트가 4 BPP(16 color LUT)로 표시되면 색상표 데이터는 VDP1의 메모리에 있습니다(색상표 시작 주소는 5f0000+3380/4=5f00ce0)

모든 정보를 다 기록한 후, 우리는 먼저 실행 중인 게임 데이터를 dump합니다.

그리고 dump가 저장되는 주소와 이름을 설정해두면, 시작 주소는 0, 끝 주소는 기본, 다운로드를 선택하고 마지막으로 OK를 누르면 됩니다. 

다음으로, 우리는 방금 dump의 파일을 ct2로 엽니다.
먼저 그래픽 디스플레이 모드로 전환한 다음 그림에서 화살표를 눌러 인자를 설정하면 텍스트가 표시되지만 색상이 잘못 표시됩니다.

그리고 앞에서 팔레트의 구체적인 주소(5f0000+3380/4=5f00ce0)를 계산했기 때문입니다.
그래서 우리는 winhex로 원래 시뮬레이터 dump의 파일을 열고 바로 5f00ce0이라는 주소로 건너뜁니다.

빨간색 테두리가 이 그림의 색상표입니다. (ss의 색상표는 보통 16bit이고 2바이트는 하나의 색상을 나타내므로 16개의 색은 16x2=32바이트입니다)

그러면 문제가 또 생겼는데 ct2의 컬러리스트가 3바이트 rgb만 지원하는 act포맷, 혹은 4바이트 rgba의 pal포맷을 가져오기 때문에 우리는 원래 게임의 2바이트 컬러리스트를 3바이트 act 또는 4바이트 pal포맷으로 옮겨야 합니다.
구체적으로 어떻게 돌려야 할까요?

대부분의 ss 컬러시트는 xrgb 1555 (1+5+5=16bit=2바이트)
그래서 여기는 스스로 전환해야 합니다.
구체적인 알고리즘은 다음과 같습니다.

ss 색상 표 형식, 2바이트는 색상을 나타냅니다.  
첫 바이트 byte 1 
두 번째 바이트 byte 2
 r=(byte1&0x7c)<<1; // 첫 번째 바이트에서 최상위 비트를 버리고 다음 5비트 비트, 결과 x2    
 g=(byte1&0x3)<<6)+(byte2&0xe0)>2);/ 첫 번째 바이트의 최소 2비트 곱하기 64)+ (두 번째 바이트의 최대 3비트 곱하기 4)
 b=(byte2&0x1f)<<3;/ 두 번째 바이트의 가장 낮은 5bit를 취하고, 그 결과에 8을 곱하기
계산된 rgb는 act 형식의 첫 번째 색상입니다. 이렇게 유추하여 다음 색상을 계속 계산합니다.......

sky0611에 온라인 전환 웹 페이지를 크게 작성해 주셔서 감사합니다, 이렇게 하면 튜토리얼을 맞추면 훨씬 편리합니다.
자세한 사용 방법은 본 게시물의 11층에 있습니다.

이 방법에 따라 16개의 색상을 모두 변환한 후 파일을 act로 저장합니다.
그런 다음 ct2에서 색상표를 선택하여 이 파일을 로드합니다.

이미지가 기본적으로 정상으로 뜨는 것을 볼 수 있는데, 왜 배경 표시가 잘못된 걸까요?
사실 게임에서는 팔레트의 첫 번째 색상이 기본적으로 투명색으로 표시되기 때문에 ct2에서는 첫 번째 색을 그대로 보여줍니다.

dump 파일에서 이미지 데이터를 찾은 이상, 다음으로 이미지 데이터가 구체적으로 어느 파일에 있는지 찾아야 합니다.

우선 우리는 winhex로 dumo 파일을 열고 이 그림의 구체적인 주소로 건너뜁니다.

빨간색 테두리 안에 이 그림의 데이터가 있습니다. 먼저 0000 수치가 아닌 연속 데이터를 선택한 다음 선택한 데이터에서 마우스 오른쪽 단추를 누릅니다.
선택 편집

그런 다음 선택한 데이터를 클립보드에 복사하도록 선택 항목, 16진수 값 복사를 계속합니다.


이어 winhex를 이용하여 게임 폴더에 있는 몇 개의 파일을 winhex로 한 번에 끌어다 놓고 대량 검색을 합니다. (수량이 어느 정도인 경우, 컴퓨터가 끊기지 않는 한, i7 3770k 16g 메모리의 골동품 기계도 한번에 수백 개의 파일을 끌 수 있습니다.)

운이 좋게도, 정말 서류 속에서 찾았습니다.

다음으로 ct2로 이 파일을 열고 찾은 주소 DDC0으로 건너뜁니다. 
세심한 친구는 주소 ddc0의 앞부분, 즉 dda0에서 2바이트 그룹의 색상표 데이터를 발견하는 것을 보았을 것입니다.

역시 뜨네요, 그럼 원래 만든 act 색상표까지 불러오면 정상으로 나옵니다. (파렛트--act 가져오기)

그림 뒤에 불완전한 텍스트 그림이 몇 장 더 보입니다. 그림의 너비와 높이를 수동으로 조절한 다음 하나씩 내보냅니다. (어셈블리를 볼 줄 모르며 프로그램을 쓸 줄 모릅니다.)

이때 우리는 ct2를 사용하여 첫 번째 텍스트 이미지를 내보낼 수 있습니다.
왼쪽 마우스 버튼을 눌러 첫 번째 그림을 선택한 다음 편집하기 - 내보내기 - bmp로 저장

그러면 이제 포토샵을 켜서 이미지 수정을 할 수 있습니다.


ps 작업은 본인 수준이 제한되어 있으므로 더 이상 말하지 않겠습니다. 주의할 점은 저장할 때 원래의 색상표를 가져와야 하며, bmp로 따로 저장하여 설정해야 합니다.

사진을 다 고쳤으니, 지금은 당연히 사진을 원본 파일 안으로 가져왔습니다.
ct2 그림 파일을 열고, 원래 그림 위치로 건너뛰고, 관련 매개 변수를 설정하고, 왼쪽 마우스 버튼을 눌러 원본 그림을 클릭한 다음, 편집, 가져오기를 클릭하여 수정된 그림을 선택합니다.

가져온 그림을 볼 수 있지만 아직 완료되지 않았습니다. 가져온 그림에서 마우스 왼쪽 단추를 두 번 누른 다음 저장소를 눌러야 원본 파일에 그림을 쓸 수 있습니다.

파일이 들어갔습니다, 그럼 ISO를 재구성해서 테스트해 보세요.

글자가 정상적으로 뜨는 것을 볼 수 있습니다.              

마지막으로 요약을 하자면, 위에서 한 무더기의 이야기를 하고, 한 무더기의 사진을 보냈는데, 보기에는 복잡해 보이지만 사실은 정말 이해했습니다. 능숙하게 다루기가 매우 빠릅니다.
위의 튜토리얼은 그림 데이터가 암호화되지 않았거나 압축된 게임에 적용됩니다. 만약 암호화가 압축되어 전체 게임 폴더에서 검색되지 않는다면 압축되었거나 암호화되었을 수 있습니다.

한화는 세심함과 인내심을 시험하는 역무로, 3분간의 열정과 중도에 포기하는 사람이 비일비재합니다.
그래서 옛말에 구름이 있고 생명을 소중히 여기며 한화를 멀리합니다.

'Consoles > SS' 카테고리의 다른 글

새턴 - 윈도우 통신 케이블  (0) 2024.06.22
새턴 셔틀 마우스 관련  (0) 2023.05.28

https://github.com/mathijsvandenberg/picox86/

'Consoles > DOS' 카테고리의 다른 글

미니 도스컴퓨터 만들기  (5) 2024.11.15
사운드블래스터 카드의 IDE 포트 활용하기  (0) 2024.08.22

Adafruit Qty Rp2040을 사용한 세이브군 대체 디바이스

https://github.com/dshadoff/PC_Engine_RP2040_Projects/tree/main/Membase

 

GitHub - dshadoff/PC_Engine_RP2040_Projects: Projects designed for PC Engine and other retro-machines, using RPi Pico or other R

Projects designed for PC Engine and other retro-machines, using RPi Pico or other RP2040 hardware - GitHub - dshadoff/PC_Engine_RP2040_Projects: Projects designed for PC Engine and other retro-mach...

github.com

 

PC_Engine_RP2040_Projects - 메모리 베이스 128 재구현

개요

이것은 최신 하드웨어용으로 작성한 Memory Base 128의 세 번째 구현이며 읽고 따라하기 가장 쉬운 코드입니다. Raspberry Pi Pico 마이크로 컨트롤러의 PIO는 데이터 입력의 에지 감지에 사용되고 ARM 코어는 처리에 사용됩니다.

데이터는 시작 시 SRAM에 로드되고 트랜잭션이 발생한 후 Flash에 저장됩니다. 플래시 플러시가 진행되는 동안(읽기 또는 쓰기 트랜잭션 그룹의 마지막 읽기/쓰기 후 0.75초가 소요됨) 디바이스가 추가 명령을 처리할 수 없기 때문에 이는 이상적이지 않을 수 있습니다. 이 플러시가 발생하는 동안 PIO 상태 머신이 종료되므로 혼동을 일으키는 비트의 백로그가 없습니다. 그러나 플래시 쓰기 기간 동안 트랜잭션이 발생하면 인식되지 않으며 PC 엔진 게임에서 오류를 식별할 수 있습니다.

상태는 메인 보드의 LED로 표시되며 조이패드 커넥터에 인접한 장치에 움푹 들어가 있습니다.

노란색(왼쪽) = 장치 활성
녹색(오른쪽) = 읽기
빨간색(오른쪽) = 쓰기
파란색(왼쪽) = 지연된 플래시 메모리 커밋

소스 코드

이것은 Pico-SDK 버전 1.2.0을 사용하여 빌드되었습니다.

소스를 빌드하려면 먼저 올바른 버전의 RaspberryPi/piso-sdk가 설치되어 있는지 확인하십시오. 이 보드는 Adafruit QtPy2040 보드를 대상으로 하므로 make_ada.sh 스크립트(UNIX에서) 또는 명령줄에서 실행해야 합니다.
"cmake -DPICO_BOARD=adafruit_qtpy_rp2040 -B build"
그런 다음 "cd build" 및 "make".

또한 releases/ 폴더에 프로그램의 릴리스 버전을 uf2 파일로 포함시켰습니다. 보드를 BOOTSEL 모드로 전환할 때 표시되는 가상 드라이브에 끌어다 놓기만 하면 됩니다('부팅' 버튼을 누른 상태에서 보드를 USB로 호스트 컴퓨터에 연결하고 버튼에서 손을 뗍니다. 새 드라이브가 컴퓨터에 나타납니다).

PC 보드 및 어셈블리

무료 버전의 EAGLE(X축과 Y축 모두 100mm 미만의 2레이어)을 사용하여 모든 보드를 설계했습니다. 거버는 자신만의 세트를 만들고자 하는 경우를 대비하여 이 저장소에 포함되어 있습니다.

JLCPCB에서 이러한 보드를 조립하기 위해 gerbers 및 관련 bom.csv 및 assembly.csv 파일을 포함했지만 여전히 다음 부품이 필요합니다.

  • (2) 8핀 Mini-DIN 커넥터
  • (1) Adafruit QtPy RP2040 마이크로컨트롤러 보드
  • (2) 7핀 헤더. 마이크로컨트롤러 보드를 제거해야 하는 경우 암 핀 헤더 소켓을 사용할 수도 있습니다. 이 경우 짧은/로우 프로필 헤더 소켓을 사용하는 것이 좋습니다.

보드 스택업을 위한 장착 하드웨어도 필요합니다.

  • (4) M3 x 13mm 암-암 스탠드오프; 평평한 면과 평평한 면은 5.0mm보다 크지 않아야 합니다. 이 크기에 맞게 장착 구멍이 만들어지기 때문입니다. (4.5mm도 괜찮습니다)
  • (8) M3 나사, 길이 6mm(*) - 스루홀 리드를 보드와 같은 높이로 자르지 않으면 더 길어질 수 있습니다.
  • 선택적 고무/실리콘 다리

그리고 사용하려면 짧은 8핀 미니 DIN 수-수 케이블도 필요합니다(다양한 길이는 eBay에서 찾을 수 있음).

집회

"케이스"는 쌓인 PC 기판으로 구성되며 PC 기판은 상단과 하단에 있습니다. 모두 5개의 서로 다른 보드가 있지만 다음과 같이 13개의 레이어가 있습니다.

  1. 상단 = "PCE128_Rev_C_Face"의 1 레이어, 1.6mm 두께, ENIG 보드
  2. MidTop = "PCE128_Rev_C_MidTop"의 6개 레이어, 1.6mm 두께, HASL 보드
  3. MidLow = 3개 레이어, 1.2mm 두께, "PCE128_Rev_C_MidLow"의 HASL 보드(MidTop과 비슷해 보이지만 LED용 컷아웃이 있음)
  4. 메인 보드 = "PCE128_Rev_C2_Main"의 1 레이어, 1.6mm 두께, HASL, SMD 어셈블리 보드(참고: 일부 부품은 이전 "B" 버전에서 변경되었습니다. 상호 교환 불가능)
  5. 하위 = 1층, 0.8mm 두께(*), "PCE128_Rev_C_Sub"의 HASL 보드
  6. 하단 = 1 레이어, 1.6mm 두께, "PCE128_Rev_C_Face"의 ENIG 보드(뒷면이 밖으로 향함)

(*) 스루홀 부분을 위한 공간을 만들기 위해서만 존재하는 얇은 "하위" 레이어를 가능하게 하는 보드와 같은 높이의 스루홀 리드를 트리밍합니다. 이러한 플러시를 다듬지 않으면 훨씬 더 두꺼운 하위 레이어와 더 긴 M3 나사가 필요할 수 있습니다.

조립 단계:

  1. 실장 시 기판 밑면의 땜납 "범프"를 최소화하기 위해 스루홀 부품의 리드를 조심스럽게 다듬습니다. 장착할 관통 구멍 부품에는 8핀 미니 DIN 소켓과 RP2040 보드용 헤더(또는 소켓)가 포함됩니다. 미니 DIN 커넥터가 똑바로 장착되었는지 확인하십시오. 그렇지 않으면 상위 레이어 보드를 배치하는 데 문제가 있을 수 있습니다.
  2. 조심스럽게 납땜하여 보드 아래의 "범프" 양을 최소화합니다.
  3. LED가 가장 가까이 있는 상태에서 USB 커넥터가 있는 RP2040 보드를 오른쪽에 장착합니다.
  4. "부팅" 버튼을 누른 상태에서 호스트 컴퓨터에 연결하십시오. 이렇게 하면 DFU 모드로 전환되고 호스트 컴퓨터에 가상 드라이브가 생성됩니다. *.uf2 펌웨어 파일을 해당 폴더로 끌어다 놓습니다. 잠시 후 가상 드라이브가 사라지고 약 1초 후에 메모리 장치 부팅 순서의 일부로 4개의 LED가 모두 잠시 켜집니다. USB에서 분리하십시오.

보드 쌓기의 경우 암-암 스탠드오프의 한쪽에 보드의 하단 레이어를 통과하는 나사로 하단 보드를 먼저 연결하는 것이 가장 좋습니다. 그런 다음 상층 보드를 간단히 쌓을 수 있고 상단 나사를 쉽게 조일 수 있습니다.

그리고 마지막 터치: PC 보드의 가장자리는 전면/후면 표면과 다른 음영으로 되어 있어 좋아할 수도 있고 싫어할 수도 있는 투톤 효과를 만듭니다. 케이스를 균일한 "블랙 박스"처럼 보이게 하기 위해 PC 보드 가장자리를 따라 Sharpie 마커를 사용하여 어둡게 만들었습니다. 쉐이드는 JLCPCB의 매트 블랙 솔더 마스크와 유사하므로 표준 조명이 있는 영역에서 잘 어울립니다. 영구적인 Sharpie 잉크는 젖으면 작동하지 않지만 알코올 기반 용제 근처에서는 주의하십시오. 이러한 상황에서는 잉크가 번지거나 얼룩질 수 있습니다.

시각적 보기는 다음과 같습니다.

 

노트

Adafruit QtPy RP2040은 설계하기 쉬운 컴팩트한 폼 팩터이므로 가능한 한 많이 사용하려고 노력했습니다.

불행히도 Adafruit 사이트는 모든 사용자를 Pi SDK가 아닌 CircuitPython으로 안내하려고 시도하므로 결과적으로 RP2040 장치에 대한 "Pinout" 페이지의 Pinout 페이지에는 GPIO 번호에 대한 참조가 포함되지 않습니다.

따라서 여기에 그래픽을 포함합니다.

 BOM

https://github.com/dshadoff/PC_Engine_RP2040_Projects/blob/main/Membase/EAGLE/PCE128_Rev_C2_Main/BOM.csv

'Consoles > PCE DUO' 카테고리의 다른 글

Duo Disabler 설치 가이드  (0) 2024.10.18
콘덴서 리스트  (0) 2023.06.12
사운드 문제 해결용 부품  (0) 2023.05.16
FRAM 개조  (0) 2023.05.16
블루레트로 장착  (0) 2023.05.16

https://github.com/ClusterM/fdskey/releases/

 

Releases · ClusterM/fdskey

Famicom Disk System drive emulator. Contribute to ClusterM/fdskey development by creating an account on GitHub.

github.com

 

'Consoles > FC' 카테고리의 다른 글

NESTang 제작  (0) 2023.07.08
전원부 및 AV단자 교체  (0) 2023.05.29

'Consoles > PCE DUO' 카테고리의 다른 글

Duo Disabler 설치 가이드  (0) 2024.10.18
Membase - 메모리 베이스 (세이브군) 대체  (0) 2023.06.15
사운드 문제 해결용 부품  (0) 2023.05.16
FRAM 개조  (0) 2023.05.16
블루레트로 장착  (0) 2023.05.16

https://blog.naver.com/deadlyrave/220498827633

 

[DC] 드림캐스트 내장 배터리 교체

안녕하세요? 데커드입니다. 오늘은 드림캐스트 내장 배터리 교체를 해봤습니다. 드캐는 충전형 배터리를&nb...

blog.naver.com

배터리홀더 구입처 : https://www.eleparts.co.kr/goods/view?no=4260240 

 

[2032홀더] CH74-2032 플라스틱 DIP타입 (BS-7,반달홀더)

 

www.eleparts.co.kr

ML2032(충전형 2032전지) 구입처 : https://shopping.interpark.com/product/productInfo.do?prdNo=448343438&dispNo=016001&bizCd=P01397&utm_medium=affiliate&utm_source=naver&utm_campaign=shop_20211015_navershopping_p01397_cps&utm_content=conversion_47 

 

충전용 리튬건전지 맥셀 ML2032 3V 65mAh 벌크 1개입 - 인터파크

전기/조명에 대한 상품입니다.

shopping.interpark.com

 

'Consoles > DC' 카테고리의 다른 글

전원 220V 개조  (0) 2023.06.01

https://blog.naver.com/PostView.nhn?isHttpsRedirect=true&blogId=deadlyrave&logNo=220653001597 

 

[DC] 일판 드림캐스트 220v 개조기

안녕하세요? 오늘도 아주 간단한 게임기 개조로 인사드립니다. 일판 드림캐스트 220v 개조입니다.세가社 비...

blog.naver.com

 

교체해야 하는 콘덴서. 100uF 200V짜리.

납땜위치는 이곳

68uF 400V로 교체하여 납땜해준다. 

 

'Consoles > DC' 카테고리의 다른 글

내장배터리 교체 개조  (0) 2023.06.01

https://github.com/hakkslab/FamicomPowerBoard

 

GitHub - hakkslab/FamicomPowerBoard: A USB/composite power board replacement for the Famicom

A USB/composite power board replacement for the Famicom - GitHub - hakkslab/FamicomPowerBoard: A USB/composite power board replacement for the Famicom

github.com

 

'Consoles > FC' 카테고리의 다른 글

NESTang 제작  (0) 2023.07.08
디스크 시스템 에뮬레이터 FDSKey  (0) 2023.06.15

'Consoles > SS' 카테고리의 다른 글

새턴 - 윈도우 통신 케이블  (0) 2024.06.22
새턴 게임 중문화 패치 튜토리얼 번역  (0) 2023.06.20

 

https://amaiorano.io/2022/10/14/snes-2-chip-rgb-filter-mod.html

 

SNES 2-Chip RGB Filter Mod

I recently restored my childhood SNES, and although I was able to use a custom cable I made to output RGB, I knew that the video quality was not optimal. The reason for this is that my SNES is an older “2-chip” model, which produces a lower quality sig

amaiorano.io

 

http://vaot.mydns.jp/fc/sfc_sharp2.htm

 

スーパーファミコンをシャキッとさせる その2

スーパーファミコンをシャキッとさせる その2   ゲーム機トップへ 3:03 2014/10/06 作成 20:36 2016/03/31 更新  どうにもぼやけてるのが気になって何とかしてみた結果 Jrを改造するか最後期の

vaot.mydns.jp

 

 

 

보드용 부품

    • LMH6683MAX SOIC14 IC 1개 : Mouser 에서 3개에 $21
    • 1N4148 DO-35 다이오드 6개 : 알리익스프레스에서 100개에 $2.84
    • 1206 저항 / 2k 6개, 300 3개, 200 6개, 47 6개 : 알리익스프레스에서 60종류 1200개들이 키트에 $7.93
    • 1206 캐패시터 / 1nF 6개 : 알리익스프레스에서 100개들이에 $1.30

슈패 본체용 부품

  • 0805 캐패시터 / 10uf X7R 8개 : 알리익스프레스에서 100개들이에 $1.80

 

+ Recent posts