레이블이 __paraMSX인 게시물을 표시합니다. 모든 게시물 표시
레이블이 __paraMSX인 게시물을 표시합니다. 모든 게시물 표시

2023년 11월 4일 토요일

오랜만에 구버전의 paraMSX를 실행해보았어요!

지난주 파라동에서 펜티엄III 노트북을 나눔으로 받아왔습니다.

사양은 펜티엄 III 900MHz, 램 256MB입니다.


디스플레이가 망가진 상태라서, 힌지째 분리 후 외부 LCD 모니터에 연결해서 사용합니다.

누락된 INS키캡은 그닥 쓸모없는 'Sys Rq'키캡으로 바꿔 달았더니 쓸만하네요! ㅎ.ㅎ


옛날 노트북에는 옛날 프로그램을 깔아주는게 좋겠죠?ㅋ

그럼, paraMSX v0.48b 버전을 실행해봅니다. 잘 돌아가네요! ㅎ.ㅎ

(노트북 아래에 있는 X-II랑 WSX는 신경쓰지 마세요. 그냥 노트북 받침대입니다 ㅎ.ㅎㅋ)




실제 동작 모습은 아래 영상으로 구경하셔요~



그럼, 즐거운 주말되셔요~ ㅎ.ㅎ/


2022년 12월 17일 토요일

올만에 USB FDD를 돌려보았습니다

지난 송년회 때 가위바위보로 득템한 USB FDD입니다.

이제서야 연결해서 구동해보았어요. (2주가 지났...ㅋ)

LG에서 생산한 모델입니다~






33년 묵은 피드팩 디스켓을 넣고 paraMSX를 실행~ ㅎ.ㅎ

잘 돌아가네욤!






즐거운 주말되세요~


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, 롬팩, 디스크 에뮬같은 것들도 쏟아져나왔던 기억도 나네요.

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


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


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


2022년 5월 20일 금요일

[WIN] 2HD 디스켓을 2DD로 포맷하기

4년(?)마다 돌아오는 재방송 시간입니다~ ㅎ.ㅎ/

이미 잘 알고계시는 내용이겠지만, 재방송도 가끔은 재밌으니 한번 봐주세요~


2DD 디스켓은 생산이 중단된지 오래되어서, 대신 2HD 디스켓을 많이 사용하시는데요.

저도 마찬가지입니다요~ㅎ



그럼, 본론으로 넘어갑니다.


2HD 디스켓을 준비합니다.

안쓰는 놈을 하나 골랐습니다. 오래되서 배드섹터도 몇개 있어요ㅋ





외장형 USB FDD에 디스켓을 넣고, 윈도에서 '명령 프롬프트'를 열어봅니다.

CHKDSK로 현재 디스크가 1.44MB의 정상적인 2HD 디스크임을 알 수 있습니다.

디스켓의 우측 2HD 인식 용 홀을 막으면 2DD로 포맷할 수 있는데요.

이 때 "FORMAT A: /T:80 /N:9" 명령을 사용합니다.

아래 스샷은 순서대로 진행한 모습입니다.





윈도에서는 720KB 용량의 정상적인 2DD 디스크로 표시가 되었는데,

이게 MSX에서도 인식이 잘 될까요?

GT에 한번 넣어봅니다. 잘 인식이 되네요! (당연한 얘기를...ㅋ)





그럼, 디스크가 잘 기록되는지 테스트도 해볼까요?

COPY720 프로그램으로 YS1_K.DSK 이미지를 씁니다.





MMC/SD를 뽑고 디스켓으로 부팅해봅니다.

이스가 잘 실행되네요!





보너스로 스샷 한장 더 찍어봅니다.

paraMSX 에뮬에서는 PC의 FDD를 직접 읽을 수 있습니다.

실기에서 기록했던 이스 디스켓을 아래처럼 paraMSX로 구동이 가능합니다.





그럼, 이만~~


.

.

.

FAQ 하나만 적고 갈께요 ㅎ.ㅎ


Q: 저는 윈도XXX에서 2DD를 FORMAT하면 에러가 나오는데, 왜 그럴까요?

A: 쓰시는 FDD 또는 디스켓이 불량입니다.


-끝-


