2019년 12월 15일 일요일

SLT-X 제작 #5 - 외부전원 및 오디오앰프

지난 10년간 GT에 6슬롯을 꽂아서 쓰면서 느낀 점이 몇가지가 있었습니다.

- 주변기기를 꽉꽉~ 채워도 전원문제가 생기지 않음

- 사운드 ON/OFF 스위치는 거의 안쓰임

- 오디오 앰프는 2배, 3배 정도면 충분함



지난 사진들을 보시면 아시겠지만, SLT-X에는 외부전원과 사운드 스위치가 빠져있습니다.

근데 이게 10슬롯으로 가니까 쬐금 불안한 생각이 들어서, 외부 전원을 다시 넣어줬습니다ㅋ

5V 3A 어댑터를 꽂으면 빵빵하게 쓸 수 있겠죠.

참고로 MSX 표준에는 슬롯당 5V 300mA으로 되어있어요. 슬롯 10개면 최대 3A 되겠습니다.


그리고 사운드 스위치도 다시 넣었습니다. 막상 없으니 또 아쉽더라구요. 흐~

사운드는 한 곳에 몰아놓으면 상태를 쉽게 확인할 수 있어서 좋은데...

SLT-X는 슬롯 개수가 많아서 좀 힘드니, 그냥 각 슬롯의 왼편에 스위치를 붙였어요.





다음은 오디오 앰프입니다.

앰프 회로는 본체에 꽂는 버퍼 카트리지에 들어있습니다.

3단 스위치로 증폭을 선택할 수 있어요.

1,2,3단 선택으로 오디오 출력이 1배,2배,3배가 됩니다.

LED 색으로 상태로 쉽게 확인할 수 있겠습니다요~





실제 동작은 어떤지 확인해보았어요.

MMC/SD V4의 Covox 8BIT PCM으로 출력한 것을 실제로 녹음해서 보는거죠.


아래 그림의 윗쪽은 원본 PCM 파일의 파형이구요.

아랫쪽은 GT의 본체 슬롯에 꽂아서 녹음해본 파형입니다.





그럼 SLT-X를 쓴 경우의 파형을 보시죠.

테스트를 위해 스내처 SCC-I 카트리지와 FMPAC 카트리지가 함께 쓰였습니다.

참고로, 둘 다 정품이구요, 사운드는 무음(GND)으로 출력되는 상태입니다.





부연 설명을 해보자면...

GT는 본체에 MSX-MUSIC 내장되어 있습니다.

따라서 FMPAC을 외부 슬롯에 꽂으면, FMPAC의 OPLL 대신 GT 내장된 OPLL에서 소리가 납니다.

결국 FMPAC이 그냥 PAC으로 바뀌는거죠.

문제는 FMPAC의 사운드 출력인데요. 이 때 사용하지 않는 OPLL은 무음(GND)으로 출력됩니다.

그러니까 확장슬롯에 사라만다 같은 사운드칩이 내장된 카트리지와 FMPAC을 함께 쓰면,

사라만다의 SCC 사운드 볼륨이 뚝 떨어지는 현상으로 나타납니다.



마지막으로 보너스 사진 나갑니다~

예전에 어느분이 얘기하셨는데... 슬레이브 보드를 계속 연결하면 어떻게 되냐고 하셨죠?

마스터 보드는 슬롯10개의 /SLTSL 신호를 컨트롤합니다.

그러니까 마스터 보드 + 슬레이브 보드 3개 꽂으면 딱 /SLTSL 10개가 사용됩니다요.

이 상태에서 슬레이브 보드를 더 연결하면, 해당 슬롯은 모두 I/O 전용 SLOT으로 동작합니다.


아래 사진에서는 슬레이브 보드를 하나 더 붙여서(13-SLOT) FontPack을 꽂은 상태인데요.

이렇게 되면, FontPack 카트리지의 스위치를 OFF하고 꽂는 것과 동일하게 동작합니다.

