2022년 10월 17일 월요일

오랜만에 PAC-V RED 단체샷입니다.

단체라고 적었지만 사진에는 3개밖에 없네요 ㅎ.ㅎㅋ





역시 빨갱이는 영혼의 색인 것 같네요.


멍하게 보고 있으면 혼이 스르륵~ 나가는 느낌입니다요!


그럼 편안한 월요일 밤 되세요! ㅎ.ㅎ



2022년 10월 9일 일요일

MSX 본체를 리눅스 용 MSX에뮬의 프론트엔드로 활용

[서론]


최근 MSX3 얘기를 하다보니...

고성능 PC의 프론트엔드에 MSX를 활용하면 어떤 모습이 되는지 궁금하실 분이 있을 듯 해서요.

예전(2010년)에 썼던 글을 조금 바꿔서 재방송을 해봅니다 ㅎ.ㅎ


과거로 타임머신~~ ㄱㄱㄱ

.

.

.



[본론]


2000년대 중후반이겠네요. 디지털TV가 보편화되면서 자연스레 임베디드 리눅스가 TV에서도 널리 쓰이게 되었습니다.

당시 제가 개발에 참여했던 유럽향 TV 한대를 집에서 테스트용으로 사용하고 있었는데요.

물론 DVB-T를 국내에서 볼 수 있는건 아니니까, 순전히 SCART 모니터 대용이었지요 ㅎ.ㅎ



1) 그러던 2010년 어느날...


윈도용으로 만들었던 paraMSX를 리눅스로 포팅해서 TV(MSX 모니터)에서 구동해보면 재밌겠다는 생각이 들더라구요.

아이큐1000,2000을 에뮬로 띄우면 GT에서 한글을 사용하는 프로그램을 구동하는 등으로 활용하면 좋을 듯 해서요 ㅎ.ㅎ


일단 리눅스 용으로 포팅하고, TV의 그래픽 레이어에 띄우도록 해봤습니다.

뭐랄까 PC에 TV카드를 꽂고 MSX의 출력을 PC에서 받아 PIP로 띄우는 것과 정확히 반대가 되는 모습입니다ㅋㅋ


GT에서는 MPX 카트리지로 음악을 재생한 상태이구요.

노트북 PC에서 TV쪽 리눅스에 터미널로 접속 후 paraMSX 리눅스 버전을 실행했습니다.



사실 이 상태는 GT가 에뮬을 구동하는데 아무 역할을 하지 않습니다.

그냥 모니터를 켜놓은 것 뿐이니까요 ㅎ.ㅎ



2) MSX에서 리눅스에 로그인


이제 노트북 없이 그냥 GT만으로 리눅스에 로그인해서 에뮬을 구동하고 컨트롤도 해보면 되겠죠?

제일 간단한 연결방법은 역시나 시리얼 포트(RS232-C)입니다.


초간단 115KBPS/230KBPS 시리얼 카트리지를 하나 만들고,

또 초간단(ㅋ) MSX 용 VT100 터미널 에뮬을 만듭니다.

사실 안시코드 지원은 안되어있고 대충 글자만 볼 수 있는 정도입니다요ㅋ

PC에서 GT쪽으로 롬파일을 전송해서 실행하는 것도 해보니... 잘 돌아가네요.


이 정도면 최소한의 H/W, S/W는 준비가 된 듯 합니다.




3) GT를 paraMSX와 연결


에뮬에서는 GT 키보드의 포트 데이터를 받아서 키보드 입력으로 사용합니다.

매 프레임마다 전체 데이터를 전송하면 왠만한 경우는 커버되겠죠?

그리고 반대로, 에뮬의 PSG 데이터는 GT 쪽으로 전송해서 실기의 PSG를 구동합니다.


요약하면 키보드, PSG는 GT에서 동작하고, 나머지 기능은 모두 paraMSX 에뮬에서 동작하는 것이죠.

실제로는 요렇게 동작합니다. 이 영상 찍을 때는 에뮬이 좀 느리게 돌고 있었네욤. (BGM이 느릿느릿~)





[결론]


처음엔 이것저것 구현하고 동작시켰을 때 나름 재밌었습니다. 금방 열기가 식어버린게 문제였지만요.

그러고보니 지금은 paraMSX-R 카트리지가 있어서...

GT에서 아이큐2000 모드로 전환하고 한글 프로그램을 구동하는 등의 작업도 쉽게 되는군요 ㅎ.ㅎ


2012~2013년쯤이었나요?

라즈베리파이가 인기를 끌면서, MSX 용 HDMI, 롬팩, 디스크 에뮬같은 것들도 쏟아져나왔던 기억도 나네요.

그 때문인지 뭔가 유니크한 주변기기 개발은 시들해진 부작용도 좀 있었구요.


... 암튼 갑자기 예전 생각들이 떠올라서 주섬주섬 적어보았습니다.


즐거운 연휴되세요~ ㅎ.ㅎ/