2024년 7월 28일 일요일

역시나 멋진 파리 올림픽 2024

프랑스 애들은 원래 그래요.



.

.

.

유럽에 놀러가려면 독일, 이탈리아, 스페인, 스위스 쪽으로 선택하시길~ ㅎ.ㅎ


2024년 7월 24일 수요일

지난 20년 개발의 추억 #10 - SLT-X V1

월간 추억팔이 #10편이 나왔습니다~ ㅎ.ㅎ


지난 글은 아래 링크를 이용하세요!

https://sharksym.blogspot.com/2023/07/20-1.html

https://sharksym.blogspot.com/2023/08/20-2.html

https://sharksym.blogspot.com/2023/10/20-3.html

https://sharksym.blogspot.com/2023/10/20-4-mmcsd-drive-v3.html

https://sharksym.blogspot.com/2023/11/20-5-paramsx-r.html

https://sharksym.blogspot.com/2024/01/20-6-paramsx-r-v11.html

https://sharksym.blogspot.com/2024/03/20-7-audiofactory.html

https://sharksym.blogspot.com/2024/04/20-8-mmcsd-drive-v4.html

https://sharksym.blogspot.com/2024/06/20-9-xii-v.html



2009년에 만들어서 10년간 쓰던 확장슬롯이 있었습니다.

만능기판에 뜨개질로 만든 후 종이 테입으로 덮어놨는데, 10년이 흐르니 미라처럼 되었네요ㅋ



기본 4개의 서브슬롯과 I/O 슬롯 2개가 들어있죠.

저의 WSX, GT는 내부 SLOT 0-1 개조가 되어있어서, 이 슬롯의 /SLTSL 신호가 RSV핀으로 출력됩니다.

이걸 활용하면 서브슬롯 5개 + I/O 슬롯 1개로 사용할 수 있어요.

I/O 슬롯에는 뮤직모듈(Y8950)을 꽂으면 내장롬 실행을 막을 수 있어서 편합니다요 ㅎ.ㅎ


.

.

.

그렇게 시간이 흘러 주변기기가 많이 늘어나게 되었습니다.

2개의 확장슬롯을 써도 되겠지만, 상단슬롯에서 케이블이 삐져나오면 보기가 안좋거든요.

가끔은 기본슬롯(SLOT 1)을 써야하는 경우, 확장슬롯을 뺏다 꽂았다 하는 것도 귀찮구요.


뭔가 새로운 확장슬롯을 만들어야 하는 때가 되었습니다요~



하나의 마스터 보드(슬롯 1개)에 여러개의 슬레이브 보드(슬롯 3개)를 합체하는 방식으로 구상을 해보았어요.

마스터 보드에는 컨트롤 기능이 들어있구요. 슬레이브 보드는 신호 버퍼링 및 보든 연결 상태만 알려줍니다.

동작 모드는 연결된 슬레이브 보드의 갯수에 따라 기본값이 설정됩니다.


마스터 + 슬레이브 x 1 = 기본 확장슬롯 (서브슬롯 4개)

마스터 + 슬레이브 x 2 = 기본슬롯 + 확장슬롯 (서브슬롯 4개) + I/O 슬롯 2개

마스터 + 슬레이브 x 3 = 확장슬롯A (서브슬롯 4개) + 확장슬롯B (서브슬롯 4개) + I/O 슬롯 2개

... 이렇게요.


각 서브슬롯은 순서를 바꿔서 섞거나, /SLTSL 신호를 ON/OFF 가능합니다.

사용자가 매니저 프로그램을 통해 이 설정을 하게 되구요. 설정값은 플래쉬롬에 저장되어서 부팅할 때 자동으로 재설정되는 방식입니다.



당시에 오랫동안 고민해서 만들었는데, 지금 다시 봐도 머리가 어지럽네요ㅋㅋ


아래는 옆에서 본 10-SLOT 모드의 모습입니다.

보드마다 전원 LED가 따로 있어요. 흐...





