2018년 12월 21일 금요일

MMC/SD Drive V4 케이스를 받았습니다!

저도 택배가 왔네요~ ㅎ.ㅎ

보드를 넣고 정품 카트리지를 완성!



영롱한 빛깔~~ ㅎ.ㅎb







그리고 이건 보너스~

테스트 용으로 만들었던 녹색 보드는 파랑색 케이스에 넣어봤습니다.


이것도 이쁘네요~ ㅎ.ㅎ 





즐거운 금욜되세요~ 


2018년 12월 12일 수요일

MMC/SD Drive V4 - 1차 보드제작 완료




긴시간~~ 납땜이 끝나고~ 1차 보드가 준비되었습니다!


이제 케이스/레이블 합체하러 떠날 시간입니다~ㅋ


V4와 함께 즐거운 연말을 보내시면 좋겠습니다~ ㅎ.ㅎ/



사탕봉지(?) 사진도 한장 찍었어요.





이만 자러갑니다~ 슝~


2018년 12월 10일 월요일

2018-12-08 송년회 잘 다녀왔어요~

지난 토요일에 2018년 송년회가 있었습니다.


9월 정모 이후 3달만에 다시 모였네요~ ㅎ.ㅎb

저녁 먹으면서 신나게 얘기를 나누다보니 시간 가는줄을 몰랐네요.ㅋ

사진 몇장만 올려봅니다.


얼굴은 안보이도록~ 찰칵~





나눔으로 나갈 MMC/SD V4!





khjb님께서 나눔해주신 다크초코렛과 맛탱이님의 핑클 케이스입니다~

케이스는 가공해서 보드를 안에 넣어봤습니다.





모임에 오신분들 만나서 반가웠습니다.

2018년 마지막까지 즐거운 날 가득하세요~ ㅎ.ㅎ/


2018년 11월 11일 일요일

MMC/SD Drive V4 제작 #9 - GameRunner (PAC-V Visualizer)




MMC/SD V3와 PAC-V를 갖고 계신다면, GameRunner에서 동작하는 PSG 불꽃쇼를 보셨을텐데요.

V4에서는 SCC-I 기능이 추가되면서 SCC 불꽃쇼도 가능하도록 되었습니다.


PAC-V에는 총 9개의 LED 바(Bar)가 들어있습니다.

만약 S/W에서 OPLL을 사용한다면, OPLL 레벨미터가 우선권을 가지고 동작하게 되구요.

OPLL을 쓰지 않는 경우는 PSG 3개 + SCC 5개로 사용가능합니다.


MMCSD.COM 프로그램에서 GameRunner 모드로 진입 시,

MSX-Music ROM을 Disable 하면, PSG + SCC 모드로 설정이 됩니다.


만약 S/W가 Main BIOS의 ISR(인터럽트 처리 루틴)을 사용하지 않거나,

PSG를 직접 컨트롤하는 경우는 PSG/SCC 비주얼라이저가 동작하지 않으니... 놀라지마시구요. ㅎ.ㅎ;


음... 설명할게 별로 없네요. 그냥 영상으로 보시죠~ ㅎ.ㅎ





2018년 11월 4일 일요일

MMC/SD Drive V4 제작 #8 - OCM 기종에서 DCSG 동작불가

MMC/SD Drive V4에는 DCSG칩인 SN76489AN가 들어있습니다.

근데 저의 OCMC에서는 DCSG 컨트롤이 전혀 되지않네요.

OCMC 기본 펌웨어는 KdL PLD v3.1 또는 v3.2를 기반으로 제작된걸로 알고 있습니다.

제껀 v3.2 펌웨어입니다. 오리지널 OCM에서는 테스트를 못해봤지만, 아마 동작안 될 것 같네요.



DCSG칩은 조금 특이하게도 data write 시, 32 클럭동안 data를 유지해야하는 조건이 있는데요.

V4는 DCSG의 READY 출력신호를 이용하여 MSX의 /WAIT를 인가하는 방법으로 설계되어있어요.

세가 SG-1000 구조와 동일하다고 보시면 됩니다.


문제는 OCM의 /WAIT 상태에서 BUS 신호가 유지되지 않는 것처럼 보이더라구요.

실제로 오실로스코프 등으로 확인해본건 아니라서, 어떤 신호가 문제인지는 파악안된 상태입니다.

MRC 게시판을 검색해보니,

DCSG를 넣은 롬팩이 OCM에서는 소리가 안나온다는 얘기가 있긴하더라구요.

아마 OCM의 설계 문제가 아닐까 싶습니다.



암튼 결론은,

MMC/SD Drive V4의 DCSG 사운드는 OCM 계열의 본체에서는 사용불가입니다.

MMC/SD BIOS에서 부팅 시, KdL PLD 펌웨어가 인식되면 DCSG를 끄도록 해놨습니다.


