MSXturboR은 기존 MSX 3.58MHz 호환성을 높이기 위해,
VDP, OPLL, 외부 롬 액세스 시, HW적으로 delay를 넣고 있습니다.
일반적으로 FDD의 HW IO 처리는 해당 디스크롬 내부 SW로 구동이 되는데요.
이 때는 turboR이 강제적으로 HW delay를 넣을 수가 없기 때문에,
turboR DOS2 루틴에서 CPU 모드를 Z80으로 몰래 바꿔서 처리합니다.
이 때문에 디스크 속도가 느려지게 되는데, 이 문제를 해결하는 프로그램이 R800-DR 입니다.
특정 드라이브 액세스 시, Z80 모드로 전환하지 않고 R800 모드 그대로 동작하도록 해줍니다.
DOS2CASH, LUNA 등의 디스크 캐쉬 프로그램도 동일한 기능을 갖고 있지만,
FAT16 드라이버와 함께 쓸수가 없어서 무용지물이죠.
첨부된 R800-DR은 제가 약간 수정한 버전입니다.
원래 버전은 드라이브 A,B만 Z80모드 사용하고 그 외는 R800 모드로 고정되어있는데,
수정한 버전은 드라이브 별로 Z800/R800 모드를 설정할 수 있습니다.
원본 코드 및 수정 버전(소스 포함) 모두 첨부했습니다.
필요하신 분 받아서 테스트해보셔요.
Download: R800-DR_MOD_20150809.ZIP
argument는 순서대로 드라이브 ABCDEFGH 의 모드를 설정합니다.
1이면 Z80으로 되구요. 0이면 R800 그대로 동작입니다.
참고로, MMC/SD 및 램디스크 드라이브는 R800 모드로 잘 동작합니다.
아래는 MMC/SD는 32MB, 램 디스크는 512KB 용량에서 DOSSCAN 테스트 결과입니다.
Z80 전환안하면 무지 빠릅니다. ㅎ.ㅎb
R800-DR 사용 않을 때,
MMC/SD = 145KB/sec
램 디스크 = 128KB/sec
R800-DR 사용 할 때,
MMC/SD = 238KB/sec
램 디스크 = 512KB/sec
아래는 R800-DR 코드 관련 참고한 내용입니다.
http://www.msx.org/forum/msx-talk/software-and-gaming/r800dr-dos
댓글 없음:
댓글 쓰기