|
|
1.1 root 1: //
2: // nono
3: // Copyright (C) 2022 nono project
4: // Licensed under nono-license.txt
5: //
6:
7: //
8: // NWS-1750 のキーボードコントローラ(予定地)
9: //
10:
11: // デバイスが存在しないことをバスエラーで検出できないので、
12: // とりあえず用意して生返事だけさせておく。
13:
14: #include "kbc.h"
15:
16: // コンストラクタ
17: KBCDevice::KBCDevice()
18: : inherited(OBJ_KBC)
19: {
20: }
21:
22: // デストラクタ
23: KBCDevice::~KBCDevice()
24: {
25: }
26:
1.1.1.2 ! root 27: busdata
1.1 root 28: KBCDevice::Read8(uint32 addr)
29: {
1.1.1.2 ! root 30: busdata data;
! 31:
1.1 root 32: // XXX 折り返しは不明
33: switch (addr & 7) {
34: case KEYDATA:
1.1.1.2 ! root 35: data = 0;
! 36: break;
1.1 root 37:
38: case KEYSTAT:
1.1.1.2 ! root 39: data = 0xc0; // KBRDY, MSRDY
! 40: break;
1.1 root 41:
42: case KEYINTE:
1.1.1.2 ! root 43: data = 0; // ?
! 44: break;
1.1 root 45:
46: case KEYRESET:
1.1.1.2 ! root 47: data = 0xff; // ?
! 48: break;
1.1 root 49:
50: case KEYBUZZ:
1.1.1.2 ! root 51: data = 0xff; // ?
! 52: break;
1.1 root 53:
54: case MSDATA:
1.1.1.2 ! root 55: data = 0;
! 56: break;
1.1 root 57:
58: case MSINTE: // ?
1.1.1.2 ! root 59: data = 0;
! 60: break;
1.1 root 61:
62: case MSRESET: // ?
1.1.1.2 ! root 63: data = 0xff;
! 64: break;
1.1 root 65:
66: default:
1.1.1.2 ! root 67: data = 0xff;
! 68: break;
1.1 root 69: }
1.1.1.2 ! root 70:
! 71: return data;
1.1 root 72: }
73:
1.1.1.2 ! root 74: busdata
1.1 root 75: KBCDevice::Write8(uint32 addr, uint32 data)
76: {
77: // とりあえず全無視
78: return 0;
79: }
80:
1.1.1.2 ! root 81: busdata
1.1 root 82: KBCDevice::Peek8(uint32 addr)
83: {
84: // XXX 未実装
85: return 0xff;
86: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.