OCM 본체에서 MMC/SD V4를 사용하실 분들은 참고하셔요.


궁금한 부분이 있으시면, 댓글로 ㄱㄱㄱ


2018-11-07 추가

/WAIT 처리 문제는 KdL PLD 문제로 확인되었습니다.

OCMC의 경우는 메가밍크스님의 최신 펌웨어(2018-11-07)로 업뎃하시면 정상동작합니다.

결론: 본문 내용은 잊으시면 되겠습니다요~ ㅎ.ㅎㅋ



PS. 최종 PCB가 나와서 조립해보았습니다.

    아래 사진처럼 빨간색 보드입니다요~ ㅎ.ㅎ




2018년 10월 28일 일요일

MMC/SD Drive V4 제작 #7 - 듀얼 DCSG 활용

MMC/SD V4에는 SCC-I, DCSG, 8BIT PCM 이렇게 3종류의 사운드가 들어있습니다.


만약 MMC/SD V4를 두개 이상 꽂게 되면 어떻게 될까요?

I/O 포트를 사용하는 DCSG와 PCM은 I/O 주소가 중복이 되겠죠?

참고로, SCC-I의 경우는 메모리맵 I/O로 구동되기 때문에 서로 충돌하지 않습니다.


DCSG, PCM의 기본포트는 아래와 같습니다.

DCSG = 49H (Franky DCSG 포트)

PCM  = 91H (Covox PCM 포트)


만약 카트리지가 두개가 장착이 되면 두번째 DCSG, PCM 포트는 아래처럼 변경됩니다.

DCSG = 3FH (MMM DCSG 포트)

PCM  = 0AH (MusicModule PCM 포트)


물론 포트를 개별적으로 OFF할 수도 있구요.

사실 DCSG, PCM 모두 출력전용 포트라서, 기기가 중복되어도 큰 문제가 생기지는 않습니다.

대신 사운드가 중복되니까 볼륨이 좀 크게 나오겠네요ㅋ


현재 DCSG의 경우는 활용할 수 있는 경우가 두가지인데요.

SG-1000 loader, VGMPlay


여기서 VGMPlay는 듀얼 DCSG를 지원합니다.

하지만 MMC/SD V4를 직접 지원하는건 아니니, 활용하려면 VGMPlay 소스를 좀 고쳐야겠죠?

PAC-V의 비주얼라이저도 쓸 수 있으면 더 좋겠구요. ㅎ.ㅎ


아래는 수정된 VGMPlay로 원더보이2 VGM을 재생하는 모습입니다.

DCSG는 구형파 3채널 + 노이즈 1채널로 구성되어있구요.

DCSG 칩 하나가 PAC-V의 LED바 4개를 사용하도록 했습니다.

듀얼 DCSG가 모두 동작하면 불꽃 8개를 볼 수 있겠네요.




영상도 하나 찍어보았습니다.

DCSG뿐만 아니라 PSG, SCC 재생 시에도 PAC-V의 불꽃을 볼 수 있어요. ㅎ.ㅎ




그럼, 이만...~

궁금한 부분이 있으시면 댓글달아주세요.



2018년 10월 20일 토요일

MMC/SD Drive V4 제작 #6 - GameRunner (가상 슬롯)

GameRunner는 가상의 MSX 환경을 만들어 주는 기능입니다.

MMC/SD V3에서도 GameRunner 기능(가상의 MSX1 ROM 환경)이 있었는데요,

V4는 내부 가상슬롯(확장슬롯이 아닙니다) 기능으로 좀 더 다양한 환경을 만들 수 있게되었습니다.


기능을 나열해보면요...

- MSX1,2,2+ 가상모드 (JP/KR/EU Locale 지원)

- BASIC 환경 지원

- DiskROM 지원 (DSK 파일 실행)

- MegaRAM과 DiskROM을 동시 구동 (ROM + DSK, DeluxeBox + DSK, SCC-I + DSK)

- RAM Kanji Font 지원

- 넌매퍼 64KB 또는 메모리매퍼 512KB 선택가능 (메인 메모리 설정)



V4의 가상 슬롯은 4개로 이루어져있구요. GameRunner 모드로 전환되면 활성화됩니다.

활성화되면, 가상 슬롯 4개가 본체의 기본 슬롯 4개를 대체하는 방식으로 동작합니다.


아래는 MSX2 JP 모드로 구동 후, SLOT_CHK.ROM을 실행한 모습입니다.

참고로, MMC/SD V4 카트리지는 A1GT의 슬롯2-0에 장착된 상태입니다.

어떤식으로 구현되는지 짐작이 되시죠? ㅎ.ㅎ





아래는 여러가지 조합으로 구동되는 GameRunner 영상입니다.