BIOS가 동작하지 않으니 한글 IME, ANSI 스크린은 사용 못하고 폰트 I/O만 동작하게 됩니다.





심심해서 슬레이브 보드 6개 꽂아서 19-SLOT으로도 동작해봤는데, FontPack 글자는 잘 나오네요.

마스터 + 슬레이브 보드만 50cm정도 되니까...

오디오앰프/버퍼 카트리지와 케이블까지 다 합하면, 전체 길이는 약 1m가 되겠습니다.



이걸로 SLT-X 제작은 대충 마무리되었습니다.

쓰다가 필요한 것(?)이 생각나면 더 추가하는걸로 하겠습니다.


그럼, 즐거운 일요일되세요! ㅎ.ㅎ


2019년 12월 3일 화요일

[강좌] 07. MSX 기본사양

오랜만에 [강좌]글을 적어봅니다.

제목은 [강좌]지만... 절반은 잡담이니 참고하셔요~ ㅎ.ㅎ





07. MSX 기본사양


[서론 aka 잡담]


요즘에도 MSX를 쓰시나요?


저는 국딩시절 학교와 학원에서 아이큐1000을 주로 만졌습니다.

디스플레이는 잔상이 멋지구리하게 남는 그린모니터가 주류였습니다.

6학년 때가 되어, 아이큐2000 + RGB모니터 + 3.5"FDD 최강(!)의 사양으로 MSX가 집에 들어왔습니다. ㅎ.ㅎ


95년부터는 fMSX 에뮬레이터가 등장하면서 MSX2+를 간접적(?)으로 쓸 수 있었습니다.

(고딩 때 친구집에서 본 A1-WSX가 아직도 기억에 생생하네요. 그 때는 MSX 오타인가...했었지만요ㅋ)

나중에 fMSX 기반으로 paraMSX 에뮬를 만들어서 입맛에 맞게 잼나게 즐겼구요.


자연스레 실기 MSX에서 한동안 멀어졌는데...

갑자기 MSX2+ 실기를 한번 써보고싶더라구요.

그 때가 첫 회사에 들어와서 기숙사에 살던 때였습니다. 2001년 경

기숙사 사진도 한장 올려봅니다. 소니 디카(FDD 내장ㅋ)로 찍었던 640 x 480 사진입니다요~





MSX2+ 기종은 종류가 몇개 없는데, 파나소닉의 FS-A1WSX 기종이 S-Video 출력이 가능해서 요걸로 골랐습니다.

램도 512KB로 늘리고 DOS2 카트리지도 만들고, 플래쉬롬팩도 만들어서 쓰다보니... 결론이 나오더군요.

--> 정답은 GT


아마 2003년으로 기억합니다. 옥션에 A1GT가 올라온걸 바로 구매했었지요.

당시에는 주로 ebay랑 옥션만 사용했습니다.

야후 재팬 옥션은 나중에서야 구매대행으로 몇번 이용했었네요.


GT의 빠른 속도를 쓸 수 있게되니, 점점 더 욕심은 커져만가고~ ㅎ.ㅎ

빠른 디스크드라이브를 위해 MMC Disk interface를 만들었구요.

나중에는 MMC/SD Drive로 개명하게 되어서, 지금은 이걸 MMC/SD Drive V1으로 부르고 있습니다.





그 후, 준성님의 MPX 카트리지, 필립스 Music Module (MSX-AUDIO), 선라이즈 MoonSound 순으로...

저의 MSX 주변기기 사양은 점점 높아져갑니다.


.

.

.


제가 이런 잡다한 얘기를 왜 꺼냈냐면요.

요즘들어 MSX를 사용하시는 분들이 모두 저와 같진 않을꺼라는 생각이 들더라구요.


파라동 게시판에 올라오는 글을 볼 때도 그렇고, 정모에서 이런저런 얘기를 나눠보면...

80년대 아이큐1000/2000 잠깐 쓴 후 한동안 MSX를 끊었다가 (혹은 MSX를 친구집에서만 접했다가)