2021년 11월 10일 수요일

[WIN] 여러개의 DSK 파일을 간단히 합치는 방법

여러개의 DSK 파일들을 에뮬 또는 MMC/SD 등에서 사용하기 위해,

하나의 파일로 합쳐야하는 경우가 생기는데요.


방법은 여러가지가 있겠지만,

이번에는 배치파일과 윈도의 보내기(Send To) 기능을 활용해보아요~ ㅎ.ㅎ


먼저 파일을 합치는 BAT 파일을 받으세요.

Download: File Combine.zip


배치파일 내용은 이렇습니다.

제가 대충 만든거니까 맘에 안드시면 수정해서 쓰세요ㅋ





배치파일을 윈도의 GUI와 연동해서 쓰는 가장 쉬운 방법은

보내기(Send To) 기능을 쓰는건데요.


윈도10의 경우는 아래 폴더에 배치파일을 넣으면 되겠습니다.

배치파일 원본을 넣어도 되고, 바로가기 링크를 넣어도 됩니다.

C:\Users\계정이름\AppData\Roaming\Microsoft\Windows\SendTo





DSK 파일들의 이름을 잘 정리해서, 탐색기에서도 순서가 정렬되도록 해줍니다.





여기가 가장 중요합니다! 잘 보세요ㅋ

DSK 파일들을 모두 선택 후,

첫번째 DSK파일에서 마우스 우클릭으로 팝업메뉴를 띄웁니다.

배치파일에 파일명을 전달하는 순서때문에 이렇게 해야됩니다!

뭐, 파일명을 자동으로 정렬하는 기능을 넣을 수도 있겠지만...

스크립트를 복잡하게 만드는게 귀찮으니 그냥 이렇게 합시다~





CMD 창이 열리면서 작업이 수행됩니다.

COMBINE.OUT 파일을 생성하고, DSK 파일을 하나씩 붙이는거라 금방 끝나요.





작업이 완료되면 COMBINE.OUT 파일명을 적당히 바꿔서 쓰시면 되겠습니다.





흐... 배치파일 만드는 것 보다 글 쓰는게 더 귀찮네요.


.

.

.



근데 "어? 나는 구버전 윈도 쓰는데, 가능할까요?" 물어보실까봐

VM으로 윈도2000에서도 테스트해봤습니다.


윈도2000의 보내기 폴더의 위치는 아래처럼 나와요.

여기에 배치파일을 넣으면 됩니다.

C:\Documents and Settings\계정이름\SendTo


실행방법은 똑같습니다. 스샷 구경하셔요~







그럼, 즐거운 윈도 + MSX 생활하셔요~ ㅎ.ㅎ/~


2010년 3월 21일 일요일

paraMSX_Linux & RS-232C - 키보드 사운드

지난번 보여드린 TV 내장의 리눅스용으로 포팅된 paraMSX 활용을 위한,

터보알의 키보드 및 사운드(PSG)를 연결해보았습니다.

 

에뮬레이터와 터보알 실기 간의 연결은 RS-232C 카트리지를 썼습니다.

속도는 115200BPS 상태이고요.

 

에뮬레이터에서 PSG Port 출력은 터보알에서 시리얼로 받아 실제 PSG을 구동하고,

반대로 터보알의 키보드 포트 입력은 시리얼로 전달해서 에뮬레이터가 동작하는 형태입니다.

 

결국 키보드와 PSG 사운드 IO만 서로간의 전송이 되고,

나머지 VDP, CPU등 대부분 기능은 에뮬레이터에서 구현됩니다.

 

아래 동작하는 영상을 한번 보세요.

사운드랑 키보드 IO를 넣으니까 에뮬 구동 속도가 좀 떨어지는군요.

 

사운드를 안쓴다면 에뮬의 CPU클럭을 높여서 고속 MSX 에뮬하는 것도 재밌을것 같네요.




2010년 1월 24일 일요일

paraMSX_Linux & RS-232C - MSX를 TV안에

제가 메인으로 쓰는 모니터가 원래 유럽향 DTV인데, 시스템이 리눅스로 구동되고 있습니다.

(이쪽에 관심 있으신 분은 아시겠지만, 요즘은 TV, 휴대폰 등 제품에도 리눅스가 많이 쓰이고 있습니다.)