ROM/DSK 로딩없는 BASIC 부팅 및 각종 ROM, DSK, DeluxeBox, SCC-I 조합환경을 보여줍니다.





다음편에서는 PAC-V 비주얼라이저 연동과 듀얼 DCSG 동작 모습이 나올 예정입니다~ ㅎ.ㅎ

궁금한 부분이 있으시면 댓글달아주세요.



.

.

.


PS. 최종 테스트 용 V4 PCB가 나왔습니다. (아쉽게도 잘 동작하네요.ㅋ)

    곧 제작 신청을 받을 예정입니다. 올 크리스마스까지 달려보아요~ ㅎ.ㅎ/





2018년 10월 6일 토요일

MMC/SD Drive V4 제작 #5 - 레알 DCSG(SN76489)를 붙여보자

초기 계획이랑 조금 달라진 부분이 되겠네요.

보드에 CPLD 두개를 실장하고, 두번째 CPLD는 사운드 전용으로 쓰려는 계획이었는데요.


막상 개발를 해보니...

메인 CPLD 하나에 MMC/SD + MegaRAM + GameRunner (Virtual Machine) + SCC-I + PCM까지 다 들어가더라구요.

남은 로직은 별로 없긴하지만요~ ㅎ.ㅎ


결과적으로, 두번째 CPLD에 DCSG랑 PSG를 넣으려던 계획은 삭제(!)되었습니다. ㅎ.ㅎ

대신 DCSG 칩 한개를 보드에 넣기로 했어요. 진짜 칩이요~ SN76489입니다.


DCSG(SN76489)는 PSG(AY-891x)에 비해 크기가 작아서, 보드에 넣기에도 부담이 적습니다.

물론 DIP 타입이긴 하지만요. 꼭 OPLL 칩을 보는 듯 하네요.





기존 MMC/SD V4 개발 보드에도 하나를 붙이고, 따로 만능기판으로도 하나 만들었습니다.

칩 테스트 용으로 하나 있어야할 것 같아서요. 흐...


앞면 사진입니다.





뒷면 사진입니다.





DCSG 컨트롤 포트는 49H를 사용합니다.

사실 40H~4FH 영역은 Switched I/O로 할당된 곳이긴 하지만,

Franky 카트리지가 오랫동안 점유하고 있습니다. (덕분에 다른 기기들은 49H 포트를 피해야..ㅋ)


참고로 VGMplay 프로그램은 DCSG 재생 시, 항상 Franky 카트리지가 존재한다고 가정하고 동작합니다.

DCSG는 레지스터를 읽을 수 없는 칩이라서, 디텍션이 불가능하기때문에 이렇게 동작하는걸로 보심 되겠습니다.


그리고, MMC/SD V4의 DCSG I/O포트는 Disable 가능하기 때문에,

진짜 Franky 카트리지를 함께 꽂더라도 문제되진 않습니다.



동작영상은 따로 안찍어도 되겠죠? ㅎ.ㅎ

DCSG 구동 모습은 이미 유튜브에 두어개 올라가있을겁니다. 궁금하시면 찾아보시구요~



그럼, 다음편에서 보아요~ ㅎ.ㅎ


궁금한 점 있으시면 댓글주세요!

 

2018년 10월 2일 화요일

2018년 파라동 정모 후기

2016년 이후 2년만의 정모였습니다.

장소는 이번에도 파나소닉 코리아 컨퍼런스 룸이었구요.





많은 분들이 오셔서 즐거운 시간을 보냈습니다.







저는 집에서 쓰는 MSX 세팅을 그대로 들고 왔습니다.

V4 개발 보드도 가져와서 몇가지 시연도 했습니다.




2012년에 만들었던 "ASO 리메이크 AREA1"도 켜봤습니다.

간만에 해봤는데, 여전히 어렵네요 ㅋ

조이메가로 개조된 MD패드도 갖고 왔었어요.




다른 분들의 부스 사진도 몇장 나갑니다. (사실 몇장 못찍었습니다요)






이번 모임에서 MSX 퀴즈랑 게임대회가 아~주~ 잼났습니다.

게임 진행하던 모습이 담긴 사진/영상이 좀 있는데, 약간 민망한 샷이라 업로드는 안합니다요~ 히히






그리고 키티야님의 한글화 진행중인 게임도 잠깐 보여주셨네요.

세상의 종말이 오더라도 그건 하고(?)봐야되는 ... 그런 게임이었어요.




그리고... 대망의 득템샷~

그 동안 가위바위보의 벽에 막혀서 득템의 기회가 별로 없었는데요.

이번에 게임대회(허족, 올림픽)에서 모두 2등을 하는 바람에 싹쓸이를 했습니다~~~~ㅎ.ㅎ

송년회가 곧 다가오니, 득템에 실패하신 분들은 미리 가위바위보 연습 좀 하시구요.