21세기로 넘어와서 뭔가 좀 오버스러운 MSX 사양으로 다시 접하게 되는거지요.

뭔가 히스토리를 건너뛰다보니 국민학교에서 대학교로 바로 간 느낌?

아닌가요? 그냥 저의 느낌일뿐...일지도요. ㅎ.ㅎ


그래서 기본 정리를 좀 해보려고 합니다.

MSX를 처음 접하시는 분들께도 도움이 될 듯 합니다요~~



[본론]


MSX 기본 사양(specifications)을 먼저 알아보겠습니다.

기본은 말 그대로 "필수 (Mendatory)"인 사양을 의미합니다.

이 부분이 부족하면 그냥 MSX 표준은 아닌거에요.

그리고, 옵션 사양은 추가 가능한 부분을 의미합니다.


버전은 MSX1, MSX2, MSX2+, MSX turbo R 4개가 나와있습니다. 곧 turboR 30주년이 ㅠ.ㅠ

MSX turboR의 경우는 표기법이 애매해서,

MSXturboR, MSX turbo R, MSX TurboR 등으로 여러가지 모양이 있으니 참고하세요.



1. MSX1


CPU    = Z80 3.579545MHz 호환

RAM    = 8KB

ROM    = Main BIOS 32KB

VDP    = TMS9918A 60Hz 또는 TMS9929A 50Hz

VRAM   = 16KB

PSG    = AY-3-8910 호환

카세트 = 카세트 1200/2400bps

키보드 = 영문 + (옵션: 일어/한글/러시아/유럽 문자)

외부슬롯 = 1개 (옵션: 확장버스)

범용포트 = 1개 (옵션: 2개)

프린터 = (옵션)

한자롬 = (옵션)


저가형 기종을 제외하면 대부분 MSX1은 램16KB, 범용포트 2개가 들어있습니다.

그만큼 MSX에서 게임의 비중이 크다는 얘기겠죠?ㅋ

게임롬팩은 램 8KB에서도 구동가능한 것도 있고, 16KB 전용도 있으니 잘 보셔야합니다.

정품 게임은 케이스에 표기되어있어요. ㅎ.ㅎ


그리고,

재믹스 CPC-50/51은 MSX1 기반으로 만들어졌고, MSX 로고는 없습니다. 키보드도 없구요.



2. MSX2


MSX1과 다른 부분만 표기합니다.


RAM    = 64KB (옵션: 메모리매퍼)

ROM    = Main BIOS 32KB + Sub BIOS 16KB

VDP    = V9938 (60Hz/50Hz 지원가능)

VRAM   = 64KB (옵션: 128KB)

FM 음원= (옵션: MSX-AUDIO)

프린터 = 8BIT 센트로닉스 인터페이스

범용포트= 2개

한자롬 = (옵션: JIS1, JIS2)

한자DRV= (옵션)

RTC    = RP5C01 호환


일부 특수 기종외에는 모두 VRAM 128KB가 장착되어있습니다.

대부분 MSX2 게임은 VRAM 128KB가 필요하니 참고하시구요.

VRAM이 64KB인 경우는 SCREEN 7,8을 사용할 수 없습니다.

부트로고가 SCREEN 6으로 구현된 이유가 그 때문 듯 생각됩니다요.

SCREEN 5,6의 페이지 절반만 쓸 수 있어서, 대부분 MSX2 게임이 구동안될꺼에요.


원래 부팅할 때 MSX로고와 함께 VRAM 용량이 표시되지만,

아이큐2000에서는 VRAM 용량 대신 날짜/시각이 표시됩니다. (왜 그랬을까)

X-II에서는 MSX 로고는 안나오지만, VRAM 용량은 표시됩니다. (날짜/시각은 또 어디로?)


그리고,

재믹스 CPC-61는 MSX2 기반으로 만들어졌고, MSX2 로고도 부착되어있습니다.

