投稿タイトル

見出し

小見出し

PC-9801フロッピーディスクBIOSを使ってみるサンプル
フロッピーディスクのセクタシーケンスを調べる。
FDCの動作を正確に再現するPC-9801エミュレータは少ないので、エミュレータで動作確認をする場合は注意を要する。
LSI C-86 Ver.3.30 試食版用
lcc -o readsseq.exe readsseq.c diskbios.c のようにしてコンパイルすればよい

準見出し

PC-9801フロッピーディスクBIOSを使ってみるサンプル
フロッピーディスクのセクタシーケンスを調べる。
FDCの動作を正確に再現するPC-9801エミュレータは少ないので、エミュレータで動作確認をする場合は注意を要する。
LSI C-86 Ver.3.30 試食版用
lcc -o readsseq.exe readsseq.c diskbios.c のようにしてコンパイルすればよい
PC-9801フロッピーディスクBIOSを使ってみるサンプル
フロッピーディスクのセクタシーケンスを調べる。
FDCの動作を正確に再現するPC-9801エミュレータは少ないので、エミュレータで動作確認をする場合は注意を要する。
LSI C-86 Ver.3.30 試食版用
lcc -o readsseq.exe readsseq.c diskbios.c のようにしてコンパイルすればよい
PC-9801フロッピーディスクBIOSを使ってみるサンプル
フロッピーディスクのセクタシーケンスを調べる。
FDCの動作を正確に再現するPC-9801エミュレータは少ないので、エミュレータで動作確認をする場合は注意を要する。
LSI C-86 Ver.3.30 試食版用
lcc -o readsseq.exe readsseq.c diskbios.c のようにしてコンパイルすればよい

readsseq.c 準見出し

/*
PC-9801フロッピーディスクBIOSを使ってみるサンプル
フロッピーディスクのセクタシーケンスを調べる。
FDCの動作を正確に再現するPC-9801エミュレータは少ないので、エミュレータで動作確認をする場合は注意を要する。
LSI C-86 Ver.3.30 試食版用
lcc -o readsseq.exe readsseq.c diskbios.c のようにしてコンパイルすればよい

このソースコードは CC0 パブリック・ドメイン提供です。
https://creativecommons.org/publicdomain/zero/1.0/deed.ja

2016年1月29日 2016年5月17日 佐藤恭一 kyoutan.jpn.org
*/
#include 
#include "diskbios.h"

#define SECTMAX   32 /*最大セクタ数 1セクタ256バイトの時26なので余裕を見て32くらい*/
#define BUFFSIZE  (8*1024)
unsigned char BUFF[BUFFSIZE];

int main()
{
    unsigned short count,startpos;
    unsigned char drive,mod,c,h;
    unsigned char sechead,seccount;

    drive=0;    /*ドライブ番号 0-3*/
    c=0;        /*シリンダ番号*/
    h=0;        /*ヘッド番号 0-1*/

    /* 0シリンダに移動 */
    if(! track00(FD2HD | drive))
    {
        /*エラー*/
        puts("RECALIBRATE ERROR");
        return FALSE;
    }

    /* ディスクのタイプを調べる FM/MFM 2DD/2HD 48tpi/96tpi */
    if(! (mod=sectsence(drive, c, h)))
    {
        puts("ID read error");
        return FALSE;
    }

このブログの人気の投稿

vscode

設定はこのくらい