# 1 "clock.cpp" # 1 "" # 1 "" # 1 "clock.cpp" # 1 "clock_o.h" 1 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/stdint.h" 1 3 # 121 "c:/winavr-20080610/lib/gcc/../../avr/include/stdint.h" 3 typedef int int8_t __attribute__((__mode__(__QI__))); typedef unsigned int uint8_t __attribute__((__mode__(__QI__))); typedef int int16_t __attribute__ ((__mode__ (__HI__))); typedef unsigned int uint16_t __attribute__ ((__mode__ (__HI__))); typedef int int32_t __attribute__ ((__mode__ (__SI__))); typedef unsigned int uint32_t __attribute__ ((__mode__ (__SI__))); typedef int int64_t __attribute__((__mode__(__DI__))); typedef unsigned int uint64_t __attribute__((__mode__(__DI__))); # 142 "c:/winavr-20080610/lib/gcc/../../avr/include/stdint.h" 3 typedef int16_t intptr_t; typedef uint16_t uintptr_t; # 159 "c:/winavr-20080610/lib/gcc/../../avr/include/stdint.h" 3 typedef int8_t int_least8_t; typedef uint8_t uint_least8_t; typedef int16_t int_least16_t; typedef uint16_t uint_least16_t; typedef int32_t int_least32_t; typedef uint32_t uint_least32_t; typedef int64_t int_least64_t; typedef uint64_t uint_least64_t; # 213 "c:/winavr-20080610/lib/gcc/../../avr/include/stdint.h" 3 typedef int8_t int_fast8_t; typedef uint8_t uint_fast8_t; typedef int16_t int_fast16_t; typedef uint16_t uint_fast16_t; typedef int32_t int_fast32_t; typedef uint32_t uint_fast32_t; typedef int64_t int_fast64_t; typedef uint64_t uint_fast64_t; # 273 "c:/winavr-20080610/lib/gcc/../../avr/include/stdint.h" 3 typedef int64_t intmax_t; typedef uint64_t uintmax_t; # 5 "clock_o.h" 2 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/interrupt.h" 1 3 # 38 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/interrupt.h" 3 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 1 3 # 94 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 3 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/sfr_defs.h" 1 3 # 126 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/sfr_defs.h" 3 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/inttypes.h" 1 3 # 77 "c:/winavr-20080610/lib/gcc/../../avr/include/inttypes.h" 3 typedef int32_t int_farptr_t; typedef uint32_t uint_farptr_t; # 127 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/sfr_defs.h" 2 3 # 95 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 2 3 # 127 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 3 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/iom128.h" 1 3 # 128 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 2 3 # 317 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 3 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/portpins.h" 1 3 # 318 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 2 3 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/common.h" 1 3 # 320 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 2 3 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/version.h" 1 3 # 322 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 2 3 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/fuse.h" 1 3 # 214 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/fuse.h" 3 typedef struct { unsigned char low; unsigned char high; unsigned char extended; } __fuse_t; # 325 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 2 3 # 1 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/lock.h" 1 3 # 328 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/io.h" 2 3 # 39 "c:/winavr-20080610/lib/gcc/../../avr/include/avr/interrupt.h" 2 3 # 6 "clock_o.h" 2 namespace Clock{ extern volatile uint32_t ticks; void Init(void); }; inline uint32_t getTicks(void){ uint32_t t; __asm__ __volatile__ ("cli" ::); t = Clock::ticks; __asm__ __volatile__ ("sei" ::); return t; } # 2 "clock.cpp" 2 # 1 "clock_c.h" 1 volatile static unsigned int clock_c; # 3 "clock.cpp" 2 uint8_t temp_c; namespace Clock{ volatile uint32_t ticks = 0; void Init(void){ (*(volatile uint8_t *)((0x25) + 0x20)) = (1<<3)|(1<<0)|(1<<1); (*(volatile uint8_t *)((0x23) + 0x20)) = 249; (*(volatile uint8_t *)((0x37) + 0x20)) = (1<<7); } }; extern "C" void __vector_9 (void) __attribute__ ((signal,used, externally_visible)) ; void __vector_9 (void){ Clock::ticks++; temp_c++; if(temp_c==10){ temp_c = 0; clock_c++; } }