tsutsui / netbsd-src

Automatic conversion of the NetBSD src CVS module, use with care. Please submit bugs/changes via https://gnats.netbsd.org
https://www.NetBSD.org
2 stars 0 forks source link

next68k: マウスドライバ #29

Open tsutsui opened 1 month ago

tsutsui commented 1 month ago

NetBSD/next68k では、現状(少なくとも 10.0時点)ではマウスのサポートがない。

src/sys/arch/next68k/dev/nextkbd.c を見ると以下のようなコメントがあるので、 キーボードからのコマンドとしてマウスの情報が来るっぽいので、 それを解釈すれば wsmouse(4) のドライバを書くのは難しくないはず。

static int
nextkbd_read_data(struct nextkbd_internal *id)
{
    unsigned char device;
    struct mon_regs stat = { 0 };

    bus_space_read_region_4(id->iot, id->ioh, 0, &stat, 3);
    if ((stat.mon_csr & CSR_INT) != 0 &&
        (stat.mon_csr & CSR_DATA) != 0) {
        stat.mon_csr &= ~CSR_INT;
        id->num_ints++;
        bus_space_write_4(id->iot, id->ioh, 0, stat.mon_csr);
        device = stat.mon_data >> 28;
        if (device != 1)
            return -1; /* XXX: mouse */
        return stat.mon_data & 0xffff;
    }
    return -1;
}

ハードウェアの情報はエミュレータである previous のソースを見ればわかるはず? http://previous.alternative-system.com/ https://sourceforge.net/projects/previous/