#include "adisk.h"
#include "defines.h"

void fd_strcpy(unchar *newpath,unchar *path)
/* pathの先頭に0:〜3:によるドライブ指定があるとき、それをＦＤの実ドライブに変換する */
/* 5:〜9:による指定があるときは、それをＲＡＭＤＩＳＫの実ドライブに変換する */
/* 変更後のパス名をnewpathに返す */
{
unchar c;
int drv;
	strcpy(newpath,path);
	c=path[0];
	if (path[1]==':' && (c>='0' && c<='9')) {
		drv=(c>='5'? get_ramdisk(c-'5'):get_2hd(c-'0',0));
		if (drv!=0) { /* ドライブ名が正常なときはドライブ名を書き換える */
			newpath[0]='A'-1+drv;
		}
		/* 通常、ドライブ名は0:〜3:に限定している以上、正常のはずだが、
		   ＦＤが認識されていないときにエラーになるのでエラー判定している。
		   ＲＡＭＤＩＳＫも同様。
		*/
	}
}