빛님이 제작하신 뱃지가 참 이쁘네요. 



행사 준비하신 분들, 같이 즐겨주신 분들, 모두 감사드립니다!

뭐 늘 그랬지만 ㅎ.ㅎ 아자씨들끼리 떠들고 노는게 참 재밌습니다요~


2018년 9월 15일 토요일

MMC/SD Drive V4 제작 #4 - 메가램 로딩 및 SRAM 활용

일단 사진 한장 띄우고 갑니다.

2048KB 롬인 Pointless Fighting을 로딩하는 모습이네요.





MMC/SD V3를 써오셨다면 아주 익숙한 화면이 되겠습니다.

V4와 H/W는 좀 다르지만, V4에서 MMCSD.COM의 사용법은 똑같습니다. ㅎ.ㅎ



1. SRAM 사용


V4의 SRAM 2048KB는 용도별로 조각조각 나누어서 사용하게 되는데요.

메가램 단일모드에는 모든 SRAM을 사용할 수 있습니다.

위의 사진처럼 2048KB 롬을 로딩하거나, 코에이의 1024KB 롬과 SRAM 세이브 등등

사이즈 제한없이 쓸 수가 있어요.

이젠 V3의 하이브리드모드(플래쉬롬 1024KB + SRAM 1024KB 조합)는 더 이상 쓰지 않습니다.

물론 대부분의 롬은 512KB 이하로 되어있으니, 평소에는 SRAM이 많이 낭비되겠죠? ㅎ.ㅎ


단일 메가램 모드가 아닌 경우에는 SRAM을 여러가지 용도로 나누어 사용합니다.

메인 메모리매퍼(512KB) 및 GameRunner 모드 용 메모리매퍼(512KB),

딜럭스박스(512KB), MA/MV 미디어플레이어 용 클러스터버퍼,

User Kanji Font (256KB) 등으로요~


동작 시나리오에 따라 중복되지 않는 기능은 서로 메모리 영역을 공유하도록 되어있습니다.

이 때문에 롬 로더 등의 코드는 모두 새로 만들었어요.

MMCSD.COM는 DOS2용 프로그램이긴 하지만,

실제 동작 시에는 MMC/SD BIOS 내부에서 BDOS, 메인 BIOS를 전혀 쓰지않습니다.

코딩하다가 머리가 뽀개지는줄..ㅋ




2. 기본 슬롯에서 구동


기본슬롯에서 사용할 때는 서브슬롯 할당이 아래처럼됩니다.

저사양 기종을 쓰는 분들에게는 이정도가 유용하지 않을까 싶으네요.


SSLOT 0 = MMC/SD Drive

SSLOT 1 = KanjiROM (BASIC)

SSLOT 2 = BASIC'n 2.1

SSLOT 3 = Memory Mapper 512KB


본체의 메모리도 충분(512KB 이상)하고 슬롯 여유도 있다면,

그냥 저처럼 확장슬롯에 꽂아서 쓰시면 되겠습니다.

당연한거지만, V4를 확장슬롯에 꽂으면 위의 SSLOT 1,2,3의 기능은 동작안합니다.


참, 이전 게시물에서는 메인 메모리매퍼로 496KB을 할당했었는데요.

이게 아무래도 S/W 호환성 문제를 발생시킬 듯 해서, 512KB를 쓰는걸로 바꼈습니다.




3. 메가롬 매퍼


이전 V3에서는 SCC 매퍼와 간이 16K 매퍼 두개만으로 모든 매퍼를 처리했습니다.

그러다보니 S/W 패치만으로 구동이 불가능한 경우도 좀 있었는데요.

(MMC/SD 용 I/O맵과 충돌하는 경우 등)


이번 V4는 아래의 기본 매퍼가 H/W적으로 구현이 되어있습니다.

KONAMI 8K, KONAMI SCC, V3호환 16K,

ASCII/KOEI 8K, ASCII 8K + SRAM, ASCII 16K, ASCII 16K + SRAM


그리고 MMC/SD로 사용되는 I/O 영역과 SCC SOUND IO로 쓰이는 영역은,

메모리 I/O를 ON/OFF 할 수 있도록 되어있습니다. 더 이상 충돌의 여지가 없는 셈이죠.


막상 구현해서 동작시켜보니 쬐끔 허무한 느낌도 있네요.

V3때는 H/W 충돌을 회피하려고, 디버깅을 참 많이 했었는데 말이죠.

(배부른 소리이려나요. ㅎ.ㅎ)




4. 기타


현재 기본 기능은 거의 다 구현이 되어있습니다.

SCC 사운드, 8BIT PCM도 들어있구요.

paraMSX-R의 기술이 집약된 NEW GameRunner도 있구요. 으흐흐...


현상태에서 메인 CPLD가 85%정도 점유중인데요.

