root / lab4 / utils.c @ 64
History | View | Annotate | Download (580 Bytes)
1 | 53 | up20180655 | #include <lcom/lcf.h> |
---|---|---|---|
2 | |||
3 | #include <stdint.h> |
||
4 | |||
5 | 64 | up20180642 | int(util_get_LSB)(uint16_t val, uint8_t *lsb) {
|
6 | if (lsb == NULL) return 1; |
||
7 | *lsb = val; |
||
8 | return 0; |
||
9 | } |
||
10 | |||
11 | int(util_get_MSB)(uint16_t val, uint8_t *msb) {
|
||
12 | if (msb == NULL) return 1; |
||
13 | *msb = (val >> 8);
|
||
14 | return 0; |
||
15 | } |
||
16 | |||
17 | #ifdef LAB3
|
||
18 | uint32_t sys_inb_counter = 0;
|
||
19 | #endif
|
||
20 | |||
21 | 53 | up20180655 | int (util_sys_inb)(int port, uint8_t *value) { |
22 | 64 | up20180642 | if(value == NULL) return 1; |
23 | 53 | up20180655 | uint32_t n = 0;
|
24 | 64 | up20180642 | if(sys_inb(port, &n)) return 1; |
25 | 53 | up20180655 | *value = n; |
26 | 64 | up20180642 | #ifdef LAB3
|
27 | ++sys_inb_counter; |
||
28 | #endif
|
||
29 | return 0; |
||
30 | 53 | up20180655 | } |