2012년 11월 20일 화요일

GUI 쉘을 만든다면 쓸모가 있을까요?

그냥 갑자기 든 생각입니다.

뭐, "느려터진 MSX로요?"가 먼저 떠오르긴 하지만요. ㅎ.ㅎ;


MSX에 GUI로 된 쉘이 몇가지 있던걸로 기억하는데, 실제로 잘 활용하시는 분 있나요?

저는 터보알GT 처음 샀을때 MSX-View 몇번 눌러본거랑...

SymbOS는 처음 나왔을때 잠깐 써본정도입니다요.


암튼, 제가 최근 MSX 사용한걸 생각해보니 대강~~

 M, MPXP, MIDRY, GRUN, MMCSD멀티롬 정도로 요약이 되더군요. 

사실 M에서 MP3/IMS 음악듣는게 50% 정도...ㅋ

노트북에서 코딩한거 테스트하는데 25%, 나머지는 겜 한두판 하는 정도입니다.


그동안 M을 주로 쓰면서 필요한 기능들을 M에 내장하는 방향으로 가고 있었는데요.

만약 GUI 쉘을 잘(?) 만들어져서 MS윈도3.1, SymbOS 같은 멀티태스킹이 되면 재밌지 않을까 생각이 들어서요.

적어도 제가 활용하는 선에서는 괜찮을 것 같아요. (자꾸 속도 문제가 떠오르긴 한데...ㅋ)


기존 롬팩으로 된 SW도 어느정도 실행이 가능하고,

DOS1, DOS2 프로그램도 완벽 실행되면 좀 쓸모있지 않을까요?

게임은 VDP/PSG 직접 액세스도 허용해야되니 풀스크린 옵션도 넣고요. ㅋ


그래픽은 스크린7 인터레이스랑 오버스캔 모드를 쓰려고 합니다.

512 x 480 해상도에 16컬러가 되겠지요.


암튼 잡설이었습니다. ㅎ.ㅎ


의견 있으시면 댓글 달아주세요~~


2012년 9월 22일 토요일

MMC/SD Drive V2 - Multi-ROM II 제작 #8 완료

Multi-ROM II SW가 1차 완료 되었습니다.

생각했던 기본기능은 다 넣었는데, 요구사항이 있다면 더 추가될 수 있겠습니다.


첨부된 MMC/SD BIOS 및 MFLASH 를 쓰시면 되겠습니다.

(그전에 Multi-ROM HW 확장부터 하셔야겠지만요. ㅎ.ㅎㅋ)

(테스트버전이라 파일은 파라동에만 올려두었습니다. 참고하셔요.)


사용법은 아래 순서로 하시면 되겠습니다.


1. FLASHMAN을 이용하여, MMC/SD BIOS를 v4.10 으로 업데이트

   예: FLASHMAN MMCDISK3.ROM


2. MFLASH를 이용하여 롬파일을 MultiROM II에 다운로드

   MFLASH I  입력하면 플래쉬롬 초기화

   MFLASH A filename 으로 롬파일 다운로드 (파일명은 *.* 등의 와일드카드 사용가능)

  주의: 플래쉬롬이 가득찬 경우, 지우고 다른 롬을 넣고 싶을때는

          MFLASH I 를 통해 전체를 초기화해야합니다.



아래는 동작하는 모습입니다.



MFLASH I 로 전체 플래쉬롬 초기화 하는 과정입니다.

슬롯에 위치한 MMC/SD Drive 중 Multi-ROM II로 확장된 기기가 자동으로 인식됩니다.

사진에서는 7개의 AM29F040 플래쉬롬이 존재하는 걸 보여주네요. (최대 15개 사용가능)




MFLASH는 롬파일 다운로드시 확장자를 가리지 않습니다.

대신 확장자가 ".ROM" 이 아닌경우는 "." 을 없앤 이름이 제목으로 표시됩니다.

저는 아래처럼 _MULTI.ROM 디렉토리에 다운로드할 롬들을 모아봤습니다.

파일명을 적당히 수정해서 11자로 표시되도록 했습니다요~




MFLASH A *.* 으로 파일을 몽땅 다운로드하는 모습입니다.

메가롬인 경우 매퍼가 자동으로 인식/패치 됩니다.





다운로드 완료 후, MFLASH L 을 이용하여 게임 목록을 출력해봤습니다.




본체를 리셋하고 SPACE 키를 누르고 있으면, 아래처럼 멀티롬 메뉴로 진입니다.

P키를 누르면 팔레트를 모노크롬 스타일로 변경할 수 있습니다. (MSX1용 게임에서만 효과있음)

T키는 A1WX/WSX 또는 A1ST/GT 등의 CPU 고속모드를 켜는 기능입니다.

M키를 눌러서 멀티롬II 기능을 실행합니다.




아래처럼 게임 목록이 표시됩니다.

메가롬 및 SCC 를 사용하는 경우 오른쪽에 아이콘으로 확인가능합니다.