참고로 CPU는 MIPS의 MIPS24kec 324MHz가 들어있습니다.


기존 MSX 에뮬레이터(paraMSX) 소스를 좀 고쳐서 리눅스(TV 내장)에서 실행될 수 있도록 해보았습니다.

윈도용 에뮬처럼 모든 기능이 동작하는 건 아니지만,

MSX1/2/2+ 기본 세팅과 V9958 에뮬까지는 제대로 되도록 해놨습니다.

에뮬 화면은 리눅스의 프레임버퍼에 올리고 있습니다.

배경에는 SCART RGB입력의 터보알 화면이 나오고 있고 그위에 오버레이 되는 것이지요.

바꿔말하면, 그냥 TV의 OSD 메뉴 대신 paraMSX가 뜨는거라고 생각하시면 됩니다. ㅋ

 

아래 동영상 한번 보세요.

LCD TV랑 노트북이 시리얼(RS-232C)로 연결되어있고, 터미널 상에서 에뮬을 실행시켰습니다.

에뮬에서 사운드가 안나오기 때문에, 대신 터보알님이 MP3 배경음악을 넣어주셨습니다요. ㅎ.ㅎㅋ




 

아래는 터미널 스크린샷입니다.

USB 메모리스틱을 마운트해서 쓰고 있습니다.




2009년 10월 8일 목요일

paraMSX v0.50b에서 MMC/SD Drive 사용법

음... 제가 만드는 것들이 한가지 공통점이 있는데...

설명서가 부실하거나 없다는 것이지요. ㅎ.ㅎ;;;

 

이번에 paraMSX의 MMC/SD Drive 에뮬레이션을 이용해서,

메모리카드 초기화하고 YS1 게임을 하나 인스톨 해보는 가이드(?)를 만들어보았습니다.

 

스크린샷만 보셔도 이해하실수 있으리라 믿습니다. ㅋ

 

--------------------------------------------------------------------------------------

먼저 MMC/SD 바이오스 롬을 준비합니다.

여기서는 MMCDISK3.ROM을 MEGAROM 폴더에 넣어놓았습니다.

이름은 적당히 MMCDISK3_v4.00b4_2048KB.ROM라고 바꿨습니다.

 

paraMSX의 MMC/SD 에뮬레이션에서는 SD카드 1슬롯만 처리가능하고,

바이오스 파일명과 같은 명의 디스크 이미지(*.DSK)를 메모리카드 이미지로 사용합니다.

 

여기서 바이오스롬을 MMCDISK3_v4.00b4_2048KB.ROM 을 쓰기 때문에

메모리카드 이미지는 MMCDISK3_v4.00b4_2048KB.DSK 로 됩니다.

 

paraMSX의 시스템 메뉴에서 'MSX2+ FS-A1WSX.DAT'를 선택하면,

메인램 512KB로 설정되기 때문에 MSX-DOS2를 바로 쓸수 있습니다.

 

아래는 슬롯1에 MMC/SD 바이오스롬을 선택했고,

롬매퍼는 9 MMC/SD Drive (SCC)로 선택했습니다.

(다른 매퍼를 선택하면 제대로 동작하지 않습니다.)




[Power] 버튼을 눌러서 에뮬을 구동하면,

아래처럼 MMC/SD 부팅화면이 나타납니다.

(음... 바이오스 v4.01로 캡쳐됬네요. ㅎ.ㅎ;;)

아직은 메모리카드 이미지 파일(DSK)이 없기 때문에, 카드 초기화에 Fail이라고 나타납니다.




MMC/SD의 내장 플래쉬롬 디스크가 Drive A:로 매핑되어 부팅된 것을 볼수 있습니다.




여기서 INSTALL.COM을 실행하면 메모리카드 초기화를 하게 되며,

유저가 선택한 시스템 디스크 A/B도 함께 설정됩니다.

시스템 디스크 A,B는 MMC/SD에서 기본으로 설정되는 두개의 파티션을 의미합니다.

 

인스톨 중, 메모리 카드를 넣고 아무키를 누르라고 표시되는데,

