--- /dev/null
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 001-adc12.dpatch by <smckown@stevex2>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Patch for proper operation of adc12 peripheral
+
+@DPATCH@
+
+diff -urN -x CVS msp430-libc-0.0~cvs20080819.orig/include/msp430/adc12.h msp430-libc-0.0~cvs20080819/include/msp430/adc12.h
+--- msp430-libc-0.0~cvs20080819.orig/include/msp430/adc12.h 2006-01-11 17:47:21.000000000 -0700
++++ msp430-libc-0.0~cvs20080819/include/msp430/adc12.h 2008-08-22 12:00:32.000000000 -0600
+@@ -94,8 +94,12 @@
+ #ifdef _GNU_ASSEMBLER_
+ #define ADC12MEM ADC12MEM_ /* ADC12 Conversion Memory (for assembler) */
+ #else
++#ifdef SAFE_TINYOS
++#define ADC12MEM TCAST(int* ONE, ADC12MEM_) /* ADC12 Conversion Memory (for C) */
++#else
+ #define ADC12MEM ((int*) ADC12MEM_) /* ADC12 Conversion Memory (for C) */
+ #endif
++#endif
+ #define ADC12MEM0_ ADC12MEM_ /* ADC12 Conversion Memory 0 */
+ sfrw(ADC12MEM0,ADC12MEM0_);
+ #define ADC12MEM1_ 0x0142 /* ADC12 Conversion Memory 1 */
+@@ -133,8 +137,12 @@
+ #ifdef _GNU_ASSEMBLER_
+ #define ADC12MCTL ADC12MCTL_ /* ADC12 Memory Control (for assembler) */
+ #else
++#ifdef SAFE_TINYOS
++#define ADC12MCTL TCAST(char * ONE, ADC12MCTL_)
++#else
+ #define ADC12MCTL ((char*) ADC12MCTL_) /* ADC12 Memory Control (for C) */
+ #endif
++#endif
+ #define ADC12MCTL0_ ADC12MCTL_ /* ADC12 Memory Control 0 */
+ sfrb(ADC12MCTL0,ADC12MCTL0_);
+ #define ADC12MCTL1_ 0x0081 /* ADC12 Memory Control 1 */