그리고, 각 슬롯에서 입력되는 사운드는 개별로 ON/OFF 가능합니다.

여러개의 사운드 카트리지를 쓰다보면 이게 또 유용하거든요 ㅎ.ㅎ



.

.

.

이렇게 SLT-X V1을 만들어서 수개월을 써보니 여러가지 생각이 떠오릅니다.

프로그램만으로 슬롯 설정을 마음대로 바꿀 수 있는 건 좋은데, 이게 기기 외부에서는 전혀 설정값을 알 수가 없거든요.

일단 켜서 매니저 프로그램으로 진입해야 설정을 볼 수 있으니까요.

결국 본체 하나에 SLT-X 하나 붙박이로 쓰면 괜찮겠지만, 이걸 다른 기기에 옮겨서 꽂으면 최악의 경우 본체가 망가지는 상황이...ㅋ


참고로, SLT-X V1은 본체에서 출력되는 /SLTSL를 사용하지 않습니다.

이 신호를 무시한 채, SLT-X에서 신호를 따로 재생성합니다.

다르게 말하면 SLT-X가 본체의 PPI 역할을 똑같이 해주고 있습니다.

본체의 슬롯 상황을 잘 알고 쓰면 괜찮습니다만, 그게 힘드신 분들도 많을 거에요.


그리고 결정적으로, 본체의 DATA BUS에 양방향 버퍼가 있으면 사용이 불가능합니다.

버퍼 컨트롤을 본체쪽에서 하고 있어서, 외부의 SLT-X가 아무리 ㅈㄹ을 해도 방법이 없어요ㅋ

대우 아이큐2000, X-II 등등 대부분 MSX2에서는 못 쓴다능...


결국 이걸 다른 분이 쓸 수 있도록 제작하는 건 포기했습니다.

그냥 '머리속으로 상상 가능한 슬롯환경을 모두 구현해보자'라는 목표만 달성하는 걸로 마무리했네요.

그래도 만드는 건 잼났어요. 나중에 보급형(?) SLT-X V2가 나올 때까지 잘 썼습니다요~ ㅎ.ㅎ


그럼, 다음편에서 뵙겠습니다! ㅎ.ㅎ/


2024년 7월 22일 월요일

MMC/SD Drive V4 제작 #21 - SUB-ROM에 긴 제목을 넣어보자

V4에서 SUB-ROM 기능을 쓰시는 분 계세요? ㅎ.ㅎ

참고로 V3에서는, 작은 용량의 메가램 때문에 하이브리드 모드(MegaRAM + FlashROM)나 코에이 모드로 활용되었습니다.


V4에서는 4MB의 SUB-ROM 영역을 Multi-ROM 모드로 사용하는데요.

이게 옛날 V2의 Multi-ROM II와 비슷한 모습이죠.


그닥 활용안되던 V4의 SUB-ROM을 좀 더 유용하게 보이도록(?) 만들어보았습니다.

롬 이름에 긴 제목을 달아주는 것으로요ㅋ

이 기능은 BIOS/Tool v5.75부터 지원됩니다!


일단 테스트를 위해, 코나미의 롬을 모아서 넣습니다.

파일명은 코나미 카트리지의 시리얼 넘버 RCxxx.ROM 스타일로 바꿨네요.

코나미의 모든 롬을 다 넣으면 좋겠지만, SUB-ROM 용량 제약이 있으니... 몇몇 게임을 제외합니다. (마종, 콘트라 등등)

선택된 롬은 총 53개입니다.




기존에 SUB-ROM을 다운로드하는 방법은 보통 2가지 정도인데요.

MMCSD FILENAME.ROM /S

MMCSD *.ROM /S


여기서 '/S:Long_Name' 옵션이 추가되었습니다.

최대 28자의 롬 제목을 별도로 붙여줄 수 있어요.

예) MMCSD RC749.ROM /S:THE_MAZE_OF_GALIOUS


제목을 쓸 때는 빈칸(SPACE)를 쓸 수 없으니, 대신 언더스코어(_)를 쓰면 됩니다.