원래 계획했던 DCSG와 세컨더리 PSG를 빼버릴까...고민하고 있습니다요.

보드 앞뒤로 CPLD 두개를 넣고 디버깅하려면 고생길이 활짝 열릴 가능성도 있어서요.ㅋㅋ

차라리 DCSG 하나를 실제칩으로 넣는 것도 괜찮아보이구요.

이거 SN76489 칩이 크기가 작아서 보드에서는 별 부담이 안되거든요.




마지막으로, 각종 롬들을 로딩/실행하는 모습을 한번 보시죠~

Voice Set 패치된 게임 구동을 위해 SCC-I 카트리지가 추가(슬롯2-2)로 쓰이고 있어요.




그럼, 다음편에서 보아요~ ㅎ.ㅎ


궁금한 점 있으시면 댓글로 ㄱㄱㄱ


2018년 8월 21일 화요일

MMC/SD Drive V4 제작 #3 - 확장슬롯/메모리매퍼/한자롬 테스트

일단 사진 한장 띄우고 갑니다.

아이큐2000 + MMC/SD V4 (proto ver) + FMPAC으로 프린세스메이커를 실행한 모습입니다.

한자도 잘 나오죠? ㅎ.ㅎ




아시다시피 DOS2를 구동하려면 램이 최소 128KB는 필요하구요.

MMC/SD V3의 경우 COMMAND 2.44, FAT16.COM, MMCSD.COM 등의 기본 프로그램 구동 시, 최소 램256KB가 필요합니다.


대부분 일제 MSX2/2+ 기종들이 내장 메모리가 64KB뿐이죠?

제대로 쓰려면 본체램을 확장하거나 확장슬롯 + 메모리매퍼를 써야하는데요.

확장슬롯이 없거나, 그냥 저가의 MSX2 본체 하나만 쓰시는 분도 꽤 있을꺼에요.


집에 파나소닉 FS-A1이 한대 있습니다.

요놈은 메모리매퍼도 없고, FM 사운드도 없고, 디스크도 없고, 한자롬도 없고...

그 흔한 숫자키패드도 없어요. 완전 싸9려 기종입니다. ㅎ.ㅎ

주로 애들이 게임할 때 쓰고 있죠.


요걸 MMC/SD V4를 꽂아서 써봅시다요~

현재 개발 용으로 쓰는 보드는 paraMSX-R에 쓰였던 보드입니다.

CPLD + FlashROM 8MB + SRAM 2MB + SRAM 128KB + SD카드를 넣어서, proto 버전의 V4를 구성했습니다.

V3 때처럼 이번 proto 버전은 H/W V4.0으로 되어있습니다.

개발완료되면 정식 보드는 V4.1 정도가 되겠네요.





V4 보드는 한장이지만, 내부는 확장슬롯으로 구성되어있습니다.

서브슬롯0: MMC/SD DiskROM

서브슬롯1: Kanji Driver

서브슬롯2: 비어있음

서브슬롯3: 메모리매퍼 496KB

그리고 Kanji JIS 1/2을 위한 256KB 한자폰트롬이 들어있습니다.


본체의 기본슬롯에 꽂으면 기능을 모두 사용할 수 있습니다.

저가 MSX2 기종 또는 확장슬롯이 없으시면 요렇게 쓰시구요.


메모리가 충분한 MSX2+ 이상의 기종을 쓰신다면, 그냥 확장슬롯에 꽂아서 쓰면 되겠습니다.

이 때는 MMC/SD DiskROM 하나만 동작합니다.

확장슬롯에 꽂더라도 GameRunner 모드에서 한자롬/메모리매퍼를 활용가능하니 참고하시구요.

(이건 아주~ 나중에 설명을...ㅋ)



아래는 FS-A1에서 구동 후 MEGAREPORT 프로그램을 실행한 모습입니다.

KANJI, JIS, DOS2 등이 인식되는걸 볼 수 있습니다.






그럼, 실제 동작영상을 보시죠~ ㅎ.ㅎ

메가램 기능은 V3 호환모드로 구동이 되구요.

한자롬은 본체에 한자롬이 없는 경우만 활성화됩니다. 참고하세요.





그럼, 다음편에서 보아요~ ㅎ.ㅎ


궁금한 점 있으시면 댓글로 ㄱㄱㄱ


2018년 8월 5일 일요일

[파라동 이벤트] 게시글 13579 히트 기념품 소개드려요~

이번 이벤트에 당첨되신 "리랴"님께 전해드릴 카트리지입니다.





카트리지는 MSX2 이상의 기종에서 실행됩니다.

짧은 축하말과 함께 게임 4가지를 선택하는 메뉴가 나오게 되구요.

스페이스 바를 누르면 게임으로 ㄱㄱㄱ~


THEXDER, ZANAC, ZANAC EX, ALESTE 4개의 롬이 들어있습니다.





