aboutsummaryrefslogtreecommitdiffstats
path: root/TODO
blob: 31d84198a337770edd7ae1c95f0edfd018d00115 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Quick TODO --------------------------------------------------------------------

- cleanup core/comm usb stuff 
- write language unit test
- more maple-specific example programs
- write gnu-toolchain howto
- rewrite linker scripts and loader code

Peripherals -------------------------------------------------------------------

- complete timers and interrupt stuff
- I2C wrap up
- SPI wrap up
- EEPROM emulation with flash

Arduino Library functions to port (these are LGPL) ----------------------------

EEPROM:
    functions:
        uint8 read(int)
        void write(int, uint8)

Servo:
    modify timer code, "banks" of pins corresponding to a timer

Firmata:
    edit Firmata.h for capabilities

Matrix:
    soft spi port stuff

SoftwareSerial:
    clockCyclesToMicroseconds(int)

Sprite:
    all good?

LiquidCrystal:
    timing on soft serial send() commands

Stepper:
    requires millis()

Wire:
    reimplementation of the utility/twi.{c/h} code:
        void twi_init(void);
        void twi_setAddress(uint8_t);
        uint8_t twi_readFrom(uint8_t, uint8_t*, uint8_t);
        uint8_t twi_writeTo(uint8_t, uint8_t*, uint8_t, uint8_t);
        uint8_t twi_transmit(uint8_t*, uint8_t);
        void twi_attachSlaveRxEvent( void (*)(uint8_t*, int) );
        void twi_attachSlaveTxEvent( void (*)(void) );
        void twi_reply(uint8_t);
        void twi_stop(void);
        void twi_releaseBus(void);

Ethernet:
    ho baby...
    uses avr/interrupt.h
    reimplement utility/spi stuff