2008년 6월 19일 목요일

MMC/SD Drive V1,V2 - BIOS v3.10

Dowload: MMCSD_Drive_v3.10.zip


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

    MMC/SD Drive v3.10 (2008.06.18)

        By 서영만 (E-mail:sharksym@hitel.net)

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


* 개선 사항 v3.10


- DOS2 v2.20 커널이 내장되었습니다.

  128KB 이상 램의 MSX2/2+ 에서 사용가능합니다.

  DOS2 인스톨 불가능한 경우는 자동으로 DOS1 커널로 동작합니다.


- BASIC'n v2.1 내장되었습니다.

  BASIC 프로그램을 고속으로 만들어주는 ASCII의 프로그램입니다.

  참고로 v2.1은 MSX1/2/2+/turboR 모두 지원합니다.


- Disk R/W 속도 개선.

  미약하지만 속도 개선이 되었습니다.


- v3.05 테스트 버전에서 미완이던 기능들이 모두 정리되었습니다.

  Shift키 부팅, Ins키 부팅(DOS1 강제 부팅), SymbOS 드라이버, 롬뱅킹 보호, 등.


- 현재 BIOS롬에서 디스크롬이 차지하는 부분이 늘어나는 바람에,

  상대적으로 플레쉬디스크 용량이 줄었습니다. 참고하세요.

  DiskROM (DOS1 커널) :  16KB

  DiskROM (DOS2 커널) :  64KB

  BASIC'n v2.1        :  16KB

  MMC/SD Driver       :  32KB

  FlashROM Disk       : 384KB

  Total               = 512KB


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