그냥 아무키나 누르면 paraMSX 상에서 메모리 카드 이미지(DSK)파일을 자동으로 생성하게 됩니다.




전체 메모리카드 용량은 2GB로 선택되었고,

시스템 디스크 A,B는 각각 32MB로 선택했습니다.





인스톨이 종료된 후, Drive A,B를 DIR해본 모습입니다.

대부분의 프로그램은 B:\UTILS 폴더에 들어있습니다.

DOS2에서 PATH가 설정되기 때문에 유틸은 쉽게 실행가능합니다.




이제 본격적으로 YS1 게임 디스크를 MMC/SD로 옮겨보겠습니다.

아래 처럼 paraMSX의 디스크-A에 YS1.DSK를 선택했습니다.

여기서 디스크-A,B는 에뮬중인 시스템(현재 FS-A1WSX)의 내장 FDD를 의미합니다.

 

이 경우, MMC/SD가 MSX 드라이브 A,B,C,D를 처리하고 있으니까,

내장 FDD는 드라이브 E,F가 됩니다.

결국 드라이브 E에 YS1 디스크가 들어있는 셈이지요.




DISKMAN.COM을 실행하면 아래와 같은 화면이 나타납니다.

Root System 폴더에 이미 시스템 디스크-A,B 및 파티션 테이블이 들어있습니다.

 

일단 INS 키를 눌러서 Game 폴더를 하나 생성합니다.




'리턴'키를 누르면 해당 폴더로 들어가는데,

이번엔 Game폴더안에서 'YS I' 이라는 파일을 새로 만듭니다.

 

파일은 단지 파티션 이름으로만 의미가 있고, 실제 디스크 파티션은 파일 내에서 생성해야합니다.




YS I 파일에서 리턴키를 누르면 디스크 편집창이 나옵니다.

INS를 눌러서 새 디스크를 추가해봅니다.

 

현재 추가된 디스크가 하나도 없는 경우에는,

디스크 타입(용량)을 먼저 물어보게 됩니다.

대부분 플로피 디스크 게임은 2DD(720KB)니까 1번을 선택하면 되겠습니다.




추가될 디스크 이름을 입력합니다.

여기서는 그냥 Main이라고 입력했습니다.

(참고로 이름은, 최대 7자까지만 입력가능합니다.)




1번 디스크로 Main이 추가되었습니다.

[ 96 - 96] 숫자는 파티션의 블럭 위치를 의미합니다. 별로 중요한 건 아닙니다. ㅎ




1번 디스크에서, 리턴키를 누르면 디스크 Import 메뉴가 나오는데,

이미지 파일(DSK)를 사용할 것인지, 아니면 실제 FDD에서 읽을 것인지를 골라야합니다.

 

지금은 실제 FDD(드라이브 E)에서 복사해야 되니까, Import from FDD를 선택합니다.




드라이브 명(E)을 입력합니다




드라이브 E에서 섹터를 읽어 MMC/SD 메모리로 복사하는 모습입니다.




Import가 완료되면, ESC를 눌러 File 메뉴로 돌아갑니다.

여기서 F5를 누르면 아래처럼 디스크 부팅/선택 등의 메뉴가 나옵니다.

 

첫번째 Set disk & Boot disk를 선택하면,

현재 000.YS I 파일의 1번 디스크(Main)를 드라이브 A로 매핑한 후, 부팅시켜줍니다.

참고로, 세번째 메뉴는 드라이브 A로 매핑한후 DOS로 복귀합니다.




잠시 기다리면 YS1이 실행되는 것을 볼수 있습니다.





paraMSX v0.50b

paraMSX v0.50 beta 버전입니다.

필요하신분 받으세요~~

 

MSXturboR 호환의 8BIT Audio DAC이 추가되었습니다.

(MMC/SD Drive의 Movie/Music Disk 테스트 용입니다.)

 

에뮬레이션 윈도 크기 설정이 수정되었습니다.


Download: paraMSX050b.zip


2008년 2월 27일 수요일

paraMSX v0.48b

드림위즈가 홈페이지 서비스를 종료하게되어, paraMSX 파일만 블로그로 옮깁니다.

paraMSX의 최신(2008-02-27) 베타버전 입니다.

Download: paraMSX048b.zip