실행되는 모습도 잠깐 보시죠~ ㅎ.ㅎ




2018년 7월 23일 월요일

MMC/SD Drive V4 제작 #2 - DCSG, PSG, PCM Sound Test

CPLD 용량을 꽉꽉 채우니까, SCC 1개, DCSG 2개, PSG 1개, 8BIT PCM을 넣을 수 있네요. ㅎ.ㅎ

사실 올봄에 DCSG + PSG를 묶어서, 간단한 사운드 카트리지를 만들까 한번 생각했어요.

근데 이걸 활용하실 분이 별로 없으실 것 같아서 걍 놔뒀거든요 ㅋ

결국 MMC/SD V4에 끼워넣게 되었습니다. 으흐흐...



사운드 기능이니까, 걍 동영상으로 보시죠~

아래 순서로 진행됩니다.

1. DCSG 1개 테스트 -> Alex Kidd, I'm Sorry

2. DCSG 2개 테스트 -> Wonder Boy, Wonder Boy 2

3. DCSG 2개 + PSG 테스트 -> Exed Exes

4. PSG  2개 테스트 -> Flashgal, Slap Fighter, Tiger Heli

5. PCM  1개 테스트 -> YS2 오프닝, 에이핑크 방송영상





그럼, 다음편에서 보아요~ ㅎ.ㅎ


궁금한 점 있으시면 댓글로 ㄱㄱㄱ


2018년 7월 16일 월요일

MMC/SD Drive V4 제작 #1 - 구상 및 SCC Sound Test

이제 슬슬 V4를 준비할 때가 되었네요! ㅎ.ㅎㅋ

그 동안 생각했던 것들을 정리해봅니다.



[확장슬롯]


사실 저는 카트리지를 항상 확장슬롯에 꽂아놔서, 별 필요없는 기능인데요.

확장슬롯이 없거나, 메모리매퍼가 없는 분들을 위한 기능입니다.

(이걸 요청하시는 분이 좀 계셔서...)

V4를 기본슬롯에 꽂으면, 디스크롬/메모리매퍼가 서브슬롯으로 나뉘어 동작합니다.



[디스크 드라이브]


기존 V3의 기능은 V4에서도 그대로 유지될 예정입니다.

메모리카드는 microSDHC 16GB 한장이면 충분하겠구요.

FAT16 코드를 디스크롬에 내장할까 생각중입니다. (1chipMSX의 스타일?)



[메가램]


용량 큰 CPLD를 쓸 예정이라서, 가능하면 많은 기능을 넣으려고 합니다.

아스키/코나미/코에이SRAM 등 많이 쓰이는 것 위주로 되겠네요.

파일 로딩 시, 롬패치를 안해도 될테니 빠르게 구동되겠죠?



[게임러너]


V3에서는 램BIOS만으로 구현되었지만...

V4에서는 paraMSX-R와 유사한 방식으로 구현될 예정입니다.

카트리지를 확장슬롯에 꽂아서 쓰더라도 가상의 기본슬롯이 에뮬됩니다.



[Kanji 폰트]


디스크롬에 Kanji BIOS가 포함되는건 V3와 동일하구요.

여기에 JIS1/2 Kanji 폰트롬이 추가됩니다.



[사운드]


SCC, DCSG (SN76489), 12BIT DAC 등이 들어갑니다.

CPLD 여유가 되면, 다른(?) 것들도 넣어볼까 생각중입니다.




바뀌는 기능은 이정도로 보시면 되겠구요.

1차로 SCC 사운드를 구현해서 테스트해보았습니다.

그동안 DCSG, PSG 등을 넣어서 테스트해봤지만, 아무래도 SCC가 비중이 가장 크겠죠?


paraMSX-R 보드를 활용해서 SCC 사운드를 한번 구현해보았습니다.

보드의 SRAM 칩이 55ns 짜리라서, SCC 5채널 모두 동작하기는 힘들까 생각했는데요.

막상 40ns 타이밍으로 SRAM 처리해도 잘 동작하네요. ㄷㄷㄷ

실제 V4 보드에는 20ns 칩으로 들어갈 예정입니다. 안전빵! ㅎ.ㅎ


아래 영상은 파로디우스를 실행해본 모습입니다.

메가램은 슬롯2-0의 MMC/SD V3가 그대로 사용되었구요.

슬롯1에는 SCC 사운드가 구현된 paraMSX-R 보드가 장착되었습니다.

MMCSD.COM을 실행하면 슬롯1에서 SCC가 인식되는걸 볼 수 있습니다.

영상에는 없지만, 메탈기어2 디스크판(해킹버전)에서도 정상 인식되었어요.




그럼, 다음편에서 보아요~ ㅎ.ㅎ


궁금한 점 있으시면 댓글로 ㄱㄱㄱ


