repositories
/
mTask.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
shares are updated now and visible
[mTask.git]
/
client
/
task.c
diff --git
a/client/task.c
b/client/task.c
index
3d9a644
..
dfdb71b
100644
(file)
--- a/
client/task.c
+++ b/
client/task.c
@@
-16,7
+16,7
@@
void task_init(void)
memset(&tasks, 0, sizeof(struct task)*MAXTASKS);
}
memset(&tasks, 0, sizeof(struct task)*MAXTASKS);
}
-
int
task_register(void)
+
void
task_register(void)
{
uint8_t ct;
uint16_t i;
{
uint8_t ct;
uint16_t i;
@@
-30,6
+30,12
@@
int task_register(void)
memset(&tasks[ct], 0, sizeof(struct task));
//Read interval
tasks[ct].interval = read16();
memset(&tasks[ct], 0, sizeof(struct task));
//Read interval
tasks[ct].interval = read16();
+
+ //Interrupt task
+ if(is_interrupt_task(&tasks[ct])) {
+
+ }
+
//Read tasklength
tasks[ct].tlen = read16();
debug("task interval: %d, length: %d\n",
//Read tasklength
tasks[ct].tlen = read16();
debug("task interval: %d, length: %d\n",
@@
-48,12
+54,30
@@
int task_register(void)
tasks[ct].used = true;
tasks[ct].lastrun = 0L;
tasks[ct].used = true;
tasks[ct].lastrun = 0L;
- return ct;
+ write_byte('t');
+ write16(ct);
+ write_byte('\n');
+}
+
+bool is_interrupt_task(struct task *t)
+{
+ return t->interval & (2 <<14);
+}
+
+bool had_interrupt(struct task* t)
+{
+ //Not implemented yet...
+ return false;
+ (void)t;
}
void task_delete(void)
{
}
void task_delete(void)
{
- tasks[read_byte()].used = false;
+ uint8_t c = read16();
+ tasks[c].used = false;
+ write_byte('d');
+ write16(c);
+ write_byte('\n');
}
struct task *task_get(int num)
}
struct task *task_get(int num)