추가 - 본문에 내용이 없어서 추가합니다. YMF7x4도스 드라이버가 로딩되지 않아도 디지털입력-출력은 작동합니다.

무슨 말이냐면 시디룸의 디지털입력이 되고 있는 상태라면 드라이버로딩없이도 바로 디지털출력이 되어서 음악을 들을 수 있습니다. 물론 드라이버로딩 없이는 YMF7x4의 FM이나 PCM은 들을 수 없습니다.

ymfspdif.7z
0.53MB
DVI2019L.EXE
6.13MB
ru.zip
0.35MB
peridos.zip
0.11MB

최근에 YMF7x4시리즈들의 디지털 출력을 도스에서 활성화 하는 유틸과 소개글을 올린 적이 있습니다.

블러그의 링크 https://9632024.tistory.com/1458 참조 

https://cafe.naver.com/olddos/44222 혹은 https://cafe.naver.com/oldsell/42683

 

이 부분에 고무되어 디지털입력을 디지털출력으로 전달하려는 욕심을 품고 여러가지 테스트를 하였습니다.

목적은 YMF754카드의 시디롬디지털입력단을 써먹기 위해서 입니다. 일단 결론은 성공입니다. 

*보통 도스에서는 시디롬의 아날로그 출력을 사운드카드에 물려서 음원을 듣는데요. 이 경우 잡음에 꽤 있습니다. 항상 이게 싫거든요.

 

먼저 테스트에 사용한 카드는 AW754로 에이오픈에서 만든 YMF754 카드입니다.

디지털 입/출력단이 모두 달려 있습니다.

 

일단 윈도우98에서 테스트를 하였는데 였는데 분명 신호입력은 되고 있다고 뜨는데 소리가 나지 않는 현상을 발견했습니다.

이 부분은 결론적으로 드라이버의 기본 볼륨설정이 문제였는데 에이오픈이나 야마하에서 제공하는 드라이버 설치시 디지털입력 부의 볼륨을 기본 음소거 시켜두었고 이 부분이 제어판에서 보이지가 않아 제어할 수가 없는 상황이었습니다.

이 때문에 XWAVE에서 제공하는 드라이버를 설치하니 디지털입력의 볼륨을 조절할 수 있게 되어 다행히 해결할 수 있었습니다. 첨부파일 참조 -  DVI2019L.EXE 

*윈도우98 기준으로 제어판-멀티미디어-오디오탭에서 재생의 기본설정장치를 YMF7x4로 찾고(DS-XG) 재생볼륨조절에서(재생 바로 아래 아이콘 클릭) Digitalin 을 찾고 (없으면 볼륨조절에서 옵션-등록정보에서 볼륨조절:재생이 체크된 상황에서 다음의 볼륨조절보기에서 Digitalin을 찾아 체크)

 

그리고 해당카드의 MMIO 주소를 비교하였습니다.

 

제 카드의 경우 해당 주소가 EB000000 인데요. 찾는법은 본문 상단의 링크를 참고하시면 됩니다. 

아래가 도스(RU.EXE 사용) 파일 첨부하였습니다.

사용법은 RU 실행후 컨트롤+C르 눌러 Config메뉴에 들어간 후 Memory(Flat)를 선택하면

주소를 지정할 수 있는데 이때 자신의 카드가 해당하는 주소를 적어두고 엔터를 치면 됩니다.

*윈도우 에서는 가상모드 문제로 이 주소 범위까지 넘어가지 않습니다.)

 

 

아래가 윈도우의 상황 (RU가 먹히지 않아 Peritool 사용 - 파일첨부하였습니다.)

사용법은 

윈도우98에서 시작-프로그램-MS-DOS 실행후 아래 창이 뜨면 

PT.EXE가 있는 곳으로 이동해서

PT.exe MEM display 1 0xEB000000 0x100 을 실행합니다.

여기서 MEM은 반드시 대문자여야 하고 EB000000은 자신 카드에 해당하는 주소여야 합니다. 

 