다운로드 할 때 빈칸으로 변환이 되도록 해놨어요.


아래는 53개의 롬을 모두 다운로드한 후의 모습입니다.

남은 SUB-ROM 영역이 0이 되었네요! ㅎ.ㅎ




재부팅 후 부트 메뉴에서 SUB-ROM으로 진입하면 아래처럼 긴이름으로 표시됩니다.




만약 구버전의 BIOS를 쓰는 경우는 아래처럼 짧은 제목(롬 파일명)으로 표시됩니다. 참고하셔요.




그럼, 즐 V4 하셔요~~ ㅎ.ㅎ/


MMC/SD Drive V3/V4 - BIOS & Tool v5.75

Download: 20240722_MMCSD_Drive_V3_V4_BIOS_Tool_v575.zip


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

MMC/SD Drive(tm) V3/V4 - BIOS & Tool

    By Yeongman Seo <sharksym@hitel.net>

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



[ BIOS & Tool v5.75 ]


- MMC/SD BIOS


  MMCSD Tool에 BIOS 롬이 내장됨. (MMCSD.OVL에 포함)

  -> 기기와 Tool의 BIOS 버전이 차이나는 경우,

     옵션없이 MMCSD.COM을 실행하면 BIOS 업데이트가 진행됨.

     '/U' 옵션으로 강제 업데이트도 가능함.



- SUB-ROM


  롬 다운로드 시, 최대 28문자의 제목을 추가 가능.

  -> '/S' 대신 '/S:' 옵션 사용.

     예) MMCSD RC749.ROM /S:THE_MAZE_OF_GALIOUS



[ 업데이트 가이드 ]


1. MMCSD.COM, MMCSD.OVL 두개 파일을 SD카드에 복사.

   기존 파일을 덮어쓰면 됩니다.(예:UTILS 디렉토리)


2. MMCSD.COM 프로그램을 실행.


3. 'Update BIOS-ROM? [y/N]' 메시지가 나오면 Y키 누름.


4. 다운로드 완료 후 RETURN키 눌러서 재부팅.


4. 끝


2024년 7월 11일 목요일

[IPS] SD-SNATCHER - MMC/SD V4의 GameRunner II 전용 LED Visualizer 패치

SCC 및 SCC-I를 사용하는 코나미 게임은 대부분 롬카트리지입니다.

V4의 GameRuner II 모드를 이용하면 쉽게 PAC-V의 LED 비주얼라이저를 PSG + SCC 모드로 동작시킬 수 있죠.


문제는 디스크 버전으로 된 게임인데요. SNATCHER, SD-SNATCHER 두개가 있습니다.

SD-SNATCHER는 본체의 Main BIOS 루틴을 사용하지 않기 때문에, GameRunner II의 BIOS의 동작도 무시됩니다.

PAC-V가 존재하더라도 PSG + SCC를 위한 비주얼라이저는 동작이 불가능하게 됩니다요.


그.래.서.

SD-SNATCHER 전용의 LED 비주얼라이저 패치를 만들어보았습니다.

두말하면 잔소리지만, MMC/SD V4의 GameRunner II에서만 제대로 동작합니다 ㅎ.ㅎ

Download: SD-SNATCHER_PAC-V_VIS_Patch.zip


IPS 패치는 Luna IPS 등의 프로그램으로 적용하시면 되겠구요.

패치는 오리지널 SD-SNATCHER 디스크 버전 및 메모리매퍼 크랙버전과 크랙버전에 영문/한글 패치가 적용된 버전 모두 쓸 수 있습니다.


타이틀 및 오프닝 데모, 게임 플레이, 엔딩 데모의 3부분 코드가 패치되어있습니다.

패치파일 2개를 디스크 1번, 3번 DSK 파일에 패치하면 됩니다.


V4에서 실행할 때는, MMCSD.COM SD-SNAT.DSK /G2JSM /DM 등의 옵션을 쓰면 되겠습니다.

아래는 저의 GT에서 구동되는 모습입니다.




그럼, 이만...