2018년 7월 1일 일요일

paraMSX-R 제작 #16 - 메모리 슬롯 설정

30년 전에 MSX를 쓰셨던 분들은 이걸 기억하실텐데요.

"MSX1은 메모리가 슬롯2에 있고, MSX2는 메모리가 슬롯0-2에 있다"

물론 국산 기종에 한정된 내용입니다. 아이큐1000, X-II 등등


그 시절에는 확장슬롯이나 외장 메모리매퍼를 쓰는 사용자가 (거의) 없으니,

프로그램 만들 때, 메인 메모리의 위치를 확인할 필요성이 없었습니다.

메인 BIOS의 MSX 버전만 확인해서, 이게 MSX1인지 MSX2인지 정도만 알면 땡이었어요.

파워업테크닉 책에도 슬롯 설명할 때 비슷한 내용이 나옵니다.


일제 MSX 기종은 메모리가 대부분 슬롯3-0에 있어요.

OEM으로 들어간 유럽쪽 필립스 기종도 마찬가지이구요.

그 때문에 유럽쪽 SW에서 메모리 슬롯을 변경할 때, FFFFH 번지를 그냥 써버리곤합니다.

아이큐2000 에서 하던거랑 비슷하죠ㅋ



그럼, 여기 paraMSX-R 글에서 메모리 얘기를 왜 하는지 궁금하실텐데요.

1주일 전에 paraMSX-R + 재미나 메가램을 테스트하느라, 메탈기어2를 한번 실행해본적이 있었어요.

아래 글에 보시면, 실행이 잘 안된다는 내용이 있어요. 아마 기억하시는 분 있으시죠?

https://cafe.naver.com/msx/1791


저도 이게 갑자기 생각나서 paraMSX-R로 테스트를 해봤는데...

어?? 그냥 잘 실행이 되더라구요.

아이큐2000(CPC-300) 에뮬 모드에서 MMC/SD V3의 DOS2로 로더를 실행했는데, 별 문제 없었습니다.

그래서 번쩍 머리에 떠오른 생각!

요즘 실기를 쓰는 분들 중 DOS2 활용을 위해, 메모리매퍼를 대용량으로 쓰는 경우가 많잖아요?

특히 국산 MSX2의 경우는 내부 슬롯0-2의 메모리를 확장하는게 힘이드니,

대개 확장슬롯 + 메모리매퍼 카트리지를 쓰게 됩니다.


재미나 메가램 용 메탈기어2가 실행안되는 이유도, 결국 메인 메모리 슬롯 문제인 것 같더라구요.

그래서 paraMSX-R로 테스트를 해봤습니다.


아래 3가지 설정에서 메탈기어2 로더를 테스트합니다.

1. CPC-300 모드 (DOS2 부팅을 위해 램512KB로 설정)

2. CPC-300 모드 (램을 슬롯0-2에서 슬롯2로 변경)

3. FS-A1F  모드 (램을 슬롯3-0에서 슬롯0-2로 변경)


아래 사진처럼 FS-A1F 모드에서도 메인메모리를 슬롯0-2에 놓으면, 로더가 정상 동작하더라구요.




결국, 실기 아이큐2000(내장램 128KB 슬롯0-2)에 외장 메모리매퍼(256KB 이상)를 꽂게되면...

메인 메모리로 쓰이는 슬롯이 변경되어 로더가 죽는 문제가 발생하게 됩니다.


그럼, 영상을 보시죠~





즐거운 주말되셔요~ ㅎ.ㅎ


2018년 6월 11일 월요일

출격 대기중인 2018년식(?) MMC/SD Drive V3




플래쉬롬이 잘 못 배송(칩 type이 바뀜 ㅠ.ㅠ)되는 바람에 시간을 많이 잡아먹었네요.

드디어 작업 중인 보드가 완성이 되었습니다.

이제 케이스 작업만 남았네요. 바통을 넘길 시간이~ㅋ


기존 MX29F800 롬은 구하기 힘들어서 AM29F800 롬으로 넣었습니다.

플래쉬 타입(섹터 분할)은 똑같으니까 기존 S/W와 문제되진 않습니다요.


증명사진 한장 나갑니다 ㅎ.ㅎㅋ




즐거운 월요일 되셔요~ 





2018년 6월 6일 수요일

FIGlet 2.2.5 for MSX-DOS2 (2018.06.06)


Download: FIGlet_2.2.5_for_MSX-DOS2_20180606.zip


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

    FIGlet 2.2.5 for MSX-DOS2 (2018.06.06)

        By 서영만 <sharksym@hitel.net>

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