키보드가 옵션처리 되어있고, RTC가 제거되어 관련 BIOS 루틴들도 모두 삭제되어있습니다.



3. MSX2+


MSX2와 다른 부분만 표기합니다.


ROM    = Main BIOS + Sub BIOS 16KB + 한자DRV 16KB (옵션: 32KB)

VDP    = V9958 (60Hz/50Hz 지원가능)

VRAM   = 128KB

FM 음원= (옵션: MSX-AUDIO, MSX-MUSIC)

한자롬 = JIS1 128KB (옵션: JIS2)

한자DRV= 한자 입력기



마이크로소프트가 MSX를 포기한 후, ASCII가 전담하는 시절입니다.

이젠 국제 표준이 아니라 일본 표준 컴퓨터가 되었어요.

한자롬과 한자드라이버는 기본이구요.

MSX-MUSIC은 옵션이지만, FS-A1FX 외의 기종은 모두 MSX-MUSIC 내장되어있습니다.

MSX-AUDIO는 MSX2/2+에 내장된 기종이 아마 없을꺼에요. (비싸서?)


VRAM은 128KB 기본이 되어, 부트로고 밑에 VRAM 용량 표시를 하지않습니다.

대신 Main RAM의 용량이 표시됩니다.

MSX2는 메인램 64KB가 먼저 디텍션되는 슬롯(빠른 슬롯)을 메인램으로 사용하지만,

MSX2+부터는 모슨 슬롯의 램을 검색 후, 가장 용량이 큰 슬롯을 메인램으로 사용합니다.

하지만, DOS2 카트리지가 있으면 MSX2에서도 램 용량이 큰 슬롯으로 강제 전환됩니다.

메모리 슬롯을 가변으로 사용하는 S/W를 만들 때는 주의가 필요해요.



4. MSX turbo R


MSX2+와 다른 부분만 표기합니다.


CPU    = Z80 + R800 7.15909MHz

ROM    = Main BIOS + Sub BIOS + 한자DRV 32KB + MSX-MUSIC BIOS 16KB + DOS1 16KB + DOS2 48KB

RAM    = 메모리매퍼 256KB

FM 음원= MSX-MUSIC (옵션: MSX-AUDIO)

PCM    = 8BIT DAC/ADC

MIDI   = (옵션: MSX-MIDI)

TIMER  = 255682Hz

FDD    = 3.5" 1DD, 2DD



CPU가 두개 들어갑니다. R800은 Z80에 비해 클럭사이클이 약 4배 빠릅니다.

그 때문에 Z80 28MHz로 부르기도합니다.

turboR 외부버스가 3.58MHz라서 실제로 28MHz 속도는 안나와요ㅋ


R800에는 Z80에 없는 곱셈 명령어가 추가되어있습니다.

근데 실제로 쓰는 S/W가 거의 없는걸로 알고 있어요.

(제가 제작한 터보알 전용 S/W는 쓰고 있습니다.)


H/W 타이머는 S/W에서 종종 쓰이는걸로 알고 있습니다. PCM 출력도 마찬가지이구요.

8BIT DAC 출력은 프린터 포트 용 Covox 같은 것과 유사합니다.


한자롬 JIS2는 옵션이지만, A1ST/GT 두 기종 모두 JIS2 폰트가 들어있습니다.


일반 MSX-DOS2 카트리지(v2.20)는 DOS2 48KB와 한자DRV 16KB가 들어있지만,

한자DRV가 MSX2+부터 내장되어있어서, 대신 FDD(DOS1 16KB)가 들어가있습니다.

turboR 내장된 DOS2는 v2.30 (A1ST), v2.31 (A1GT) 두 버전이 존재하구요.

모두 Z800/R800 CPU 모드 전환 및 FDD 드라이버 통합으로 동작합니다.

참고로 OCM에 들어있는 디스크롬이 v2.31 기반으로 제작되어있어요.

Okei 씨의 FAT16 드라이버 통합된 롬이죠.