게임 선택은 상/하 커서키를 이용합니다.

좌/우 커서키로 페이지 이동을 할 수 있고,

문자키 입력하면 해당 문자로 시작되는 첫 게임으로 커서가 점프합니다.

게임 선택 후, SPACE 키를 누르면 게임이 시작됩니다.


참고로 멀티롬II 에서는,

 16KB 주소 미러링이 필요한 게임 또는 페이지2(8000H~BFFFH)에서 실행되는 게임을 제대로 지원합니다.

(예: RISE-OUT, RIVER RAID 등)




멀티롬 진입 메뉴에서 P키를 누르면 모노 팔레트 설정을 할수 있습니다. (총 4가지)

MSX2의 경우는 게임(또는 BIOS)에서 직접 팔레트를 변경하기 때문에 효과가 없습니다.


아래는 팔레트 설정 후 MSX1용 게임을 실행해본 모습입니다.







MMC/SD Drive V2 - Multi-ROM II 제작 #7 다운로더 및 BIOS

멀티롬II 를 위한 다운로더 및 바이오스가 대충 완성되었습니다. ㅎ.ㅎ


첨부된 두 파일로 테스트 부탁드립니다. (MFLASH는 이상태로 정식버전이 될 확률이 높아요)

(아직 테스트 버전이라 파라동에만 올려두었습니다. 참고하세요...)


아래는 제 터보알에서 실행하는 모습입니다.

사용법 그대로 따라하시면 되겠습니다요~~



MFLASH.COM 은,

멀티롬 II 확장된 MMC/SD Drive의 플래쉬롬을 다운로드 하는 프로그램입니다.

DOS1, DOS2 환경 모두 지원합니다.


아래 세가지 명령을 쓸수 있습니다.

I = 전체 초기화

L = 게임 리스트 표시

A = 롬 추가(다운로드)




MFLASH I 를 실행한 모습입니다.

현재 동작중인 MMC/SD 중 멀티롬II 확장된 카트리지가 자동 선택됩니다.

혹시 두개 이상의 멀티롬II가 발견되면, 슬롯 선택 메뉴가 나올겁니다.


저는 AM29F040B 플래쉬롬 7개를 달았습니다.

각 플래쉬롬이 체크되면 보유 플래쉬롬 리스트에 등록이 되며,

chip erase 명령으로 전체 영역을 지워놓습니다.


참고로 플래쉬롬은 1개에서 최대 15개의 플래쉬롬을 쓸수 있습니다.

플래쉬롬 타입을 섞어써도 무방하구요.

74LS138 출력되는 /CE 신호 순서데로 연결안되더라도 상관없습니다.

(예: 3번, 6번 이렇게 두개만 달아도 됨) 


지원되는 플래쉬롬은 아래 세종류입니다. (모두 바이트 프로그래밍 방식의 4MBit입니다.)

AM29F040, MBM29F040, MX29F040


플래쉬롬 영역은 16KB 단위 블럭으로 관리합니다. 7개 플래쉬롬을 쓰면 총 224개의 블럭이 생기는 것이죠.




MFLASH A 명령을 써서 게임롬을 다운로드할수 있습니다.

MFLASH A USAS.ROM 등 한개 롬만 추가할수도 있고,

MFLASH A *.ROM 처럼 여러개 롬파일을 한번에 추가할수도 있습니다.


참고로 메가롬의 경우는 매퍼 종류를 자동으로 인식합니다.

만약 인식 실패하면 수동으로 선택할수 있는 메뉴가 표시됩니다.

지원되는 매퍼는 KONAMI SCC, KONAMI 8KB, ASCII 8KB, ASCII 16KB 네종류 입니다.


아래는 MFLASH I *.ROM 으로 디렉토리 내의 롬파일 몽땅 다운로드하는 모습입니다.




아래는 다운로드 완료 후 멀티롬II 를 구동한 모습입니다.

기존 멀티롬 처럼 MSX 부팅시 SPACE 키를 누르고 있으면 진입 메뉴가 나타납니다.

M 을 선택하면 멀티롬 메뉴에서 멀티롬II 메뉴로 전환합니다.


참고로 아래 사진을 보면 기존 멀티롬 기능은 활성화가 되어있지 않은 걸 알수 있습니다.

만약 R800 터보 모드를 켜려면 여기서 T를 눌러서 ON 시킨 후, M을 눌러서 멀티롬II로 진입하면 됩니다.




멀티롬II가 실행된 모습입니다.

상/하 커서키를 눌러서 롬을 고른 후, SPACE키를 누르면 게임이 실행됩니다.

파일명 옆에는 [메가롬] [SCC] 표시를 나타내는 아이콘이 나옵니다. 참고하세요.




아마 아직 MMC/SD Drive에 멀티롬II 확장하신 분이 없을 듯 한데요.

완성되시면 테스트 부탁드립니다. ㅎ.ㅎ