10 #include "interpret.h"
13 struct sds sdss
[MAXSDSS
];
18 memset(&sdss
, 0, sizeof(struct sds
)*MAXSDSS
);
24 for(cs
= 0; cs
<MAXSDSS
; cs
++)
29 die("Trying to add too much sdss...");
31 memset(&sdss
[cs
], 0, sizeof(struct sds
));
33 sdss
[cs
].id
= read16();
35 sdss
[cs
].value
= read16();
37 debug("Received sds %d: %d", sdss
[cs
].id
, sdss
[cs
].value
);
47 for(cs
= 0; cs
<MAXSDSS
; cs
++){
50 if(sdss
[cs
].id
== id
){
52 sdss
[cs
].value
= read16();
53 debug("Received sds update %d: %d",
54 sdss
[cs
].id
, sdss
[cs
].value
);
55 printf("Received sds update %d: %d",
56 sdss
[cs
].id
, sdss
[cs
].value
);
63 void sds_publish(int id
)
66 for(cs
= 0; cs
<MAXSDSS
; cs
++){
67 if(sdss
[cs
].used
&& sdss
[cs
].id
== id
){
68 debug("Publish %d=%d", sdss
[cs
].id
, sdss
[cs
].value
);
71 write_byte(sdss
[cs
].id
);
72 write_byte(sdss
[cs
].value
/265);
73 write_byte(sdss
[cs
].value
%265);
77 debug("SDS identifier unknown: %d", id
);
83 for(cs
= 0; cs
<MAXSDSS
; cs
++)
84 if(sdss
[cs
].used
&& sdss
[cs
].id
== id
)
85 return sdss
[cs
].value
;
86 debug("SDS identifier unknown: %d", id
);
90 void sds_store(int id
, int val
)
93 for(cs
= 0; cs
<MAXSDSS
; cs
++) {
94 if(sdss
[cs
].used
&& sdss
[cs
].id
== id
){
99 debug("SDS identifier unknown: %d", id
);