rp2040js 0.17.17 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/clock/clock.d.ts +11 -11
- package/dist/cjs/clock/clock.js +2 -2
- package/dist/cjs/clock/mock-clock.d.ts +17 -17
- package/dist/cjs/clock/mock-clock.js +52 -52
- package/dist/cjs/clock/realtime-clock.d.ts +23 -23
- package/dist/cjs/clock/realtime-clock.js +73 -73
- package/dist/cjs/cortex-m0-core.d.ts +87 -87
- package/dist/cjs/cortex-m0-core.js +1251 -1251
- package/dist/cjs/gdb/gdb-connection.d.ts +11 -11
- package/dist/cjs/gdb/gdb-connection.js +57 -57
- package/dist/cjs/gdb/gdb-server.d.ts +23 -23
- package/dist/cjs/gdb/gdb-server.js +232 -232
- package/dist/cjs/gdb/gdb-tcp-server.d.ts +10 -10
- package/dist/cjs/gdb/gdb-tcp-server.js +34 -34
- package/dist/cjs/gdb/gdb-utils.d.ts +9 -9
- package/dist/cjs/gdb/gdb-utils.js +48 -48
- package/dist/cjs/gpio-pin.d.ts +56 -56
- package/dist/cjs/gpio-pin.js +216 -216
- package/dist/cjs/index.d.ts +11 -11
- package/dist/cjs/index.js +36 -36
- package/dist/cjs/interpolator.d.ts +36 -36
- package/dist/cjs/interpolator.js +150 -150
- package/dist/cjs/irq.d.ts +29 -29
- package/dist/cjs/irq.js +33 -33
- package/dist/cjs/peripherals/adc.d.ts +52 -52
- package/dist/cjs/peripherals/adc.js +261 -261
- package/dist/cjs/peripherals/busctrl.d.ts +10 -10
- package/dist/cjs/peripherals/busctrl.js +84 -84
- package/dist/cjs/peripherals/clocks.d.ts +9 -9
- package/dist/cjs/peripherals/clocks.js +42 -42
- package/dist/cjs/peripherals/dma.d.ts +109 -109
- package/dist/cjs/peripherals/dma.js +520 -520
- package/dist/cjs/peripherals/i2c.d.ts +54 -54
- package/dist/cjs/peripherals/i2c.js +458 -458
- package/dist/cjs/peripherals/io.d.ts +11 -11
- package/dist/cjs/peripherals/io.js +100 -100
- package/dist/cjs/peripherals/pads.d.ts +13 -13
- package/dist/cjs/peripherals/pads.js +58 -58
- package/dist/cjs/peripherals/peripheral.d.ts +22 -22
- package/dist/cjs/peripherals/peripheral.js +61 -61
- package/dist/cjs/peripherals/pio.d.ts +120 -120
- package/dist/cjs/peripherals/pio.js +1086 -1086
- package/dist/cjs/peripherals/ppb.d.ts +25 -25
- package/dist/cjs/peripherals/ppb.js +229 -229
- package/dist/cjs/peripherals/pwm.d.ts +65 -65
- package/dist/cjs/peripherals/pwm.js +372 -372
- package/dist/cjs/peripherals/reset.d.ts +8 -8
- package/dist/cjs/peripherals/reset.js +40 -40
- package/dist/cjs/peripherals/rtc.d.ts +10 -10
- package/dist/cjs/peripherals/rtc.js +74 -74
- package/dist/cjs/peripherals/spi.d.ts +38 -38
- package/dist/cjs/peripherals/spi.js +240 -240
- package/dist/cjs/peripherals/ssi.d.ts +6 -6
- package/dist/cjs/peripherals/ssi.js +43 -43
- package/dist/cjs/peripherals/syscfg.d.ts +5 -5
- package/dist/cjs/peripherals/syscfg.js +26 -26
- package/dist/cjs/peripherals/sysinfo.d.ts +4 -4
- package/dist/cjs/peripherals/sysinfo.js +22 -22
- package/dist/cjs/peripherals/tbman.d.ts +4 -4
- package/dist/cjs/peripherals/tbman.js +17 -17
- package/dist/cjs/peripherals/timer.d.ts +18 -18
- package/dist/cjs/peripherals/timer.js +156 -156
- package/dist/cjs/peripherals/uart.d.ts +31 -31
- package/dist/cjs/peripherals/uart.js +132 -132
- package/dist/cjs/peripherals/usb.d.ts +29 -29
- package/dist/cjs/peripherals/usb.js +309 -309
- package/dist/cjs/rp2040.d.ts +71 -71
- package/dist/cjs/rp2040.js +361 -361
- package/dist/cjs/sio.d.ts +21 -21
- package/dist/cjs/sio.js +425 -425
- package/dist/cjs/usb/cdc.d.ts +20 -20
- package/dist/cjs/usb/cdc.js +126 -126
- package/dist/cjs/usb/interfaces.d.ts +47 -47
- package/dist/cjs/usb/interfaces.js +46 -46
- package/dist/cjs/usb/setup.d.ts +5 -5
- package/dist/cjs/usb/setup.js +53 -53
- package/dist/cjs/utils/assembler.d.ts +79 -79
- package/dist/cjs/utils/assembler.js +328 -328
- package/dist/cjs/utils/bit.d.ts +3 -3
- package/dist/cjs/utils/bit.js +15 -15
- package/dist/cjs/utils/fifo.d.ts +15 -15
- package/dist/cjs/utils/fifo.js +56 -56
- package/dist/cjs/utils/logging.d.ts +23 -23
- package/dist/cjs/utils/logging.js +48 -48
- package/dist/cjs/utils/pio-assembler.d.ts +45 -45
- package/dist/cjs/utils/pio-assembler.js +87 -87
- package/dist/cjs/utils/time.d.ts +2 -2
- package/dist/cjs/utils/time.js +32 -32
- package/dist/cjs/utils/timer32.d.ts +57 -57
- package/dist/cjs/utils/timer32.js +208 -208
- package/dist/esm/clock/clock.d.ts +11 -11
- package/dist/esm/clock/clock.js +1 -1
- package/dist/esm/clock/mock-clock.d.ts +17 -17
- package/dist/esm/clock/mock-clock.js +47 -47
- package/dist/esm/clock/realtime-clock.d.ts +23 -23
- package/dist/esm/clock/realtime-clock.js +68 -68
- package/dist/esm/cortex-m0-core.d.ts +87 -87
- package/dist/esm/cortex-m0-core.js +1247 -1247
- package/dist/esm/gdb/gdb-connection.d.ts +11 -11
- package/dist/esm/gdb/gdb-connection.js +53 -53
- package/dist/esm/gdb/gdb-server.d.ts +23 -23
- package/dist/esm/gdb/gdb-server.js +228 -228
- package/dist/esm/gdb/gdb-tcp-server.d.ts +10 -10
- package/dist/esm/gdb/gdb-tcp-server.js +30 -30
- package/dist/esm/gdb/gdb-utils.d.ts +9 -9
- package/dist/esm/gdb/gdb-utils.js +36 -36
- package/dist/esm/gpio-pin.d.ts +56 -56
- package/dist/esm/gpio-pin.js +212 -212
- package/dist/esm/index.d.ts +11 -11
- package/dist/esm/index.js +11 -11
- package/dist/esm/interpolator.d.ts +36 -36
- package/dist/esm/interpolator.js +145 -145
- package/dist/esm/irq.d.ts +29 -29
- package/dist/esm/irq.js +30 -30
- package/dist/esm/peripherals/adc.d.ts +52 -52
- package/dist/esm/peripherals/adc.js +257 -257
- package/dist/esm/peripherals/busctrl.d.ts +10 -10
- package/dist/esm/peripherals/busctrl.js +80 -80
- package/dist/esm/peripherals/clocks.d.ts +9 -9
- package/dist/esm/peripherals/clocks.js +38 -38
- package/dist/esm/peripherals/dma.d.ts +109 -109
- package/dist/esm/peripherals/dma.js +515 -515
- package/dist/esm/peripherals/i2c.d.ts +54 -54
- package/dist/esm/peripherals/i2c.js +454 -454
- package/dist/esm/peripherals/io.d.ts +11 -11
- package/dist/esm/peripherals/io.js +96 -96
- package/dist/esm/peripherals/pads.d.ts +13 -13
- package/dist/esm/peripherals/pads.js +54 -54
- package/dist/esm/peripherals/peripheral.d.ts +22 -22
- package/dist/esm/peripherals/peripheral.js +55 -55
- package/dist/esm/peripherals/pio.d.ts +120 -120
- package/dist/esm/peripherals/pio.js +1081 -1081
- package/dist/esm/peripherals/ppb.d.ts +25 -25
- package/dist/esm/peripherals/ppb.js +225 -225
- package/dist/esm/peripherals/pwm.d.ts +65 -65
- package/dist/esm/peripherals/pwm.js +368 -368
- package/dist/esm/peripherals/reset.d.ts +8 -8
- package/dist/esm/peripherals/reset.js +36 -36
- package/dist/esm/peripherals/rtc.d.ts +10 -10
- package/dist/esm/peripherals/rtc.js +70 -70
- package/dist/esm/peripherals/spi.d.ts +38 -38
- package/dist/esm/peripherals/spi.js +236 -236
- package/dist/esm/peripherals/ssi.d.ts +6 -6
- package/dist/esm/peripherals/ssi.js +39 -39
- package/dist/esm/peripherals/syscfg.d.ts +5 -5
- package/dist/esm/peripherals/syscfg.js +22 -22
- package/dist/esm/peripherals/sysinfo.d.ts +4 -4
- package/dist/esm/peripherals/sysinfo.js +18 -18
- package/dist/esm/peripherals/tbman.d.ts +4 -4
- package/dist/esm/peripherals/tbman.js +13 -13
- package/dist/esm/peripherals/timer.d.ts +18 -18
- package/dist/esm/peripherals/timer.js +152 -152
- package/dist/esm/peripherals/uart.d.ts +31 -31
- package/dist/esm/peripherals/uart.js +128 -128
- package/dist/esm/peripherals/usb.d.ts +29 -29
- package/dist/esm/peripherals/usb.js +305 -305
- package/dist/esm/rp2040.d.ts +71 -71
- package/dist/esm/rp2040.js +357 -357
- package/dist/esm/sio.d.ts +21 -21
- package/dist/esm/sio.js +421 -421
- package/dist/esm/usb/cdc.d.ts +20 -20
- package/dist/esm/usb/cdc.js +121 -121
- package/dist/esm/usb/interfaces.d.ts +47 -47
- package/dist/esm/usb/interfaces.js +43 -43
- package/dist/esm/usb/setup.d.ts +5 -5
- package/dist/esm/usb/setup.js +46 -46
- package/dist/esm/utils/assembler.d.ts +79 -79
- package/dist/esm/utils/assembler.js +245 -245
- package/dist/esm/utils/bit.d.ts +3 -3
- package/dist/esm/utils/bit.js +9 -9
- package/dist/esm/utils/fifo.d.ts +15 -15
- package/dist/esm/utils/fifo.js +52 -52
- package/dist/esm/utils/logging.d.ts +23 -23
- package/dist/esm/utils/logging.js +44 -44
- package/dist/esm/utils/pio-assembler.d.ts +45 -45
- package/dist/esm/utils/pio-assembler.js +75 -75
- package/dist/esm/utils/time.d.ts +2 -2
- package/dist/esm/utils/time.js +27 -27
- package/dist/esm/utils/timer32.d.ts +57 -57
- package/dist/esm/utils/timer32.js +203 -203
- package/package.json +33 -22
- package/dist/esm/package.json +0 -1
|
@@ -1,128 +1,128 @@
|
|
|
1
|
-
import { FIFO } from '../utils/fifo';
|
|
2
|
-
import { BasePeripheral } from './peripheral';
|
|
3
|
-
const UARTDR = 0x0;
|
|
4
|
-
const UARTFR = 0x18;
|
|
5
|
-
const UARTLCR_H = 0x2c;
|
|
6
|
-
const UARTCR = 0x30;
|
|
7
|
-
const UARTIMSC = 0x38;
|
|
8
|
-
const UARTIRIS = 0x3c;
|
|
9
|
-
const UARTIMIS = 0x40;
|
|
10
|
-
const UARTICR = 0x44;
|
|
11
|
-
// UARTFR bits:
|
|
12
|
-
const TXFE = 1 << 7;
|
|
13
|
-
const RXFF = 1 << 6;
|
|
14
|
-
const RXFE = 1 << 4;
|
|
15
|
-
// UARTLCR_H bits:
|
|
16
|
-
const FEN = 1 << 4;
|
|
17
|
-
// UARTCR bits:
|
|
18
|
-
const RXE = 1 << 9;
|
|
19
|
-
const TXE = 1 << 8;
|
|
20
|
-
const UARTEN = 1 << 0;
|
|
21
|
-
// Interrupt bits
|
|
22
|
-
const UARTRXINTR = 1 << 4;
|
|
23
|
-
export class RPUART extends BasePeripheral {
|
|
24
|
-
constructor(rp2040, name, irq, dreq) {
|
|
25
|
-
super(rp2040, name);
|
|
26
|
-
this.irq = irq;
|
|
27
|
-
this.dreq = dreq;
|
|
28
|
-
this.ctrlRegister = RXE | TXE;
|
|
29
|
-
this.lineCtrlRegister = 0;
|
|
30
|
-
this.rxFIFO = new FIFO(32);
|
|
31
|
-
this.interruptMask = 0;
|
|
32
|
-
this.interruptStatus = 0;
|
|
33
|
-
}
|
|
34
|
-
get enabled() {
|
|
35
|
-
return !!(this.ctrlRegister & UARTEN);
|
|
36
|
-
}
|
|
37
|
-
get txEnabled() {
|
|
38
|
-
return !!(this.ctrlRegister & TXE);
|
|
39
|
-
}
|
|
40
|
-
get rxEnabled() {
|
|
41
|
-
return !!(this.ctrlRegister & RXE);
|
|
42
|
-
}
|
|
43
|
-
get fifosEnabled() {
|
|
44
|
-
return !!(this.lineCtrlRegister & FEN);
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Number of bits per UART character
|
|
48
|
-
*/
|
|
49
|
-
get wordLength() {
|
|
50
|
-
switch ((this.lineCtrlRegister >>> 5) & 0x3) {
|
|
51
|
-
case 0b00:
|
|
52
|
-
return 5;
|
|
53
|
-
case 0b01:
|
|
54
|
-
return 6;
|
|
55
|
-
case 0b10:
|
|
56
|
-
return 7;
|
|
57
|
-
case 0b11:
|
|
58
|
-
return 8;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
get flags() {
|
|
62
|
-
return (this.rxFIFO.full ? RXFF : 0) | (this.rxFIFO.empty ? RXFE : 0) | TXFE;
|
|
63
|
-
}
|
|
64
|
-
checkInterrupts() {
|
|
65
|
-
this.rp2040.setInterrupt(this.irq, !!(this.interruptStatus & this.interruptMask));
|
|
66
|
-
}
|
|
67
|
-
feedByte(value) {
|
|
68
|
-
this.rxFIFO.push(value);
|
|
69
|
-
// TODO check if the FIFO has reached the threshold level
|
|
70
|
-
this.interruptStatus |= UARTRXINTR;
|
|
71
|
-
this.checkInterrupts();
|
|
72
|
-
}
|
|
73
|
-
readUint32(offset) {
|
|
74
|
-
switch (offset) {
|
|
75
|
-
case UARTDR: {
|
|
76
|
-
const value = this.rxFIFO.pull();
|
|
77
|
-
if (!this.rxFIFO.empty) {
|
|
78
|
-
this.interruptStatus |= UARTRXINTR;
|
|
79
|
-
this.checkInterrupts();
|
|
80
|
-
}
|
|
81
|
-
return value;
|
|
82
|
-
}
|
|
83
|
-
case UARTFR:
|
|
84
|
-
return this.flags;
|
|
85
|
-
case UARTLCR_H:
|
|
86
|
-
return this.lineCtrlRegister;
|
|
87
|
-
case UARTCR:
|
|
88
|
-
return this.ctrlRegister;
|
|
89
|
-
case UARTIMSC:
|
|
90
|
-
return this.interruptMask;
|
|
91
|
-
case UARTIRIS:
|
|
92
|
-
return this.interruptStatus;
|
|
93
|
-
case UARTIMIS:
|
|
94
|
-
return this.interruptStatus & this.interruptMask;
|
|
95
|
-
}
|
|
96
|
-
return super.readUint32(offset);
|
|
97
|
-
}
|
|
98
|
-
writeUint32(offset, value) {
|
|
99
|
-
var _a;
|
|
100
|
-
switch (offset) {
|
|
101
|
-
case UARTDR:
|
|
102
|
-
(_a = this.onByte) === null || _a === void 0 ? void 0 : _a.call(this, value & 0xff);
|
|
103
|
-
break;
|
|
104
|
-
case UARTLCR_H:
|
|
105
|
-
this.lineCtrlRegister = value;
|
|
106
|
-
break;
|
|
107
|
-
case UARTCR:
|
|
108
|
-
this.ctrlRegister = value;
|
|
109
|
-
if (this.enabled) {
|
|
110
|
-
this.rp2040.dma.setDREQ(this.dreq.tx);
|
|
111
|
-
}
|
|
112
|
-
else {
|
|
113
|
-
this.rp2040.dma.clearDREQ(this.dreq.tx);
|
|
114
|
-
}
|
|
115
|
-
break;
|
|
116
|
-
case UARTIMSC:
|
|
117
|
-
this.interruptMask = value & 0x7ff;
|
|
118
|
-
this.checkInterrupts();
|
|
119
|
-
break;
|
|
120
|
-
case UARTICR:
|
|
121
|
-
this.interruptStatus &= ~this.rawWriteValue;
|
|
122
|
-
this.checkInterrupts();
|
|
123
|
-
break;
|
|
124
|
-
default:
|
|
125
|
-
super.writeUint32(offset, value);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
1
|
+
import { FIFO } from '../utils/fifo.js';
|
|
2
|
+
import { BasePeripheral } from './peripheral.js';
|
|
3
|
+
const UARTDR = 0x0;
|
|
4
|
+
const UARTFR = 0x18;
|
|
5
|
+
const UARTLCR_H = 0x2c;
|
|
6
|
+
const UARTCR = 0x30;
|
|
7
|
+
const UARTIMSC = 0x38;
|
|
8
|
+
const UARTIRIS = 0x3c;
|
|
9
|
+
const UARTIMIS = 0x40;
|
|
10
|
+
const UARTICR = 0x44;
|
|
11
|
+
// UARTFR bits:
|
|
12
|
+
const TXFE = 1 << 7;
|
|
13
|
+
const RXFF = 1 << 6;
|
|
14
|
+
const RXFE = 1 << 4;
|
|
15
|
+
// UARTLCR_H bits:
|
|
16
|
+
const FEN = 1 << 4;
|
|
17
|
+
// UARTCR bits:
|
|
18
|
+
const RXE = 1 << 9;
|
|
19
|
+
const TXE = 1 << 8;
|
|
20
|
+
const UARTEN = 1 << 0;
|
|
21
|
+
// Interrupt bits
|
|
22
|
+
const UARTRXINTR = 1 << 4;
|
|
23
|
+
export class RPUART extends BasePeripheral {
|
|
24
|
+
constructor(rp2040, name, irq, dreq) {
|
|
25
|
+
super(rp2040, name);
|
|
26
|
+
this.irq = irq;
|
|
27
|
+
this.dreq = dreq;
|
|
28
|
+
this.ctrlRegister = RXE | TXE;
|
|
29
|
+
this.lineCtrlRegister = 0;
|
|
30
|
+
this.rxFIFO = new FIFO(32);
|
|
31
|
+
this.interruptMask = 0;
|
|
32
|
+
this.interruptStatus = 0;
|
|
33
|
+
}
|
|
34
|
+
get enabled() {
|
|
35
|
+
return !!(this.ctrlRegister & UARTEN);
|
|
36
|
+
}
|
|
37
|
+
get txEnabled() {
|
|
38
|
+
return !!(this.ctrlRegister & TXE);
|
|
39
|
+
}
|
|
40
|
+
get rxEnabled() {
|
|
41
|
+
return !!(this.ctrlRegister & RXE);
|
|
42
|
+
}
|
|
43
|
+
get fifosEnabled() {
|
|
44
|
+
return !!(this.lineCtrlRegister & FEN);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Number of bits per UART character
|
|
48
|
+
*/
|
|
49
|
+
get wordLength() {
|
|
50
|
+
switch ((this.lineCtrlRegister >>> 5) & 0x3) {
|
|
51
|
+
case 0b00:
|
|
52
|
+
return 5;
|
|
53
|
+
case 0b01:
|
|
54
|
+
return 6;
|
|
55
|
+
case 0b10:
|
|
56
|
+
return 7;
|
|
57
|
+
case 0b11:
|
|
58
|
+
return 8;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
get flags() {
|
|
62
|
+
return (this.rxFIFO.full ? RXFF : 0) | (this.rxFIFO.empty ? RXFE : 0) | TXFE;
|
|
63
|
+
}
|
|
64
|
+
checkInterrupts() {
|
|
65
|
+
this.rp2040.setInterrupt(this.irq, !!(this.interruptStatus & this.interruptMask));
|
|
66
|
+
}
|
|
67
|
+
feedByte(value) {
|
|
68
|
+
this.rxFIFO.push(value);
|
|
69
|
+
// TODO check if the FIFO has reached the threshold level
|
|
70
|
+
this.interruptStatus |= UARTRXINTR;
|
|
71
|
+
this.checkInterrupts();
|
|
72
|
+
}
|
|
73
|
+
readUint32(offset) {
|
|
74
|
+
switch (offset) {
|
|
75
|
+
case UARTDR: {
|
|
76
|
+
const value = this.rxFIFO.pull();
|
|
77
|
+
if (!this.rxFIFO.empty) {
|
|
78
|
+
this.interruptStatus |= UARTRXINTR;
|
|
79
|
+
this.checkInterrupts();
|
|
80
|
+
}
|
|
81
|
+
return value;
|
|
82
|
+
}
|
|
83
|
+
case UARTFR:
|
|
84
|
+
return this.flags;
|
|
85
|
+
case UARTLCR_H:
|
|
86
|
+
return this.lineCtrlRegister;
|
|
87
|
+
case UARTCR:
|
|
88
|
+
return this.ctrlRegister;
|
|
89
|
+
case UARTIMSC:
|
|
90
|
+
return this.interruptMask;
|
|
91
|
+
case UARTIRIS:
|
|
92
|
+
return this.interruptStatus;
|
|
93
|
+
case UARTIMIS:
|
|
94
|
+
return this.interruptStatus & this.interruptMask;
|
|
95
|
+
}
|
|
96
|
+
return super.readUint32(offset);
|
|
97
|
+
}
|
|
98
|
+
writeUint32(offset, value) {
|
|
99
|
+
var _a;
|
|
100
|
+
switch (offset) {
|
|
101
|
+
case UARTDR:
|
|
102
|
+
(_a = this.onByte) === null || _a === void 0 ? void 0 : _a.call(this, value & 0xff);
|
|
103
|
+
break;
|
|
104
|
+
case UARTLCR_H:
|
|
105
|
+
this.lineCtrlRegister = value;
|
|
106
|
+
break;
|
|
107
|
+
case UARTCR:
|
|
108
|
+
this.ctrlRegister = value;
|
|
109
|
+
if (this.enabled) {
|
|
110
|
+
this.rp2040.dma.setDREQ(this.dreq.tx);
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
this.rp2040.dma.clearDREQ(this.dreq.tx);
|
|
114
|
+
}
|
|
115
|
+
break;
|
|
116
|
+
case UARTIMSC:
|
|
117
|
+
this.interruptMask = value & 0x7ff;
|
|
118
|
+
this.checkInterrupts();
|
|
119
|
+
break;
|
|
120
|
+
case UARTICR:
|
|
121
|
+
this.interruptStatus &= ~this.rawWriteValue;
|
|
122
|
+
this.checkInterrupts();
|
|
123
|
+
break;
|
|
124
|
+
default:
|
|
125
|
+
super.writeUint32(offset, value);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import { BasePeripheral } from './peripheral';
|
|
2
|
-
export declare class RPUSBController extends BasePeripheral {
|
|
3
|
-
private mainCtrl;
|
|
4
|
-
private intRaw;
|
|
5
|
-
private intEnable;
|
|
6
|
-
private intForce;
|
|
7
|
-
private sieStatus;
|
|
8
|
-
private buffStatus;
|
|
9
|
-
onUSBEnabled?: () => void;
|
|
10
|
-
onResetReceived?: () => void;
|
|
11
|
-
onEndpointWrite?: (endpoint: number, buffer: Uint8Array) => void;
|
|
12
|
-
onEndpointRead?: (endpoint: number, byteCount: number) => void;
|
|
13
|
-
readDelayMicroseconds: number;
|
|
14
|
-
writeDelayMicroseconds: number;
|
|
15
|
-
get intStatus(): number;
|
|
16
|
-
readUint32(offset: number): number;
|
|
17
|
-
writeUint32(offset: number, value: number): void;
|
|
18
|
-
private readEndpointControlReg;
|
|
19
|
-
private getEndpointBufferOffset;
|
|
20
|
-
DPRAMUpdated(offset: number, value: number): void;
|
|
21
|
-
endpointReadDone(endpoint: number, buffer: Uint8Array, delay?: number): void;
|
|
22
|
-
private finishRead;
|
|
23
|
-
private checkInterrupts;
|
|
24
|
-
resetDevice(): void;
|
|
25
|
-
sendSetupPacket(setupPacket: Uint8Array): void;
|
|
26
|
-
private indicateBufferReady;
|
|
27
|
-
private buffStatusUpdated;
|
|
28
|
-
private sieStatusUpdated;
|
|
29
|
-
}
|
|
1
|
+
import { BasePeripheral } from './peripheral.js';
|
|
2
|
+
export declare class RPUSBController extends BasePeripheral {
|
|
3
|
+
private mainCtrl;
|
|
4
|
+
private intRaw;
|
|
5
|
+
private intEnable;
|
|
6
|
+
private intForce;
|
|
7
|
+
private sieStatus;
|
|
8
|
+
private buffStatus;
|
|
9
|
+
onUSBEnabled?: () => void;
|
|
10
|
+
onResetReceived?: () => void;
|
|
11
|
+
onEndpointWrite?: (endpoint: number, buffer: Uint8Array) => void;
|
|
12
|
+
onEndpointRead?: (endpoint: number, byteCount: number) => void;
|
|
13
|
+
readDelayMicroseconds: number;
|
|
14
|
+
writeDelayMicroseconds: number;
|
|
15
|
+
get intStatus(): number;
|
|
16
|
+
readUint32(offset: number): number;
|
|
17
|
+
writeUint32(offset: number, value: number): void;
|
|
18
|
+
private readEndpointControlReg;
|
|
19
|
+
private getEndpointBufferOffset;
|
|
20
|
+
DPRAMUpdated(offset: number, value: number): void;
|
|
21
|
+
endpointReadDone(endpoint: number, buffer: Uint8Array, delay?: number): void;
|
|
22
|
+
private finishRead;
|
|
23
|
+
private checkInterrupts;
|
|
24
|
+
resetDevice(): void;
|
|
25
|
+
sendSetupPacket(setupPacket: Uint8Array): void;
|
|
26
|
+
private indicateBufferReady;
|
|
27
|
+
private buffStatusUpdated;
|
|
28
|
+
private sieStatusUpdated;
|
|
29
|
+
}
|