2009년 8월 28일 금요일

뜨개질 확장슬롯 #1 삽질의 시작

거의 열흘 가까이 바느질 납땜을 한 결과...

확장 슬롯을 하나 만들게 되었습니다.

 

슬롯은 6개를 넣었고요.

4개는 기본 확장 슬롯이고,

나머지 두개는 MSX슬롯핀의 안쓰는 5번,16번 핀을 SLTSL로 쓸 수 있도록 해놨습니다.

파나소닉 MSX인 A1-WSX와 A1-GT는 MSX-ENGINE(T9769C)가 사용되는데,

WSX는 슬롯0-1, 슬롯0-3의 SLTSL 신호를 쓸 수 있고,

GT는 슬롯0-1의 SLTSL 신호를 쓸 수 있습니다.

이걸 안쓰는 슬롯핀으로 빼내서 쓰기 위한 것이지요.

물론, 연결 안하더라도 마지막 두 슬롯은 일반 IO 기기 연결용으로 쓸 수 있겠습니다.

 

어차피 확장 슬롯 하나만 만들거니까, 조금 오버해서...ㅋ

신호선의 버퍼(74LS244/245)를 각 슬롯마다 넣었고요,

슬롯 전원은 외부 DC 5V를 연결할 수 있도록 해놨습니다.

5V 3A 정도면 슬롯 6개 다 써도 남을 듯 하네요.

 

근데 만들다가 이거 알게 된 사실인데,

MSX 슬롯에 Z80 BUS-REQ/ACK 신호를 안쓰네요. ㅡ.ㅡ

당연히 있다고 생각했는데... 그러면 DMA 기기는 아예 만들지 못하는 거였네요.

그리고 BUSDIR 핀은 단순히 Data 라인 방향 제어에만 쓰이더군요.

근데, 메모리 R/W 할때는 SLTSL/MERQ를 참조하면 되니까,

결국 IN/OUT 때만 BUSDIR이 필요하네요. (OUT 시에는 그냥 두면 되니, 결국 IN할때만 컨트롤 하면 OK)

어쨌거나, 개별 슬롯 ON/OFF 스위치도 넣고 잡다하게 뭔가 하려다보니 납땜만 잔뜩되었네요.

 

근데 칩을 너무 꽂아서 그런지, WSX에서는 슬롯 다켜면 본체가 켜지질 않습니다. ㅜ.ㅜㅋ

GT는 괜찮은데..에거... 뭔가 HW 에러가 있는 것 같긴 합니다.


암튼, 사진 나갑니다.

 

MSX 슬롯 연결부는 못쓰는 팩에 50핀 케이블로 연결했습니다.


 


터보알 후면 슬롯에 꽂아서 동작중인 모습입니다.

참고로 MPXP도 서브슬롯 체크하도록 수정되었습니다. (차후 릴리즈 예정)

MPX 카트리지가 슬롯0-1에, MMC/SD 드라이브가 슬롯2-3에 있네요.




아래는 삽질의 현장입니다.

터보알의 T9769C의 SLOT01, SLOT03 핀을 외부 슬롯의 핀5번, 16번으로 연결했습니다.

핀 5번은 보드에 연결안된 점퍼에 납땜했는데, 회로도에는 뭔가 외부 입력으로 쓸수 있게 해놓은 것 같더군요.

(회로도 글씨가 잘 안보여서 무슨 기능인지는 모른다는 거...ㅋ)

핀 16번은 후면 커넥터 다리에 납땜했습니다.




근데 막상 뚜껑 덮고 켜니까, 터보알 부팅 로고가 안나오네요. 허거...

구글님께 물어본 결과 슬롯 0-3은 부팅 로고 프로그램이 있다고 합니다.

이 내용은 터보알 매뉴얼에도 없어요. 암튼 슬롯0-3은 다시 땠습니다.

아마 WSX에서는 쓸 수 있을 것 같네요. (아직 해보지는 않았습니다.)





2009년 8월 7일 금요일

MMC/SD Drive V2 - 동영상 구현 #2

이번엔 데이터량을 MMC/SD 드라이브 한계까지 올려서 만들어보았습니다.


지난번 12프레임 영상은 128 x 68 크기였는데, 104KB/s 정도이고요. (오디오는 13KHz)

이번 8프레임 영상은 192 x 104 크기로 159KB/s 정도입니다. (오디오는 19KHz)


3.58MHz Z80 노말 모드에서 구동되고,

스크린12 모드를 쓰기 때문에 MSX2+ 또는 터보알에서만 제대로 볼 수 있습니다.


참고로, 256 x 138 크기로도 테스트를 해봤는데, 이걸로는 4프레임이 한계네요.

움직임이 느린 뮤직비디오 정도는 괜찮겠지만 별로 안좋더군요.


그럼, 동영상 감상해보세요~

이번에도 매트릭스 릴로디드 트레일러입니다.



2009년 8월 6일 목요일

MMC/SD Drive V2 - 동영상 구현 #1

그저께 PCM 플레이어 만든 후, 바로 동영상 플레이어 제작에 들어갔습니다.


일단 CPU 여유 타임을 고려해보니,

초당 128 x 68 (와이드 영상) x 1Byte x 12 frame이 처리 가능하겠더군요.

수평 128 Bytes중 16Bytes가 사운드로 재생(13056Hz)됩니다.


초당 104KB 데이터를 처리하는 것인데,

아직 30%정도 CPU 여유가 있긴 합니다.


그래픽 모드의 MSX2+ 이상에서만 사용되는 스크린12모드입니다.

수평 4픽셀끼리 컬러를 공유하기 때문에 약간 눈에 거슬리는 것도 있지만,

테스트 해보니 스크린8의 256고정 컬러보다는 더 낫더군요.


화면의 1/6정도로 작은 크기지만, 초당 12프레임의 부드러운 영상을 볼 수 있습니다.

참고로, 페이지 플리핑도 하고 있어서 볼만하네요. ㅎ.ㅎㅋ


전에 SymbOS에서 동영상 플레이 할때는 비슷한 크기에 사운드 없이 5프레임/초 정도가 한계였는데,

역시 메모리 전송없이 바로 VDP로 쏘니깐 빨리할 수 있네요.


설명이 길었습니다. 아래 동영상 감상하세요~