* FIGlet 2.2.5의 MSX-DOS2 port입니다.


  FIGlet 공식 홈페이지는 아래 링크를 참고하세요.

  http://www.figlet.org


  FIGlet Fonts Library Version 4.0을 포함하고 있으며,

  일부 파일은 MSX-DOS2 파일명(8.3)으로 변경되어있습니다.


  FIGlet Fonts Library는 아래 링크를 참고하세요.

  http://www.jave.de/figlet/fonts.html



* 요구 사항


  MSX-DOS2, TPA 메모리(추가 메모리매퍼 할당않음)



* 설치 방법


  압축파일을 임의의 디렉토리에 풀면 됩니다.

  폰트를 모두 넣으면 디스크 용량 2.7MB가 필요합니다.

  2DD 등의 저용량 디스크에서는, 사용할 폰트만 복사하면 됩니다.



* 사용법


  자세한 사용법은 매뉴얼 파일(FIGLET.6)을 참고하세요.

  실행 예) FIGLET -c Hello, world!


2018년 5월 30일 수요일

MMC/SD V3에서 16GB 메모리카드 사용하기

SD카드에 MP3, MV 동영상을 넣다보니 점점 용량이 부족해지더라구요.

주력(?)으로 쓰는 SD카드를 16GB로 바꿨습니다. 기존 SD카드는 8GB였구요.


이번엔 파티션을 좀 크게 나눠서, 클러스터 사이즈 64KB로 해봤습니다.

FAT16 최대치인 4GB 크기가 되는거지요~


예전에 SD카드 파티션 나눌때는 별도의 프로그램(파티션 위저드)을 썼는데요.

이제는 윈도 10의 디스크 관리에서 바로 설정이 가능합니다.




SD카드는 SanDisk 메모리로 구했습니다. ㅎ.ㅎ





먼저 V3의 INSTALL 프로그램으로 FAT12 파티션 32MB x 2개를 만들었구요.

(깜박하고 사진을 안찍었네요. ㅋ)


나머지 파티션은 윈도10의 "디스크 관리" 메뉴에서 진행했습니다.


FAT16 파티션 설정할 때, 사이즈를 4095MB 이하로 해야합니다.

4096MB 이상으로 설정하면 FAT32 파티션이 됩니다. 참고하셔요!





파티션 6개는 아래처럼 설정이 되었습니다.

32MB  x 2개

4.0GB x 3개

2.7GB x 1개


FAT16 4GB 설정할 때, 클러스터가 크다고 경고가 나오는데요.

MSX의 FAT16.COM 드라이버에서도 별 문제없이 동작이 되니까 걱정안하셔도 됩니다.

제가 테스트를 많이 해봤어요. ㅎ.ㅎㅋ

그나저나 윈도 내장 프로그램만으로 작업할 수 있어서 좋네요!!



아래는 파티션 위저드를 실행한 모습입니다.

FAT12 파티션은 파일시스템이 "Other"로 나오지만 망가진건 아닙니다요~





SD카드를 GT로 옮겨서 부팅한 모습입니다.

파티션 6개로 인식이 되었네요.





파일을 마구마구 넣을 수 있으니 좋습니다요~ ㅎ.ㅎ


작업완료 기념으로 파이널 판타지 엔딩(8편이죠? Eyes on me) 영상도 한번 돌려봅니다.





그럼, 즐거운 MSX 하셔요!


2018년 4월 17일 화요일

대우 FDD CPF-350C - 아이큐2000의 친구

대우 3.5" FDD가 한대 있습니다. "대우 CPF-350C"

아이큐2000과 함께 저의 어린시절을 아름답게 수놓았던 FDD였지요 ㅋ


마지막으로 전원을 넣어본지 10년 넘은 것 같은데... 기억이 가물합니다. ㅎ.ㅎ

오랫동안 책장에서 먼지만 쌓이고 있었는데, 그냥 창고에 넣어주기로 합니다.


녹슬고 상처난 곳이 많지만, 잘 닦고 동작확인을 한번 해보았습니다요.

아이큐2000에 연결해서 알레스트 외전을 실행해봅니다.





오랜만이라 그런지 디스크 I/O 에러도 좀 나고... 암튼 100% 정상 상태는 아닌 것 같네요.

디스켓을 넣었다뺐다 몇번 해주니 좀 괜찮아집니다요 ㅋ


사실 처음에 디스켓 넣는데, 안에서 부시럭거리는 소리가 나면서 디스켓이 끝까지 안들어가더라구요.

봤더니... 아래처럼 비닐봉투가 하나 들어있네요. 아마도 큰아들넘의 소행인 듯!





창고에 넣기전에 내부 사진도 한번 찍어봤습니다.


파나소닉 FDD, 모델명은 JU-363으로 적혀있네요. 레이블이 살구색으로 잘 익었습니다. ㅎ.ㅎ





컨트롤칩인 WD1772도 보이네요~





그럼, FDD야 이제 안녕~~ ㅎ.ㅎ/