GOTEK Floppy Emulator MSX
- MSX 에서 GOTEK Floppy Emulator 사용해보기
- 작성자
- 네이버 MSX 의 천국 카페 - iolo 님
도입
요즘 날씨가 무척 덥네요. 가만히 있어서 땀이 주르륵 흐릅니다. 날도 더운데 지난 주말에 개인적인 숙제를 한 개 마무리했습니다. 바로 GOTEK Floppy Emulator(이하 고텍 에뮬레이터) 개조하기입니다. 방안 어딘가에서 잃어버린 녀석을 찾았거든요.
고텍 에뮬레이터는 이미 입맛대로 개조해서 사용하시는 분들도 많이 계실 듯한데요, 개인적으로 세팅해본 내용 정리해봤습니다. :)
고텍 드라이브 펌웨어 업그레이드
이 녀석 정말 생각지도 못한 곳에서 발견했습니다.(구석에 있는 과자 부스러기 치우다가 발견!) 아마도 구입한지 몇 년은 되었을 겁니다. 역시 몇 년 전에 아미가500을 입수했을 당시에 디스켓 구하기가 힘들어서 대안을 찾다가 고텍 에뮬레이터를 알게 되었습니다. 당시 아미가용으로 펌웨어를 개조해서 판매하는 녀석들이 종종 보였는데 가격이 만만치가 않더군요. 그래서 직접 개조해보겠다고 단품으로 본체만 구입했었습니다. 정작 삽직만 하다가 실패했었지요. 훗날 알았는데 펌업을 위해서 구입했던 USB to Serial이 불량품이더군요.. -O-;;
궁금증에 결국 이베이에서 튜닝한 제품을 구입해서 사용중입니다. 참고로, 고텍에 사용하는 커스텀 펌웨어는 의외로 종류가 되더군요. 하지만 대부분 유료였습니다. 때문에 한동안 관심 밖이었습니다만 (직접 개조를 시도했을 당시에 진행하던) 오픈소스프로젝이 최근에 찾아보니 많은 발전이 있었습니다. 겸사겸사 다시 펌웨어 업그레이드을 시도해봤습니다.
간만에 뜯어봅니다. 예전에 업그레이드해보겠다고 다소 무리를 줬던 기억이 있는데 살아있을지 모르겠네요. 뜯어보니 순정과 다른 부분이 보입니다. 전원부 바로 우측의 핀헤더는 원래 없던 건데 달아준 거네요.
개조에 사용할 커스텀펌웨어는 FlashFloppy입니다. ( https://github.com/keirf/FlashFloppy/wiki 참조 )
안내 페이지 일부를 캡쳐해봤습니다. 관심이 가는 단어들에 색을 칠해봤어요. 예전에 비해서 상당히 다양한 포맷을 지원합니다. MSX도 공식적으로 명시가 되었있군요. :)
확인해보니 현재 펌웨어 최신 버전은 v0.9.24a입니다.
펌웨어는 https://github.com/keirf/FlashFloppy/wiki/Downloads 에서 다운로드가 가능합니다. 예전에 저는 시리얼로 연결해서 hex파일을 올렸던 기억이 납니다. 최근에는 업그레이드 방법이 좀 더 쉬운게 나왔습니다. 그중 DFU모드를 이용해보겠습니다.
링크에서 제공하는 파일의 압축을 풀어보면 다음과 같은 파일이 들어있습니다.
확장자만 다른 같은 이름의 3개의 파일이 보이는군요. hex파일을 이용해서 dfu 파일을 생성하기도 했는데 이제는 포합돼서 릴리즈되나 봅니다. 참고로 최초 한 번 커스텀펌웨어를 올리면 그 뒤에 *.upd파일을 USB메모리에 담아서 업그레이드를 할 수 있습니다. 주의할 점은 현재 순정으로 돌리는 방법은 아직 나와있지 않습니다.
점퍼 세팅 후 전면부 USB포트(케이블은 M-M타입을 사용합니다.)를 이용해서 PC와 연결해줍니다.
DfuSe Demo( http://samedisk.com/en/download.php?id=5 )를 실행한 후 *.dfu 파일을 불러온 뒤 "Upgrade" 버튼을 눌러주면 쉽게 작업을 완료할 수 있습니다. 디바이스를 못 잡을 경우 DfuSe Demo 인스톨 폴더에 있는 드라이버를 깔아주면 됩니다.
정상적으로 펌웨어업그레이드가 끝나면 사진과 같이 전면부 LED에 F-F라고 표시가 됩니다.
외장형 드라이브의 제작
다음은 저만의 외장형 드라이브를 조립해보겠습니다. 우선 LCD와 로터리 엔코더&노브를 준비했습니다. 소형 스피커도 어딘가 있는데 못찾겠더군요.. 좌측 비닐은 작은 사이즈의 OLED 디스플레이입니다. 사이즈가 작아서 기존 고텍 에뮬레이터의 LED를 제거하고 장착하는 사례가 많습니다. 추후 활용해볼 생각에 같이 주문했습니다.(금번엔 우측의 큰 걸로 사용했습니다.)
사진은 예전에 만들어본 외장형 스카시드라이브입니다. 이 때 아크릴을 두 세트를 주문했었습니다. 남은 아크릴을 고텍 에뮬레이터 하우징으로 활용해보겠습니다.
대략 구멍 뚫어주고 재단 후 정리된 상태입니다. 개인적으로 내부가 보이는 스타일을 선호해서 비슷하게 하우징 입혀본 적이 종종 있습니다. 먼지유입도 많이 되는 형태긴 합니다만 저렴하게 재단(직각 재단)해서 최소한의 작업으로 원하는 형태를 만들어볼 수 있어서 아크릴을 선호합니다. :)
스피커는 찾다가 포기할 무렵 이런 녀석이 나왔습니다. 예전에 나눔 받은 건데 때마침 발견했습니다!^^
선재는 점퍼선으로 바꿔주었습니다.
LCD는 생각보다 저렴합니다. 이 녀석은 16캐릭터 2라인을 사용하는 제품이고요, SCL 및 SDA 라인에 VCC로 연결되는 풀업저항이 필요합니다. 용량은 4.7k옴입니다. 모듈헤더에 직접 납땜했습니다.
다음은 로터리 엔코더 연결을 위해서 추가로 핀헤더를 붙여줬습니다. 우선 막힌 납을 제거한 후,
장착했습니다. 예전에 핀헤더를 종류별로 사놨더니 훗날 이렇게 사용할 일이 있네요.
그리고, LED는 아래로 밀착했습니다.
전원부와 스위치(사실 굳이 필요는 없는...)도 배선했습니다.
유일하게 접착제를 사용한 부분인데요, 튼튼하게 고정되도록 아래쪽에 아크릴 조각을 덧댔습니다.
스피커는 사진의 위치에 양면테입을 이용해서 고정했습니다.
이제 전체적으로 배선 했고요,
선정리 후 마무리했습니다. :)
하단엔 남는 고무발이 있길래 적용해봤는데 나쁘지 않습니다.
전원부는 부득이 공간 때문에 측면에 구성했습니다. 정작 조작해보니 후면보다 편합니다.^^
로터리 엔코더는 주문한 녀석이 나사산이 없는 제품이라 사진처럼 고정했습니다. 생각보다 튼튼해서 누르는 동작에도 무리가 가지 않았습니다.
조립은 끝났다. 이제부터 테스트!
조립 완료했으니 테스트를 해보겠습니다~
사진은 페인킬라님 제작의 FDC입니다. 외장형으로 사용할 때 편리하네요. 고텍 에뮬레이터를 MSX에서 사용해보겠다고 생각하게 된 계기이기도 합니다.
고텍 에뮬레이터에 연결할 USB메모리는 FAT32 또는 FAT16으로 포맷 후 루트에 FF.CFG 파일을 넣으면 됩니다. 디스크이미지는 루트 또는 폴더를 만들어서 넣어주면 되고요.
금번 커스텀 펌웨어의 가장 큰 장점 중에 하나가 폴더를 지원하는 것과 LCD를 통해서 정보를 볼 수 있는 거라고 생각합니다. FF.CFG 파일 내용 중에 몇 가지 캡쳐해봤습니다.
드라이브에뮬레이션 옵션에 MSX를 지정할 수 있습니다. 사용해보니 디폴트도 문제가 되진 않았습니다.
스피커를 장착할 경우 물리적인 볼륨저항 없이 세팅값을 조정해서 음량을 설정할 수 있습니다.
이건 전면부 2버튼 세팅값과 로터리 엔코더 세팅값입니다. 2버튼은 조합으로 여러 가지 기능을 수행하는군요. 펌웨어 업그레이드도 2버튼을 동시에 누르고 부팅하다가 일정시간 후 떼어주면 진행이 되는 걸로 본 것 같습니다.
작동 이해를 돕기 위해서 동영상[1]을 찍어봤습니다.LCD에 파일명이 보이니 편하고요, 로터리 엔코더를 이용해서 쉽게 선택이 가능합니다. 파일명에서 엔코더 버튼을 누를 경우 이젝트가 되며, 폴더에 접근해서 누르면 폴더로 진입합니다. 폴더는 하위에 여러 개를 만들 수도 있습니다. 로터리 엔코더를 돌릴 때 가속도 되기 때문에 파일 개수가 많아도 단시간에 원하는 파일에 접근할 수 있을 것 같습니다.
테스트로 넣어본 이미지를 몇 개 더 테스트해봤습니다. 후면 슬롯에 한글폰트팩을 꽂은 뒤에,
삶의여유 님이 제작하신 2017 천국동 송년회 기념 28합을 실행해봤습니다.
잘 됩니다.^^
사이코월드, 이스2, 암흑신화 등 테스트로 넣은 이미지들은 모두 잘 동작했습니다. 간혹 오류가 있는 파일은 컨트롤 버튼을 누른 상태로 부팅해서 메모리를 확보하면 모두 이상 없이 잘 돌아갔습니다. 전반적으로 호환성은 매우 좋은 듯합니다.
이상으로 간단히 테스트 마쳤습니다. :)
케이스와 LED가 남았네요. 순정케이스를 이용했다면 좀 더 손쉽게 마무리했을 것도 같습니다.ㅎㅎ
혹시 고텍 에뮬레이터와 해당 펌웨어에 관심이 있으신 분들은 https://github.com/keirf/FlashFloppy/wiki/Hardware-Mods 와 구글에서 키워드로 검색하면 수많은 튜토리얼이 나오니 참고하시기 바랍니다. :)
마지막으로 소형 OLED에도 핀헤더를 땜질해줬습니다. 추후 사용하던 아미가에 적용해볼까 합니다. 긴 글 읽어주셔서 감사합니다~^^
참고문서
- custom firmware
- DfuSe Demo
- FlashFloppy
Notes
- ↑ 원문을 확인해 주시기 바랍니다. 원문은 https://cafe.naver.com/msx/14731 입니다.