1. Hardware 개요

  - MSX의 표준 Disk Interface와 호환되는 외장 Disk.

    DOS Command 및 Program Disk basic command 사용 가능.

  - DOS1/DOS2 커널 내장.

  - BASIC'n v2.1 내장

  - MMC/SD Memory를 저장 매체로 사용 (16MB~256MB).

  - 기존 2DD 및 1.44MB~23MB 고용량 Disk Partition 사용 가능.

    Okei's FAT16 Driver 지원. (최대 2GB FAT16 Disk 사용 가능)

  - 2DD Multi-Disk 에뮬레이션 가능하며,

    거의 모든 MSX 2DD 전용 게임 구동 가능.

  - FDD가 없는 MSX에서도 2DD 게임 인스톨 가능.

  - DISKROM(512KB)는 ATLOAD.COM으로 Download 가능.

    각 롬은 내장 플래쉬디스크의 포맷(DOS1/DOS2)에 차이가 있습니다.

    (MMCDISK1.ROM : DOS1 플래쉬 디스크 내장.

     MMCDISK2.ROM : DOS2 플래쉬 디스크 내장.

     MMCDISK3.ROM : DOS2 플래쉬 디스크 내장. HW2.2의 더블 드라이브 소켓용.)

  - BIOS 또는 도스 종류에 따라 2~4개의 Drive가 할당 됨.

    C Drive FAT12 모드 사용시,

      A: MMC/SD Drive (사용자 선택 및 Multi-Disk 에뮬 가능)

      B: 내장 FlashROM Drive (DOS Util등을 빠르게 Access 가능)

      C: MMC/SD Drive #1 (MMC/SD System-Disk)

      D: MMC/SD Drive #2 (FAT12 System-Disk 또는 FAT16 Disk)

    C Drive FAT16 모드 사용시, (Okei's FAT16 Driver 필요)

      A, B: 내장 FlashROM Drive (DOS Util등을 빠르게 Access 가능)

      C   : MMC/SD Drive #1 (FAT12 System-Disk 또는 FAT16 Disk)

      D   : MMC/SD Drive #2 (FAT12 System-Disk 또는 FAT16 Disk)

   참고로 MMC/SD 슬롯 #2에 쓰이는 메모리카드는,

   FDD 에뮬로 사용이 불가능 합니다.

   FDD 에뮬은 슬롯 #1에서만 가능합니다. (DISKMAN, DSKCOPY 등 유틸 포함)

  - 부팅시 동작

    TAB Key 눌러졌을 때

      -> Disk 사용중이 아닐때는 SCC Access 무시

         (Feedback, Famiparo2, Quinpl, Nyancle 등, 구동시 필요)

         이 경우 SCC 사운드도 사용 불가.

    CTRL Key 눌러졌을 때

      -> A Drive만 할당됨.

    SHIFT Key 눌러졌을 때

      -> MMC/SD Disk Interface만 동작하고 내장 DiskROM은 구동 안됨.

         CTRL Key와 조합가능 (Koei Game 실행 시, 필수)

    INS Key 눌러졌을 때

      -> DOS2 커널 인스톨을 취소하고 강제 DOS1 커널로 구동합니다.

         DOS2 환경에서 부팅이 안되는 게임 실행시 유용합니다.

         (CTRL 또는 SHIFT Key와 조합가능)

    Z Key 눌러졌을 때,

      -> HW V2 이상 사용시, Z 키를 눌러서 HW V1용 BIOS를 동작시킬 수 있습니다.

         이 경우 Disk속도가 약 40KB로 느려지므로,

         속도가 빨라 게임이 제대로 동작안하는 경우 사용하면 좋습니다.

         (예: Aleste외전, XAK2 등)

    

2. 동작 환경

  - MSX1 64KB RAM 이상에서 동작하며,

    부가 FDD가 없더라도 2DD Image를 인스톨 가능함.

    (DSDKCOPY.COM for MSX-DOS/DOS2,

     DISKMAN.EXE for Windows NT/2K/XP)

  - 아래 환경에서 실제 동작 확인되었습니다.

    MSX2(Daewoo CPC300)

    MSX2+(Panasonic A1WSX)

    MSXturboR(Panasonic A1GT)

  - paraMSX v0.48b의 MMC/SD Drive 에뮬레이션에서 동작 확인되었습니다.

    MSX1(Daewoo DPC200)

    MSX1(Panasonic FS-4000)

    MSX2(Philips VG8240) 등


3. 내장 Software

  - ATLOAD.COM

    Flashrom 다운로드 시 사용.

    기본적으로 DISK Bios(512KB) 다운로드에 사용되며,

    16/32KB ROM 및 SCC MegaROM File 다운로드하여 일반 롬팩처럼 사용 가능.

  - INSTALL.BAT

    System Disk Install용 Batch File입니다.

  - INITMMC.COM

    System Disk Install시 사용됨.

    단독으로 실행하면 안됩니다. (INSTALL.BAT에서만 사용)

  - XCHGMMC.COM

    사용중 MMC/SD Memory 교체 시 사용.

  - DISKMAN.COM (FAT16 사용불가)

    Disk Block 관리 SW.

    (Disk Block 추가,삭제,전환 등)

  - DSKCOPY.COM (FAT16 사용불가)

    *.DSK File을 직접 Disk Block으로 복사함.

    (기타 고용량 Disk Interface(Sunrise IDE) 또는

     MMC/SD System Disk에서 복사 가능 함)

  - DISKEXE.COM

    DOS2 환경에서 재부팅없이 선택된 디스크로 부팅하는 프로그램.

    각종 부트 옵션 선택을 할수 있음. (turboR CPU 모드 등)

  - DISKMAN.EXE (FAT16 사용불가)

    윈도용 Disk Block 관리 SW. (윈도 9x는 지원 안됨)


4. System Install (FAT16 사용불가)

   a. Disk Interface에 MMC/SD Memory를 뽑은 상태에서 전원 켠다.

   b. DOS1 or DOS2로 부팅되면 install [return] 입력.

   c. Set new MMC/SD ... 메시지가 나오면 Memory Card를 꼽는다.

   d. Memory 인식이 성공하면, System Disk 용량을 고른다.

      (용량이 클수록 나중에 DSK file인스톨이 용이하므로,

      23.0MB를 선택하는 것이 좋음)

   e. System Disk Format

      DOS2 System에서는 자동으로 진행되지만,

      DOS1 System일 경우, Drive A를 선택하는 메시지가 나옴.

   f. 버전에 맞는 DOS가 Install되며, 각종 Utility가 복사됨.

   g. Installing Completed...메시지가 나오며 DOS로 복귀됨.

   h. MSX를 Reset하면, Install된 System Disk로 부팅되며,

      Flashrom Disk는 B Drive로 사용가능 함.

      (System Disk는 C Drive로 항상 사용 가능)


5. Disk 관리 (DISKMAN.COM)

   a. DISKMAN.COM 최초 실행 시, 현재 꼽혀있는 Memory Size를 입력해야함.

   b. 각 메뉴를 통해 Disk Block을 추가,삭제 및 선택을 할 수 있으며,

      현재 사용중인 Memory 상태를 확인 가능함.

   c. Disk Insert 시 Disk Amount를 2이상으로 선택하면 Multi-Disk 에뮬 가능.


6. Disk 관리 (DISKMAN.EXE)

   a. 최초 MMC/SD Drive 인스톨은 MSX에서 되어있어야함.

   b. 각 메뉴를 통해 Disk Block을 추가,삭제,추출 등을 할 수 있으며,

      현재 사용중인 Memory 상태를 확인 가능함.

   c. Disk Insert 시 임의의 DSK Image File을 바로 인스톨 할 수 있음.

   d. 전체 메모리 영역 Backup/Restore 가능.


7. Disk 실행 (DISKEXE.COM)

   a. 먼저 DISKMAN으로 실행시킬 디스크를 선택한후 실행.

   b. 각종 CPU모드 및 MMC/SD Drive의 옵션을 바꿀수 있음.

   c. DOS2 전용입니다.


8. ROM 덤퍼 (ROMDUMP.COM)

   a. MMC/SD Drive의 내부 플래쉬롬 덤프용 툴입니다.

   b. SCC매퍼만 지원되므로, SCC플래쉬팩 등에서도 사용가능.


9. Disk 전환 부팅 (DISKEXE.COM)

   a. DISKMAN에서 선택된 에뮬 디스크 블럭을 강제 부팅시킵니다.

   b. DOS2에서 동작하며, DOS2의 개선된 Workarea 확보로 대부분 게임 실행이 가능합니다.

   c. 롬뱅킹 보호, WSX 반터보, turboR CPU 모드 등을 바꿀수 있습니다.


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


* 사용 예 : DSKCOPY.COM를 이용한 2DD 인스톨 (YS2 Game disk 2장 및 User disk 1장)

  a. PC Window에서 Memory Reader를 이용하여,

     YS2.DSK(2.1MB Multi-disk image)를 MMC/SD Memory로 복사한다.

  b. MSX의 MMC/SD 카트리지에 Memory를 꼽고 부팅한다.

  c. DISKMAN.COM 실행 후, Insert & Select Disk 메뉴 선택.

  d. Disk Name을 입력한다. (공백을 넣을 때는 _를 쓰면 됨)

  e. Disk Type은 2DD 720KB를 고른다.

  f. Disk Amount는 3을 입력. (Game A/B 및 User disk 총 3장)

  g. Disk Block이 설정되면 메인 메뉴로 돌아온다.

     (View Disk List에서 추가된 것을 확인 가능하다.)

  h. Exit 메뉴로 DOS로 빠져나온다.

  i. 현재 A Drive는 새로 할당된 Disk Block으로 선택되어있으므로,

     System Disk 선택을 위해 [실행]키 또는 [STOP]키를 누른 상태에서 [RETURN]을 친다.

     (또는 Dir [RETURN]을 친다. DOS1의 경우 [RETURN]만으로 Disk Access를 요구가 안됨.)

     CAPSLOCK LED가 흐릿하게 켜지면, 숫자패드의 [0]키를 누른다.

  j. DIR을 입력해서 Disk 전환이 제대로 되었는지 확인 후,

     DSKCOPY YS2.DSK을 입력한다.

  k. DSKCOPY.COM가 3장의 Multi-Disk(YS2.DSK)를 복사하는 것을 기다린다.

  l. 복사가 종료 된 후, MSX를 Reset 하면 YS2가 실행되는 것을 볼 수 있다.

     참고로 MSX Reset하면 항상 선택 Disk Block의 1번 Disk로 부팅하므로,

     System Disk로 부팅하고 싶을 때는 [실행] 또는 [STOP]키를 눌러 [0]번 Disk로 전환해야함.

  m. 참고로 FDD가 내장된 MSX의 경우(A1WSX, A1GT등등),

     DISK work area가 두배로 할당되므로 메모리 부족으로 인해 게임이 실행 안되는 경우가 있음.

     이때는 부팅시 [CTRL]키(또는 [SHIFT] 키 조합)를 눌러 Drive A만 사용하도록 하면 됨.

     만약 DOS2 환경이라면, DISKEXE를 이용하여 쉽게 실행할 수 있음.


2008년 4월 10일 목요일

MMC/SD Drive V2.2

MSX의 FDD를 대체하기 위해 개발된 기기입니다.

기존 2DD 전용 게임과의 호환성을 위한 FDD 에뮬레이션 기능과

고용량 드라이브 사용이라는 두가지 목표를 만족시키는 것이 주 목적입니다.


디스크 매체는 내장 플래쉬롬과 MMC/SD 카드를 사용할 수 있습니다.

HW는 SCC를 바이오스 롬(512KB) 매퍼로 사용하기 때문에,

Music Player 등에서 SCC 사운드로 활용하는 것도 가능합니다.


바이오스 롬의 여유 공간(384KB)도 디스크로 사용가능 합니다.

현재 AT29C040A를 바이오스용 플래쉬롬으로 사용하고 있고,

롬 디스크 영역은 일반 FDD 처럼, 도스/베이직에서 Read/Write 가능합니다.


FDD 에뮬레이션은 전용의 디스크 매니져(MSX-DOS 및 윈도XP용)로 관리되며,

디스크 액세스 시, 숫자키를 이용하여 디스크 전환(최대 9장)이 가능합니다.


아래는 코나미 '고파의 야망' 카트리지를 개조하여 작업된 MMC/SD Drive입니다.





MSX turboR GT에 꽂은 모습입니다.

대용량 디스크를 활용하여 MP3 플레이어가 구동되고 있습니다.




윈도XP에서 실행된 디스크 매니저입니다.




참고로 paraMSX v0.48b 에서 MMC/SD Drive 에뮬레이션을 지원합니다.

실기가 없으신 분은 체험판(?) 할수 있는 기회가...^^




HW V2.2의 회로도입니다.



아래는 2004년에 제작된 HW V1의 회로도입니다.

속도가 조금 느리고 MMC/SD 소켓이 한개뿐이지만,

FDD 에뮬레이션 및 고용량 디스크 사용은 HW V2.2와 동일하게 쓸 수 있습니다.




 

2008년 2월 27일 수요일

paraMSX v0.48b

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

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

Download: paraMSX048b.zip