Rev 658 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
179 | chrv | 1 | #include <avr/pgmspace.h> |
2 | |||
3 | #include "mytypes.h" |
||
4 | #include "main.h" |
||
494 | chrv | 5 | #include "ps2.h" |
179 | chrv | 6 | |
7 | //base configuration version string pointer [far address of PROGMEM] |
||
8 | const ULONG baseVersionAddr = 0x1DFF0; |
||
9 | |||
10 | //bootloader version string pointer [far address of PROGMEM] |
||
11 | const ULONG bootVersionAddr = 0x1FFF0; |
||
12 | |||
13 | UBYTE GetVersionByte(UBYTE index) |
||
14 | { |
||
15 | if ( index < 0x10 ) |
||
16 | { |
||
494 | chrv | 17 | switch( ext_type_gluk ) |
179 | chrv | 18 | { |
494 | chrv | 19 | case EXT_TYPE_BASECONF_VERSION: |
20 | { |
||
21 | //base configuration version |
||
22 | return (UBYTE)pgm_read_byte_far(baseVersionAddr+(ULONG)index); |
||
23 | } |
||
24 | |||
25 | case EXT_TYPE_BOOTLOADER_VERSION: |
||
26 | { |
||
27 | //bootloader version |
||
28 | return (UBYTE)pgm_read_byte_far(bootVersionAddr+(ULONG)index); |
||
29 | } |
||
30 | |||
31 | case EXT_TYPE_PS2KEYBOARDS_LOG: |
||
32 | { |
||
495 | chrv | 33 | //PS2 keyboards log |
494 | chrv | 34 | return ps2keyboard_from_log(); |
35 | } |
||
658 | lvd | 36 | |
37 | case EXT_TYPE_RDCFG: |
||
38 | { |
||
39 | // read config byte |
||
40 | return (index==0) ? modes_register : 0xFF; |
||
41 | } |
||
179 | chrv | 42 | } |
43 | } |
||
44 | return (UBYTE)0xFF; |
||
45 | } |
||
46 | |||
47 | void SetVersionType(UBYTE type) |
||
48 | { |
||
494 | chrv | 49 | ext_type_gluk = type; |
179 | chrv | 50 | } |
656 | chrv | 51 | |
52 |