몇군데 차이가 있는데 

일단 결론적으로는 34H 부분이 도스는 04, 윈도우는 01로 되어 있습니다.

이 부분이 디지털입력을 활성화하는 곳인데 

01이 입력되면 디지털소스를 받아 자체 샘플링등을 거치는 것이고

11이 입력되면 다이렉트 즉 패스스루가 됩니다. 

본문 상단의 링크에 소개된 YMF7xx 로 간단하게 도스에서 입력이 가능합니다. (파일첨부 YMFspdif.7z)

 

예시

YMF7xx.exe /w 34h 01 

패스스루시 YMF7xx.exe /w 34h 11

입니다. 단 입력시 YMF7xx.exe /r 을 통해 상황을 보면 34h 부분이 다른 숫자로 나오는 경우가 있습니다만 그냥 두시면 됩니다. 

 

그리고 한가지 더 

디지털입력을 활성화 했으면 이제 디지털입력의 볼륨을 올려주어야 합니다. 도스에서도 기본 음소거상황이기 때문입니다.

위의 두 비교 스샷에서 B8H 와 BAh 가 해당 위치입니다. 윈도우쪽 스샷의 13 20 13 20 이 있는 부분 입니다. 

둘다 값을 3fff 로 주면 최대값이 주어집니다. 

 

YMF7xx.exe /w B8h 3FFFF

YMF7xx.exe /w BAh 3FFFF

를 하면 되겠지요.

*이 값을 주게 되면 YMF7xx 를 실행해보면 SPDIF플레이백 볼륨값이 0에서 최대치로 변경됩니다.

 

*일단 YMF7xx제작자의 글을 보니 칩마다 좀 위치가 다른 모양인데 제가 쓴 위치를 변경해도 되지 않는 경우

윈도우와 도스의 MMIO주소를 비교해서 찾아야 할 것입니다. 

-도스에서 스샷을 찍어두고, 윈도우에서는 디지털인의 볼륨을 변경해가면서 해당 주소의 변화를 보면 됩니다.

-활성화 부분은 윈도우에서 드라이버설치시 제어판에 DS-XG설정이라고 빨간색아이콘이 있는데 그것을 실행해서 디지털출력에 들어가서 디지털 출력 모드를 변경해가면서 변화되는 부분을 확인하면 됩니다.

실시간으로 변경되는 부분도 있어서 아래 스샷에서 ON(디지털소스만)과 ON(다이렉트) 2개만 체크해가면서 01과 11으로 변하는 곳을 찾으세요.

 

 

 

위에서는 디지털소스만/다이렉트 쪽 모드만 소개했는데요

도스에서 돌비디지털은 의미가 없어서 확인하지 않았고, 남은 것은 ON(전부)인데요.

ON(전부)의 경우 34H값이 변화하는 것이 아니라 ADC의 볼륨값이 변경됩니다.

YMF7xx의 옵션중에 ea를 주게 되면 라인입력단의 소리도 디지털로 나가는데 이게 그 모드에 해당합니다.

 

 

* YMF744나 754나 디지털입력단이 시디롬 디지털입력까지 해서 2개인 카드가 있는데요. 

이 경우 한쪽이 입력받으면 한쪽은 입력이 되지 않습니다.

 

결론적으로 사블 라이브와 오디지시리즈의 도스용 믹서유틸을 발견해서 시디롬 디지털입력은 쓰지 않게 되었고...

사블 라이브의 디지털출력을 YMF754가 받아서 사블16호환카드 조합으로 변신시키게 되었네요....

이 사연은 

https://cafe.naver.com/olddos/45053 혹은 https://cafe.naver.com/oldsell/43027 참조 

위의 사연 링크들은 블러그에는 없는 글이라 해당 카페에 가입을 해야 하니 넘기셔도 됩니다. 

Posted by 월반장

댓글을 달아 주세요